Vị trí tại không gian làm việc trung tâm khi đăng nhập


12

Tôi đã thiết lập trình chuyển đổi không gian làm việc 3x3 và tôi muốn vị trí của mình ở vị trí trung tâm theo mặc định. Có thể không?

Câu trả lời:


7

Nhờ Marco, tôi đã tìm ra cách sử dụng wmctrl.

Vì không gian làm việc compiz thực sự là chế độ xem của một máy tính để bàn, nên giải pháp là di chuyển khung nhìn hiện tại để bao phủ khu vực trung tâm của máy tính để bàn.

Đầu tiên, gọi wmctrl -dđể lấy thông tin của máy tính để bàn hiện tại:

read desktop_id _ast \
    DG_ geometry \
    VP_ viewport \
    WA_ wa_off wa_size \
    title \
    < <(LANG=C wmctrl -d | grep '*')

geom_w=${geometry%x*}
geom_h=${geometry#*x}

# The workarea size isn't accurate, because the top/bottom panel is excluded. 
viewport_w=${wa_size%x*}
viewport_h=${wa_size#*x}

rows=$((geom_w / viewport_w))
cols=$((geom_h / viewport_h))

# Fix the viewport size
viewport_w=$((geom_w / rows))
viewport_h=$((geom_h / cols))

Sau đó, tính toán nguồn gốc của khung nhìn trung tâm:

center_row=$((rows / 2))
center_col=$((cols / 2))

center_x=$((center_col * viewport_w))
center_y=$((center_row * viewport_h))

center_viewport=$center_x,$center_y

Và di chuyển khung nhìn ở đó:

wmctrl -o $center_viewport

6

Có: cài đặt wmctrl

sudo apt-get install wmctrl

và tạo một tập tin ~/.config/autostart/wmctrl.desktopvới những điều sau đây:

[Desktop Entry]
Name=Desktop Switcher
Exec=/usr/bin/wmctrl -s 4
Type=Application

1
Chỉ có một máy tính để bàn trong compiz. Nhưng wmctrldù sao cũng có thể chuyển đổi khung nhìn trong máy tính để bàn. Xem câu trả lời của tôi dưới đây.
Xiè Jìléi

2
  1. Đầu tiên tải xuống tập lệnh trợ giúpvăn bản thay thế này để kiểm soát compiz từ dòng lệnh. Lưu nó như compiz-send.pytrong thư mục nhà của bạn.
  2. Chạy lệnh python compiz-send.py vpswitch switch_to_5_keyđể đảm bảo nó hoạt động chính xác. Nó sẽ chuyển bạn đến không gian làm việc trung tâm.
  3. Nếu nó hoạt động, tạo một tệp được gọi .switch_to_center_workspace.shtrong thư mục nhà của bạn và dán phần bên trong của nó:

    #!/bin/bash
    sleep 5 && python /home/user/compiz-send.py vpswitch switch_to_5_key
    

    thay thế userbằng tên người dùng của bạn.

  4. Mở Ứng dụng khởi động, Hệ thống -> Tùy chọn -> Ứng dụng khởi động .

  5. Nhấp vào Thêm và trong lệnh: nhập đặt /home/user/.switch_to_center_workspace.sh. Đặt bất cứ điều gì bạn muốn trong Tên:Nhận xét: mục.

  6. Đăng xuất và đăng nhập lại và xác minh rằng nó hoạt động.


Thật không may, kịch bản không hoạt độngdbus.exceptions.DBusException: org.freedesktop.DBus.Error.UnknownMethod: Method "activate" with signature "si" on interface "org.freedesktop.compiz" doesn't exist
Xiè Jìléi

@ 谢 继 Thay đổi sleep 5phần của tập lệnh thành số cao hơn như sleep 10để đảm bảo compiz đã chạy khi tập lệnh được chạy. Bạn đang sử dụng compiz phải không?
Ê-sai

Tôi cố gắng chạy tập lệnh trong gnome-terminal và nhận được ngoại lệ. Tôi đang sử dụng compiz 0.8.6.
Xiè Jìléi

Trong kịch bản, chữ ký phương thức "si" không tồn tại, vì vậy tôi đoán các đối số (chuỗi, int) được truyền để kích hoạt () có thể không chính xác ..
Xiè Jìléi

2

Tôi sẽ hỏi câu hỏi tương tự, nhưng đối với 3 không gian làm việc ngang và tôi cũng đang chạy compiz, và wmctrl -dđầu ra (trên mỗi không gian làm việc) trông như thế này:

  • Tại không gian làm việc 1: 0 * DG: 4098x768 VP: 0,0 WA: 0,24 1366x744 Workspace 1
  • Tại không gian làm việc 2: 0 * DG: 4098x768 VP: 1366,0 WA: 0,24 1366x744 Workspace 1
  • Tại không gian làm việc 3: 0 * DG: 4098x768 VP: 2732,0 WA: 0,24 1366x744 Workspace 1

Hơn tôi chỉ đơn giản sử dụng wmctrl -o 1366,0( giá trị VP ) để đặt trung tâm làm không gian làm việc mặc định của tôi khi khởi động. Có thể không làm việc cho tất cả mọi người, nhưng chỉ trong trường hợp;)


Lệnh tôi đang sử dụng trong "Hệ thống -> Tùy chọn -> Ứng dụng khởi động":sh -c "sleep 2;/usr/bin/wmctrl -o 1366,0
wik

... bạn có thể cần điều chỉnh giá trị giấc ngủ, ví dụ: thử 10, 15, v.v.
wik

Cảm ơn về ghi chú này - xin lỗi tôi đã không đọc nó trước khi đọc câu trả lời của bạn :)
sdaau

0

Chỉ là một ghi chú ngắn gọn - Tôi đang sử dụng Natty và nhờ câu trả lời của @, tôi nhận thấy rằng những điều sau đây được báo cáo bằng cách di chuyển thiết bị đầu cuối trong bốn 'không gian làm việc' trong Unity:

$ wmctrl -d
# top left
0  * DG: 2048x1200  VP: 0,0  WA: 0,24 1024x576  Workspace 1
# bottom left
0  * DG: 2048x1200  VP: 0,600  WA: 0,24 1024x576  Workspace 1
# top right
0  * DG: 2048x1200  VP: 1024,0  WA: 0,24 1024x576  Workspace 1
# bottom right 
0  * DG: 2048x1200  VP: 1024,600  WA: 0,24 1024x576  Workspace 1

... tức là chúng không phải là máy tính để bàn riêng biệt, cũng không phải không gian làm việc - đơn giản là khung nhìn thay đổi!

Vì vậy, để thay đổi giữa bốn chế độ xem đó, chỉ cần gọi wmctrl -olệnh trực tiếp với các VPgiá trị được liệt kê ở trên, nghĩa là:

wmctrl -o 0,0
wmctrl -o 0,600
wmctrl -o 1024,0
wmctrl -o 1024,600

EDIT: Xin lỗi, xin lỗi, chỉ cần thấy điều này giống như câu trả lời của @ wik - hợp nhất / xóa nếu thích hợp ..

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.