ΠΠ΄ΡΠ°Π²Π΅ΠΉΡΠ΅ ΠΊΠΎΠ»Π΅Π³ΠΈ!
ΠΡΠΊΠ°ΠΌ Π΄Π° ΡΠΏΠΎΠ΄Π΅Π»Ρ ΠΌΠΎΠ΅ΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, ΠΊΠΎΠΉΡΠΎ Π΅ ΠΏΠΎΡΠΎΡΠ΅Π½ Π² Π·Π°Π³Π»Π°Π²ΠΈΠ΅ΡΠΎ. ΠΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ°ΡΠΈΡ, Π²Π΄ΡΡ
Π½ΠΎΠ²Π΅Π½Π° ΠΎΡ ΠΊΠΎΠ»Π΅Π³Π°
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ
Ubuntu 18.04 Π·Π° ΡΠ°Π±ΠΎΡΠ° ΠΈ Π½Π°ΡΠΊΠΎΡΠΎ Π·Π°Π±Π΅Π»ΡΠ·Π°Ρ
, ΡΠ΅ ΠΏΡΠΈ ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ΡΠΎ Ρ alt + shift Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠ°ΡΠΎ Visual Studio Code, Skype, Slack ΠΈ Π΄ΡΡΠ³ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ° ΡΡΠ·Π΄Π°Π΄Π΅Π½ΠΈ Ρ Electron, Π²ΡΠ·Π½ΠΈΠΊΠ²Π° ΡΠ»Π΅Π΄Π½ΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ: ΡΠΎΠΊΡΡΡΡ ΠΎΡ ΠΏΠΎΠ»Π΅ΡΠΎ Π·Π° Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π° ΠΊΡΠΌ Π³ΠΎΡΠ½Π°ΡΠ° Π»Π΅Π½ΡΠ° Π½Π° ΠΏΡΠΎΠ·ΠΎΡΠ΅ΡΠ° (ΠΌΠ΅Π½Ρ). ΠΠΎ Π΄ΡΡΠ³ΠΈ ΠΏΡΠΈΡΠΈΠ½ΠΈ ΡΠ΅ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠΈΡ
Π½Π° Fedora + KDE ΠΈ ΡΠ°Π·Π±ΡΠ°Ρ
, ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ Π½Π΅ Π΅ ΠΈΠ·ΡΠ΅Π·Π½Π°Π». Π ΡΡΡΡΠ΅Π½Π΅ Π½Π° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π°ΠΌΠ΅ΡΠΈΡ
ΡΡΠ΄Π΅ΡΠ½Π° ΡΡΠ°ΡΠΈΡ
ΠΠΏΠΈΡΠ°Ρ ΡΠ΅ Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ° ΠΊΠ°ΠΊΠ²ΠΎ ΡΡΠ°Π²Π°
Π ΡΠ°ΠΊΠ°, ΡΠ΅ΡΠΈΡ Π΄Π° ΠΎΡΠ΄Π΅Π»Ρ Π²ΡΠ΅ΠΌΠ΅, Π·Π° Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ° ΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π°. Π‘Π΅Π³Π° ΡΠ΅ ΠΎΠΏΠΈΡΠ° Π½Π°ΠΊΡΠ°ΡΠΊΠΎ ΠΏΠΎ ΠΊΠ°ΠΊΡΠ² ΠΏΡΡ ΡΡΡΠ³Π½Π°Ρ , ΠΌΠΎΠΆΠ΅ Π±ΠΈ Π½ΡΠΊΠΎΠΉ ΠΏΠΎ-ΡΠ°Π·Π±ΡΠ°Π½ Π² ΡΠΎΠ·ΠΈ Π²ΡΠΏΡΠΎΡ ΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π½Π΅ Π΄Π° ΠΈΠ·ΡΡΠ½Ρ ΡΡΡΠ΄Π½ΠΎΡΡΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ ΡΡΠ΅ΡΠ½Π°Ρ .
ΠΡΠ²ΠΎΡΠΈΡ Visual Studio Code ΠΈ Π·Π°ΠΏΠΎΡΠ½Π°Ρ Π΄Π° Π½Π°ΡΠΈΡΠΊΠ°ΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΠΎΡ Alt+<%something%>, Π³Π»Π΅Π΄Π°ΠΉΠΊΠΈ ΠΊΠ°ΠΊ ΡΠ΅Π°Π³ΠΈΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ. Π ΠΏΠΎΡΡΠΈ Π²ΡΠΈΡΠΊΠΈ ΡΠ»ΡΡΠ°ΠΈ Π²ΡΠΈΡΠΊΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ, Ρ ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π½Π° Alt + Shift, ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡ Π° Π±Π΅Π· Π·Π°Π³ΡΠ±Π° Π½Π° ΡΠΎΠΊΡΡ. ΠΠ·Π³Π»Π΅ΠΆΠ΄Π°, ΡΠ΅ Π½ΡΠΊΠΎΠΉ ΠΈΠ·ΡΠΆΠ΄Π° Π½Π°ΡΠΈΡΠ½Π°ΡΠΈΡ Shift, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π²Π° ΡΠ»Π΅Π΄ Π·Π°Π΄ΡΡΠΆΠ°Π½Π΅ ΠΈ Π·Π°Π΄ΡΡΠΆΠ°Π½Π΅ Π½Π° Alt, ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ ΡΠΌΡΡΠ°, ΡΠ΅ ΡΡΠΌ Π½Π°ΡΠΈΡΠ½Π°Π» Alt, ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π½Π΅ ΡΡΠΌ Π½Π°ΡΠΈΡΠ½Π°Π» Π½ΠΈΡΠΎ, ΠΏΡΡΠ½Π° Alt ΠΈ ΡΠ°Π΄ΠΎΡΡΠ½ΠΎ Ρ Π²ΡΡΠ»ΠΈ ΡΠΎΠΊΡΡΠ° ΠΌΠΈ Π² ΠΌΠ΅Π½ΡΡΠΎ ΡΠΈ, ΠΊΠΎΠ΅ΡΠΎ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°ΡΠ΅ ΡΡΠ²ΡΠ΅ΠΌ Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π·Π° Π½Π΅Π³ΠΎ.
ΠΡΠ²ΠΎΡΠΈΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Π·Π° ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ½Π°ΡΠ° ΠΏΠΎΠ΄ΡΠ΅Π΄Π±Π° (Π·Π½Π°Π΅ΡΠ΅ Π»ΠΈ, ΡΠΎΠ·ΠΈ Π΄ΡΠ»ΡΠ³ ΡΠΏΠΈΡΡΠΊ Ρ ΠΊΠ²Π°Π΄ΡΠ°ΡΡΠ΅ΡΠ° Π·Π° ΠΎΡΠΌΠ΅ΡΠΊΠ° ΠΈ Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π·Π° ΠΊΠ»Π°Π²ΠΈΡΠΈΡΠ΅) ΠΈ Π·Π°Π΄Π°Π΄ΠΎΡ ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ½Π°ΡΠ° ΠΏΠΎΠ΄ΡΠ΅Π΄Π±Π° Π½Π° Π±ΡΡΠΎΠ½Π° Alt, Π±Π΅Π· Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΊΠ»ΠΈΠΊΠ²Π°Π½ΠΈΡ.
Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° Alt+Tab ΡΠΏΡΡ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Π·Π° ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠ·ΠΎΡΡΠΈ. Π‘Π°ΠΌΠΎ Tab ΡΠ°Π±ΠΎΡΠ΅ΡΠ΅, ΡΠΎΠ΅ΡΡ ΠΏΠ°ΠΊ Π½ΡΠΊΠΎΠΉ ΠΌΠΈ "ΠΈΠ·ΡΠ΄Π΅" Alt. ΠΠΎΠΉ Π±Π΅ΡΠ΅ ΡΠΎΠ·ΠΈ βΠ½ΡΠΊΠΎΠΉβ Π²Π΅ΡΠ΅ Π½Π΅ ΡΠ΅ Π·Π°Π΄Π°Π²Π°Ρ Π²ΡΠΏΡΠΎΡΠΈ, Π½ΠΎ Π½ΡΠΌΠ°ΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π° ΠΊΠ°ΠΊΠ²ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ Ρ Π½Π΅Π³ΠΎ.
ΠΠΎ ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ ΡΡΡΠ±Π²Π°ΡΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΡΠ΅ΡΠ΅Π½ ΠΏΠΎΠ½Π΅ ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π΄ΠΎΠΉΠ΄Π΅ Π½Π° ΡΠΌ:
- Π Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΠΉΡΠ΅ Π±ΡΡΠ·ΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ Π·Π° ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ½ΠΈ ΠΏΠΎΠ΄ΡΠ΅Π΄Π±ΠΈ (ΠΈΠ·ΡΠΈΡΡΠ΅ΡΠ΅ Π²ΡΠΈΡΠΊΠΈ ΠΊΠ²Π°Π΄ΡΠ°ΡΡΠ΅ΡΠ° Π·Π° ΠΎΡΠΌΠ΅ΡΠΊΠ° Π² ΡΠ΅ΠΊΡΠΈΡΡΠ° ΠΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ ΠΊΡΠΌ Π΄ΡΡΠ³Π° ΠΏΠΎΠ΄ΡΠ΅Π΄Π±Π°);
- Π‘ΡΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ²ΠΎΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π° ΠΊΠ»Π°Π²ΠΈΡΠ½Π° ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ, ΠΊΠΎΡΡΠΎ Π΄Π° ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π° ΠΌΠΎΠ΅ΡΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΡΠΎ
ΠΡΡΠ²ΠΎ, Π½Π΅ΠΊΠ° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΌΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°, ΠΊΠΎΡΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° Π·Π°Π΄Π°Π²Π°ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π½Π° Xbindkeys. ΠΠ° ΡΡΠΆΠ°Π»Π΅Π½ΠΈΠ΅, ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π½Π΅ ΠΌΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π° Π΄Π° ΡΡΠ·Π΄Π°ΠΌ Π±ΡΡΠ· ΠΊΠ»Π°Π²ΠΈΡ Π·Π° ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΎΡ ΡΠΈΠΏΠ° Alt + Shift ΡΡΠ΅Π· ΠΊΡΠ°ΡΠΈΠ² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. ΠΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ Π·Π° Alt+S, Alt+1, Alt+shift+Y ΠΈ Ρ.Π½. ΠΈ Ρ.Π½., Π½ΠΎ ΡΠΎΠ²Π° Π½Π΅ Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΎ Π·Π° Π½Π°ΡΠ°ΡΠ° Π·Π°Π΄Π°ΡΠ°.
sudo dnf install xbindkeysrc
ΠΠΎΠ²Π΅ΡΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π·Π° Π½Π΅Π³ΠΎ ΠΈΠΌΠ° Π½Π°
Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° Π½Π΅ΠΊΠ° ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅Π½ ΡΠ°ΠΉΠ» Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π·Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ°. ΠΡΠΈΠΌΠ΅ΡΡΡ Π΅ Π΄ΠΎΡΡΠ° ΠΊΡΠ°ΡΡΠΊ, Ρ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ, ΠΎΡ ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ΡΠ΅, Π·Π° Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΡΠ΅ ΠΊΠ°ΠΊ Π΄Π° ΡΠ°Π±ΠΎΡΠΈΡΠ΅ Ρ Π½Π΅Π³ΠΎ:
xbindkeys -d > ~/.xbindkeysrc
ΠΠ°ΠΊΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΎΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°, ΠΊΠΎΠΉΡΠΎ Π΅ Π²ΡΠ² ΡΠ°ΠΉΠ»Π°, ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΠΎΡΠΎΡΠΈΠΌ Π±ΡΡΠ·ΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ, ΠΊΠΎΠΉΡΠΎ ΠΈΡΠΊΠ°ΠΌΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅, ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°, ΠΊΠΎΡΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½Π°. ΠΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΏΡΠΎΡΡΠΎ.
# Examples of commands:
"xbindkeys_show"
control+shift + q
# set directly keycode (here control + f with my keyboard)
"xterm"
c:41 + m:0x4
ΠΠ°ΡΠΎ ΠΊΠ»Π°Π²ΠΈΡΠ½Π° ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌ Π·Π° Ρ ΠΎΡΠ° ΠΏΡΠ°Π²ΠΎΠΏΠΈΡ ΠΈΠ»ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΊΠ»ΡΡΠΎΠ²ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅. ΠΡΠΈ ΠΌΠ΅Π½ ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈ ΡΠ°ΠΌΠΎ Ρ ΠΊΠΎΠ΄ΠΎΠ²Π΅, Π½ΠΎ Π½ΠΈΠΊΠΎΠΉ Π½Π΅ Π²ΠΈ Π·Π°Π±ΡΠ°Π½ΡΠ²Π° Π΄Π° Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠ°ΡΠ΅ ΠΌΠ°Π»ΠΊΠΎ.
ΠΠ° Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ΡΠ΅, ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°:
xbindkeys -k
Π©Π΅ ΡΠ΅ ΠΎΡΠ²ΠΎΡΠΈ ΠΌΠ°Π»ΡΠΊ ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ "X". Π’ΡΡΠ±Π²Π° ΡΠ°ΠΌΠΎ Π΄Π° Π½Π°ΡΠΈΡΠΊΠ°ΡΠ΅ ΠΊΠ»Π°Π²ΠΈΡΠΈΡΠ΅, ΠΊΠΎΠ³Π°ΡΠΎ ΡΠΎΠΊΡΡΠΈΡΠ°ΡΠ΅ Π²ΡΡΡ Ρ ΡΠΎΠ·ΠΈ ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ! Π‘Π°ΠΌΠΎ Π² ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ ΡΠ΅ Π²ΠΈΠ΄ΠΈΡΠ΅ Π½Π΅ΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°:
[podkmax@localhost ~]$ xbindkeys -k
Press combination of keys or/and click under the window.
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"(Scheme function)"
m:0x4 + c:39
Control + s
Π ΠΌΠΎΡ ΡΠ»ΡΡΠ°ΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡΡΠ° Π·Π° ΠΊΠ»Π°Π²ΠΈΡΠΈΡΠ΅ Alt + Shift ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΡΠ°ΠΊΠ°:
m:0x8 + c:50
Π‘Π΅Π³Π° ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΡΠ²Π΅ΡΠΈΡΠ΅, ΡΠ΅ ΠΊΠΎΠ³Π°ΡΠΎ ΡΡΠ°ΠΊΠ½Π΅ΡΠ΅ Π²ΡΡΡ Ρ ΡΠ°Π·ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ, ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ΡΠΎ ΡΠ΅ ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°. ΠΠ°ΠΌΠ΅ΡΠΈΡ ΡΠ°ΠΌΠΎ Π΅Π΄Π½Π° ΡΠ°Π±ΠΎΡΠ΅ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π° ΡΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ΡΠΎ:
setxkbmap ru
setxkbmap us
ΠΠ°ΠΊΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΎΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°, ΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π²ΠΊΠ»ΡΡΠΈ ΡΠ°ΠΌΠΎ Π΅Π΄Π½ΠΎ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅, ΡΠ°ΠΊΠ° ΡΠ΅ Π½ΠΈΡΠΎ Π΄ΡΡΠ³ΠΎ ΠΎΡΠ²Π΅Π½ ΠΏΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π½Π΅ ΠΌΠΈ Π΄ΠΎΠΉΠ΄Π΅ Π½Π°ΡΠΌ.
vim ~/layout.sh
#!/bin/bash
LAYOUT=$(setxkbmap -print | awk -F + '/xkb_symbols/ {print $2}')
if [ "$LAYOUT" == "ru" ]
then `/usr/bin/setxkbmap us`
else `/usr/bin/setxkbmap ru`
fi
Π‘Π΅Π³Π°, Π°ΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ .xbindkeysrc ΠΈ layout.sh ΡΠ° Π² Π΅Π΄Π½Π° ΠΈ ΡΡΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, ΡΠΎΠ³Π°Π²Π° ΠΊΡΠ°ΠΉΠ½Π°ΡΠ° ΡΠΎΡΠΌΠ° Π½Π° ΡΠ°ΠΉΠ»Π° .xbindkeysrc ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΡΠ°ΠΊΠ°:
# Examples of commands:
"xbindkeys_show"
control+shift + q
# set directly keycode (here control + f with my keyboard)
"xterm"
c:41 + m:0x4
# specify a mouse button
"xterm"
control + b:2
#Π Π²ΠΎΡ ΡΠΎ, ΡΡΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠ» Ρ
"./layout.sh"
m:0x8 + c:50
Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅:
xbindkeys -p
Π ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅. ΠΠ΅ Π·Π°Π±ΡΠ°Π²ΡΠΉΡΠ΅ Π΄Π° Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ Π²ΡΠΈΡΠΊΠΈ ΠΎΠΏΡΠΈΠΈ Π·Π° ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ.
ΠΠ±ΡΠΎ
ΠΠΎΠ»Π΅Π³ΠΈ, Π½Π°Π΄ΡΠ²Π°ΠΌ ΡΠ΅ ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ Π΄Π° ΠΏΠΎΠΌΠΎΠ³Π½Π΅ Π½Π° Π½ΡΠΊΠΎΠΉ Π±ΡΡΠ·ΠΎ Π΄Π° ΡΠ΅ ΠΎΡΡΡΠ²Π΅ ΠΎΡ Π΄ΠΎΡΠ°Π΄Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ. ΠΠΈΡΠ½ΠΎ Π°Π· ΠΏΡΠ΅ΠΊΠ°ΡΠ°Ρ
ΡΠ΅Π»ΠΈΡ ΡΠΈ ΠΏΠΎΡΠΈΠ²Π΅Π½ Π΄Π΅Π½ Π² ΠΎΠΏΠΈΡΠΈ Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ° ΠΈ ΡΠ΅ΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½, ΡΠ°ΠΊΠ° ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ Π΄Π° Π½Π΅ ΡΠ΅ ΡΠ°Π·ΡΠ΅ΠΉΠ²Π°ΠΌ ΠΎΡ ΡΠΎΠ²Π° Π² ΡΠ°Π±ΠΎΡΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅. ΠΠ°ΠΏΠΈΡΠ°Ρ
ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ, Π·Π° Π΄Π° ΡΠΏΠ΅ΡΡΡ Π½Π° Π½ΡΠΊΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΈ Π½Π΅ΡΠ²ΠΈ. ΠΠ½ΠΎΠ³ΠΎ ΠΎΡ Π²Π°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π΅Π½ Π½Π°ΡΠΈΠ½ Π·Π° ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ ΠΈ Π½Π΅ ΡΠ°Π·Π±ΠΈΡΠ°Ρ ΠΊΠ°ΠΊΡΠ² Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ. ΠΠ· Π»ΠΈΡΠ½ΠΎ ΠΎΠ±ΠΈΡΠ°ΠΌ Π΄Π° ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°ΠΌ Ρ Alt+Shift. Π ΠΈΡΠΊΠ°ΠΌ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ ΠΏΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½. ΠΠΊΠΎ ΡΠΏΠΎΠ΄Π΅Π»ΡΡΠ΅ ΠΌΠΎΠ΅ΡΠΎ ΠΌΠ½Π΅Π½ΠΈΠ΅ ΠΈ ΡΡΠ΅ ΠΈΠ·ΠΏΡΠ°Π²Π΅Π½ΠΈ ΠΏΡΠ΅Π΄ ΡΠΎΠ·ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ ΡΡΡΠ±Π²Π° Π΄Π° Π²ΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π΅.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com