Как не отказаться от VIM? - PullRequest
15 голосов
/ 19 августа 2010

Я начал заниматься программированием с использованием VIM.
Пока у меня очень смешанные чувства .С одной стороны, мне очень нравится идея, с другой - просто все сложно запомнить.

Поэтому я выбрал подход обучения, фактически делая некоторые вещи (для Ruby на рельсахразвитие).
К сожалению, у меня нет шансов в аду для меня быть более продуктивным , как и в других текстовых редакторах " обычный ".И, кажется, потребуется довольно много времени, чтобы привыкнуть к VIM.

Я заметил, что я часто не использую возможности навигации / поиска и замены VIM, но вместо этого просто перемещаюськак и в других редакторах.

Я очень стараюсь заставляю себя не открывать что-либо в других редакторах, кроме VIM, чтобы я мог выучить это .

Но, если честно, вчера Я отказался от и выполнил последние 20 минут кодирования в GEdit.

ОБНОВЛЕНИЕ: Я хочу сказать, почему я дал - только потому, что я закончучто мне нужно быстрее (это было очень поздно, и это было не лучшее время для изучения VIM).И действительно, мне очень понравилось использовать VIM.Но у меня всегда было чувство "there must a better way of doing this", и я тратил много времени на поиск этого пути.

Поэтому мой вопрос будет: как я могу учиться и начать использовать VIM более продуктивно изо дня в деньпри условии, что я хочу заниматься реальным кодированием во время обучения?

Спасибо,
Дмитрий.

Ответы [ 15 ]

24 голосов
/ 19 августа 2010

Имейте в виду следующее.Хотя физические ограничения скорости ваших пальцев ограничены, кажется, что на обработку, которую может выполнять ваш мозг, существует несколько ограничений.Поэтому время, потраченное на изучение команд и сочетаний клавиш vi (m), будет со временем окупаться, поскольку скорость, с которой вы редактируете, улучшается, преодолевая ограничения физической скорости, с которыми вы столкнетесь при использовании традиционного редактора.Например, чтобы удалить следующие пять слов в vi (m), вы набираете 5dw и вставляете 50 * символов, которые вы вводите 50i* ESC.

. Вы можете начать использовать vi (m) после изучения очень небольшого количества команд.: базовое перемещение, вставка, изменение, удаление, открытие новой строки и сохранение документа.Соединение этих команд вместе создает мощные комбинации.Когда вы освоите их, вы будете искать больше.

Распечатайте справочный лист vi (например, , , или , или , этот более обширный список) и всегда держите его рядом с собой.

7 голосов
/ 19 августа 2010

Я использую Gvim (режим GUI). Если вы забыли последовательность клавиш для какого-либо действия, вы можете вызвать ее через графический интерфейс. Для большинства действий вы также можете увидеть необходимые ключи, так что Gvim также может служить кратким справочником по Vim.

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

Мне лично не нравится Vim, я предпочитаю редакторов основного направления. Но у Vim есть синтаксическая раскраска REST, и я нашел ее вполне пригодной для использования примерно через неделю.

6 голосов
/ 19 августа 2010

Начните использовать его, когда это имеет смысл: быстрое редактирование конфигурационных файлов, фиксация сообщений, обновления README и т. Д. *

Скорость запуска трудно преодолеть.

Когда вы освоите основы, изучите файл справки, если считаете, что «там должно быть что-то для задачи, которую мне нужно сделать сейчас». ...

Построить знания постепенно .... шаг за шагом ...

Пока вы не найдете один день, вы много редактируете в VIM или обнаруживаете, что ваш набор инструментов хорошо интегрирован с Vim.

Я лично использую то, что работает лучше всего, IntelliJ для Java, Emacs для clojure, Vim для сценариев Perl и Ruby, ...

5 голосов
/ 19 августа 2010

Я более статичный типизированный язык, парень, и вот моя история:

Для меня VIM был всего лишь hjkl движением в обычном режиме + режиме интерт.Я обнаружил, что это настолько эффективно, что я хотел иметь его постоянно, везде.

Затем я начал время от времени читать листы и подбирать лучшие запоминающиеся жесты (как-то отсортированные из наиболее полезных).на менее полезные): b, w, x, gj, gk, gg, G, число g, *, #, %, f / t / F / T, /, >>, <<, =, v, затем отметьте j / k, <</=/>>.

Затем я начал писать Makefiles для всего и настраивал Vim для его распространения.Итак, я делаю :mak, и я прямо в строке с обнаруженной ошибкой.

Затем произошло автозаполнение (привязано к TAB).

Затем проверка естественного языка z=.

Тогда я написал обертки для переключения буферов.Открыв их с помощью :e filename.c, а затем выполнив Ctrl + l, Ctrl + h.

Мой конфигурационный файл публично доступен в git-архиве здесь: http://github.com/dpc/vim-config

5 голосов
/ 19 августа 2010

Почему?Используйте любой редактор, который подходит вам лучше всего и делает вас наиболее продуктивным.Я использую vi для редактирования файлов конфигурации, потому что обычно это самый быстрый способ отредактировать несколько строк и затем выйти.Для серьезного программирования это либо TextMate (ruby), Emacs (python или ruby ​​на платформах без TextMate) или Xcode (target-c).

4 голосов
/ 19 августа 2010

Я стараюсь изо всех сил, чтобы не открывать что-либо в других редакторах, кроме VIM, чтобы я мог изучить это.Но, честно говоря, вчера я сдался и выполнил последние 20 минут кодирования в GEdit.

Разработчик должен чувствовать себя комфортно в среде, с которой он работает.Вот почему существует множество редакторов, разработанных разработчиками для разработчиков.

Пока редактор делает то, что вы хотите, так, как вы хотите, все нормально: редактор - это просто средство для работы.

Итак, мой вопрос: как я могу учиться и начать более продуктивно использовать VIM изо дня в день, если я хочу заниматься реальным кодированием во время обучения?

Для VIM, к сожалению, я бы рекомендовал провести с ним несколько дней, не выполняя никакой реальной работы, а просто обучаясь.У меня ушло около двух дней, чтобы ознакомиться с основными функциями, необходимыми для эффективного редактирования.Я знал, что редактор будет играть важную роль в моей повседневной работе, поэтому я посвятил почти неделю своего свободного времени изучению VIM и Emacs.

Мой бывший коллега также сохранил чит VIMлист в качестве обоев рабочего стола.Помог в начале.

3 голосов
/ 28 сентября 2011

Любой, кто хочет узнать Vim, должен посетить веб-сайт Open Vim . Это фантастический ресурс для любого новичка в Vim. Он имеет интерактивный учебник и различные режимы песочницы для игры с редактором. Веселись!

3 голосов
/ 19 августа 2010
2 голосов
/ 19 августа 2010

Учись в своем ритме.Я думаю, что вы должны начать осваивать основы:

  • режимы: командный, обычный и визуальный
  • команды: вставить, янки, удалить.Вы можете улучшить эти знания:
    • выучить некоторые полезные команды в командном режиме (список буферов, подстановка)
    • научиться двигаться быстрее (начало / конец слова / строки / файла)
    • поиск / замена шаблона
    • Посмотрите на конфигурацию людей vim и настройте свой

    При этом всегда держите шпаргалку vim рядом с собой.Основные команды легко запомнить (d для удаления, p для вставки, y для вставки, i для вставки, a для добавления, ...).

    Учитесь постепенно и оставайтесь простыми.

2 голосов
/ 19 августа 2010

Я очень хорошо слышал о книге Byte Of Vim от SwaroopCH .Я еще не удосужился прочитать его, но его книга Byte Of Python определенно превосходна.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...