Проверка орфографии в OpenOffice.org

Буквально на днях появились ебилды для сборки OpenOffice.org из исходников. Бинарная сборка была доступна в portage почти сразу же после релиза. Но так сложилось, что я этой сборкой не пользуюсь. Поэтому приходится ждать ебилдов :)
Сразу после обновления выяснилось, что цифра 2 из названия всех исполнимых файлов офисного пакета исчезла. В результате kicker ругнулся на отсутствующий файл oowriter2, когда я попытался запустить Writer с панели.
Что самое неприятное, приходится каждый раз после установки OOO добавлять русские словари для проверки орфографии. Дело в том, что файл /usr/lib/openoffice/share/dict/ooo/dictionary.lst заменяется стандартным, в котором про русский язык ничего нет.
Оказывается, установку словарей и редактирование файла dictionary.lst можно автоматизировать и осуществить стандартными средствами Gentoo.

sudo emerge myspell-en myspell-ru
sudo eselect oodict set myspell-en myspell-ru

Собственно, всё :)

preved.png

Yakuake и Zsh

Yakuake — это quake-подобный эмулятор терминала, который использует konsole в качестве основы. Последняя на данный момент версия — 2.7.5.
При активной работе с yakuake очень неудобно, когда создаются вкладки с “неговорящими” именами вида ‘Shell No. XXX’. Так очень легко запутаться, особенно, если открыто более 7 вкладок. Чтобы это исправить, можно воспользоваться технологией DCOP.
Чтобы поменять имя вкладки, необходимо выполнить команду

dcop yakuake DCOPInterface slotRenameSession $DCOP_YAKUAKE_SESSION "текст"

Вместо текста у меня отображается моё текущее положение в файловой системе

dcop yakuake DCOPInterface slotRenameSession $DCOP_YAKUAKE_SESSION "`pwd`"

Версия для эстетов :)

dcop yakuake DCOPInterface slotRenameSession $DCOP_YAKUAKE_SESSION "`pwd | sed "s,^$HOME,~,"`"

Теперь осталось сделать так, чтобы при каждом выполнении новой команды в шелле, у нас обновлялась информация. В Zsh есть специальная функция precmd(), которой мы и воспользуемся. В ~/.zshrc необходимо добавить следующий код:

function precmd() {
if [ "$DCOP_YAKUAKE_SESSION" ]
then
dcop yakuake DCOPInterface slotRenameSession $DCOP_YAKUAKE_SESSION “`pwd | sed “s,^$HOME,~,”`”
fi
}

И ещё маленький штрих. По умолчанию Zsh не меняет title терминала, в отличие от bash, что создает некоторые неудобства. Это тоже легко исправляется. На просторах Сети был найден такой код:

function title() {
# escape ‘%’ chars in $1, make nonprintables visible
a=${(V)1//\%/\%\%}

# Truncate command, and join lines.
a=$(print -Pn “%40>…>$a” | tr -d “\n”)

case $TERM in
screen)
print -Pn “\e]2;$a @ $2\a” # plain xterm title
print -Pn “\ek$a\e\\” # screen title (in ^A”)
print -Pn “\e_$2 \e\\” # screen location
;;
xterm*|rxvt)
print -Pn “\e]2;$a @ $2\a” # plain xterm title
;;
esac
}

Чтобы title менялся перед выполнением команды, необходимо использовать другую функцию — preexec().

function preexec() {
title “$1″ “%m(%35<…<%~)”
}

Что получилось:
yakuake.png

Пара слов о настройке Xorg

Хочу поделиться решением некоторых проблем, возникших при настройке иксов.

Проблема первая
При переключении из иксов в консоль и обратно, индикаторы клавиатуры гаснут. Если включить/выключить какой-нибудь индикатор (NumLock, CapsLock, ScrollLock), cостояние восстанавливается. Появилось где-то с версии 6.8.

Как лечить:
Добавить опцию Option "Xleds" "1 2 3" в секцию InputDevice для клавиатуры.
Эта опция указывает, какие индикаторы могут контролироваться с помощью xset. Заодно и решает вышеуказанную проблему.

Проблема вторая
Я переключаю раскладку по CapsLock. При этом хочется, чтобы индикатор группы был Scroll LED. Переключение регистра по Shift+CapsLock, индикация по Caps LED. Только вот при нажатии на Caps, загораются оба индикатора.

