Ratpoison/Розширення можливостей
ratpoison в його першородній величі ніхто не використовує. Часто постають задачі, як от: - кілька робочих столів - трей (наприклад, ІМ іконка, зараяд батареї, час, розкладка) - нормальна консоль (на заміну тому однорядковому шеллу) - додаткові налаштування X сервера (ну у ratpoison немає графічного конфігуратора системи, немає!)
Перша задача вирішується просто, скрипт rpws йде разом з rp у поставці. А ось інші задачі - це майже макропроблеми. 1) Трей Для організації трею потрібно запустити якийсь трейер у режимі "щуроцид, ігноруй трейер!", відділити від екрану rp 20-30 пікселів з однієї із сторін і помістити туди наш трейер. Власне, для даних цілей підходить програма trayer, дебіанівська здається. - прописуємо у ~/.xinitrc
( sleep 1; \ trayer --align right --edge bottom --distance 0 \ --expand false \ --transparent true --alpha 128 --tint 0 \ --SetDockType true --SetPartialStrut true ) &
exec dbus-launch --exit-with-session ratpoison exec ratpoison Ну, я десь скачав це, вставив і воно запрацювало. - прописуємо в ~/.ratpoisonrc unmanage panel set padding 0 0 0 26 Наш трейер чомусь називається panel... Ну й нехай, відділимо йому область 1680*26 пікселів внизу екрану.
Власне, все) Помічено кілька проблем. - Якщо перезапустити ratpoison, то трейер стає уже managed і втикається по центру екрану. Це так дошкуляє, що доводиться робити рестарт X, благо він у мене на хоткеї Insert-Break. З цим треба щось робити, і перехід на Гном/Кеди/Аеро - це не вихід. - проблеми з fullscreen програмами. Не всіма, наприклад rdesktop може загребсти весь екран, а Wine+TrackMania United Forever - ні. А хотілось би навпаки. - треба багато розбиратись, як нормально розширити даний трейер
2) Нормальна консоль Під цю тему підходить також вибиралка вікон. По-змовчуванню вони майже повнофункціональні, проте достатньо голімі. Хотілось би їх замінити, і це можливо зробити (як кажуть в інеті), проте я так і не зміг цим зайнятись. Легше уже звикнути до незручного... Нехай хтось допише даний розділ! Допишеш, ок?
3) Перемикання розкладки Як сказав один "Жаль, що я не народився американцем, так би проблем з розкладками не було". ratpoison написав також якийсь англієць, тому він зовсім не передбачив проблем з перемиканням розкладки. Власне, перемкнути її не проблема, ось скрипт який перемикає по Alt-Shift мої розкладки:
if [ `setxkbmap -print | grep xkb_symbols | awk '{print $4}' | awk -F"+" '{print $2}'` = us ] ; then echo "EN"; echo "changing to RU..."; setxkbmap ru ; xset led named "Scroll Lock" else if [ `setxkbmap -print | grep xkb_symbols | awk '{print $4}' | awk -F"+" '{print $2}'` = ru ] ; then echo "RU"; echo "Changing to UK..."; setxkbmap ua ; xset led named "Scroll Lock" else echo "UK"; echo "Changing to US..."; setxkbmap us ; xset -led named "Scroll Lock" fi; fi
Проте з ним є проблеми: індикатор скроллока конфліктить з індикатором нум і капслока + найстрашніше - на неанглійській розкладці непрацюють хоткеї! Як бачте, доводиться знову ж таки розбиратись. Можна і не використовувати руску розкладку, враховуючи що теперішня стандартна українська містить символи русского алфавіту, достатньо тільки використати праву клавішу Alt: ы = правий Alt+і , э = правий Alt+є і т.д.
Не так давно появилася програма axkb (або ще краще qxkb), яка ідеально підходить для переключання розкладки клавіатури в менеджерах, які можуть мати трей. Оскільки ми можемо запустити трей в Ratpoison, то і, відповідно, запуститься і axkb (qxkb). Для цього достатньо прописати запуск в ~/.ratpoisonrc як
# програми, що запускаються при завантаженні exec axkb # наступна програма
На превеликий жаль, в ній теж існують проблеми з гарячими клавішами, в чому, безсумнівно, винне непідтримування юнікоду в Ratpoison.
4) Налаштування X Це тема окремої книги. У цьому плані Gnome/KDE рулять - автоматично конфігурують X-сервер. Мені ж довелось троха погуглити самому: xset -b xset +fp /usr/share/fonts/local xset fp rehash xset r rate 210 Чорт його знає, що воно робить, хоча ні, останній рядок задає чутливість клави. Досить цікаво ним побавитись )