GNU/Linux >> Belajar Linux >  >> Linux

i3wm:lebih dari 10 ruang kerja dengan kunci pengubah ganda?

i3 tidak benar-benar mendukung urutan kunci seperti vim . Pengikatan kunci apa pun terdiri dari satu kunci yang didahului oleh daftar opsional yang berbeda (jadi tidak ada Shift+Shift ) pengubah. Dan semua pengubah harus ditekan pada saat tombol utama ditekan.

Karena itu, ada dua cara utama untuk memiliki banyak ruang kerja tanpa harus mengikatnya ke daftar pengubah yang panjang:

1. Buat dan akses ruang kerja secara dinamis dengan program eksternal

Anda tidak perlu menentukan pintasan untuk setiap ruang kerja, Anda dapat membuatnya dengan cepat dengan mengirimkan workspace NEW_WS ke i3 , misalnya dengan i3-msg program:

i3-msg workspace NEW_WS
i3-msg move container to workspace NEW_WS

i3 juga dilengkapi dengan i3-input perintah, yang membuka bidang masukan kecil lalu menjalankan perintah dengan masukan yang diberikan sebagai parameter

i3-input -F 'workspace %s' -P 'go to workspace: '
i3-input -F 'move container to workspace %s' -P 'move to workspace: '

Ikat kedua perintah ini ke pintasan dan Anda dapat mengakses sejumlah ruang kerja yang sewenang-wenang hanya dengan menekan pintasan lalu memasukkan nama (atau nomor) ruang kerja yang Anda inginkan. (Jika Anda hanya bekerja dengan ruang kerja bernomor, Anda mungkin ingin menggunakan workspace number %s bukan hanya workspace %s )

2. Ikat ruang kerja secara statis ke Pintasan sederhana dalam mode pengikatan kunci

Sebagai alternatif, untuk pendekatan yang lebih statis, Anda dapat menggunakan mode di i3 Anda konfigurasi. Anda dapat memiliki mode terpisah untuk fokus dan berpindah ke ruang kerja:

set $mode_workspace "goto_ws"
mode $mode_workspace {
    bindsym 1 workspace 1; mode "default"
    bindsym 2 workspace 2; mode "default"
    # […]
    bindsym a workspace a; mode "default"
    bindsym b workspace b; mode "default"
    # […]
    bindsym Escape mode "default"
}
bindsym $mod+w mode $mode_workspace

set $mode_move_to_workspace "moveto_ws"
mode $mode_move_to_workspace {
    bindsym 1 move container to workspace 1; mode "default"
    bindsym 2 move container to workspace 2; mode "default"
    # […]
    bindsym a move container to workspace a; mode "default"
    bindsym b move container to workspace b; mode "default"
    # […]
    bindsym Escape mode "default"
}
bindsym $mod+shift+w mode $mode_move_to_workspace

Atau Anda dapat memiliki binding terpisah untuk memfokuskan dan bergerak dalam satu mode:

set $mode_ws "workspaces"
mode $mode_ws {
    bindsym 1 workspace 1; mode "default"
    bindsym Shift+1 move container to workspace 1; mode "default"
    bindsym 2 workspace 2; mode "default"
    bindsym Shift+2 move container to workspace 2; mode "default"
    # […]
    bindsym a workspace a; mode "default"
    bindsym Shift+a move container to workspace a; mode "default"
    bindsym b workspace b; mode "default"
    bindsym Shift+b move container to workspace b; mode "default"
    # […]
    bindsym Escape mode "default"
}
bindsym $mod+shift+w mode $mode_move_to_workspace

Dalam kedua contoh workspace atau move perintah dirangkai dengan mode "default" , sehingga i3 secara otomatis kembali ke peta pengikatan kunci default setelah setiap perintah.


Solusi saya untuk ini hanya menggunakan lebih banyak kunci:

set $ws0 "0:`:www"
set $ws1 "1:1"
set $ws2 "2:2"
set $ws3 "3:3:fm"
set $ws4 "4:4"
set $ws5 "5:5"
set $ws6 "6:6:dev"
set $ws7 "7:7"
set $ws8 "8:8"
set $ws9 "9:9"
set $ws10 "10:0:music"
set $ws11 "11:-:jd"
set $ws12 "12:=:comm"
set $ws13 "13:B"
set $ws14 "14:H"
set $ws15 "15:E"
set $ws16 "16:I"
set $ws17 "17:D:upwork"


bindsym $mod+grave workspace $ws0
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
bindsym $mod+minus workspace $ws11
bindsym $mod+equal workspace $ws12
bindsym $mod+BackSpace workspace $ws13
bindsym $mod+Home workspace $ws14
bindsym $mod+End workspace $ws15
bindsym $mod+Insert workspace $ws16
bindsym $mod+Delete workspace $ws17

for_window [class="Upwork"] move container to workspace $ws17
for_window [class="Spotify"] move container to workspace $ws10
for_window [class="Brave-browser"] move container to workspace $ws0
for_window [class="TelegramDesktop"] move container to workspace $ws12
for_window [class="jetbrains-pycharm"] move container to workspace $ws6
for_window [class="Caja"] move container to workspace $ws3
for_window [class="JDownloader"] move container to workspace $ws11

Linux
  1. SSH ke Port Selain 22:Bagaimana Melakukannya (dengan Contoh)

  2. Cara Membuat Pasangan Kunci SSH (dengan Contoh)

  3. SSH – Menghasilkan dan Bekerja dengan kunci ssh

  1. Memetakan Kombinasi Kunci Dengan Xmodmap?

  2. Menampilkan Semua File '.sh' Dengan Ukuran Lebih Dari 5kb?

  3. Memulai SSH di Linux

  1. Mesin Virtual dengan CentOS 5 32-Bit OS Tidak Mengatasi Memori Fisik Lebih dari 3 GB

  2. cara memperbarui homebrew dengan Cron di Mac os

  3. substitusi xargs lebih dari satu argumen