FBReader — чтение и допиливание

2015-07-05

Некоторое время назад перешел с CoolReader на FBReader — польстившись главным образом на сетевую систему синхронизации (которая до сих пор работает у них с каким-то скрипом). В принципе помимо системы синхронизации выяснилось, что FB за прошедшее время допилен до вменяемого состояния, в то время, как CoolReader практически не обновляется — поэтому, оставив обе программы, сейчас пользуюсь FB.

Неудобств у этой софтины пока всплыло два.

Первое — она категорически не хочет открывать .fb2.zip файлы, считая их прерогативой CoolReader. К счастью, есть человек, который не поленился сделать костыль к этому, что сильно облегчило работу с системой.

Второе — скачивая книги из флибусты по OPDS (или вообще из любой сетевой библиотеки), она складывает их в отдельные каталоги не называя по имени-названию, а просто нумеруя.

Скажем Кутузов Лидии Ивченко выкачивается не как Ivchenko_Zhizn-zamechatelnyh-lyudey_1372_Kutuzov.335158.fb2.zip, а как целое дерево вложенных папок: <родная папка fbreader'а>/flibusta.net/b/335158.zip, что ужасно неудобно.

Моя система хранения книг опирается в первую очередь на файловую систему — осмысленные названия файлов и иерархия папок по которым эти файлы тасуются. Ничего более удобного пока нет и, скорее всего, не будет придумано в ближайшее время. Иерархия “папка-файл” выглядит скучновато в отличие от всяческих all-inside хранилищ типа Calibre или той же встроенной библиотеки FBReader, зато надежна, минимальна по занимаемому месту, вообще не требует стороннего софта для упорядочивания, хорошо упорядочивается дельта-итерациями (тема отдельного разговора) и — как я начинаю понимать — нейрологически обоснованна (очень рекомендую такую книгу, как Daniel J. Levitin “The Organized Mind Thinking Straight in the Age of Information Overload” — написано хорошо, не заумно, без утомляющего выпендрежа и по делу).

Поэтому 335158.zip меня не устраивал категорически, хотя сам OPDS-доступ к сетевой библиотеке (т.е. скачивание книги через FBReader) оказался вполне удобным. Первым делом я попробовал переименовывать файлы вручную и раскладывать их по своим папкам — меня хватило файла на два.

К счастью, быстро выяснилось, что внутри у скачанного 335158.zip лежит вполне приличный по названию Ivchenko_Zhizn-zamechatelnyh-lyudey_1372_Kutuzov.335158.fb2 — дальше дело заключалось в написании простенького скрипта:

#!/bin/bash
# основная идея избавиться от закачки безымянных файлов с флибусты

# находит и раззиповывает в корень файлы в каталогах
find . -type f -name "*.fb2.zip" -exec unzip {} \;

Простенький однострочник на самом деле — find спускается вниз по дереву папок, находит файлы (-type f), которые заканчиваются на .fb2.zip (-name "*.fb2.zip") и запускает unzip, который над ними операцию распаковки (-exec unzip {} \; — вместо {} подставляется имя найденного файла). Разумеется, чтобы это работало, в системе должен быть установлен unzip (у меня он стоит по умолчанию — если его нет надо сделать что-нибудь типа sudo apt-get install unzip)

Этот файл (unzipper.sh) был положен в корень (то, что выше названо <родная папка fbreader'а>) и — дррррр! — тридцать файлов, которые к тому времени скопились в дереве папок, оказались найдены, раззипованы и аккуратно сложены в папке со скриптом.

На этом можно было бы остановиться — FBReader в принципе читает и раззипованный .fb2, но почему бы не упаковать все назад в зип? Для этого нужен примерно такой однострочник:

find . -type f -name '*.fb2' -exec zip '{}'.zip '{}' \;

Находим файлы, которые оканчиваются на .fb2 и зипуем их. -exec zip '{}'.zip '{}' \; выполнит операцию zip (он тоже должен быть в системе — sudo apt-get install zip) и подставит в нее найденные название файла ({}) и имя новосоздаваемого архива ({}.zip — старое имя + расширение .zip).

Итого:

#!/bin/bash
# основная идея избавиться от закачки безымянных файлов с флибусты

# находит и раззиповывает в корень файлы в каталогах
find . -type f -name "*.fb2.zip" -exec unzip {} \;

# зипует их обратно
find . -type f -name '*.fb2' -print -exec zip '{}'.zip '{}' \;

Можно было бы написать еще и автоматическое удаление ненужных файлов — но я предпочитаю делать это руками, на случай если что-то пойдет не так.


О свободных форматах, авторах и чтении

2015-05-28

Время от времени в сети появляются «свободные книги». Кто-то выкладывает экземпляры своих рукописей или журналов. Дело хорошее — информация хочет быть свободной, а если она еще и структурирована в книгу — это вообще прекрасно. Однако, по непонятной причине множество авторов выкладывает свои книги и журналы в формате pdf. Это можно понять, если это скан какой-то бумажной книги — хотя и тогда, наверное djvu все-таки был бы оптимальнее. Но в остальных случаях (если книга или журнал — твои собственные и если ты не собираешься закрывать информацию от пользователя) — зачем?

Чтобы читать что-то в pdf-е в наше просвещенное время есть всего несколько способов — можно распечатать, можно читать с большого монитора (т.е. с десктопа или ноута), можно купить лопатообразный планшет формата A4. Вот скажите, осталось хоть какое-нибудь значимое количество людей, которые будут так делать? Нет, отдельные эстеты, которые любят и могут себе позволить напечатать 300 страниц руководства по прикладному кролиководству на островах Зеленого мыса, конечно есть. Например, того же Варшавского я распечатываю для работы с карандашом в руках — но это для работы и по работе.

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

В одном известном мне случае (пальцем тыкать не буду, но случай был реальным) читатель, решил пожаловаться на то, что pdf с телефона читать неудобно и скромно попросил чего-нибудь типа epub. В ответ «для более удобного чтения» было запилено два мега-приложения (под Ойфон и под Ондроед), чтобы они стояли на телефоне пользователя… и грузили внутрь себя pdf. Грузили pdf внутрь себя, Карл!

Поэтому — если воля судьбы, мироздания и всего-всего-всего сделала тебя автором — почему бы не выложить книгу в каком-нибудь нормальном формате, который легко конвертируется, хорошо читается и малой кровью ложится в публичную библиотеку? Если совсем нет навыков — можно использовать чистый .txt или markdown. Если текст технический и с формулами — TeX. Если хочется готовую книгу — epub, fb2, или на очень-очень-очень худой конец — mobi? Хочется pdf, «шоб как у взрослых бумажных книг»? Выложи рядом и .epub и .pdf Будь мужиком — бери пример с Википедии или PubMed’а, которые сейчас делают именно так.


Чтение электронных книг — 2.5

2015-02-19

или «Dropsync не нужен»

В предыдущей серии ваш покорный слуга описывал свою систему, в которой чтение и архивация небольших заметок (в противовес чтению «больших книг» и книг, сгенерированных из собственных заметок) опирается на .epub и .maff форматы (по сути — зипованные .html) и творческое использование dropbox. Некоторое время назад я отказался от dropsync’а в пользу синхронизации через usb с помощью Unison. Причины, технические подробности, плюсы и минусы перечислены в предыдущей статье.

Вынужденное изгнание и смартфон меняют стереотипы. Смартфон, как «девайс в том числе для чтения» постепенно перетягивает одеяло на себя. Я привык читать с небольших экранов (Palm + WeaselReader), а смартфон (в отличие от более громоздкой читалки) постоянно с собой. Кроме того, появились программы вроде Dimmer’а которые позволяют настраивать яркость и цветовую гамму (например, убирать пресловутый «синий свет») — что сильно сокращает разрыв по разнице в качестве чтения.

Еще у смартфона есть симкарта и (почти всегда) бесплатный gprs-интернет. Сейчас у меня дошли руки до установки dropbox’а (я стараюсь держать на телефоне как можно меньше программ) — и я понял, что мне не нужен не только dropsync (см предыдущую заметку), но скорее всего и синхронизация заметок по шнурку.

На смартфоне интернет есть практически везде и всегда. Epub копеечные по размерам — и даже плохонького gprs вполне хватает для вытягивания файлов «по одному за раз». Прочие операции (удаление-переименование-сортировка) тоже можно делать без доступа ко всему архиву сразу — в самом приложении.
Большие заметки, которые хочется читать в отсутствии сети можно скопировать в отдельную папку, или (сейчас это проще) пометить «звездочкой» — и dropbox будет держать их на диске все время. Получается самое то, при минимальном использовании трафика.


Чтение электронных книг — 2

2014-12-12

В предыдущей заметке о чтении, я разделил свои материалы для чтения на три основные категории: большие книги, мои собственные заметки (в виде Большого Текстового Файла) и «клипы» или «вырезки» — набор разношерстых html-страничек, посты, микротексты, микрозаметки и так далее. Если с большими книгами и большим файлом все было более или менее понятно, то промежуточная категория — заметки, «клипы» и вырезки, была совершенно неопределенной и требовала осмысления.

За прошедший год система чтения изменилась. Многие моменты назрели уже давно, фундаментальным поворотом стал момент, когда я оказался в Метрополии с очень плохим интернетом. Связь через некоторое время наладилась, но момент вынужденной автономности и некоторые исследования, попавшие в мое поле зрения, заставили задуматься.
Читать далее…


make power

2013-10-30

Пока я работал с Неназываемым — столкнулся с необходимостью многократно прогонять комплект действий с питоновскими скриптами. Потратив примерно полчаса (чуть меньше на самом деле — учитывайте, что я не профессиональный программист, а скромный power user) разобрался в GNU make и написал себе такой вот файлик:

all: struc func

clean:
    rm *.csv
    rm *.dot
    rm *.png

struc:
    python st.py 
    find . -name '*.dot' -exec dot {} -Tpng -o {}.png \;
func:
    python fun.py 
    find . -name '*.dot' -exec dot {} -Tpng -o {}.png \;
one:
    python st.py 
    dot struct_kond_B1_01.dot -Tpng -o poligon.png
    geeqie poligon.png

В данном случае make struc считает одни аспекты Неназываемого и с помощью graphviz (точнее dot) рисует к ним диаграммы, make func делает тоже самое для других аспектов Неназываемого, make one — отладочный «единичный сценарий», make clean чистит папку от лишних файлов (храните в версионном контроле только то, что редактируется руками, ага). make или make all прогоняет сценарии всех аспектов Неназываемого.

Удобно. Когда освоил — понял, что именно make мне не хватало для автоматической обработки данных. Вообще говоря make предназначен совсем-совсем для другого, но с коммандлайновыми утилитами он прекрасно автоматизирует действия и в тоже время делает это очень прозрачно, избавляя от необходимости плодить где-то по окрестностям скрипты и алиасы.

Например. Читать далее…


комстрока в firefox

2013-10-25

В firefox начинают появляться полезные приложения для командной строки. Например, оказывается оттуда можно сделать скриншот видимой части страницы или ее всей полностью.

По ссылке можно посмотреть подробную инструкцию. Если коротко, открываем командную строку (Shift+F2) и набираем screenshot либо screenshot —fullpage Как и у всякой уважающей себя command-line поддерживаются автодополнение по табу и help screenshot. Теперь можно грохнуть одну лишнюю плагинку :)


