воскресенье, 20 декабря 2009 г.

lilypond: Интеграция музыки и текста - 2 часть

Куличкин Блог - набор нот на компьютере. Введение в lylipond, дает нам более правильное обрамление лирики и текста в партитуре созданной в лилипонде и вывод pdf средствами самого lilypond'a, a не вставки изображения нот при помощи lilypond-book. Пример разбирайте сами, можете сравнить с тем, что до этого делал я (иногда тоже полезно). Файл с комментариями так что останавливаться на этом не будем. Вот еще один пример, который дает pdf-вывод которого я хотел добиться от lilypond'a, но мог такое сделать только в MusiXTeX.

P.S. еще раз спасибо "электронным семечкам" и не обращайте внимание на лишний 4-5 куплеты, повторы только для примера...

вторник, 15 декабря 2009 г.

lilypond-book: Интеграция музыки и текста

Получил желаемое, может кому пригодится: обвернем партитуру lilypond'a в текст при помощи latex
Спасибо документации lilypond'a  и Олегу Шмелеву который еще раз подтолкнул к мучениям с ним. И я таки разобрался со своей проблемой. Она оказалась в том, что в пути не должно быть рус. каталогов и тогда все генерится! lilypond-book не понимает русский и из за этого не создавался example.tex
~/партитуры/example.lytex - не будет работать
~/scores/example.lytex - сработает! = example.tex
Создать файл example.lytex
lilypond-book --output=out --pdf example.lytex
cd out
latex example.tex
dvipdf example.dvi и получаем example.pdf
N.B. pdflatex example.tex действительно убивает кир. текст!!!

Продемонстрирую метод включения в текстовый документ нотных вставок на примере файла example.lytex следующего содержания:

\documentclass[a4paper]{article}
\usepackage[utf8x]{inputenc}
\usepackage{ucs}
\usepackage[T2A]{fontenc}
\usepackage[ukrainian,russian,english]{babel}
\pagestyle{empty}

\setlength{\parindent}{0mm}
\setlength{\textwidth}{170mm}
\setlength{\textheight}{260mm}
\setlength{\topmargin}{-25mm}
\setlength{\oddsidemargin}{-1mm}

\begin{document}
\begin{flushleft}
Церковний рік\hspace{\stretch{1}}Вознесіння
\end{flushleft}

\begin{center}
{\Large\bf 43. Не сумуйте, Божі діти}\\
\end{center}

\begin{flushleft}
Український Євангельський співаник\hspace{\stretch{1}}STUTTGART\\
Станиславів, 1933\hspace{\stretch{1}}C.F. Witt, 1660-1716
\end{flushleft}

\begin{lilypond}
% This document was generated by Canorus, version 0.7
\version "2.12.2"

% Staff1Voice1
ContextZeroVoiceZero = \relative c' {
\clef "treble" \key f \major \time 4/4 c4 c f f | g g a f | c' c d bes | g c a2 | a4 a g a | f g f e | f d c f | f e f2 \bar "|."
}

% Staff1Voice2
ContextZeroVoiceOne = \relative c' {
\clef "treble" \key f \major \time 4/4 c4 c a c | d c c c | g' f f f | f e f2 | f4 f e e | d d c c | c bes a a8( bes) | c4 c c2
}

% Staff2Voice1
ContextOneVoiceZero = \relative c' {
\clef "bass" \key f \major \time 4/4 a4 g f f | f e f a | c a bes d | c c c2 | d4 a bes a | a bes a g | f f f f | g8( a) bes4 a2 \bar "|."
}

% Staff2Voice2
ContextOneVoiceOne = \relative c {
\clef "bass" \key f \major \time 4/4 f4 e d c | bes c e f | e f bes, bes | c c f2 | d4 d d c | d bes c d | a bes f' d | c c f2
}

