Hatred's Log Place

DON'T PANIC!

Jan 16, 2010 - 1 minute read - programming

Medit: работает с FreePascal

Продолжаем цикл статей :simple_smile: ну и в предверии семинара.

Для начала создадим фильтр, вид его будет такой:

<filter id="FreePascal" name="FreePascal">
  <match what="stdout" pattern="(?P&lt;file&gt;[^:]+)<br/>((?P&lt;line&gt;<br/>d+)[,0-9]*<br/>) Error:.*" style="output-error" />
  <match what="stdout" pattern="(?P&lt;file&gt;[^:]+)<br/>((?P&lt;line&gt;<br/>d+)[,0-9]*<br/>) Fatal:.*" style="output-error" />
</filter>

В отличии от бейсика, файл синтаксиса для паскаля уже есть, поэтому здесь мы не будем делать каких-то движений.

После создаем инструмент Run Pascal, файлы - *.pas; тип - Команда оболочки; вывод - Панель вывода; фильтр - FreePascal, сам код такой:

fpc $DOC
if [ $? -eq 0 ]; then
  xterm -e "bash -c 'cd $DOC_DIR; ./$DOC_BASE; read -p <br/>"Нажмите ENTER для продолжения<br/>"'"
fi

После чего можно, для удобства назначить горячую клавишу, для удобства и привычки, я думаю, подойдет F9.

Что имеем в итоге: достаточно полноценную среду для обучения программированию на FreePascal, написанию терминальных программ с подстветкой синтаксиса, поддержкой русского языка, выводом диагностических сообщений компилятора с подстветкой строк с ошибками и быстрому переходу к этим строкам в редакторе.

Jan 15, 2010 - 1 minute read - linux

Mplayer и отсутствие xv

В продолжении этой темы вывод видео с -vo xv не увенчается успехом, и в X11 будет использоваться, по умолчанию, драйвер x11 - минус ровно один: не масштабируется видео к полному экрану. И xvinfo вас не порадует…

Вспомнил свою бытность на P100 и мало-мало памяти:

  • вывод видео через sdl
  • вывод audio через sdl
  • кеширование
  • и т.п.

В результате, получился такой конфиг ~/.mplayer/config

# видео-выход, посмотреть возможные: mplayer -vo help
vo=sdl
# audio-выход, посмотреть возможные: mplayer -ao help
ao=sdl
# Автоматическая синхронизация аудио и видео - следитие за процессором, на некоторых просто не успевает видео в высоком качестве декодироваться, отсюда возникает причина задержки, такое  лечится только апгредом
autosync=100
# Предварительное кеширование, для проигрывания интернет радио задавайте 512-1024, не больше
cache=8192
# ну это украшательство, просто цветной вывод, т.к. mplayer использую консольный, глаз рудается, да.
msgcolor=true

Ну в общем, в отсутствии xv такая конфигурация работает довольно прилично, правда видео в высоком разрешении ещё не проверял, но, как мне кажется, нетбук не для того предназначен.

ЗЫ с помощью -vo fbdev или -vo fbdev2 (кстати, чем они отличаются?) можно смотреть видео в консоли с фрейм-буффером, а с помощью -vo aa (ч/б) или -vo caca (более продвинуто) - втыкать видео в псевдографике.

Jan 14, 2010 - 4 minute read - linux

EeePC: uvesafb + родное разрешение в консоли и X11

Пришло время ядра 2.6.32 (уже 2.6.32.3) в core репозитория ArchLinux, да вот незадача: поломали они графику.

Проявляется так: через некоторое время работы, в иксах начинает дергаться экран, как в дерьмовом фильме, где после крутого взрыва на космическом корабле все мониторы взорвались, а последний, для связи с Землей, перед последним вздохом показывает дерганное изображение оператора с того конца. Еще через некоторое время графика фризится, на некоторых версиях иксовых дров (2.9.1) это финиш, для тех что из git - можно переключиться в консоль и там вырубить иксы, да вот запустить их не получится до полной перезагрузки. Да это не паника - система продолжает работать.

