GNU/Linux >> Tutoriales Linux >  >> Linux

i3wm:¿más de 10 espacios de trabajo con doble tecla modificadora?

i3 realmente no admite secuencias de teclas como vim . Cualquier combinación de teclas consta de una sola tecla precedida por una lista opcional de distintos (por lo que no Shift+Shift ) modificadores. Y todos los modificadores deben presionarse en el momento en que se presiona la tecla principal.

Dicho esto, hay dos formas principales de tener muchos espacios de trabajo sin tener que vincularlos a largas listas de modificadores:

1. Cree y acceda dinámicamente a espacios de trabajo con programas externos

Puede que no tenga que definir un acceso directo para cada espacio de trabajo, simplemente puede crearlos sobre la marcha enviando un workspace NEW_WS a i3 , por ejemplo con el i3-msg programa:

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

i3 también viene con el i3-input comando, que abre un pequeño campo de entrada y luego ejecuta un comando con la entrada dada como parámetro

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

Vincule estos dos comandos a los accesos directos y podrá acceder a un número arbitrario de espacios de trabajo simplemente presionando el acceso directo y luego ingresando el nombre (o número) del espacio de trabajo que desea. (Si solo trabaja con espacios de trabajo numerados, es posible que desee utilizar workspace number %s en lugar de solo workspace %s )

2. Enlace estáticamente espacios de trabajo a accesos directos simples dentro de los modos de combinación de teclas

Alternativamente, para un enfoque más estático, podría usar modos en su i3 configuración. Podría tener modos separados para enfocar y moverse a espacios de trabajo:

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

O podría tener enlaces separados para enfocar y moverse dentro de un solo modo:

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

En ambos ejemplos el workspace o move los comandos están encadenados con mode "default" , de modo que i3 vuelve automáticamente al mapa de combinación de teclas predeterminado después de cada comando.


Mi solución a esto es usar más claves:

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. Monitoreo de seguridad en Linux con Tripwire

  2. Combinación de teclas de mapeo con Xmodmap?

  3. ¿Mostrando todos los archivos '.sh' con un tamaño superior a 5kb?

  4. Primeros pasos con SSH en Linux

  5. La máquina virtual con sistema operativo CentOS 5 de 32 bits no aborda la memoria física de más de 3 GB

Gestione gráficamente las claves SSH con Seahorse

Comando Linux more explicado con ejemplos

Cómo usar una clave SSH con usuarios no root

SSH:generar y trabajar con claves ssh

Zorin OS 15 más hermoso y útil que nunca

¿Por qué algunas personas piensan que las cuentas de máquinas Linux con contraseña son más seguras que las cuentas sin contraseña?