\score {
<<
\new Staff {
<<
% Staff1Voice1
\new Voice = "ContextZeroVoiceZeroVirtual" { \voiceOne \ContextZeroVoiceZero }
\addlyrics { Не су- муй- те, Бо- жі ді- ти, і не лий- те в_смут- ку сльоз,
Що воз- ніс- ся у бла- ки- ті з_Є- ле- о- ну Спас Хрис- тос, }
\addlyrics { Не су- муй- те, а бод- ріть- ся: Зі- шле Спас із Не- ба вам
Ду- ха прав- ди, тож крі- піть- ся, жнив ба- га- тих жде ваш лан. }
% Staff1Voice2
\new Voice = "ContextZeroVoiceOneVirtual" { \voiceTwo \ContextZeroVoiceOne }
>>
}
\new Staff {
<<
% Staff2Voice1
\new Voice = "ContextOneVoiceZeroVirtual" { \voiceOne \ContextOneVoiceZero }
% Staff2Voice2
\new Voice = "ContextOneVoiceOneVirtual" { \voiceTwo \ContextOneVoiceOne }
>>
}

% Voice assignment:
\set Score.melismaBusyProperties = #'()
>>
}
\end{lilypond}

\begin{enumerate}
\item[3]Не сумуйте ж, Божі діти,\\
І не бійтесь бур, погроз.\\
Бо з Небес --- з висот, з блакиті,\\
Стереже вас Бог Христос.
\end{enumerate}

\vspace{\stretch{1}}\dag Павло Богмат
\hspace{\stretch{1}}\emph{Lilypond+}\LaTeX

\end{document}


P.S. Осталось подогнать шрифт, чтобы в нотах и стихах внизу он был одного размера. Но все же MusiXTeX лучше Lilypond'a, сразу создает ноты и обрамляется текстом в LaTeX без проблме, а не вставляет графику с заморочками lilypond'a, хотя синтаксис сложный. IMHO.
P.P.S. Я знаю что \usepackage[T2A]{fontenc} для UTF-8 не нужен, но иначе не получалось...


суббота, 12 декабря 2009 г.

X.org уходит с HAL :-)

Вот дошли руки и до правильных решений :-)
Как я уже писал ранее:
Осталось "сделать" переключатель клавы в Х11 для fluxbox!!!
В скрпит запуска флукса ~/.fluxbox/startup прописать:
setxkbmap "us,ru,ua" ",winkeys,winkeys" "grp:menu_toggle,grp_led:scroll"
Раньше, переключение клавиатуры, работало без этого костыля, но другие варианты не помогали или я еще не нашел правильный ;-)
Как оказалось дело в HAL'e и его настройках или в новом xorg-server-1.5.x, которому не обязательно держать все настройки устройств ввода в файле xorg.conf... Но не все так радостно из-за ручных настроек HAL'a  с его xml-конфигами. Так как у меня нет "яблок" пришлось отключать "Macintosh mouse button emulation", чтобы избаватся от "проблем двух мышей" которые находил в небе HAL (xinput list) - заблокировать Macintosh мишку через правила HAL'a.

1. sudo cat>/etc/hal/fdi/preprobe/10-blacklist.fdi
2. sudo /etc/init.d/hal restart
3. sudo /etc/init.d/slim restart #у вас не slim, а gdm

И гравная проблема с этим HAL'ом для меня - это сделать раскладки клавиатуры, которые всегда использовал: us,ru,ua и которые настраивались двумя строчками в xorg.conf... А тут снова нужно создавать целое правило, хорошо хоть примеры в пакете есть.

cat>/etc/hal/fdi/policy/10-keymap.fdi
вообщем как-то так... Но мне больше нравится возвращение к старым вариациям на тему xorg.conf в указанную секцию которого нужно добавить параметр, который после перезагрузки Х-ов отключит использование HAL'a для мыши и клавы.

Section "ServerFlags"
    #Для отключения HAL и использования xorg.conf
    Option         "AutoAddDevices" "False"
EndSection

N.B. IMHO - лучший способ настройки :-) Причем slin включает у меня 'NumLock' и с такой настройкой при загрузке fluxbox'a он не отключается и его не нужно дважды нажимать, чтобы включить заново! Одним словом все работает как раньше и как я привык! Возможно HAL и был комуто удобен и нужен, но не мне.  И безгранична была радость, когда прочитал на LOR'e о том что HAL больше не развивается и его больше не будут использовать в xorg. Проект X.org уходит с HAL ;-) В качестве ответа на постоянно возникающие вопросы по поводу отказа от использования HAL проектом X.org, работник SUN Алан Куперсмит (Alan Coopersmith), создал соответствующую wiki страницу


пятница, 11 декабря 2009 г.

Интерфейс GTK+ в приложениях OpenOffice