Если задать опцию powersave=0 для модуля i915, проявление вышеописанных багов несколько снижается, но не исчезает. Кроме того, после suspend-to-ram фейл появляется почти сразу.

Подумав, решил на время отказаться от родных драйверов в сторону vesa, мне главное нормальная и стабильная работа (да, Арч, что бы моск не заплыл :))

Собственно, все свелось к следующему

Для начала ставим пакет v86d из extra: pacman -S v86d

После установки редактируем файл /etc/modprobe.d/uvesafb.conf на предмет нужного нам разрешения экрана, ставим сразу (верно для моего EeePC 1000H) 1024x600-32

И загружаем модуль usevafb: modprobe uvesafb

Ииии облом :) получим разрешение 800x600 и растянутое изображение - приятного мало.

Связано с тем, что видеобиос на некоторых чипах не поддерживает переключение в нативное разрешение, глюк, согласно статье в вики: http://wiki.archlinux.org/index.php/Uvesafb#Uvesafb_and_915resolution

Там же находим способ как обходить - использовать хак под названием 915resolution лежит он в AUR, только берите версию 915resolution-static - там содержится патч для поддержки 945GME. Собираем этот пакет и ставим.

Дальше запускаем: sudo 915resolution -l

смотрим какие режимы предоставляет. Я для переопределения под номером 54 (в hex виде) - бывший 1024x768-32.

Если поддержки чипа нет - то будет об этом сказано, в этом случае - гуглите, патчите.

Дальше, нужно соблюдать порядок:

  • сначал хачим биос:915resolution 54 1024 600
  • потом уже загружаем модуль uvesafb:modprobe usevafb (при наличии настройки в /etc/modprobe.d/uvesafb.conf)

В случае ArchLinux данную загрузку можно осуществить через initrd, для этого:

  1. редактируем хук: /lib/initcpio/hooks/915resolution на предмет нужного режиме (смотрим выше что написал, про хачим биос)
  2. редактируем /etc/mkinitcpio.conf и дабавляем в строку HOOKS следующие хуки: 915resolution и v86d (сначала первые потом второй - порядок важен)
  3. запускаем: mkinitcpio -p kernel26

Все, при перезагрузке все станет на свои места, либо вручную вызвать нужные команды. Кстати на официальном сайте uvesafb есть информация (http://dev.gentoo.org/~spock/projects/uvesafb/faq.php) как при работе выключить фреймбуфферную консоль и вернуть текстовую моду:

Can I unload the uvesafb module and switch back to a text mode?

Yes, provided your Video BIOS supports saving the VBE state. This is supported by the vast majority of the currently available BIOS-es. If yours does not support this feature, you will get an appropriate warning in the kernel log. In order to switch back to a text mode, you will need to detach fbcon: echo 0 > /sys/class/vtconsole/vtcon1/bind (make sure the VT_HW_CONSOLE_BINDING kernel config option is selected, otherwise this will do nothing). After you do that, you should be automatically switched back a text mode console. You will also be able to unload uvesafb and fbcon if they have been built as modules.

Уже мы все такие радостные, да? :) а теперь сделайте suspend-to-ram, ога, у меня не проснулось :) точно проснулось но графика слетела. В попытках исправить (для засыпания использую pm-utils с модулем uswsusp) поместил два скрипта в /etc/pm/sleep.d

  • скрипт 10_915resolution:```bash#!/bin/bash

case $1 in hibernate|resume) /usr/sbin/915resolution 54 1024 600 ;; esac

  * скрипт **10fbcon**:```bash#!/bin/bash

case $1 in
    hibernate|resume)
    echo 0 > /sys/class/graphics/fbcon/subsystem/fb0/state
    ;;
esac

Первый запустит хак, т.к. после сна/гибернейта он имеет тенденцию сбрасываться, а система находится в тупняке - а чо происходит то! Второй, скорее традиция - когда после сна консоль не просыпалась, исправляло ситуацию.

В общем, пока все, огромная просьба - протестить, отписаться.

Да! после сна, бывает черный экран - переключаемся в консоль и обратно. И для иксов достаточно прописать нужный режим (Modes “1024x600”) и драйвер vesa.

