tengu_crow: (Джозеф Салливан :))
[personal profile] tengu_crow
И снова про plain text. Про то, что переходить по ссылкам из текстовых заметок я уже писал. Несколько позже выяснилось, что ваш покорный слуга изобрел велосипед - у vim'а есть свой netrw с хоткеем gx. Он тоже позволяет ходить по ссылкам из текста, плюс понимает запуск файлов по ссылке (то есть если в файле есть что-то типа ~/gifs/my-pic.jpg - можно стать на эту ссылку, набрать gx - и запустится графический просмотрщик, который по дефолту обрабатывает эту ссылку).

Я часто конспектирую книги - как по работе, так и просто что-то читая. Моя книжная папка часто перетасовывается - появляются новые книги, старые уходят в Глубокие Архивы, разделы пересматриваются. Прямая ссылка на книгу очень быстро стареет - а работая с книгой хочется, чтобы она открывалась прямо из файла. Тут нужен другой механизм.

читать дальше в wordpress'e


Когда я писал Неназываемое я некоторое время пользовался менеджером библиографии JabRef (потом его сменил Zotero, но это уже другая история). Мне понравилось то, как в нем решался вопрос открытия книги. Каждая книга называлась уникальным именем и вместо ссылки на книгу, каждый раз выполняется поиск этого имени - после чего найденная книга открывалась в pdf- или djvu-читалке.

Тогда я для удобства написал на коленке скрипт, который по LaTeX-ссылке открывал книгу или находил ее в .BibTeX-овской библиографии.

Сейчас вспомнил про этот опыт и написал простенькую функцию для .vimrc:

" F5 поиск по книжному hub'у {{{2

function! BookSearch() 
    " сохраняем значение буфера q
    let TempQ=@q
    let @q=''
    " копируем ссылку в буфер q а оттуда - в FileName 
    normal "qyi`
    let FileName=@q
    " восстанавливаем буфер q назад
    let @q=TempQ 

    " ищем и запускаем файл 
    " скармливаем его pcmanfm
    exec ':silent !find ~/book -name "' . FileName . '"* -exec pcmanfm {} \; &'

endfunction

nmap  :call BookSearch()


Книги у меня выделяются бэктиками. Например:

`Лагутин М.Б.-Наглядная математическая статистика-Бином (2009).djvu`


Скрипт по копирует название внутри бэктика и скармливает его find, который ищет его в папке ~/book - и скармливает pcmanfm.

find ~/book -name 'FileName' -exec pcmanfm {} \; &'


Таким образом если я встаю на название книги и нажимаю F5 - у меня открывается просмотрщик с нужной книгой в нужном формате.

Основная фишка бэктиков в том, что они у меня подсвечиваются, плюс можно задавать название книги с пробелами.

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


This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

June 2025

S M T W T F S
123456 7
891011121314
15161718192021
22232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 18th, 2025 05:53 am
Powered by Dreamwidth Studios