Ответ 1
Самое первое, что вам нужно сделать, это попробовать vimtutor
и завершить его пару раз. Как только основы будут покрыты, вы можете начать играть с плагинами...
SnipMate вдохновлен фрагментами TextMate и/так красив, у него есть множество фрагментов HTML по умолчанию, и очень легко добавить свои своя. Чтобы использовать его, введите div
, затем нажмите Tab, чтобы получить:
<div id="|">
</div>
с кареткой между ""
, готовой для ввода идентификатора; снова нажмите Tab, чтобы переместить курсор на пустую строку:
<div id="myId">
|
</div>
Красивая. Однако многие редакторы имеют эту функцию.
Если у вас много HTML для написания - скажите несколько электронных писем/бюллетеней в день - другой плагин под названием SparkUp позволяет вам производят сложный HTML только с несколькими нажатиями клавиш и некоторыми знаниями CSS. Вы начинаете с ввода чего-то вроде:
table[id=myTable] > tr*3 > td*2 > img
тогда вы нажмете <C-e>
(Ctrl E), чтобы получить:
<table cellspacing="0" id="myTable">
<tr>
<td>
<img src="|" alt="" />
</td>
<td>
<img src="" alt="" />
</td>
</tr>
<tr>
<td>
<img src="" alt="" />
</td>
<td>
<img src="" alt="" />
</td>
</tr>
<tr>
<td>
<img src="" alt="" />
</td>
<td>
<img src="" alt="" />
</td>
</tr>
</table>
с каретой внутри первой пустой ""
. Нажмите <C-n>
и <C-p>
, чтобы перейти к следующему/предыдущему полю.
Magical. Однако плагин доступен для большего количества редакторов.
Вторые текстовые объекты и Surround.vim, которые невероятно полезны.
Еще одна интересная функция - режим визуального блока (:help visual-block
), где вы можете выбрать столбцы текста. Скажите, что у вас есть:
<ul>
<li><p>My text doesn't mean anything</p></li>
<li><p>My text doesn't mean anything</p></li>
<li><p>My text doesn't mean anything</p></li>
<li><p>My text doesn't mean anything</p></li>
</ul>
поместите курсор на >
первого <li>
, затем нажмите <C-v>
и переместите курсор вниз на четвертый <li>
. Нажмите I
(капитал I), чтобы войти в режим INSERT непосредственно перед >
и введите class="myElement"
, затем <Esc>
, чтобы получить:
<ul>
<li class="myElement"><p>My text doesn't mean anything</p></li>
<li class="myElement"><p>My text doesn't mean anything</p></li>
<li class="myElement"><p>My text doesn't mean anything</p></li>
<li class="myElement"><p>My text doesn't mean anything</p></li>
</ul>
Хо, да!
Серьезно, Вим велик.