ЗЫ жду когда родные дрова починят, поставил бы Торвальдс Арч, что ли :)

Jan 13, 2010 - 1 minute read -

"Проявка" RAW

Что-то последнии посты были бредом чистой воды, пора исправлять ситуацию.

Итак начнем с того, что буквально вчера-сегодня по RSS с http://linuxgraphics.ru пролетела новость о программе darktable.

Собственно она позиционируется как замена Адобе Лайтруму. Не знаю на сколько она соотвутствует данному критерию, сам до сих пор использую UFRaw, нужно будет попробовать и её.

Итак, ссылки в тему:

Обзор хоть и беглый, затрагивает и другие RAW конвертеры и обращает на основные недостатки.

В ArchLinux данной программы нет в репозиториях, есть в AUR:

Jan 6, 2010 - 1 minute read - life

Что я достиг в жизни. Философское

Да, через пару дней, в цифрах будет уже видно что пошла вторая четверть века человека (если принять за век 100 лет). Ну и тут надоумили, буквально меньше часа назад:

  • Солидная работа/начальник отдела/свой бизнес/хороший заработок - нет
  • Видный деятель - нет
  • Свой дом/квартира - нет
  • Машина - нет
  • Семья - нет

Что-то сплошные нули. И что считал своими достижениями, озвучивая вслух - самому смешно становится, или пытаюсь представить - а что если меня бы тут не было? И рисуется картинка: а ничего не изменилось бы.

И мыслей никаких.

UPD: 2014 год, и почти по всем пунктам - true, а оглядываясь назад - още посрать: “ща нет, потребуется - будет”. ЧТД.

Dec 28, 2009 - 1 minute read -

Пиарим

http://leksandra.livejournal.com/69576.html

Бесплатный шрифт Public Type, оф. релиз. На данный момент только Sans, обещают сделать и Serif, поддержка всех языков СНГ.

Dec 27, 2009 - 1 minute read -

BibTeX + ГОСТ + UTF8

