Hi, all!
Спасибо всем, кто откликнулся на просьбу помочь со словарем. Тем, кто
интересовался, показываю пример статьи. Все нижеследующее идет на самом деле
в одну строчку:
list _I [lIst] 1. _n. 1> список, перечень, реестр; инвентарь; to enter in a
list вносить в список; to make a list составлять список; duty list
расписание дежурств 2> кромка, каёмка; кайма, оторочка, бордюр; край 3> _pl.
огороженное место; арена (турнира, состязания); to enter the list s а>
бросить вызов; б> принять вызов; в> участвовать в состязании 4> _архит.
листель 5> _ам. _с-х. борозда, сделанная листером 6> _attr. сделанный из
каймы, полос, обрезков; list slippers комнатные туфли из обрезков (кожи,
материи) 2. _v. 1> вносить в список; составлять список; to list for service
вносить в списки военнообязанных 2> _разг. см. enlist 1 3> _ам. обрабатывать
землю листером _II [lIst] _мор. 1. _n. крен, наклон; to take a list
накрениться 2. _v. крениться, накреняться
Как желательно это отформатировать:
В квадратных скобках regex /\[(.*?)\]/ (извиняюсь, regex'ы везде перловские,
ограниченные слешами) - это транскрипция, ее надо показывать отдельным
шрифтом и без всяких перекодировок (в MULE это называется Noconv).
Каждое слово, начинаяющееся с подчеркивания regex /\_(.*?) /- желательно
выделить жирным шрифтом.
Римской цифрой с подчеркиванием regex /\_([IV]+ ) / выделяется отдельный
класс переводов слова, принципиально никак не связанный с другими переводами.
Такие вещи желательно выделять на отдельную строчку, даже может стоит
пропускать лишнюю строку.
Арабской цифрой с точкой regex /[0-9]+\. / выделяется отдельный перевод,
различающийся по части речи. Такое тоже желательно выделять на отдельную
строку.
Привожу то, как я думаю в идеале должна была бы выглядеть приведенная выше
статья (смотреть, естественно, в непропорциональном фонте) - конечно это
сильно наворочено с форматированием, для начала хоть как-нибудь попроще бы:
list
I [lIst] 1. n. 1> список, перечень, реестр; инвентарь; to enter in a
list вносить в список; to make a list составлять список; duty
list расписание дежурств 2> кромка, каёмка; кайма, оторочка,
бордюр; край 3> pl. огороженное место; арена (турнира,
состязания); to enter the list s а> бросить вызов; б> принять
вызов; в> участвовать в состязании 4> архит. листель 5>
ам. с-х. борозда, сделанная листером 6> attr. сделанный из
каймы, полос, обрезков; list slippers комнатные туфли из
обрезков (кожи, материи)
2. v. 1> вносить в список; составлять список; to list for
service вносить в списки военнообязанных 2> разг. см. enlist
1 3> ам. обрабатывать землю листером
II [lIst] мор. 1. n. крен, наклон; to take a list накрениться
2. v. крениться, накреняться
Теперь все-таки о том, как это делать вопросы. Я так понимаю, так и так
придется создавать major mode. Вопрос - как это делать - может кто поможет
или сразу кодом, или хотя бы кинет в меня примером?
Как в major mode можно будет задавать подсветку, то есть это как-то надо
будет настраивать font-lock? И как хотя бы в самом примитивном виде
использовать regular expressions в (X)Emacs для правки полученной строки хотя
бы в приблизительно читаемый вид?
P.S. Просветите меня, плз - народ, нафига вы когда отвечаете в список делаете
To: человеку, а Cc: в список? Так же два письма приходит одинаковых просто? И
фильтровать такую почту как правильно?
--
WBR, Mikhail Yakshin AKA GreyCat
http://3d.onego.ru/
mailto:yakshin@online.ru