Категории

среда, 30 января 2013 г.

Ubuntu Unity Midnight Commander и F10

Для возвращения нормальной работы в терминале кнопки F10 нужно выполнить команды в терминале:
Ubuntu$ gconftool --set --type bool "/apps/gnome-terminal/global/use_menu_accelerators" "false"
Ubuntu$ gconftool --set --type string "/apps/compiz-1/plugins/unityshell/screen0/options/panel_first_menu" Disabled
А для Ubuntu 12.04 понадобится создать файл gtk.css в папке .config/.gtk-3.0 в домашнем каталоге:
Ubuntu~$ mkdir -p .config/gtk-3.0
Ubuntu~$ cat >>.config/gtk-3.0/gtk.css<<_EOF
@binding-set NoKeyboardNavigation {
unbind "F10"
}

* {
gtk-key-bindings: NoKeyboardNavigation
}
_EOF
Затем нужно завершить сеанс и войти заново - теперь клавиша F10 работает так, как и хотелось.
P.S. если ничего не получилось, то на крайний случай можно пользоваться комбинацией клавиш ESC+0, кстати эти комбинации работают и для других F кнопок.

Ubuntu Gnome-Terminal - включение beep enable system-beep, audible ping, bell, подавать гудок.

Первым делом необходимо установить утилиту beep:
Ubuntu~$ sudo apt-get install beep
Затем нужно разрешить загрузку модуля pcspkr:
Ubuntu~$ sudo sed -i'' -e 's/blacklist pcspkr/#blacklist pcspkr/' /etc/modprobe.d/blacklist.conf
Либо, если Beep поддерживает звуковая карта ноутбука, попробовать активировать эту функцию:
Ubuntu~$ cat >>/etc/modprobe.d/alsa-base.conf<<_EOF

#Enable Beep
#https://bugs.launchpad.net/ubuntu/+source/beep/+bug/144022
options snd-hda-intel power_save=10 power_save_controller=Y index=0 beep_mode=1
_EOF
Для включения сигналов в gnome-terminal нужно включить в metacity параметр audible_bell и в самом gnome-terminal проверить наличие галочки "Подавать гудок".
Я сделал это через консоль:
Ubuntu~$ gconftool-2 --set --type bool "/apps/gnome-terminal/profiles/Default/silent_bell" "false"
Ubuntu~$ gconftool-2 --set --type string "/apps/metacity/general/audible_bell" "on"
Ubuntu~$ gsettings set org.gnome.desktop.wm.preferences audible-bell 'true'
Ubuntu~$ gconftool-2 --set --type string "/desktop/gnome/peripherals/keyboard/bell_mode" "on"
Ubuntu~$ gsettings set org.gnome.settings-daemon.peripherals.keyboard bell-mode 'on'
Проверяем:
Ubuntu~$ echo -e "\a"
Ubuntu~$ echo -e '\a'
Ubuntu~$ ping -a ya.ru
У меня после этих манипуляций был слышен звук, как и в системной консоли.
Регулировать громкость сигнала можно через alsamixer в консоли - параметр Beep, у меня он почему-то был почти около нуля и я добавил громкости.
Но радоваться рано, после перезагрузки гудок пропал. Выяснилось, что если отключить гудок и включить его снова, то все работает, но до следующей перезагрузки :(
Ubuntu~$ gsettings set org.gnome.desktop.wm.preferences audible-bell 'false'
Ubuntu~$ gsettings set org.gnome.desktop.wm.preferences audible-bell 'true'
Ubuntu~$ echo -e '\a'
Немного подумав, сделал такой костыль:
Ubuntu~$ cat >>~/.bashrc<<_EOF
if [ -n $DISPLAY ]; then
    gsettings set org.gnome.desktop.wm.preferences audible-bell 'false'
    gsettings set org.gnome.desktop.wm.preferences audible-bell 'true'
fi
_EOF
Буду крайне признателен, если кто-то подскажет более изящное решение.

P.S. Может кому пригодится, приведу еще дополнительные опции из gconftool и gsettings:
Ubuntu~$ gsettings list-recursively | grep bell
org.gnome.desktop.wm.preferences audible-bell true
org.gnome.desktop.wm.preferences visual-bell false
org.gnome.desktop.wm.preferences visual-bell-type 'fullscreen-flash'
org.gnome.settings-daemon.peripherals.keyboard bell-custom-file ''
org.gnome.settings-daemon.peripherals.keyboard bell-duration 100
org.gnome.settings-daemon.peripherals.keyboard bell-mode 'on'
org.gnome.settings-daemon.peripherals.keyboard bell-pitch 400

Ubuntu~$ gconftool -R /desktop | grep -B4 bell
  /desktop/gnome/peripherals:
   /desktop/gnome/peripherals/keyboard:
    repeat = true
    delay = 500
    bell_mode = off
    bell_custom_file = (значение не установлено)
    remember_numlock_state = true
    click_volume = 0
    click = true
    bell_pitch = 400
    bell_duration = 100

Ubuntu~$ gconftool -R /apps | grep -B20 bell

Ссылки по теме:
1. Comment 50 for bug 486154
2. Trying to ENABLE bell in gnome-terminal
3. Comment 18 for bug 144022