В поставке TeXLive! есть стилевые файлы для BibTeX реализующие работу с библиографическими записями согласно стандартов ГОСТ 7.80-2000((БИБЛИОГРАФИЧЕСКАЯ ЗАПИСЬ. ЗАГОЛОВОК. http://ru.wikisource.org/wiki/%D0%93%D0%9E%D0%A1%D0%A2_7.80%E2%80%942000)) и ГОСТ 7.1-84((БИБЛИОГРАФИЧЕСКАЯ ЗАПИСЬ. БИБЛИОГРАФИЧЕСКОЕ ОПИСАНИЕ. Устарел, после выхода ГОСТ 7.1-2003. Стили требуют переработки. http://ru.wikisource.org/wiki/%D0%93%D0%9E%D0%A1%D0%A2_7.1%E2%80%942003)): gost780s/gost71s((аналогичные стандартному стилю plain, библиографические записи помечаются номерами и сортируются в алфавитном порядке)) и gost780u/gost71u((аналогичные стандартному стилю unsrt, без сортировки, порядок определяется порядком цитирования в тексте)). Всё хорошо, но камрад Морфей из местной группы пользователей Linux столкнулся с тем, что они не работают с UTF8.

Беглый поиск привел на сайт “TeX в ЯрГУ” в раздел “Программы”, где я нешел следующее:

UTF8-версия BIBTEX-стилей для оформления библиографии по ГОСТ

В архиве 4 стилевых файла:

  • utf8gost71s.bst
  • utf8gost71u.bst
  • utf8gost780s.bst
  • utf8gost780u.bst

Назначение аналогично им коллегам для 8битных кодировок.

Кроме того там же лежит пример использования (в директории test), так, что думаю, никаких сложностей возникнуть не должно.

Dec 26, 2009 - 1 minute read - linux

Copy/Paste в консоли

Идея не моя: http://muhas.ru/?p=19

Собственно говоря, малость другой вариант, может более громоздкий, нно:

c_buffer="/tmp/ccopy.$USER"
ccopy()
{
  cat /dev/null > $c_buffer
  chmod 600 $c_buffer
  # сделано так, потому как файлы могут содержать пробелы в имени
  while [ $# -gt 0 ]
  do
    echo `pwd`/$1 >> $c_buffer
    shift
  done
}
cpaste()
{
  echo "Paste files:"
  cat $c_buffer | while read line
  do
    echo $line
    cp -a "$line" ./
  done
}

Записываем это в файл ~/.bashrc и запускаем новую копию оболочки.

Для копирования файлов/директорий из текущего каталога в буффер ccopy file1 “file with spaces” directory2

Переходим в целевую директорию и делаем: cpaste

Возможные доработки:

  1. обработка полных путей файлов
  2. поддержка регистров

Повторюсь - идея комрада Muhas :laughing:

Dec 26, 2009 - 1 minute read - life linux

Статья в OpenSource

Вышел выпуск 54 электронного журнала “OpenSource” (приложение к журналу “Системный администратор”), а в нем опубликована моя первая статья, можно сказать - первый опыт публикации вообще: «Собираем свое окружение рабочего стола». Скачать выпуск можно: http://osa.samag.ru/info/OpenSource054.zip

Dec 10, 2009 - 2 minute read -

Редактор для работы с LaTeX

Испробывал их не много, но принципиально разные. Начинал в Kile, потом перебрался на Emacs, потом обратно на Kile.

В Kile устраивало все, кроме сильной привязки к KDE. В Emacs же стало что-то лениво разбираться дальше. Другие редакторы по тем или иным причинам не устраивали.

Таким образом поиск привел к Texmaker, написал который первоначальный автор Kile - Pascal Brachet. И всем он повторял первоначальный Kile, да вот не было в нем такой удобной функциональности как Шаблоны, мастер создания документа эту проблему не решает. И вот недавно натыкаюсь на проект TexmakerX, который является форком Texmaker с дополнительными патчами.

Сайт программы: http://texmakerx.sourceforge.net/

Для ArchLinux доступен в AUR.

У меня вся установка уложилась в три команды:

cd ~/build
aur texmakerx
pacman -U texmakerx/texmakerx-1.9.3-1-i686.pkg.tar.gz

aur это мой скриптик, взять можно в GIT: http://hatred.homelinux.net/git/scripts.git

git clone http://hatred.homelinux.net/git/scripts.git/

Внешний вид:

Краткий перечень возможностей:

  • шаблоны
  • быстрый доступ к различным символам (типа стрелок)
  • быстрая сборка
  • доступ к основным командам LaTeX через меню
  • отдельное меню для работы с математикой
  • пользовательские теги и команды (бывает удобно, хотя непонятно почему количество ограничено…)
  • для документа разбросанного по многим файлам, можно определить Мастера - т.е. при запуске отстройки в качестве параметра будет передавать не имя файла в текущем буфере, а имя Мастер-документа.
  • подстветка синтаксиса
  • автодополнение команд
  • проверка орфографии
  • закладки, нумерация строк и пр. удобности нормального редактора кода

Ну и плюс, редактор, как и его прародитель - Texmaker - кроссплатформенный.

Dec 10, 2009 - 1 minute read -

Автодополнение адреса при вводе в Firefox

Меня просто бесит как это сделано в Firefox 3.x.x. Тупит, тормозит. Сегодня предпринял меры по некоторой оптимизации в результате получилось следующее:

  1. открываем about:config в адресной строке
  2. устанавливаем следующие параметры: * browser.urlbar.matchOnlyTyped в true (нужно создать этот параметр, тип bool) - отключит поиск по заголовкам сайтов, оставит только по URL * browser.urlbar.richResults в false (этот параметр так же нужно создать вручную) - влючит старый вид выпадающего диалога.

Полезные ссылки по теме:

И вопрос общественности, можно ли сделать что бы выпадающий список не появлялся автоматически, а вызывался, допустим по нажатию какого нить хот-кея?

Dec 6, 2009 - 1 minute read - programming

Серия статей на IBM DeveloperWorks "Программирование на Qt"

Впринципе очередной пересказ документации и прочих книжек, но пусть тут будет, достаточно подробно и интересно: