- Русские Блоги
- Настроить vim под mac
- конфигурация macvim
- Системная среда
- Установить macvim
- монтаж
- Установить софт-ссылку
- Файл конфигурации
- Базовая конфигурация файла конфигурации
- Показать справку на китайском
- Автоматически применять конфигурацию после сохранения файла конфигурации
- Установить шрифт
- Кодировка символов
- Другие предметы
- Установите менеджер плагинов vim-Vundle
- Установить плагины для сборки IDE
- Добавить дерево каталогов-NERDTree
- Разделить макет
- Тег window-taglist
- Отступы кода Python
- Добавить строку отступа кода
- Сворачивание кода
- Автозавершение кода-YouCompleteMe
- Автозаполнение скобок
- Многострочные комментарии
- Выполнить python
- схема окраски
- Украсьте строку состояния — powerline
- О Vimscript
Русские Блоги
Настроить vim под mac
конфигурация macvim
Окончательный эффект выглядит следующим образом:
Системная среда
- macos10.12.4
- homebrew1.2.1
- python3.5&python2.7
- iTerm2
- zsh5.3.1
- macvim8.0
Установить macvim
Mac поставляется с предустановленным vim, но официальный vim на Mac имеет только очень несовершенный графический пользовательский интерфейс Carbon, который долгое время не поддерживался.macvimВ основном это добавление полного пользовательского интерфейса Cocoa на этой основе, а его основная часть синхронизируется с vim. MacVim использует отдельный метод процесса.Программа MacVim может запускать несколько процессов vim, каждый из которых отображается в окне MacVim, которое не поддерживается официальными vim и gvim на других платформах. MacVim также поддерживает многие встроенные функции интерфейса Mac OS X, такие как панели инструментов, полосы прокрутки, полноэкранный режим и привязку сочетаний клавиш меню Mac.
монтаж
Установить macvim можно двумя способами:
- Скачать с Github macvim.dmg Установить пакет
- использованиеHomebrewмонтаж
Мы также используем:
Установить софт-ссылку
Независимо от того, какой метод используется для установки, исполняемые файлы mvim и vim можно найти в файле пакета MacVim.app. Для удобного выполнения этих команд в оболочке вы можете:
- Добавьте путь к исполняемому файлу в переменную окружения $PATH в
- Скопируйте исполняемый файл в переменную среды $PATH Под определенным путем в;
- в $PATH Создать мягкую / жесткую ссылку на исполняемый файл по определенному пути в;
- Задайте псевдоним для исполняемого файла и добавьте его в файл конфигурации ( /.bash_profile или /.zshrc);
Рекомендуется использовать программную ссылку mvim в каталоге / usr / local / bin. В то же время предустановленная версия vim на Mac слишком мала, рекомендуется использовать vim в пакете MacVim.app для ее замены. Если вы хотите сохранить исходный предустановленный vim в / usr / bin / vim одновременно, вы можете «перезаписать его, создав псевдоним» «Капля.
Введите vim в терминал, и терминал vim отобразит следующее:
Введите mvim в терминал, и GUIvim появится следующим образом:
Файл конфигурации
Во время процесса запуска vim сначала выполняется поиск файла конфигурации и выполняются содержащиеся в нем команды.Эти файлы инициализации обычно включают vimrc, gvimrc и exrc. по :version Команда может просмотреть информацию о файле конфигурации vim:
Расположение файлов конфигурации
Конфигурационный файл vim имеет две версии, глобальную и пользовательскую, которые хранятся в $VIM с участием $HOME В каталоге файл конфигурации пользователя по умолчанию недоступен. При необходимости сам пользователь $HOME Создан под каталог. можешь использовать :echo Команда для просмотра их пути, используйте :e Команда для входа в каталог:
- vimrc — наиболее часто используемый файл конфигурации для vim
- gvim — это файл конфигурации Gvim
- exrc используется только для обратной совместимости с olvi / ex; если вы не используете vi-совместимый режим, вам не нужно обращать внимание на файл конфигурации exrc
Порядок загрузки файла конфигурации
в состоянии пройти :scriptname Просмотрите порядок загрузки каждого скрипта:
Видно, что при запуске macvim по очереди загружает глобальный vimrc >> user.vimrc >> global gvimrc >> user.gvimrc, а терминал vim не загружает ни gvimrc, ни .gvimrc при запуске. То есть:
- Конфигурация в файле конфигурации пользователя переопределит конфигурацию в файле глобальной конфигурации; поэтому мы можем изменить конфигурацию vim по умолчанию, создав
/ .vimrc.
Для GUIvim gvimrc перезапишет конфигурацию в vimrc; поэтому мы можем сделать терминал vim и GUIvim разными конфигурациями, создав
/ .vimrc. Кроме того, GUIvim поддерживает больше расширений, а некоторые функции нельзя использовать в терминальном vim.
Создать профиль пользователя
Редактировать файл конфигурации
Конечно, вы также можете использовать любой другой текстовый редактор, чтобы открыть файл конфигурации для редактирования.
Файл конфигурации приложения
После изменения файла конфигурации вам необходимо перезапустить Vim или использовать команду: source, чтобы применить новые настройки:
Мы можем добавить следующую команду в файл конфигурации, чтобы автоматически применить конфигурацию после сохранения:
Базовая конфигурация файла конфигурации
Показать справку на китайском
- скачатьvimdoc
- Разархивируйте файл в
/ .vim / doc, если путь не существует, создайте его самостоятельно
Откройте vim для выполнения: helptags
/ .vim / doc
Настройте в
Автоматически применять конфигурацию после сохранения файла конфигурации
:com[mand][!] [
Определите пользовательскую команду. Имя команды —
BufWritePost — этоСобытие автокоманды, BufWritePost После записи всего буфера обратно в файл (то есть после изменения и сохранения .vimrc) он будет выполняться автоматически source $MYVIMRC Чтобы конфигурация была эффективной.
Установить шрифт
Установите формат: установить guifont = имя шрифта: h размер шрифта
- Пока можно использовать шрифты из «книги шрифтов», вы можете загружать и устанавливать свои любимые шрифты.
- Если имя шрифта содержит пробелы, используйте \ для экранирования;
- Если вы хотите использовать тему powerline, лучше всего установить шрифт poerline;
Кодировка символов
Enc, fenc, fencs, tenc, общие искаженные символы в основном вызваны неправильными настройками следующих параметров:
- Enc, кодировка, используемая внутри vim, такая как буфер, строка в регистре, windows обычно gbk, mac — utf-8
- fenc, кодировка самого открытого в данный момент файла, если enc и fenc несовместимы, vim выполнит преобразование кодировки и преобразует в кодировку fenc для сохранения файла
- fencs, список кодов символов, с помощью которых реализовано автоматическое распознавание кодов
- tenc, кодировка, используемая терминалом, или кодировка, используемая vim для отображения на экране. Vim преобразует внутреннюю кодировку в кодировку экрана для вывода во время отображения. По умолчанию используется кодировка enc
Другие предметы
Ниже приведены другие основные настройки, примечания ясны и не будут объяснены по отдельности:
Установите менеджер плагинов vim-Vundle
Сам Vim может удовлетворить многие потребности разработчиков, но он также чрезвычайно расширяем, и уже есть несколько убийственных расширений, которые позволяют Vim иметь характеристики «современной» интегрированной среды разработки. Итак, первое, что вам понадобится, это полезный менеджер расширений.
Хотя есть много других способов расширить vim, в Vim также есть много Менеджер плагинов , Но мы очень рекомендуемVundle, Он может искать, устанавливать, обновлять и удалять подключаемые модули vim. Вам больше не нужно вручную управлять подключаемыми модулями vim. Вы можете думать об этом как о программе Vim. С Vundle такие вещи, как установка и обновление пакетов, упрощаются.
Эта команда загрузит диспетчер подключаемых модулей Vundle и поместит его в папку пакетов редактора Vim. Теперь вы можете управлять всеми расширениями через файл конфигурации .vimrc.
Затем добавьте конфигурацию Vundle в начало файла конфигурации:
Используйте Vundle
Таким образом, вы выполнили настройки перед использованием Vundle. После этого общие шаги по установке плагина vim можно резюмировать следующим образом:
- В файле конфигурации .vimrc напишите плагин, который хотите установить. call vundle#begin() с участием call vundle#end() Между строк: Plugin’Plugin name ‘
- Затем откройте редактор Vim и выполните следующую команду: :PluginInstall , Vundle автоматически загрузит и установит соответствующий плагин.
- Далее детальная настройка плагина в .vimrc
выполненный :PluginInstall После скриншота:
Установить плагины для сборки IDE
Возможно, наиболее важной особенностью редактора Vim является то, что он не требует использования мыши (за исключением версии с графическим интерфейсом пользователя). Сначала вы можете подумать, что это очень плохая практика, но пока вы вкладываете время — да, это требует времени — обучениеСочетание клавиш быстрого доступа, Вы можете значительно увеличить скорость рабочего процесса.
Добавить дерево каталогов-NERDTree
Роль NERDTree состоит в том, чтобы отображать дерево каталогов текущего пути, и в IDE они обычно есть. Вы можете легко просматривать общую структуру каталогов проекта и создавать, удалять и переименовывать файлы или имена файлов.
Добавить дерево каталогов:nerdtree
Добавить значок статуса git:nerdtree-git
Разделить макет
Не нужно устанавливать дополнительные плагины
Что означает nnoremap? —— Проще говоря, nnoremap сопоставляет комбинацию сочетаний клавиш с другими сочетаниями клавиш. Часть no относится к нормальному режиму Vim (нормальный режим),
Вместо переназначения в визуальном режиме. Для получения дополнительной информации см. [Здесь]
(https://stackoverflow.com/questions/3776117/what-is-the-difference-between-the-remap-noremap-nnoremap-and-vnoremap-mapping)
использование :sv Command, новый файл будет открыт в интерфейсе под текущим файлом; используйте противоположную команду :vs , Новый файл будет открыт справа от текущего файла; не забудьте :sv Затем используйте функцию завершения табуляции, чтобы быстро найти файлы.
Вы также можете вложить разделенный макет, чтобы вы могли снова разделить содержимое разделенного макета по вертикали или по горизонтали, пока не будете удовлетворены. Как мы все знаем, нам часто нужно просматривать несколько файлов одновременно во время разработки.
Используйте комбинацию горячих клавиш для быстрого переключения текущего активного окна
- Ctrl-j переключить на разделенное окно ниже
- Ctrl-k переключить на верхнее разделенное окно
- Ctrl-l переключение на разделенное окно справа
- Ctrl-h переключить на разделенное окно слева
Использование буферов, хотя Vim поддерживает операции с вкладками, по-прежнему многие люди предпочитают буферы и разделенные макеты. Вы можете думать о буферах как о недавно открытом файле. :ls Команда для просмотра всех буферов, введите :b Переключиться на открытый буфер (можно использовать автозаполнение).
Тег window-taglist
Список тегов — это подключаемый модуль, используемый для отображения различных символов в программе позиционирования, таких как определения макросов, имена переменных, имена структур, имена функций и т. Д. Мы называем их символами (символами), и мы называем их тегами в списке тегов. , Очевидно, что если вы хотите отображать теги в файле программы, вам необходимо заранее знать всю информацию о тегах, сохранить ее в файле, а затем проанализировать соответствующий файл тегов. Список тегов только анализирует содержимое файла тегов и отображает его в Vim. Сканирование тегов и создание файлов данных выполняется инструментом ctags (Exuberant Ctags), поэтому перед использованием taglist на вашем компьютере должны быть установлены ctags.
Ctags используется для просмотра содержимого файлов исходного кода для создания файлов тегов. Эти файлы тегов могут использоваться редакторами или другими инструментами для быстрого поиска и определения местоположения символов (тегов / символов) в исходном коде, таких как имена переменных, имена функций и т. Д. Macos поставляется с Ctags, но это не та версия, которая будет использоваться здесь. Ctags по умолчанию поддерживает только несколько языков. Нам нужно установить Exuberant Ctags:
-R означает рекурсивное создание, которое включает все подкаталоги в корневом каталоге исходного кода (текущий каталог); * означает все файлы; эта команда сгенерирует файл тегов в текущем каталоге, когда пользователь запустит vi / в текущем каталоге В vim этот файл тегов будет загружен автоматически.
Настроить список тегов
Использовать список тегов
- С помощью горячей клавиши + t ( ,+t )или :TlistToggle Всплывающее / закрытие окна вкладки
- Нажмите в окне вкладки F1 Вы можете открыть следующее содержимое справки
- o Отображение тега под курсором во вновь открытом окне
- Отображение определения прототипа тега под курсором
- u Обновите тег в окне списка тегов
- s Измените метод сортировки, переключитесь между сортировкой по имени и сортировкой по порядку появления
- x Окно списка тегов увеличивается и уменьшается для облегчения просмотра более длинных тегов.
- Откройте складку, как zo
- Сложите метку так же, как zc
- Открыть все складки, как zR
- = Свернуть все теги, как zM
- [[Перейти к предыдущему файлу
- ]] перейти к следующему файлу
- q Закройте окно списка тегов
Отступы кода Python
Для python очень важен правильный отступ кода.Мы настроим функцию отступа кода для vim из следующих аспектов:
- Автоматический отступ кода Python
- СоответствоватьPEP8Стандарт стиля кода
- Автоматически форматировать в код PEP8
- Автоматический отступ полезен, но в некоторых случаях (например, когда определение функции состоит из нескольких строк) не всегда может обеспечить желаемый эффект, особенно в соответствии со стандартом PEP8. Мы можем использовать indentpython.vim Плагин для решения этой проблемы:
- Автоматически форматировать код Python в код, соответствующий стандарту pep8 tell-k/vim-autopep8 Вставные:
- нужно использовать tell-k/vim-autopep8 Плагин сначала должен установить на компьютер сторонний пакет python. autopep8 , Но странно то, что этот пакет не может быть найден при установке с помощью pip, мы используем easy-install Чтобы установить, вам нужно установить его только один раз в определенной среде Python. Фактический тест также доступен в других средах:
Для кода Python должен поддерживаться отступ в стиле PEP8, поэтому в файл .vimrc необходимо добавить следующую конфигурацию. Эти настройки сделают клавишу Tab в Vim эквивалентной 4 стандартным пробелам, гарантируют, что длина каждой строки кода не превышает 80 символов, и сохранят файл в формате unix, чтобы он не появлялся при нажатии на Github или передаче другим пользователям. Проблема преобразования файлов.
Кроме того, для разработки полного стека вы можете установить команду au для каждого типа файла:
Давайте настроим vim-autopep8 ниже
Редактирование с помощью macvim *.py При документировании:
- Код автоматически имеет отступ в соответствии с правилами PEP8;
- Клавиша касания эквивалентна 4 стандартным пробелам, а каждая строка кода не превышает 80 символов;
- использование :Autopep8 Команда или F8 Сочетания клавиш автоматически форматируют код Python в соответствии со стандартом PEP8.
Редактирование с помощью macvim *.js , *.html , *.css Для файлов нажатие клавиши эквивалентно двум стандартным пробелам.
Добавить строку отступа кода
indentLine — линия индикатора отступа, реализованная чистыми символами, эффект относительно идеален
indentLine По умолчанию он закрыт, поэтому вам нужно настроить его в .vimrc, чтобы увидеть эффект:
В отступе кода автоматически создается строка отступа.
Сворачивание кода
Большинство «современных» интегрированных сред разработки (IDE) предоставляют средства сворачивания методов или классов и показывают только определение класса или метода, а не весь код.
Нет необходимости устанавливать дополнительные плагины, но чтобы избежать лишнего количества складок, мы рекомендуем SimplyFold Чтобы решить эту проблему:
Линия сгиба будет отображаться в программном блоке. Когда курсор находится на линии сгиба, нажмите клавишу пробела, чтобы выбрать, следует ли сгибать по линии сгиба.
Автозавершение кода-YouCompleteMe
Плагин убийцыYouCompleteMe—— Артефакт автозаполнения в vim:
- Применимо к любому языку, есть только несколько различий в разных языковых конфигурациях;
- Разнообразные механизмы завершения, которые могут быть выполнены на основе идентификаторов и семантики;
- Может обеспечить автоматическое завершение, подобное IDE, без нажатия каких-либо клавиш, подсказка кода автоматически всплывает во время написания кода;
- Он также может сотрудничать с Syntastic для проверки грамматики в реальном времени;
- В отличие от других плагинов vim в прошлом, YCM представляет собой скомпилированный плагин. После загрузки вам необходимо вручную скомпилировать его, прежде чем вы сможете его использовать;
- Последняя версия macvim, поддерживающая python2 или python3.
Введите команды в macvim :echo has(‘python’) || has(‘python3’) , Если результат 1, значит он поддерживается, или введите в macvim :version , Проверьте статус поддержки версии.
- Установить Cmake
- Если вам нужно установить версию YCM с семантической поддержкой языков семейства C, вам необходимо обновить Xcode до последней версии, установить последние инструменты командной строки и загрузить последнюю версию libclang. Подробнее см. Официальное руководство по YCM. Здесь мы устанавливаем его. Версия без семантической поддержки языков C-семейства.
- При редактировании текста автоматически всплывает меню завершения, и вы можете переключать параметры вверх и вниз с помощью вкладки и клавиш shift + tab, а также выбирать ввод или пробел.
- Поддерживает завершение на основе идентификаторов и семантики и завершается в комментариях и строках
- Поддержка нескольких языков, не только Python, но и дополнение других языков, отличных от C
Автозаполнение скобок
auto-pairsОсновная функция — автоматическое заполнение скобок и кавычек. Введите левую кавычку и левую круглую скобку, чтобы автоматически заполнить вторую половину. После установки никакой дополнительной настройки не требуется.
Многострочные комментарии
В обычном режиме нажмите v и переместите курсор, чтобы выбрать строку, которую необходимо прокомментировать, а затем нажмите F4, чтобы добавить комментарии ко всем выбранным строкам.
Выполнить python
Другие часто используемые редакторы имеют очень удобные функции или плагины, вызываемые одним щелчком, такие как команда Sublime Text + b и плагины сценариев Atom.
Чтобы реализовать эту функцию в vim, вам нужно только добавить следующий код в .vimrc, чтобы реализовать выполнение кода python с помощью клавиши F6, и поскольку он вызывает функцию quickfix vim, он также поддерживает переход к строке ошибки в случае возникновения ошибки.
Назначение сочетания клавиш F6 автоматически выполнит следующие операции: переключиться в номинальный режим >> выполнить стандартный формат кода Autopep8 >> сохранить текущий файл >> вызвать пользовательскую функцию Runpython, Runpython автоматически выберет интерпретатор python в текущей среде.
схема окраски
Установить цветовую схему
Vundle управляет цветовой схемой как плагин, поэтому вам нужно толькоВотНайдите понравившуюся цветовую схему, а затем установите ее обычным способом установки плагина, например:
Настроить цветовую схему
Автоматическое фоновое обнаружение vim неплохо, по крайней мере, на MacVim, вам не нужно слишком много настраивать, вы можете получить хорошие результаты, используя конфигурацию по умолчанию; просто добавьте цветовую схему your-theme в файл конфигурации, vim каждый раз (каждый раз ) Установленная вами цветовая схема будет выбрана, когда вы ее откроете.
Использовать цветовую схему
Откройте vim,: colorscheme your-theme, вы можете временно (только один раз) переключиться на соответствующую цветовую схему;
Украсьте строку состояния — powerline
- Установите powerline-status на компьютер
- скачатьшрифт powerlineисоляризованный цвет, Найти после распаковки vim-colors-solarized Скопировать папку в
/.vim/bundle Каталог или просто добавьте следующую команду:
Установите плагин vim-powerline:
Будьте осторожны, чтобы изменить шрифт на серию powerline, иначе строка состояния может отображаться неправильно.
О Vimscript
Vim имеет свой язык сценариев Vimscript, а макросы, написанные на Vimscript, могут автоматически выполнять сложные операции. Используйте параметр -s, чтобы запустить Vim, или напрямую переключитесь в каталог, в котором находится макрос, и используйте команду ‘: source’ для выполнения сценария Vim. Файл конфигурации Vim можно использовать в качестве примера сценария Vim.Имя файла конфигурации в Unix и Linux — .vimrc, а файл конфигурации в Windows обычно называется _vimrc. Этот файл автоматически запускается при запуске Vim. Vimscript может использовать все команды в режиме командной строки Vim и использовать команду ‘: normal’ для использования всех команд в обычном режиме. Vimscript имеет два типа данных: числа и строки. Используйте числа для представления логического типа, 0 для представления false и всех остальных чисел для представления true. Последняя версия Vim 7 также предоставляет расширенные структуры данных, такие как списки и ассоциативные массивы. Vimscript также имеет различные операторы сравнения и арифметические операторы. Структура управления реализует ветвь if и цикл for / while. Пользователи также могут определять функции сами и могут использовать более 100 предопределенных функций. Написанный файл сценария можно отладить в режиме отладки.
Для подробного ознакомления с Vimscript, пожалуйста, обратитесь кИзучите Vimscript на сложном пути
Поскольку файл конфигурации слишком длинный, он не будет опубликован!
Источник