Hành động cửa sổ theo kịch bản trên Ubuntu với Devilspie 2

theanh

Administrator
Nhân viên
Devilspie2 là một chương trình phát hiện các cửa sổ khi chúng được tạo ra và thực hiện các hành động theo kịch bản trên chúng. Các kịch bản được viết bằng LUA, cho phép tùy chỉnh rất nhiều. Hướng dẫn này sẽ chỉ cho bạn cách cài đặt Devilspie 2 trên Ubuntu 14.04 và giới thiệu cho bạn về kịch bản Devilspie.

LUA là gì?​

Lua là một ngôn ngữ kịch bản mạnh mẽ, nhanh, nhẹ và có thể nhúng. Lua kết hợp cú pháp thủ tục đơn giản với các cấu trúc mô tả dữ liệu mạnh mẽ dựa trên các mảng kết hợp và ngữ nghĩa có thể mở rộng. Lua được gõ động, chạy bằng cách diễn giải mã byte cho máy ảo dựa trên thanh ghi và có quản lý bộ nhớ tự động với chức năng thu gom rác gia tăng, khiến nó trở nên lý tưởng cho việc cấu hình, viết tập lệnh và tạo mẫu nhanh.

Để biết thêm thông tin, hãy truy cập:

Cài đặt.​

Nhập lệnh sau:
Mã:
sudo apt-get install devilspie2
(hãy đảm bảo đó là devilspie2, vì devilspie hơi bị lỗi và không còn trong development.)

Thật không may, các quy tắc của Devils Pie gốc không còn được hỗ trợ trong Devilspie 2 nữa.

Cấu hình và Viết kịch bản.​

Nếu bạn không cung cấp cho devilspie2 bất kỳ thư mục nào với --folder, nó sẽ đọc các tập lệnh LUA từ thư mục ~/.config/devilspie2/
và thư mục này sẽ được tạo nếu nó chưa tồn tại. Thư mục này có thể thay đổi được với tùy chọn --folder. Nếu devilspie2 không tìm thấy bất kỳ tệp LUA nào trong thư mục, nó sẽ dừng thực thi.


Trên đây là một số tùy chọn sử dụng...

Các tập lệnh mẫu.​

Mã:
lệnh debug_print chỉ in bất kỳ thứ gì ra stdout-- nếu devilspie2 được chạy bằng tùy chọn --debug[/b]debug_print("Tên cửa sổ: ".. get_window_name());debug_print("Tên ứng dụng: "..get_application_name())[B]Tôi muốn Xfce4-terminal của mình ở bên phải trên màn hình thứ hai của thiết lập hai màn hình,[/b]nếu (get_window_name()=="Terminal") thì -- x,y, xsize, ysize set_window_geometry(1600,300,900,700);end[B]Làm cho Iceweasel luôn bắt đầu ở chế độ tối đa.[/b]nếu (get_application_name()=="Iceweasel") thì tối đa hóa();end
Để tìm hiểu thêm về ngôn ngữ kịch bản, hãy truy cập trang sau:
Mã:
Xem Câu hỏi thường gặp tạiwww.lua.org/FAQ.htmlTài liệu tạiwww.lua.org/docs.htmlHướng dẫn tạihttp://lua-users.org/wiki/TutorialDirectory

Lệnh Sript.​

get_window_name()
trả về một chuỗi chứa tên của cửa sổ hiện tại.

get_application_name()
trả về tên ứng dụng của cửa sổ hiện tại.

set_window_position(xpos, ypos)
Đặt vị trí của cửa sổ.

set_window_size(xsize, ysize)
Đặt kích thước của cửa sổ.

set_window_geometry(xpos, ypos, xsize ysize)
Đặt hình học của cửa sổ.

make_always_on_top()
Đặt cờ luôn ở trên cùng cho các cửa sổ.

set_on_top()
Đặt một cửa sổ lên trên các cửa sổ khác (tuy nhiên, lệnh này sẽ không khóa cửa sổ ở vị trí này).

debug_print()
Trình trợ giúp gỡ lỗi in một chuỗi ra stdout. Chỉ được in nếu devilspie2 được chạy với tùy chọn --debug.

shade()
"Bóng" một cửa sổ, chỉ hiển thị thanh tiêu đề.

unshade()
Bỏ bóng một cửa sổ - ngược lại với "bóng"

maximize()
phóng to một cửa sổ

unmaximize()
bỏ phóng to một cửa sổ

maximize_vertically()
phóng to cửa sổ hiện tại theo chiều dọc.

maximize_horisontally()
phóng to cửa sổ hiện tại theo chiều ngang.

minimize()
thu nhỏ một cửa sổ

unminimize()
bỏ thu nhỏ một cửa sổ, tức là đưa cửa sổ trở lại màn hình từ trạng thái thu nhỏ position/size.

decorate_window()
Hiển thị tất cả các trang trí cửa sổ.

undecorate_window()
Xóa tất cả các trang trí cửa sổ.

set_window_workspace(number)
Di chuyển một cửa sổ đến một không gian làm việc khác. Biến number bắt đầu đếm từ 1.

change_workspace(number)
Thay đổi không gian làm việc hiện tại sang một không gian làm việc khác. Biến số bắt đầu đếm từ 1.

pin_window()
yêu cầu trình quản lý cửa sổ đặt cửa sổ vào tất cả các không gian làm việc.

unpin_window()
Yêu cầu trình quản lý cửa sổ chỉ đặt cửa sổ vào không gian làm việc đang hoạt động.

stick_window()
Yêu cầu trình quản lý cửa sổ giữ cố định vị trí cửa sổ trên màn hình, ngay cả khi không gian làm việc hoặc cửa sổ cuộn.

unstick_window()

Yêu cầu trình quản lý cửa sổ không giữ cố định vị trí cửa sổ trên màn hình khi không gian làm việc hoặc cửa sổ cuộn.

Đây sẽ là phần cuối của hướng dẫn sử dụng devilspie2.


Liên kết​

 
Back
Bên trên