Учим Vim понимать структуру кода
Теперь научим Vim строить список классов и методов классов в отдельном буфере, чтобы мы могли быстро перемещаться на нужный участок кода.
Для этого, во-первых, нам понадобится маленькая программа под названием ctags. Скачать ctags под вашу операционку можно с официального сайта. Скачиваем нужный архив и устанавливаем ее куда нам удобно. Я, например, установил ее в c:\Program Files\ctags
Затем скачиваем плагин для Vim под названием taglist
Установка этого плагина состоит из нескольких этапов.
-
Распаковываем плагин таким образом, чтобы файл из папки plugin оказался в папке plugin у Vim, а, соответственно, файл из папки doc — в папке doc.
- Вы можете добавить путь до ctags в переменную окружения PATH, а можете добавить в файл _vimrc следующую строку:
let Tlist_Ctags_Cmd='»C:\Program Files\Ctags\ctags.exe»‘
Естественно, путь до ctags у васдолжен быть свой
Обратите внимание на вложенные двойные кавычки. Это нужно для того, чтобы Windows понял строку C:\Program Files\Ctags\ctags.exe как путь до программы ctags.exe, а не остановился на пробеле в имени папки.
-
Затем мы должны сделать так, чтобы при открытии Vim в качестве рабочей директории была бы папка doc. Так как мы уже сделали так, чтобы vim изменял рабочую директорию при открытии файла, то достаточно с помощью vim открыть любой файл в папке doc.
- Теперь вводим команду «:helptags .» Не забудьте про точку в конце. Немного подумав, плагин дополнит файл tags в папке doc.
Перезапускаем Vim и теперь можем открыть какой-нибудь исходник. Теперь вводим команду «:TlistToggle». И слева у нас открывается структура нашего исходника:
При двойном щелчке по строке из левого списка мы перескакиваем на соответствующий элемент исходника.
Если вам не хочется каждый раз набирать команду «:TlistToggle», то можно повесить выполнение ее какую-нибудь горячую клавишу, например, Ctrl-t. Для этого достаточно добавить следующие строки в файл _vimrc:
» Ctrl-T — открыть окно ctagsnmap <C-t> :TlistToggle<cr>imap <C-t> <esc>:TlistToggle<cr>i<right>
Теперь в нормальном режиме и режиме вставки вы можете открывать или прятать буфер со структурой исходника с помощью клавиши Ctrl-t.
Плагины
Плагины могут помочь повысить эффективность вашей работы в Vim. Они могут менять интерфейс Vim, добавлять новые команды, поддержку завершения кода, интеграцию других программ и утилит с Vim, поддержку дополнительных языков и многое другое.
Совет: For a list of popular plugins, see Vim Awesome)
Установка
Используя встроенную систему управления пакетами
В Vim 8 добавлена возможность загрузки сторонних плагинов. Чтобы использовать эту функциональность, переместите плагины в .
Используя менеджер плагинов
Менеджер плагинов позволяет устанавливать плагины и управлять ими одинаковым образом независимо от того, на какой системе вы запускаете Vim. Он представляет собой специальный плагин, который выполняет роль пакетного менеджера для других плагинов.
Из репозиториев Arch
Группа объединяет множество разнообразных плагинов. Используйте команду для отображения списка пакетов, которые вы можете затем , используя pacman.
cscope
Установите пакет .
Скопируйте стандартный файл cscope, который Vim будет автоматически читать:
Примечание: Вам наверное понадобится откомментировать следующие строки в , чтобы включить горячие клавиши cscope в Vim 7.x:
set timeoutlen=4000 set ttimeout
Создайте файл, который содержит список файлов для индексации (cscope может обрабатывать множество языков, но для примера мы возьмем файлы на Си/Си++ с расширениями .c, .cpp и .h):
cd /путь/к/каталогу/проекта find . -type f -print | grep -E '\.(c(pp)?|h)$' > cscope.files
Создание файлы базы данных, которые cscope будет читать:
cscope -bq
Примечание: cscope ищет файл в рабочем каталоге, поэтому тот же каталог следует использовать и для навигации по проекту в Vim. Также, вы можете указать путь до этого файла явно, установив его в переменной окружения .
Горячие клавиши по умолчанию:
Ctrl-\ и c: найти функции вызывающие эту функцию d: найти функции вызываемые этой функцией e: найти egrep паттерн f: найти этот файл g: найти это определение i: найти файлы, включающие этот файл (#include) s: найти этот символ Си t: найти присвоения
Не стесняйтесь изменять горячие клавиши:
#Maps ctrl-c to find functions calling the function nnoremap <C-c> :cs find c <C-R>=expand("<cword>")<CR><CR>
Установите пакет AUR.
Полезные опции можно записать в :
let Tlist_Compact_Format = 1 let Tlist_GainFocus_On_ToggleOpen = 1 let Tlist_Close_On_Select = 1 nnoremap <C-l> :TlistToggle<CR>
Лучшие современные текстовые редакторы с открытым исходным кодом для Linux
Я пользуюсь Ubuntu, поэтому я предоставил инструкции по установке для дистрибутивов Ubuntu. Однако это не означает, что список содержит лучшие редакторы кода только для Ubuntu, потому что они подходят для любого дистрибутива Linux. К слову, редакторы в этом списке расположены в произвольном порядке.
1. Brackets
Brackets — это редактор c открытым исходным кода от компании Adobe. Brackets делает акцент исключительно на потребностях веб-дизайнеров, обладая встроенной поддержкой HTML, CSS и JavaScript. Он легковесный, но в то же время функциональный. Он предоставляет вам быстрое редактирование и режим интерактивного просмотра страницы. Также существует большое количество плагинов для расширения возможностей при работе с Brackets.
Некоторые из основных особенностей редактора кода Brackets:
- Быстрое редактирование
- Интерактивный просмотр страницы
- Поддержка препроцессоров
- Встроенный менеджер расширений
- Кроссплатформенность
Вы можете загрузить исходный код, а также бинарные файлы для Linux, OS X и Windows на сайте Brackets.
2. Atom
Atom — еще один современный и стильно оформленный редактор с открытым исходным кодом для программистов. Atom был создан разработчиками Github’а и пропагандируется как “текстовый редактор для хакеров 21-го века”. Внешне Atom очень похож на текстовый редактор Sublime Text, который чрезвычайно популярен среди программистов, но имеет закрытый исходный код.
Atom стал известен еще до своего первого стабильного релиза. Исходя из его возможностей, я, определенно, могу назвать его одним из лучших текстовых редакторов для Ubuntu или любой другой операционной системы.
Чтобы не быть голословным, взгляните на некоторые из основных преимуществ редактора кода Atom:
- Легко расширяемый
- Встроенный пакетный менеджер с огромным количеством доступных плагинов
- Умное автодополнение
- Разделение окон
- Кроссплатформенность
- Встроенная возможность работы с Git
- Кастомизация интерфейса
Недавно Atom выпустил .deb и .rpm пакеты, чтобы можно было легко установить Atom в дистрибутивах Linux на основе Ubuntu и Fedora. Разумеется, его исходный код также открыт.
3. Light Table
Light Table, представленный как “редактор кода следующего поколения” — это еще один современный, недооцененный, но многофункциональный редактор с открытым исходным кодом, который скорее похож на IDE, чем на простой текстовый редактор.
Для увеличения его возможностей доступны многочисленные расширения. Функция немедленного просмотра результата выполнения написанного кода — это то, что вам несомненно понравится. Её стоит использовать, чтобы по существу оценить удобство при работе в редакторе Light Table.
Некоторые из основных характеристик Light Table:
- Встроенный менеджер расширений
- Встроенное выполнение кода устраняет необходимость вывода на экран, так как код можно запустить в редакторе в режиме реального времени
- Функция “наблюдения” позволяет мгновенно видеть результат выполнения кода
- Кроссплатформенность
Если вы используете дистрибутив Linux на основе Ubuntu, то вам не составит большого труда установить себе Light Table. Однако, официально Light Table не предоставляет никаких пакетов.
4. Visual Studio Code
Visual Studio Code — популярный редактор кода от Microsoft. Только без паники — Visual Studio Code обладает полностью открытым исходным кодом.
По факту, Visual Studio Code был одним из первых “мирных предложений” от компании Microsoft для Linux и мира Open Source. После этого Microsoft открыла исходный код некоторых своих программ, конечно же, за исключением Microsoft Office.
Visual Studio Code — превосходный редактор кода, особенно для веб-разработки. Он также легковесен. Некоторые из основных его особенностей:
- Технология Intellisense дает полезные подсказки и функцию автодополнения
- Встроенная поддержка Git
- Встроенный менеджер расширений со множеством доступных для загрузки расширений
- Интегрированный терминал
- Поддержка пользовательских фрагментов кода
- Инструменты отладки
- Поддержка огромного количества языков программирования
- Кроссплатформенность
Установка Visual Studio Code в Ubuntu, а также других дистрибутивах, основанных на Fedora, очень проста благодаря Snap пакетам. Также можно скачать пакеты для Ubuntu и Fedora с сайта:
Советы и рекомендации
Нумерация строк
Чтобы включить отображение номера столбца, используйте . По умолчанию показываются абсолютные значения номеров строк, относительные включаются посредством .
Переход к новой строке осуществляется посредством или . Все переходы запоминаются в лист переходов, для более подробной информации смотрите .
Проверка орфографии
Проверку орфографии в Vim можно включить с помощью:
set spell
Действие | Команда |
---|---|
следующая ошибка | |
предыдущая ошибка | |
предложения для исправления | |
добавить правильное написание | |
добавить правильное написание (на сеанс) | |
добавить неправильное написание | |
добавить неправильное написание (на сеанс) | |
повторить проверку орфографии во всем файле |
Совет:
- Чтобы включить проверку сразу для двух языков (например, английского и русского), добавьте в или и перезапустите Vim.
- Вы можете включить проверку орфографии для конкретных типов файлов (например .txt), используя плагин FileType и собственное правило для определения типа файла. Чтобы включить проверку орфографии для всех файлов, оканчивающихся на .txt, создайте файл и вставьте туда строку: . Далее, вставьте строку в файл или и перезапустите Vim. Или поместите строку в или и перезапустите Vim. Не забудьте отредактировать строчку (specifically ), чтобы включить соответствующие типы файлов для проверки орфографии.
- Чтобы включить проверку орфографии только для документов LaTeX (или TeX), добавьте в файл или и перезапустите Vim.
Запуск Vim по команде vi
Создайте для на .
Если вы хотите, чтобы при вводе запускался , то установите пакет AUR, который удалит и заменить его символической ссылкой на .
Возврат каретки DOS/Windows
Если вы видите последовательность в конце каждой линии, это означает, что вы редактируете текстовый файл, который был создан в MS-DOS или Windows. Дело в том, что в Linux для переноса принято использовать один символ новой строки (LR), тогда как в системах Windows/MS DOS для той же цели используется последовательность из двух символов: возврата каретки (CR) и новой строки (LR). Как раз эти символы возврата каретки и отображаются в виде .
Для удаления всех символов возврата каретки из файла, выполните:
:%s/^M//g
Обратите внимание, что здесь — управляющий символ, а не обычный. Чтобы ввести управляющую последовательность , нажмите .. Также вы можете просто установить пакет и исправлять файлы командой .
Также вы можете просто установить пакет и исправлять файлы командой .
Примечание: Другой простой способ заключается в изменении опции . Используйте для преобразования файлов с окончанием строки DOS/Windows в файлы с окончанием строки Unix. Для того, чтобы сделать обратное, просто используйте .
Пустое пространство в нижней части окон gVim
Когда используется оконный менеджер, настроенный на игнорирование размеров окна, gVim заполняет неиспользованные области окна стандартным фоновым цветом темы GTK.
Решение заключается в регулировании количества места, которое будет резервировать в нижней части окна gVim. Поместите следующую строку в :
set guiheadroom=0
Примечание: Установив значение 0, вы не сможете видеть горизонтальную полосу прокрутки внизу окна.
ключ
Ключ является относительно специальной кнопкой в VIM, называемая передней клавишей, по умолчаниюЭта кнопка: сначала нажмите переднюю кнопку. После ослабления нажмите другую кнопку, вы можете сформировать набор ярлыков.
из-за Ключ сложнее нажать, и передняя клавиша будет изменена на ключ, я изменим его.Если вам нужно добавить следующую конфигурацию в VIMRC:
Тогда вы можете использовать переднюю клавишу, чтобы отобразить все виды ярлыков очень счастливыми:
Видно, что режим отображения передней клавиши и других клавиш одинаковы.
должны знать о том, Ключевое отображение ключа может отображать несколько кнопок в другую последовательность или инструкцию, например:
Это также принесет проблему: если естьЕстьТак, когда вы входите В то время VIM должен ждать следующей кнопки O (похоже на картирование KK в ESC), которые отходы некоторого времени, даже влияет на ваши первоначальные намерения, поэтому многие смены ключей не должны отображаться как «одинаковые символы», Там не будет проблем.
Опции и Переменные
Включить нумерацию строк и сделать её относительной, можно добавив в файл .vimrc:
Сохраните это и вам больше не придется думать об этих настройках. Каждый раз при открытии файла Vim будет показывать относительную нумерацию строк. Команда set включает одну из опций Vim. Выключить настройку можно указав ей противоположную опцию. Перед противоположной опцией ставится no, в отличии от обычной опции.
Используйте следующий пример, для отключения относительной нумерации, вместе с обычной нумерацией.
Не ставьте оба set’а, которые мы рассматривали в .vimrc. Это включит опцию и тут же её выключит. Скоро, я покажу вам, как делать это более программным путем.
Если вам известно текущее состояние опции, переключение опции, может быть альтернативным вариантом установки необходимой опции. Переключить её можно посредством ! после названия опции. Это включит/выключит опцию:
Если же хочется узнать текущее значение опции, используйте ? после названия опции, например
Это вернёт нам number. Теперь, с этой информацией, вы всегда сможете узнать состоянии интересующей вас опции.
Если вы хотите изменить количество колонок, которое занимает нумерация на экране, вы можете присвоить значение опции numberwidth. Данный пример установит нумерацию в 4 колонки шириной:
Посмотрите сколько места подойдет вам для нумерации и добавьте данную опцию в ваш .vimrc.
Если вам понадобится создать переменную, используйте выражение let. К примеру:
Когда сохраните это в файле .vimrc (используйте свое имя в качестве значения переменной), можно отобразить его в режиме командной стоки с помощью :echo name
Показывает значение переменной
Поставив перед опцией префикс &, с ней можно обращаться, как с переменной. Показать значение опции можно таким образом:
Команда echo используется исключительно для переменных, но указав префикс & перед опцией, тем самым мы сообщаем Vim, что хотим взаимодействовать с данной опцией, как с переменной. Теперь, удобно производить над значением опции различные математические операции. Следовательно, чтобы увеличить ширину нумерации на одну колонку, можно воспользоваться следующим примером:
echo &numberwidth должно показать значение 5.
Все переменные имеют свою область видимости. Чтобы определить область видимости, нам нужно указать букву, , и имя переменной. Неопределенная область видимости считается глобальной. Перечислим области видимости:
b: | Область видимости буфера—Переменная будет доступна только в текущем буфере |
w: | Область видимости окна—Доступна только внутри текущего окна |
t: | Область видимости вкладки—Доступна на текущей вкладке |
g: | Глобальная область видимости — Доступна везде |
I: | Локальная область видимости—Переменная доступна локально, для функции в которой была определена |
s: | Область видимости скрипта—Переменная является локальной, только для текущего скрипта |
a: | Область видимости аргумента—Переменная будет доступна только внутри функции |
v: | Глобальная область видимости—Используется для переменных определённых и используемых Vim |
Правильное определение переменной в глобальной области видимости, будет выглядеть так:
LibreOffice Writer
LibreOffice Writer – отличное решение для тех, кто пользуется ОС Linux либо не хочет платить за Word на других платформах. Приложение позволяет выкладывать файлы в интернет, предварительно экспортировав их в HTML, а также поддерживает все популярные форматы текстовых документов.
В арсенал LibreOffice Writer входит множество стилей форматирования. Текстовые структуры и линковка позволяют заниматься версткой информационных бюллетеней, листовок и так далее. У него также есть портативная версия, которую можно использовать без установки на компьютер.
Особенности:
- работа со стилями и шаблонами;
- методы макетирования страниц (включая рамки, столбцы и таблицы);
- внедренная или связанная графика, электронные таблицы и другие объекты;
- встроенные средства рисования;
- работа с составным документом;
- отслеживание изменений в версиях документов и многое другое.
Платформы: Windows, macOS, Linux
Стоимость: бесплатно
Официальная страница: LibreOffice Writer
Настройка
Vim обладает широкими возможностями настройки и расширения, что делает его привлекательным инструментом для пользователей, которым требуется большой контроль и гибкость в своей среде редактирования текста. Ввод текста упрощен благодаря множеству функций, предназначенных для повышения эффективности клавиатуры. Пользователи могут выполнять сложные команды с «назначениями клавиш», которые можно настраивать и расширять. Функция «записи» позволяет создавать для автоматизации последовательностей нажатий клавиш и вызова внутренних или определяемых пользователем функций и сопоставлений. Аббревиатуры, аналогичные макросам и сопоставлениям клавиш, облегчают расширение коротких строк текста на более длинные, а также могут использоваться для исправления ошибок. Vim также предлагает «легкий» режим для пользователей, которым требуется более простое решение для редактирования текста.
Доступно множество плагинов , расширяющих или добавляющих новые функции в Vim. Эти плагины обычно написаны на внутреннем языке сценариев Vim, vimscript (также известном как VimL), но могут быть написаны и на других языках.
Существуют проекты, объединяющие сложные сценарии и настройки и направленные на превращение Vim в инструмент для решения конкретной задачи или на добавление особого вкуса к его поведению. Примеры включают Cream , который заставляет Vim вести себя как редактор щелчков мышью, или VimOutliner, который предоставляет удобную схему для пользователей Unix-подобных систем.
Кнопка отображение
В VIM много ярлыков в VIM (отображение ключей), в дополнение к этому, вы также можете настроить собственное отображение ключей.
использовать Связанные команды могут определить свои собственные ярлыки. Сущность команды map — это преобразование последовательности кнопок в другую последовательность кнопок. Здесь мы понимаем отображение кнопки VIM. В командном режиме следующая команда может быть F3. Карта — это функция: Enter Имя файла в нижней части файла.
Введите вышеуказанную команду в командном режиме, введите, затем нажмите F3 в обычном режиме, вы найдете текущее имя файла в нижней части файла, очень волшебным.
Следующее объяснение, что такое вышеупомянутая команда: сначала используйте команду map, чтобы сделать отображение кнопки, ключ к карте — <F3>, то содержимое за пространством является новая последовательность кнопок, g перемещается к последней строке, O начать Новая строка и введите режим вставки, затем вставьте текстовое имя файла: «, затем клавиша <Esc> входит в обычный режим, а затем используйте доступ к файлу файла, и, наконец, контент регистрации.
Видно, что отображение ключей по существу является серией входов, включая переключение различных режимов, все в входной последовательности.
Команды могут работать в обычном режиме, визуальный режим, иногда необходимо использовать некоторые сопоставления кнопок в определенном режиме, Vim также предоставляет соответствующую команду следующим образом:
Рекурсия | Нерешительный | модель |
---|---|---|
Обычный режим, визуальный режим | ||
Обычный режим | ||
Визуальный режим | ||
Командной режим | ||
Вставить режим |
Здесь объясняет рекурсивную проблему: предположим, что вы напечатаете кнопку A в кнопку B, и напечатайте кнопку B в команду X. Когда вы используете рекурсивное отображение команды, вы нажимаете клавишу и, наконец, выполните команду X, если вы используете Нерешительное отображение команды, затем нажмите A, чтобы выполнить функцию клавиши B, нажав только ключ B, команда X будет выполнена.
Заключение: если вы действительно используете рекурсивный, используйте рекурсивное отображение, в противном случае нерешительный сопоставление
Кроме того, клавиши F1-F12, облигации ESC и ключ ввода и т. Д. имеют соответствующую буквенно-цифровую последовательность и могут рассматриваться следующая команда:
Примечание: буквенно-цифровая последовательность функциональной клавиши не чувствительна к регистру, т. Е. Эквивалентно.
Кроме того, карта кнопки, настроенная с использованием приведенной выше команды, действительна только для текущего экземпляра VIM. Это очень просто, очень просто, напишите конфигурацию в VIMRC, ниже — некоторые из моих кнопок конфигурации:
Увидев это здесь, у вас могут быть вопросы: в режиме вставки я карту Ctrl-H / J / K / L в правом верхнем углу, не чувствуешь проблем? Не чувствую себя проблемой? Поместите положение клавиши Ctrl изменено на ключ ALT, чтобы я мог легко использовать клавишу Ctrl.
Дальше — больше
Приведенной выше информации вполне достаточно, чтобы открывать, редактировать и сохранять файлы в текстовом редакторе Vim, однако у него есть возможности, которые могут существенно упростить и ускорить работу. Стоит начать с пояснения: Vi был одним из первых визуальных текстовых редакторов, однако начиная с определенной версии программный продукт стал доступен только под коммерческой лицензией. Энтузиасты начали разрабатывать свои аналоги этого текстового редактора, одним из которых является Vim (сокращение от Vi Improved — Vi усовершенствованный). Vim получил широкое распространение в *nix-дистрибутивах и при запуске команды vi в консоли вероятнее всего откроется именно он.
Прежде всего нужно понять, что Vim может работать в нескольких режимах, каждый из которых обладает своими особенностями и набором поддерживаемых функций. Сразу после запуска редактора вы окажетесь в обычном режиме (normal). Здесь можно не только перемещать курсор по тексту, но и выделять/удалять/копировать/вставлять как отдельные символы, так и целые блоки текста. Эти задачи выполняются нажатием соответствующих букв и цифр (причем регистр букв имеет значение), точка отсчета — текущее положение курсора. Рассмотрим навигацию по файлу:
- h — смещение курсора на один символ влево;
- j — смещение курсора на один символ вниз;
- k – смещение курсора на один символ вверх;
- l – смещение курсора на один символ вправо;
- w – смещение курсора в начало следующего слова в данной строке;
- b – смещение курсора в начало предыдущего слова в данной строке;
- G – переместить курсор в конец файла;
- gg – вернуться в начало файла.
Действия навигации также можно совмещать с цифрами, например, комбинация 3w сместит курсор вперед на три слова, а 5k на пять строк вверх.
Часто используемые операции c текстом:
- x — удалить символ под курсором;
- d — удалить символы/строки;
- dd — удалить строку целиком;
- D — удалить символы от текущего положения курсора до конца строки;
- v — включить режим выделения текста;
- y — скопировать символы/строки;
- yy — скопировать строку целиком;
- p — вставить символы/строки;
- u — отменить последнее действие.
Функции удаления и копирования требуют дополнительного пояснения, ведь при нажатии d или y вроде бы ничего не происходит. Дело в том, что редактор ожидает дальнейших указаний — сколько строк символов нужно удалить/скопировать и в каком направлении от текущего положения курсора вести отсчет. Чтобы удалить пять символов вправо от курсора, нужно последовательно нажать d5l, чтобы скопировать три строки, следующие после курсора — y5j. Если имеется выделенный текст, для его копирования достаточно нажать y.
Имеется в Vim и функция поиска:
- /шаблон — все вхождения набора символов, указанного после (слэша) будут подсвечены в тексте;
- n — сместить курсор к следующему вхождению;
- N — сместить курсор к предыдущему вхождению.
Другой режим работы Vim — режим редактирования. Переключиться в него можно несколькими способами:
- i — режим вставки (INSERT), ввод начинается с позиции курсора;
- a — режим вставки (INSERT), ввод начинается с позиции, следующей за курсором;
- A — режим вставки (INSERT), курсор перемещается в конец текущей строки;
- R — режим замены (REPLACE), все вводимые символы будут последовательно заменять находящиеся под курсором.
Если нужно заменить всего один символ, находящийся под курсором, достаточно нажать r и нужный символ — замена будет произведена без перехода в режим редактирования. Внизу экрана появляется соответствующий индикатор режима — INSERT или REPLACE. Вернутся в общий режим можно нажатием кнопки Esc (индикатор должен пропасть).
Еще один режим работы Vim — командный. Переход в него осуществляется из общего режима нажатием (двоеточия). Соответствующий индикатор появляется в нижнем левом углу окна, после чего можно вводить команды и их сочетания.
- :q — выйти из редактора;
- :q! — выйти из редактора без сохранения изменений в файле;
- :w — сохранить изменения в файл;
- :wq — сохранить изменения и закрыть редактор;
- :r имя_файла — добавить содержимое указанного файла в редактируемый;
- :r! команда_консоли — выполнить команду и добавить ее вывод в файл.
Level 1 — Survive
The most distinctive feature of VIM is that it has modes. We can define the main four of them:
- Normal mode — here you can type text commands and do navigation. To enter this mode press
- Insert mode — in this mode you can type text as in other editors. To enter this mode press
- Visual mode — here you can select text. To enter this mode press
- Command mode — editor commands (like save, open, etc.). To enter this mode press
Also, you have to learn basic navigation which works in a normal mode. Forget about arrows because they are slow to work with. When you are typing, your fingers are usually placed in the middle of your keyboard. Left hand on asdf and right hand on jkl;. And usually, you are navigating in your code up/down and rarely left/right (later we will speak about navigation within the line). So navigation in VIM is the following:
- down — (looks like a down arrow)
- up —
- left —
- right —
Bear
Bear – это приложение, созданное для заметок, но оно идеально подходит и для сложных текстов благодаря функции Markdown. От других аналогов оно отличается продуманным интерфейсом и приятным дизайном с выбором тем оформления. Для организации материалов и навигации по тексту применяются теги и внутренние ссылки. Можно закрепить часто используемые документы на боковой панели, а также легко находить нужные файлы через поиск.
Bear распространяется бесплатно, но также есть подписка за $15 в год, которая нужна для синхронизации между устройствами и расширенного экспорта.
Особенности:
- отличный вариант для заметок;
- синхронизация между устройствами в платной подписке;
- доступны многие возможности полноценных текстовых редакторов: добавление заголовков H1, H2, H3, добавление цитат, ссылок, нумерованного списка и так далее;
- доступно 7 вариантов шрифтов;
- 11 тем оформления.
Платформы: macOS, iOS
Стоимость: бесплатно или $15 в год
Официальная страница: Bear
Atom
Atom – это бесплатный кроссплатформенный текстовый редактор, разработанный и опубликованный GitHub. Благодаря поддержке подключаемых модулей на основе Node.js, это один из самых настраиваемых текстовых редакторов, доступных в Интернете.
Это 100% текстовый редактор с открытым исходным кодом; следовательно, вы можете полностью настроить его в соответствии со своими предпочтениями. Что касается функций, он не отстает от современного пользовательского интерфейса, тем, встроенной поддержки Git и встроенного менеджера пакетов.
Разработчики Atom называют его поддающимся взлому текстовым редактором 21 века. Это лучший текстовый редактор для программистов, которым для работы нужна красивая и простая в навигации IDE.
$ wget -c https://atom.io/download/rpm -O atom.rpm $ sudo rpm -i atom.rpm
Итак, это лучшие текстовые редакторы, которые вы можете попробовать в CentOS, и их тоже очень легко установить.