Налаштування Vim для роботи з Markdown
Як я вже згадував, цей сайт є статичним, тобто повністю складається з простих HTML-сторінок. Всі статті зберігаються у текстових файлах з розміткою Markdown, з яких генеруються сторінки сайту.
Останнім часом для роботи з текстами я користувався редактором Google Документи. Готові статті я конвертував у Markdown за допомогою спеціального скрипта. Чесно кажучи, це не найзручніший спосіб роботи з Markdown. Для постійного використання він не підходить, оскільки потребує забагато зайвих дій, тому я від нього відмовився. Розглянувши всі варіанти редакторів для Windows, які вміють працювати з Markdown, я вирішив зупинити свій вибір на Vim.
Чому саме Vim? Як не дивно, мені він здався більш зручним та універсальним, якщо порівнювати з іншими програмами. Під універсальністю я маю на увазі можливість працювати як з HTML та PHP-кодом (як заміна Notepad++, яким я користувався раніше), так і з простим текстом, в тому числі в розмітці Markdown. Vim чудово справляється і з тим, і з іншим. До того ж для Vim створено багато розширень, тож цей редактор можна налаштувати на свій смак.
Vim потребує певного часу для освоєння, особливо це стосується його консольної версії. Якщо ж використовувати версію з графічним віконним інтерфейсом (GVim), то після виконання потрібних налаштувань працювати з Vim не набагато складніше, ніж з будь-яким іншим текстовим редактором. Я використовую GVim, тому усі налаштування, про які йдеться далі, стосуються саме цієї версії.
Розповідати про встановлення редактора не буду, в цьому немає нічого складного. Останню версію можна завантажити з офіційного сайту.
Без додаткових налаштувань редактор відкривається у вигляді маленького вікна, що не дуже зручно:

Аби щоразу не розтягувати вікно програми до потрібних розмірів, можна вказати у налаштуваннях ширину та висоту вікна. Всі користувацькі налаштування зберігаються у файлі _vimrc, який знаходиться в тій же теці, куди була встановлена програма. У моєму випадку це тека C:\Program Files (x86)\Vim.
Додаємо у файл _vimrc такі рядки:
set lines=100
set columns=80
Параметр lines задає висоту вікна, а columns — ширину. Перелік параметрів, які можна використовувати для налаштування редактора, доступні через меню «Edit → Settings Window».
Панель інструментів можна приховати, для цього додамо такий рядок:
set guioptions-=T
Встановимо нормальний шрифт:
set guifont=Consolas:h11
Тепер після запуску Vim матиме такий вигляд:

Редактор Vim під час роботи з файлами створює бекап і swap-файл. Цю функцію можна вимкнути, для цього додамо такі рядки:
set nobackup
set nowritebackup
set noswapfile
Налаштуємо автоматичне визначення кодування файлів:
set fileencodings=utf-8,cp1251
Ввімкнемо визначення синтаксису та нумерацію рядків:
set nu
syntax on
Тепер налаштуємо перенесення рядків. Не знаю, як було у попередніх версіях, але у версії Vim 7.4 за замовчанням довжина рядка дорівнює 78 символам. Під час набору тексту після 78-го символу виконується автоматичне перенесення рядка. Якщо працювати з HTML або PHP-кодом, це не матиме великого значення, але під час роботи зі звичайним текстом така поведінка редактора неприпустима. Для роботи зі статтями потрібне візуальне перенесення рядків, коли текст переноситься по словах у разі досягнення правого краю вікна редактора. Для цього у файл налаштувань додаємо два рядки:
set wrap
set linebreak
Після цього знаходимо у теці C:\Program Files (x86)\Vim\vim74 файл vimrc_example.vim, відкриваємо його в текстовому редакторі та шукаємо такі два рядки:
" For all text files set 'textwidth' to 78 characters.
autocmd FileType text setlocal textwidth=78
Параметр textwidth визначає довжину рядка. Щоб вимкнути цей параметр, достатньо поставити лапки перед другим рядком:
" For all text files set 'textwidth' to 78 characters.
" autocmd FileType text setlocal textwidth=78
Зберігаємо зміни й закриваємо цей файл.
В редакторі Vim є функція перевірки орфографії, але після встановлення доступний тільки словник для англійської мови. Словники для інших мов можна завантажити з офіційного сайту Vim. Завантажуємо потрібні файли і зберігаємо у теці C:\Program Files (x86)\Vim\vim74\spell.
У файл налаштувань додаємо рядок:
setlocal spell spelllang=uk
Тепер налаштуємо підтримку розмітки Markdown. Загалом Vim вміє працювати з цією розміткою, але тільки у файлах із розширенням .markdown. Я зазвичай використовую розширення .md (для блогу) і .txt (для нотаток). Щоби підсвітка Markdown працювала і в таких файлах, у _vimrc додаємо:
au BufNewFile,BufFilePre,BufRead *.md set filetype=markdown
au BufNewFile,BufFilePre,BufRead *.txt set filetype=markdown
Тепер залишається тільки налаштувати приємну кольорову схему. У Vim є кілька кольорових схем, їх можна перемикати за допомогою меню «Edit → Color Scheme». Мені ці схеми не дуже подобаються. Я знайшов цікаву схему pencil у стилі текстового редактора iA Writer. Щоби її встановити, створюємо у теці C:\Program Files (x86)\Vim\vim74\colors файл pencil.vim, вставляємо у нього код з цієї сторінки, зберігаємо.
Якщо потрібен темний фон, у файл _vimrc додаємо рядки:
colorscheme pencil
set background=dark
Для світлого фону відповідно додаємо:
colorscheme pencil
set background=light
Текст у розмітці Markdown зі світлою темою pencil:

Темний фон:

Гадаю, для комфортної роботи з текстом цих налаштувань достатньо.
Деякі Markdown-редактори мають функцію попереднього перегляду. У Vim такої функції немає, але її можна додати за допомогою плагінів. На сайті Vim в розділі Scripts можна знайти кілька готових рішень. Але я жоден з цих плагінів поки не пробував, оскільки ніколи не користуюсь попереднім переглядом.