์๋ , ๋๋ฃ๋ค!
์ ๋ชฉ์ ํ์๋ ๋ฌธ์ ์ ๋ํ ํด๊ฒฐ์ฑ
์ ๊ณต์ ํ๊ณ ์ถ์ต๋๋ค. ๋๋ฃ๋ก๋ถํฐ ์๊ฐ์ ๋ฐ์ ์ด ๊ธ์ ์ฐ๊ฒ ๋์์ต๋๋ค.
๋ฌธ์ ์ ๋ํ ์ค๋ช
์
๋ฌด์ Ubuntu 18.04๋ฅผ ์ฌ์ฉํ๋๋ฐ ์ต๊ทผ Visual Studio Code, Skype, Slack ๋ฐ Electron์ ์ฌ์ฉํ์ฌ ์์ฑ๋ ๊ธฐํ ์์ฉ ํ๋ก๊ทธ๋จ์์ Alt+Shift๋ฅผ ์ฌ์ฉํ์ฌ ๋ ์ด์์์ ์ ํํ ๋ ๋ค์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ ๊ฒ์ ๋ฐ๊ฒฌํ์ต๋๋ค. ์
๋ ฅ ํ๋์ ํฌ์ปค์ค๊ฐ ๋งจ ์๋ก ์ด๋ํฉ๋๋ค. ์ฐฝ ํจ๋ (๋ฉ๋ด). ๋ค๋ฅธ ์ด์ ๋ก Fedora + KDE๋ก ์ฎ๊ฒผ๋๋ฐ ๋ฌธ์ ๊ฐ ์ฌ๋ผ์ง์ง ์์๋ค๋ ๊ฒ์ ๊นจ๋ฌ์์ต๋๋ค. ํด๊ฒฐ๋ฐฉ๋ฒ์ ์ฐพ๋ค๊ฐ ์ข์ ๊ธ์ ๋ฐ๊ฒฌํ์ต๋๋ค
๋ฌด์์ด ์๋ชป๋์๋์ง ์ดํดํ๋ ค๊ณ ๋ ธ๋ ฅํ์ต๋๋ค.
๊ทธ๋์ ๋๋ ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง ์์๋ณด๋ ์๊ฐ์ ๊ฐ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ด์ ์ ๊ฐ ํํ ๊ธธ์ ๊ฐ๋ตํ๊ฒ ์ค๋ช ํ๊ฒ ์ต๋๋ค. ์๋ง๋ ์ด ๋ฌธ์ ์ ๋ํด ๋ ์ ์๋ ์ฌ๋์ด ์ ๊ฐ ์ง๋ฉดํ ์ด๋ ค์์ ์ค๋ช ํ๋ ๋ฐ ๋์์ด ๋ ๊ฒ์ ๋๋ค.
Visual Studio Code๋ฅผ ์ด๊ณ ๋ค์ํ Alt+<%something%> ์กฐํฉ์ ๋๋ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ด๋ป๊ฒ ๋ฐ์ํ๋์ง ํ์ธํ๊ธฐ ์์ํ์ต๋๋ค. ๊ฑฐ์ ๋ชจ๋ ๊ฒฝ์ฐ์ Alt+Shift๋ฅผ ์ ์ธํ ๋ชจ๋ ์กฐํฉ์ด ์ด์ ์ ์์ง ์๊ณ ์๋ํ์ต๋๋ค. ๋๊ตฐ๊ฐ Alt๋ฅผ ๋๋ฅธ ํ Shift ํค๋ฅผ ๋๋ฅธ ๊ฒ ๊ฐ์๊ณ ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ด๊ฐ 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๋ก ์ ํํ๋ ๊ฒ์ ์ข์ํฉ๋๋ค. ์ด๊ฒ์ด ์ ๊ฐ ์ํ๋ ๋ฐฉ์์
๋๋ค. ๋ด ์๊ฒฌ์ ๊ณต์ ํ๊ณ ์ด ๋ฌธ์ ์ ์ง๋ฉดํ๋ค๋ฉด ์ด ๊ธฐ์ฌ๊ฐ ๋์์ด ๋ ๊ฒ์
๋๋ค.
์ถ์ฒ : habr.com