Клавдія Йуесбе

12s коментарів

Клава на пузі дістала вкрай. Тобто, сама клава чудова, усе як я люблю — довгі Enter з Backspace, Delete не одразу над стрілочками, а вище — через порожній проміжок, клавіші не впритул одна до одної, і тиснути їх приємно, бо вони мов живі — з-під пальців хочуть вилізти і так проникливо цокають. Уся така, як потрібно мені. Це повна відповідність характерів, повна гармонія. І на пузі моєму вона не випадково — не інакше, доклалися вищі сили.
Але послухайте. Коли сидиш на дивані з нетбуком і вештаєш тирнетрями завзято працюєш, пальцям іноді обридає тертись один об одного (дуже тісна вбудована клавіатура). Тоді із шухляди дістається моя чарівна й вірна, ніжно береться за штекер, обережно та впевнено встромляється в роз’єм нетбука. Скільки краси, скільки глибинного змісту, яка єдність! Нам буде зараз так добре!
І тут настає реальна холєра. Мої налаштування розкладок зриваються і летять у вирій, залишаючи мене з одним лише богомєрзким EN_US. Нє, звісно, можна пару раз клацнути і знову мати щастя, але це ж неподобство. Після третього разу здається, що краще б вона сказала, що їй болить голова чи що сьогодні ну ніяк не можна.
Я її приборкав. Хоча ні, я приборкав нетбук. Він, певно, заздрив нашому щастю. Тепер у нас знову повна гармонія, я її ніжу пальцями, а вона мені гарно цокає (і у нас з нею виходять гарні здоровенькі розовощокі сторінки перекладів).


Далі власне нотатка по ходу, протокол приборкання, щоб не забути, якщо раптом від обурення нетбук знову здохне, чи якщо я усе ж знайду час налаштувати собі десктоп. Нотатка буде нецікава тим, у кого свідомість спотворена Windows.

Отож,
Маємо:

  • Debian GNU/Linux Squeeze
  • XFCE 4.6.1
  • xfce4-xkb-plugin 0.5.3.2-1
  • xorg 1:7.4+4

Суть проблеми: Налаштовуємо плугін (аплетик панелі) на використання потрібних розкладок і способи перемикання між ними (і композитна клавіша, кому цікаво). Система без xorg.conf, додаткових конфігурацій для HAL стосовно клавітури нема. При під’єднанні зовнішньої клави всі налаштування аплета (чи що було налаштовано через setxkbmap) десь діваються, задіюється лише одна розкладка EN_US, додатові опції відключаються.

Вирішення: Недовгий пошук привів до того, що це діло керується файлом /etc/default/keyboard (якщо є). Тобто реально керується правилом HAL у файлі /usr/share/hal/fdi/policy/10osvendor/debian-x11-keymap.fdi, який читає /etc/default/console-setup, а той вже читає /etc/default/keyboard
У мене ось так:

XKBMODEL=”pc104″
XKBLAYOUT=”us,ru,ua”
XKBVARIANT=”,typewriter,unicode”
XKBOPTIONS=”grp:caps_toggle,grp_led:caps,lv3:ralt_switch,compose:rctrl”

Далі перезавантажити машину або перезапустити HAL:

su -c /etc/init.d/hal restart

Всі інші способи (наприклад, створення свого правила для HAL чи редагування готового) слід вважати на Debian некошерними і шкідливими для карми.

Другий монітор для Aspire One

5s коментарів

Сидячи на дивані, біля якого стояв вільний кавовий столик, задумалось приладнати другий монітор до мого нетбука з лінуксом. В загашниках лишилась стара CRT 17-ка, на столику цілком вміщується.
Аби кожного разу, коли вона підключається до нетбука, не треба було перезапускати Х, наробив ось такий скриптик. Він запитує про розширення, частоту оновлення і положення монітора відносно нетбука, і з зібраними параметрами запускає xrandr. Для роботи скрипта треба лише xrandr i zenity

#!/bin/sh
/usr/bin/xrandr | grep "VGA connected"
if [ $? = 0 ] ; then
zenity --info --title "VGA status" --text "VGA connected, select position, resolution and refresh rate" || exit 0
#
#create $resolution, or exit if cancelled
resolution=`zenity --title="resolution" --list --radiolist --column "select" 
    --column "resolution" TRUE 1024x768 FALSE 800x600`
if [ $? = 1 ]; then
exit 0
    #create $refresh, or exit if cancelled
    else
    refresh=`zenity --title="refresh" --list --radiolist --column "select" 
    --column "rate" TRUE 85 FALSE 75 FALSE 60`
    if [ $? = 1 ]; then
    exit 0
        #create $position, or exit if cancelled
        else
        position=`zenity --title="position" --list --radiolist --column "select" 
        --column "where" TRUE "right-of LVDS" FALSE "left-of LVDS"`
        if [ $? = 1 ]; then
        exit 0
            #run xrandr with collected parameters
            else
            /usr/bin/xrandr --output LVDS --auto 
            --output VGA --mode $resolution --rate $refresh --$position
        fi
    fi
fi   
else
zenity --title "VGA status" --warning --text "No VGA connected, back to single screen"
/usr/bin/xrandr --output LVDS --auto --output VGA --off
fi