Как лечить:
Как это ни странно, но опции должны быть такими:
Option “XkbOptions” “grp:shift_caps_toggle,grp_led:scroll,caps:internal,compose:rwin“

Но после запуска иксов надо переопределить код для CapsLock:
xmodmap -e 'keycode 66 = ISO_Next_Group Caps_Lock'

Использование экзотических юникодных символов в Xorg

Иногда, когда пишешь пост, хочется вставить какой-нибудь символ, типа © или ™, литературных кавычек « и » или буквы с ударением ó, á, а лезть за ними в таблицу символов слишком долго. Можно конечно воспользоваться специальным апплетом, из которого легко копируются в буфер обмена нужные сиволы. Но тогда придётся отрывать руки от клавиатуры, брать мышь, клацать на символе, а потом вставлять его в нужное место.
В Xorg существует т.н. Compose key, с помощью которой легко вводить различные экзотические символы и диакритику.
Read the rest of this entry »

Регулирование скорости чтения DVD

Когда смотришь фильм на DVD, естественным желанием является избавиться от всех посторонних шумов и наслаждаться звучанием, льющимся из мощных колонок и сабвуфера. Но иногда даже прекрасные звуки стрельбы  и рёв разнообразных монстров заглушает мерзкий гул, исходящий от маленького и неприметного DVD-привода.
Read the rest of this entry »

SCX-4200 и Gentoo

Решил я порадовать себя и в новом году купил многофункциональную железку SCX-4200 от Samsung. Умеет печатать, сканировать и работать как копир. По совместительству ещё негромко жужжит :) А холодными зимними вечерами (интересно, будут такие?) можно будет греться около этого агрегата :) Самое главное, что всё железо поддерживается в Линуксе.
Read the rest of this entry »

Список URL файлов для устанавливаемых пакетов в Gentoo

Понадобилось мне получить сабж. emerge -pf конечно выдаёт нужную информацию, но она избыточна.
Во-первых, вывод содержит урлы для всех файлов, несмотря на то, что они уже загружены и лежат себе спокойно в distfiles. Во-вторых, мне не нужны урлы зеркал. Я использую только http://gentoo.osuosl.org. Поэтому было принято решение это дело автоматизировать и вывод от лишнего почистить.
Read the rest of this entry »

Блокировка рекламы в Opera

Большой список адресов для фильтрации в различных форматах (adblock, squid, hosts, ipchains, iptables и др.) можно найти на http://pgl.yoyo.org/adservers/
Чтобы его добавить в Opera, выбираем в “list ad server hostnames” “opera url filter — in opera url filter ini file format” и жмём “go”. Для ленивых ссылка :) Теперь остаётся только сохранить содержимое в ~/.opera/urlfilter.ini.

Файл довольно большой, поэтому Opera начинает очень долго стартовать. Лично я пользуюсь небольшим (~40kb) списком, где фильтрация в основном по маске.

Learn 10 good UNIX usage habits

Весьма полезная статья.

Adopt 10 good habits that improve your UNIX® command line efficiency — and break away from bad usage patterns in the process. This article takes you step-by-step through several good, but too often neglected, techniques for command-line operations. Learn about common errors and how to overcome them, so you can learn exactly why these UNIX habits are worth picking up.

J2J: xmpp-транспорт

Читая ru_jabberru_jabber, наткнулся на упоминание xmpp-транспорта. Располагается он на jrudevels.org. Оказывается, очень полезная в хозяйстве вещь :) Этот транспорт позволяет объединять несколько аккаунтов в один с единым ростером. Удобно использовать его в jabber-клиентах, не умеющих подключаться сразу к нескольким аккаунтам, например в tkabber и bombus. Можно создавать целые каскады ростеров. Вот только JID собеседников в таком случае будет очень длинным и некрасивым.
Также теперь возможно сделать автоответчик для старого аккаунта, чтобы он оповещал пользователей о чем-нибудь важном.
Сюда можно вписать очень важное сообщение
Ещё J2J имеет поддержку GTalk. Можно получать уведомления о новых письмах, которые включают в себя тело письма. Отвечать пока нельзя, но, я думаю, и это будет реализовано.
Транспорт пока находится в стадии разработки и исходников нет. Но они появятся, как только будет релиз. Так что ждём с нетерпением, а разработчикам хочется сказать огромное спасибо! :)