Asumsikan saya menggunakan 4 ruang kerja dan saya membutuhkan lebih banyak, apakah ada proses otomatis atau, jika tidak mungkin, cara mudah untuk menambahkan lebih banyak ruang kerja (daripada menginstal Ubuntu tweak
dll.).
14.04
unity
workspaces
automation
workspace-switcher
kernel_panic
sumber
sumber
Jawaban:
Secara otomatis mengatur jumlah ruang kerja; menambah dan menghapus kolom dan baris, tergantung pada kebutuhan Anda
Di bawah versi skrip backround (yang) yang secara otomatis akan menambahkan ruang kerja jika Anda memasukkan kolom atau baris terakhir dari matriks ruang kerja Anda.
Begini Cara kerjanya:
Jika Anda tiba di kolom atau baris terakhir, viewports tambahan ditambahkan:
Jika ruang kerja Anda tidak digunakan selama 5-10 detik dan tidak ada jendela di sana, ruang kerja tambahan akan dihapus lagi. Namun Anda akan selalu menyimpan satu baris tambahan di bawah ini, dan satu kolom tambahan di kanan viewport Anda saat ini:
Naskah:
Cara Penggunaan
add_space.py
Di bagian kepala skrip, edit baris jika Anda suka pengaturan lain (jumlah maksimum ruang kerja, matriks default misalnya 2x2):
Uji-jalankan dengan perintah:
Jika semua berfungsi dengan baik, tambahkan ke aplikasi startup Anda: Dash> Aplikasi Startup> Tambahkan perintah:
Catatan
Seperti biasa, skrip sangat "rendah jus", dan tidak menambah beban yang terlihat ke prosesor Anda.
Penjelasan
Cerita di bawah ini agak rumit dan sebagian besar merupakan penjelasan tentang konsep dan prosedur , daripada pengkodean. Hanya baca jika Anda tertarik.
Cara menghitung ruang kerja yang dibutuhkan (kolom contoh)
Output dari
wmctrl -d
terlihat seperti:Dalam output,
VP: 1680,1050
beri kami informasi tentang di mana kami berada di ruang kerja spanning (matriks semua viewports). Informasi ini hanya berguna jika kita juga memiliki resolusi layar, karena misalnya1680
bisa menjadi lebar dua (tidak mungkin, tetapi masih) atau satu kali layar.Untungnya, kita dapat mengurai resolusi layar dari perintah
xrandr
.Kemudian jika kita tahu ukuran x layar
1680
dan saat ini kita aktifVP: 1680,1050
, kita tahu kita berada di kolom kedua dalam matriks ruang kerja. Karena kita juga tahu ukuran matriks total (DG: 3360x2100
, juga dari outputwmctrl -d
), kita tahu matriks saat ini mencakup dua kolom (3360/1680), dan kita berada pada yang "terakhir".Script kemudian akan mengirim instruksi untuk menambahkan kolom ke matriks dengan perintah:
Inilah prinsipnya.
Cara menghitung ruang kerja yang akan dihapus (kolom contoh)
Sekali per 10 detik, skrip menjalankan perintah untuk mencantumkan semua jendela yang saat ini dibuka, dengan perintah:
Ini memberi kami informasi tentang posisi jendela juga, terlihat seperti:
Dalam output,
3425
adalah posisi x dari jendela. Namun angka ini relatif terhadap ruang kerja saat ini (sisi kiri). Untuk mengetahui posisi absolut dari jendela (x-wise) dalam workspace-matrix, kita harus menambahkan nomor pertama dari informasi viewport saat ini (misalnyaVP: 1680,1050
, dari outputwmctrl -d
).Namun mari kita, untuk alasan kesederhanaan, anggap kita berada di viewport
1,1
(topleft viewport), sehingga posisi relatif jendela sama dengan posisi absolutnya.Karena resolusi layarnya
1680
, kita tahu bahwa jendela berada pada kolom3425/1680
, dibulatkan ke atas, karena semuanya3360 and 5040
berada di kolom yang sama dalam matriks (antara 3 dan 4 kali resolusi). Untuk perhitungan yang tepat, kami menggunakanmath.ceil()
(python
)Karena skrip juga mempraktikkan aturan untuk selalu memiliki ruang kerja tambahan di kanan / bawah, kita perlu mengatur jumlah kolom ke nilai tertinggi :
Dan skripnya :)
Baris dikelola dengan prosedur yang persis sama.
sumber
Secara teknis, tidak ada pintasan untuk mengubah ukuran ruang kerja, tetapi Anda dapat menggunakan skrip sederhana di bawah dan ikat ke pintasan.
.local/share/applications
folder, atau di mana pun Anda suka.chmod 755 /path/to/script
Misalnya, saya memiliki pengaturan ini:
Script terikat ShiftCtrlAltI. Tetapi CtrlAltIbisa bekerja juga. Saya memberikan path lengkap ke skrip, yaitu
Dan beginilah tampilannya:
Naskah
Sangat mudah digunakan, sangat mudah diatur
sumber