Во fluxbox не использую gnome-settings-daemon, поэтому ОО офис загружался с маленьким шрифтом в интерфейсе и дико отличным от всего другого цветом темы. :-( Чтобы использовать интерфейс GTK+ в приложениях ОО офиса прописал в ~/.bashrc
export OOO_FORCE_DESKTOP=gnome
но как оказалось, почему-то, безрезультатно :-( ведь должно же было срабатывать... Нужно будет днем, на свежую голову, проверить.
Но если в xterm ввести то же самое и там же запустить oowriter, все срабатывало и даже появлялся "быстрый запуск" в трее fluxbox, тогда то эту строку прописал в ~/.fluxbox/startup и вот оно счастье :-) Заставили OpenOffice подхватывать текущую тему Гнома настроенную также и в  ~/.gtkrc-2.0
Пишут, что можно это же прописать в ~/.xsession или в /etc/openoffice/sofficerc и т.д., но я не проверял. Множество решений одного и того же... :-)

четверг, 3 декабря 2009 г.

Убираем щелчки в колонках!

У меня звуковая карта C-Media CMI9880. После обновления убунты 9.04 с тестовой до релизной до 9.10, при любом обращении к звуковой карте - происходил громкий щелчек в колонках, что очень раздражало при довольно таки хороших колонках.  До этого у меня такой проблемы вроде бы не возникало, только при загрузке\остановке системы, когда звуковуха подключается\отключается вот и подумалось... Что после простоя звуковой карты в течении 10сек. она отключалась, а потом с этим самым щелчком включалась при обращении к ней. Чтобы избежать щелчка проделываем следующее:
  1. Открываем для редактирования файл 'alsa-base.conf':
    sudo vim /etc/modprobe.d/alsa-base.conf
  2. Ищем там строку:
    options snd-hda-intel power_save=10 power_save_controller=N
    Закомментируем ее, поставив перед строкой "#":
#options snd-hda-intel power_save=10 power_save_controller=N
    или меняем значение на другое (если вам нужно, чтобы звуковая все таки отключалась по истечении определенного времени), но тогда щелчки останутся, просто такой "эффект" будет происходить реже...
  1. Сохраняем файл и при следующей загрузке системы стрельбы больше не будет :-)
P.S. Хотя это конечно и костыль, ведь звуковая карта при простое должна отключаться, но делать вкл.\откл. как-то тихо и не заметно, а то ведь с непривычки заикой можно стать. IMHO. Если знаете как это провернуть, пожалуйста, напишите. Заранее благодарен.


пятница, 27 ноября 2009 г.

sid

Всегда интересовался вопросом, почему на сайте абиворда свежие и стабильные сборки только для виндузятников, которые даже не подозревают о существовании абиворда, а для остальных только исходники (не всем охота и не все умеют пакеты собирать!)? На РРА одно старье лежит, не нужно туда посылать и я не скажу вам куда идти... Надоело мне из sid'a вручную вытягиваеть свежие сборки abiword'а и gnumeric'а и я подключил репозиторий:

deb http://ftp.de.debian.org/debian sid main

установил пакет: abiword 2.8.1 так как он официально и давно объявлен разработчиками как стабильный, но вот только сейчас появился пакет в sid, а в убунте им даже и не пахнет, ни в кармик ни далее...  Наверное ждали пока в sid соберут, чтобы к себе переложить... IMHO.
Так как у меня locale: LANG=ru_UA.UTF-8 необходимо сделать символическую ссылку для русификации абиворда:

ln -s /usr/share/abiword-2.8/strings/ru-RU.strings /usr/share/abiword-2.8/strings/ru-UA.strings

Так всегда приходится делать, ведь сборщикам пакета "лень" (не знаю причин) сделать ссылку в самом пакете... :-(

Alacarte - редактор главного меню Гнома: "Как востановить меню?"

Иногда бывает, что меню Гнома пропадает из-за работы с ним Alacarte (редактор меню), помогает восстановить меню по умолчанию удаление:

$ rm -f ~/.config/menus/applications.menu

или ручное копирование файла applications.menu из deb-пакета gnome-menus. Однако alacarte по -прежнему ругается и фейлит меню Приложений при удалении некоторых подменю. Такое решение правда удаляет в все созданные вручную пункты, но лучше так, чем вообще без них... :-) IMHO.