Это, вероятно, не будет преобладающим мнением, но я использую ванильную энергию. Я не использую специальных функций (кроме подсветки синтаксиса и нумерации строк), но это является большим, потому что я могу перейти к любой машине Unix и чувствовать себя хорошо дома с любым vi, который они, оказывается, выполняют.
Я чувствую, что питание энергии для системного администратора состоит в том, что это везде, и можно немедленно только начать использовать его. Вот почему я принял решение не настроить свою энергию.
Тем не менее вот маленький .vimrc, который я склонен копировать вокруг:
set background=dark
syntax on
set showmatch
set ruler
set softtabstop=4
set sw=4
set tabstop=4
set expandtab
set autoindent
set pastetoggle=<F8>
Вещи вкладки состоят просто в том, потому что я использую Python много и пробельные вопросы там =)
Я прочитал книгу об энергии (Изучение редактора vi) от O'Reilly, и это было всем, в чем я нуждался. Несколько вещей, что я вышел из него, что я использую все время...
1) хранить макросы. Нажмите 'q' клавишу, затем ключ, Вы хотите связать его с, затем делает команду и поражает 'q' снова. Затем при ударе '@key', он выполнит ту команду. Если Вы совершите нападки '@@ ', то это выполнит последнюю команду. Я люблю это за "присоединение к любой строке" иногда: Ваш макрос является '^Jj' (перейдите к началу строки, Соединение строка, переместитесь в следующую). Затем сделайте '@j' (j, мой макро-ключ для этого). Затем просто удержите ключ. Это присоединится к каждой строке со следующей, спустит, сделает это снова и т.д.
2) Разделение окон. Введите в ':sp' (горизонтальное разделение) или ':vsp' (вертикальное разделение). Это разделит окно. Можно затем переместиться между окнами с Ctrl+w [hjkl] для перемещения направо, вниз, или оставленный, соответственно. ZZ или: выход для закрытия окна.: e для открытия другого файла. Особенно полезный для diffs (вертикальное разделение) или безотносительно (копирование / вставляющий для легкого).
3) Если Вы кодируете, сворачивание является фантастическим. Сворачивание, в основном, закрывает или открывает сегменты между маркерами. Определение маркеров может быть сделано вручную, regex... без разницы. Google, "сворачивающийся в энергии" и необходимо получить некоторые хорошие учебные руководства.
Первое, что пришло на ум вот некоторые опции, которые я вручную установлю, если у меня не будет .vimrc на конкретном сервере:
set ic
set sc
set incsearch
которые обеспечивают:
При вставке текста в энергию с включенным автоматическим отступом любой ведущий пробел во вставляемых символах может привести к форматированию проблем, где текстовый уровень отступа увеличивается с каждой строкой. В этом случае просто дайте следующую команду:
set paste
и текстовое форматирование больше не будет страдать от проблемы добавления отступа.
Издание a set nopaste
отключит этот режим.
Визуальный режим также невероятно полезен, позволяя один выбирать блоки текста, который может затем дергаться, удаляться, преобразовываться и т.д.
Для перехода к мудрому строкой визуальному режиму совершить нападки shift + v
и стандарт/вниз ключи перемещения выберет строки текста.
Для перехода к символьному мудрому визуальному режиму совершить нападки ctrl + v
и левые/правильные//вниз ключи перемещения позволят выбирать блоки текста.
Другая типичная функция, которую я использую: выбор текста, затем совершающего нападки gq
отформатировать его в строки, поврежденные в 78 символах. Это особенно полезно, когда я редактирую статьи Wiki с помощью "Его Всего текста" плагин Firefox.
Если мы говорим функции, Вы не можете пойти мимо простоты поиска и заменить :s/../.../[g]
. Конечно, знание Регулярных выражений является насущной необходимостью получить все возможное от этой функции.
И если Вы кодируете с регулярностью, способность использовать '#' ключ, чтобы найти, что предыдущий экземпляр строки экономит время.
Я нахожу вкладки в энергии довольно полезными. Новый файл на вкладке открыт: tabe и навигация между вкладками сделаны с помощью: tabprev и: tabnext. Можно добавить следующие строки к .vimrc, чтобы смочь перейти между вкладками с alt+arrow ключами
map <silent><A-Right> :tabnext <CR>
map <silent><A-Left> :tabprev <CR>
Можно найти больше информации о вкладках здесь: www.linux.com/archive/articles/59533
Я в значительной степени переключился на TextMate, поскольку моей рабочей станцией является Mac, и большая часть моего 'администрирования' программирует инфраструктуры с Ruby.
Однако я все еще использую Vim вполне немного при входе в серверы. Я использую пару плагинов для создания моей жизни легче.
Я использую конфигурацию Vim, совместно использованную нашим техническим директором, с несколькими моими собственными модификациями (отключите hlsearch, измените систему цветов, главным образом).
Эти две команды будут помнить детали о каждом файле, который Вы открываете в системе. А также это, это также сохранит любые данные, которые Вы храните в одном из 'регистров' Vim (в основном буфер обмена).
" Reopen files where we left off
if has("autocmd")
au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$")
\| exe "normal! g'\"" | endif
endif
" Remember for 100 files: (also save every register with <1000 lines), but not for files in /mnt or /media. Save to ~/.viminfo
set viminfo='100,s1000,r/mnt,r/media,n~/.viminfo
Я живу и дышу этой командой:
:se nowrap
Когда код переносится к следующей строке, это становится нечитабельным и непостижимым - не говоря уже о том, что, который - строка, который запутан.
Изо всех функций энергии это - единственное, которое я желаю действительно от vi.
Я пытаюсь не использовать любые определенные для энергии опции, потому что я все еще натыкаюсь на системы, которые только имеют vi. Единственным исключением является Ctrl+V для "постолбцовых" текстовых операций.
Это сказанное... Выполнить текущий файл (не буферный) Вы просто:
:!%
Выполнять буфер к стандартному входу интерпретатора (не сохраняя в файл сначала):
:w !/bin/sh
Может также использоваться с Python, жемчуг-w, и т.д.
Супер полезная техника состоит в том, чтобы пропустить буфер через внешнюю команду:
1G!Ggrep -v unwanted_regex
(скопированный мой ответ с другого vi вопроса).
Я - бывший пользователь TextPad и запомнил многие из сочетаний клавиш той программы. Одна из первых вещей, которые я сделал в Vim, изучала функцию карты для хранения непротиворечивости (поиск F5, замена F8, и т.д.). Я создал свою персональную систему цветов и одолжил много из vimrc файлов других. Да здравствует Vim! Настраивающийся до любого градуса.
Общее высказывание, что они избегают использования .vimrc, потому что они находятся на различных серверах все время. Я никогда не был на сервере, который не имел wget
установленный. Поместите свой .vimrc на GitHub, и это столь же просто как:
wget -O ~/.vimrc http://github.com/lucasoman/Conf/raw/master/.vimrc
Тем не менее :set number
включать номера строки и :syntax on
позволить выделяться сделает энергию немного более дружественной. Кроме того, изучите текстовые объекты.