Яндекс диск в linux

2013-10-22

Яндекс-диск рулит уже тем, что в отличие от Гуглодиска они сделали прекрасное консольное приложение под linux. Ну и 10 Гб, что тоже прекрасно. Нюансы использования: Читать далее…


Простой словарик для vim

2013-10-05

Иногда удобно подсмотреть в словаре определение для того или иного слова. Когда это понял — написал небольшой скриптик для ~/.vimrc, который по F7 гуглит грепает слово под курсором и выводит результаты. Минимум телодвижений и максимум гибкости — вместо grep может быть любой другой скрипт, понимающий stdin (никто не запрещает привинтить сюда, скажем, гуглопереводчик.

function! Mul()
    " мюллеровский словарь

    let TempQ = @q
    let @q = ''

    " копируем слово в буфер 
    normal "qyaw
    let MuWord = @q

    " восстанавливаем буфера назад
    let @q=TempQ 

    " скармливаем его grep - и добавляем ключей для вывода контекста 
      exec ':!grep "'.MuWord.'" ~/enc/muller.txt -C 1' 

endfunction

nnoremap <F7> :call Mul()<CR>

Чтение электронных книг

2013-08-13

Электронную литературу я читаю давно, если быть точным, начиная с 1999 года. Если не считать Ватолина в 1998-ом году, первой книгой, которую я полностью прочел с компьютера, были «Фальшивые зеркала» Лукьяненко. Специально оставался по вечерам на кафедре и читал — пока не приходило время уезжать на последнем автобусе в Ильичевск. Потом был 286-й компьютер на работе с которого можно было читать в Dos-Navigator’е, потом уже свои домашние машины — тоже с MS Dos и Dos-Navigator’ом в качестве читалки. Palm Zire я взял где-то в начале нулевых. За ним последовал Sony Clie, Amazon Kindle 4 и вот сейчас Nook Simple Touch GlowLight.

В начале нулевых (2001? 2002? 2003? — не суть важно) я определил для себя причины по которым читалка должна быть отдельным от большого компьютера (десктопа или лаптопа) устройством и купил Palm Zire. И остался более, чем доволен. Палм помещался даже в небольшую сумку и его можно было везде носить с собой. Можно читать в транспорте, можно читать в очереди и так далее. В любую читалку помещается целая библиотека, которая в бумажном виде, потребовала бы 120 литрового рюкзака.

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

Все, что прибегает в мою читалку можно разделить на три основные категории.
Читать далее…


Фолдинг Большого Текстового Файла в Vim

2012-11-24

Чем больше эксплуатирую АБТФ и markdown-файлы, тем сильнее убеждаюсь, что главным для работы со структурой (которая маркируется шарпами в начале строки) является простая генерация содержания. У меня есть удобный инструмент в виде Малой Карты, а сегодня обнаружилось тоже удобное и, на удивление, быстрое решение в виде выражения для фолдинга по заголовкам маркдауна. Я его слегка допилил до своего случая — вместо автозагрузки в примере сделал вызов по нажатию ,mf

" быстрый фолдинг для маркдауна
" http://stackoverflow.com/questions/3828606/vim-markdown-folding

function! MarkdownLevel() 
    let h = matchstr(getline(v:lnum), '^#\+') 
    if empty(h) 
        return "=" 
    else 
        return ">" . len(h) 
    endif 
endfunction

function! MarkFold()
    setlocal foldexpr=MarkdownLevel()  
    setlocal foldmethod=expr  
endfunction

nnoremap ,mf :call MarkFold()<CR>

На моем главном файле в почти 7млн символов длиной с полутора тысячью заголовков работает шустро — благодаря тому, что используется fold-expr вместо очень медленного фолдинга по регулярным выражениям. Очень рекомендую.


OpenSource и Понечетная паранойя

2012-10-27

Вчера слетает большой компьютер. Мелочь — начал греться процессор, я решил посмотреть что там происходит (в прошлый раз у кулера отлетела одна ножка и он неплотно прилегал к плате), когда потянул кулер на себя — он остался у меня в руках. Термопаста была засохшей и когда кулер удалось таки поставить на место (луч ненависти тем, кто придумал такую систему монтажа — оно очень эзотерически становится и требует странных ракурсов и акробатических трюков, чтобы прижать его к плате) — но машина после этого отказалась запускаться наотрез из-за перегрева. Нужно будет почистить поверхности и освежить пасту — но это уже детали.

Важно было то, что случилось это в разгар написания одного из разделов — причем меня поджимал дедлайн.

Дальше в дело пошел «План Б» — я запустил нетбук, прицепил к нему клавиатуру, мышь, сетевой кабель и монитор.
Читать далее…


черепашки

2012-10-24

Позавчера была «няшности пара» — на следующей неделе модуль, поэтому в качестве психологической разгрузки показал студентам, как работает «черепашья графика». При словах «по экрану ползает черепашка» мимимиметр просто зашкалило. А когда они начали возиться с этим на паре… О! Особенно, после того как посмотрели что выдает turtle.py в демо-режиме и что можно творить набором простейших правил. Они самостоятельно расколупали библиотеку, чтобы посмотреть как задавать цвета и как рисовать дуги (мы же хотим рисовать смайлики, ага?). Мне оставалось только подкинуть идею, что цвет можно менять в цикле и… Короче, народ пришлось выгонять из класса после перерыва, чтобы освободить машины для другой группы.

Язык ЛОГО в свое время создавали умные люди. И черепашью графику они включили туда не зря. Я не знаю лучшего наглядного пособия по обучению простым алгоритмам, которое бы так легко осваивалось (все на экране, все видно). Ну и товарищи создавшие python тоже молодцы, поскольку (а) turtle.py отличная библиотека (б) то, что она поставляется вместе с дистрибутивом делает из него быстрорастворимую обучающую систему.

p.s. И ведь таки да умные люди делали.
Язык Лого был разработан в конце 60-х годов в МТИ под руководством профессора математики и педагогики Сеймура Пейперта (Seymour Papert). Страстно увлекаясь изучением работы мозга, Пейперт однажды заметил, что он «всегда рассматривал процесс обучения как хобби». Следуя этому «хобби», он освоил такие различные виды деятельности, как пилотирование самолетов, чтение на китайском языке, искусство иллюзионизма.

Раздумывая над процессами мышления, Пейперт, подобно классическим рассеянным профессорам, иногда абсолютно терял связь с окружающим миром: однажды, пролетев полпути над Атлантикой, он вдруг вспомнил, что оставил свою жену в аэропорту Нью-Йорка. Пейперт родился в Южной Африке, где еще мальчиком печатал на множительном аппарате газету, осуждающую апартеид.

По инициативе Пейперта в язык было добавлено понятие черепашки, обеспечивающее связь «объект — мысль» (сначала использовалась механическая черепашка, ползающая по полу, а затем ее условное изображение на экране дисплея), которое и придавало языку очарование и притягательность для детей. Как указывал Пейперт, в большинстве машинных команд «компьютер обычно шаг за шагом ведет ребенка за собой, т. е. как бы программирует его». Лого же, напротив, «убеждает ребенка в том, что он может управлять машиной, позволяет ребенку сказать: «Здесь я хозяин»».

(c) История ЛОГО


Гугл, который всегда с тобой

2012-09-14


«Мозг, хорошо устроенный, стоит больше, чем мозг, хорошо наполненный»

(с) Мишель де Монтень

Статья о том, почему в Линуксе не нужны словари была для меня одной из самых полезных. Заинтересовавшись, скомплектовал небольшую подборку из текстовых справочников. Через некоторое время выяснилось, что набрать что-то типа grep 'ШУШПАН' dal.txt намного быстрее, чем лезть за результатами в интернет (да и попробуй найди все что можно получить по набору, такого, например, «заклинания» grep ' [^ ]*опа ' dal.txt -o | sort | uniq). Еще интереснее оказалось для меня то, что информации которая есть в (списком): энциклопедическом словаре, словаре Даля, толковых словарях Ушакова и Ожегова, Библии, англо-русском словаре Мюллера, орфографическом словаре и еще нескольких справочниках, хватает с головой — во всяком случае для начального поиска. При этом за счет того, что поиск идет по «чистой информации», за счет того, что искать можно в консоли без необходимости запускать браузер — все летает. При этом все работает даже в отсутствие интернета.
Читать далее…


Сортировка файлов для китайского плейера

2012-07-20

Для полевых условий я пользуюсь дешевыми китайскими плейерами — в наглоязычном интернете такие плейера иронично называют чайподами — chinese ipod — chipod. Для полевых условий чайподы подходят идеально: дешевы, не жалко потерять-разбить-утопить и к тому же всегда можно найти модель работающую от батареек (незыблемое правило — все что в городе должно заряжаться от usb, все что в поле — работать на батарейках). Один из основных недостатков таких моделей (особенно тех, у которых нет дисплея) это то, что они играют музыку так как Бог на душу положит — точнее в том порядке, в котором файлы писались на карточку. А это далеко не всегда, точнее почти всегда не совпадает с алфавитным порядком.

В принципе из командной строки можно писать файлы и в алфавитном порядке. Это можно сделать, например, так:
Читать далее…


Разведение огнелисов в домашних условиях

2011-05-16

или установка firefox из tar.bz2 архива, а также способ всегда иметь свежего лиса к завтраку

firefox и thunderbird можно установить в Линуксе из репозитория (через synaptic или apt-get, например), а можно — напрямую из tar.bz2 архива с официального сайта mozilla. Второй способ требует немножко больше работы, зато позволяет после установки иметь всегда свежий firefox без возни со сторонними репозиториями и с минимумом хлопот.

Статья разбита на несколько частей — сначала идут довольно пространные объяснения о том где и что лежит, как установить firefox из архива (распаковать и положить в /opt), как сделать firefox браузером по умолчанию (так, чтобы клик по ссылке на pidgin или в thunderbird открывал именно firefox) и как обновлять firefox установленный таким образом (очень просто на самом деле). В самом конце я кратко перечислил все шаги в небольшой шпаргалке.

Читать дальше

Особая благодарность сэру vjoiller за.


АБТФ: большая и малая карты

2010-08-02

Прошло достаточно много времени с тех пор, как я писал про Аффигительно Большой Текстовый Файл. Это не значит, что тема стоит на месте — просто на все не хватает времени.

Основные новости следующие:

  1. Я дополнил навигацию по разделам и теперь могу произвольно выделять-вырезать-копировать-удалять отдельные заметки через d]] y[[ v]] и тому подобные комбинации клавиш.
  2. 
    " --------- jumper ------------
    map ]] /^[#@]
    map [[ ?^[#@]
    " --------- jumper ------------
    
    

    Все заголовки у меня начинаются с # в Структуре и с @ в дневниковых заметках. То есть по ]] и [[ можно прыгать от заголовка к заголовку, а скажем по d]] удалить текущую заметку в буфер и вставит ее в каком-нибудь новом месте. Через v]]]]]]d можно скопировать три заметки подряд и так далее. Получилось очень удобно.

  3. Файл подсветки я переписал под «стандартные» цвета, так что теперь могу менять цветовые схемы как заблагорассудится не боясь, что какая-то часть подсветки не попадет по цвету.
  4. И главное. Используя вимаутлайнер, я построил на его базе древовидную систему работы с блогом, которую условно назвал Большой и Малой Картами.

Читать далее…


palm, linux makeztxt и iconv

2010-07-24

Я уже писал про то, что АБТФ имеет то преимущество, что достаточно просто закидывается в палм. У меня это происходит следующим образом. Для начала я копирую файл в папку ~/tmp и конвертирую его в виндовую кодировку с помощью iconv:


cp ~/blog/main.txt ~/tmp/main.txt
iconv -t=cp1251 -c main.txt > main_cp.txt

Ключ -t=cp1251 указывает куда конвертировать (в данном случае из utf-8, в которой я веду заметки в cp1251, которую понимает палм), ключ -c нужен, чтобы подавлять вывод заведомо непечатаемых символов, которые есть в utf-8, но которых нет в cp1251 (например, знак йены).

Дальше остается преобразовать main_cp.txt в .pdb файл. Это можно сделать простой командой:

makeztxt -o main.pdb main_cp.txt

Ключ -t добавляет в файл заголовок под которым файл будет виден в базе палма.

makeztxt -t blog_main -o main.pdb main_cp.txt

Мне удобно, чтобы файл имел оглавление — сразу автоматически расставленные заголовки по всем ключевым разделам блога (90000 строк очень долго листаются в поисках нужного раздела). Поэтому я добавляю ключ -r, который расставляет закладки по всем заголовкам разделов. Разделы находятся через регулярное выражение ^#.{,15} — начало строки, за которым следует решетка #, за которой следует пятнадцать или меньше любых символов. Ключ -l (list) выводит на печать список сгенерированных закладок, чтобы можно было контролировать процесс.

makeztxt -r "^#.{,15}" -l -t .main2010 -o main.pdb main_cp.txt

Теперь можно скопировать main.pdb в память палма и наслаждаться :)

У меня все эти операции проделываются через скрипт ~/bin/bmz, который выглядит примерно так:

#! /bin/bash

cd ~/tmp
cp ~/blog/main.txt .
iconv -t=cp1251 -c main.txt > main_cp.txt
makeztxt -r "^#.{,15}" -r "^@ 20..-..-.. @ ..:.." -l -t .main2010 -o main.pdb main_cp.txt 
cp ~/blog/cites.txt .
iconv -t=cp1251 -c cites.txt > cites_cp.txt
makeztxt -r "^#.{,15}" -r "^@ 20..-..-.. @ ..:.." -l -t .cites2010 -o cites.pdb cites_cp.txt 
rm ~/tmp/main.txt
rm ~/tmp/main_cp.txt
rm ~/tmp/cites.txt
rm ~/tmp/cites_cp.txt

Достаточно набрать bmz в командной строке, а потом скопировать получившиеся .pbd-файлы в палм. Поскольку у меня сейчас Palm Sony с внешней карточкой, я просто вставляю ее в кардридер и копирую файлы напрямую.


Метаинформация и теги

2010-05-10

2010-04-27 00:15

Мысль, возникшая после чтения хабровских топиков: надо говорить не о тегах, а о метаинформации, как о более общем понятии семантической сети.

Это проясняет сразу несколько вещей Читать далее…


Путь Виммера. Короткая заметка про изучение Vim.

2010-02-13

Навык слепой печати, в наш интернетно-текстовый век, важен для человека также, как было важным умение писать от руки в старые времена. Человек, умеющий работать в vim — уже не просто умеет писать. Он умеет стенографировать — скорость и эффективность работы с текстом благодаря виму возрастает во много раз.

Самое интересное, что мозг при этом разгружается. «Сложность» вима, которая обычно пугает неподготовленного новичка, после непродолжительной практики «проваливается» на уровень рефлексов. После чего человек редактирует текст (то есть двигается по нему, делает замены, вырезает, копирует, открывает, сохраняет, закрывает, меняет файлы — весь спектр тех действий, которые можно делать с текстом) «без участия сознания» — полностью сосредоточившись на самом тексте. Но я забежал вперед.

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

Читать далее…


Букмаркерство — 3

2010-02-01

2010-01-31 17:28

Разбирая свои закладки, понял, что «в консерватории снова что-то не так». В Яндекс.Закладках количество линков постоянно растет, а в разделе «Линки» текстового блога — ни разу не прибавляется. Что может быть причиной? Почему Яндекс.Закладки (да и всякий другой закладывательный сервис) удобнее, чем прямое копирование ссылки из адресной строки по Ctrl+L?

Читать далее…


%d такие блоггеры, как: