Мая пераключалка BY-EN / RU-EN
Добавлено: 15 июл 2006, 11:54
Паколькі вырашыць пытанне пра змену пераменнай асяроддзя з bash-скрыпта не атрымалася, прыйшлося выкарыстоўваць часовыя файлы.
Увесь час для вырашэння пераключэння паміж раскладкамі BY-EN / RU-EN я карыстаўся праграмай kxkb. Гэта вельмі зручна, асабліва ў параўнанні з Windows-кім метадам, калі дзеля таго каб дабрацца патрэбнай раскладкі, трэба перагортваць іх усе.
Тут жа дастаткова было настроіць hotkeys на пімпы Alt+(кропка) (для пераключэння паміж By-En / Ru-En), а ужо ў межах беларускай ці расейскай раскладцы пераключаюся з кірыліцы на лацініцу звычайным Alt+Shift.
Усё гэта рабіла праграма kxkb, але апошнім часам мне хочацца зняць нагрузку з памяці і вызваліць тыя 10 Мб, якія яна займае.
Таму мной быў напісаны скрыпт, які робіць тое ж самае, што і kxkb, але не вісіць увесь час у памяці. Яго толькі трэба павесіць на зручныя hotkeys.
Аднізнае, чаго не хапае - гэта якой-небудзь індзікацыі пра бягучую раскладку. Я спрабаваў запусціць "setleds +caps", але яно чамусьці не запрацавала. Ну, ці можна павесіць гэтую пераключалку на пімпу CapsLock, тады лямпачка сама будзе уключацца ды выключацца .
Выкладваю сюды... Бо можа яшчэ каму спатрэбіцца?
Увесь час для вырашэння пераключэння паміж раскладкамі BY-EN / RU-EN я карыстаўся праграмай kxkb. Гэта вельмі зручна, асабліва ў параўнанні з Windows-кім метадам, калі дзеля таго каб дабрацца патрэбнай раскладкі, трэба перагортваць іх усе.
Тут жа дастаткова было настроіць hotkeys на пімпы Alt+(кропка) (для пераключэння паміж By-En / Ru-En), а ужо ў межах беларускай ці расейскай раскладцы пераключаюся з кірыліцы на лацініцу звычайным Alt+Shift.
Усё гэта рабіла праграма kxkb, але апошнім часам мне хочацца зняць нагрузку з памяці і вызваліць тыя 10 Мб, якія яна займае.
Таму мной быў напісаны скрыпт, які робіць тое ж самае, што і kxkb, але не вісіць увесь час у памяці. Яго толькі трэба павесіць на зручныя hotkeys.
Аднізнае, чаго не хапае - гэта якой-небудзь індзікацыі пра бягучую раскладку. Я спрабаваў запусціць "setleds +caps", але яно чамусьці не запрацавала. Ну, ці можна павесіць гэтую пераключалку на пімпу CapsLock, тады лямпачка сама будзе уключацца ды выключацца .
Выкладваю сюды... Бо можа яшчэ каму спатрэбіцца?
Код: Выделить всё
#!/bin/bash
KBL_FILE="/tmp/kbl";
DEFAULT_LAYOUT='BY';
if
[ -r $KBL_FILE ]
then
KBL=`cat $KBL_FILE`;
else
KBL=$DEFAULT_LAYOUT;
echo $KBL > $KBL_FILE;
fi
case $KBL in
BY)
setxkbmap -model pc105 -layout us,ru -variant ,winkeys
KBL="RU";
echo $KBL > $KBL_FILE;
;;
RU)
setxkbmap -model pc105 -layout us,by -variant ,winkeys
KBL="BY";
echo $KBL > $KBL_FILE;
;;
esac