Linux текстовые редакторы vim

Vim (Русский)

Vim — консольный текстовый редактор, являющийся расширенной версией vi с дополнительными функциями, которые включают в себя: подсветку синтаксиса, полноценную систему помощи, встроенную поддержку скриптов (vimscript), визуальный режим для простоты выделения и сравнение файлов (vimdiff).

Contents

Установка

Установите один из следующих пакетов:

  • vim — с поддержкой Python 2/3, Lua, Ruby и Perl, но без поддержки GTK/X.
  • gvim — идентичен vim , но c поддержкой GTK/X.

Использование

Также вы можете запустить vimtutor (для версии с интерфейсом командной строки) или gvimtutor (для версии с графическим интерфейсом) для отображения руководства по использованию Vim.

Vim включает в себя широкую справочную систему, доступ к которой можно получить посредством :h субъект . Субъекты включают в себя команды, опции, горячие клавиши, плагины и так далее. Используйте команду :h (без какого-либо субъекта), чтобы полчуить информацию о вспомогательной системе и о том, как перемещаться между субъектами.

Настройка

Файл конфигурации Vim для конкретного пользователя расположен в домашней директории —

/.vimrc , файлы текущего пользователя в

/.vim/ . Общий файл конфигурации —

/.vimrc , а общие файлы находятся в /usr/share/vim/ .

/.vimrc . Добавьте let skip_defaults_vim=1 в /etc/vimrc для полного отключения загрузки defaults.vim . [1]

Буфер обмена

Такие команды Vim как :yank или :paste работают с безымянным регистром, который по умолчанию соответствует регистру «* . Если доступна +clipboard , то регистр «* отображается в PRIMARY буфер в X.

Чтобы изменить стандартный регистр на «+ , используйте :set clipboard=unnamedplus . Регистр «+ соответствует CLIPBOARD буферу в X.

Для более подробной информации смотрите :help ‘clipboard’ .

Подсветка синтаксиса

Чтобы включить подсветку синтаксиса для многих языков программирования:

Отступы

Отступы для определенного типа файла:

Визуальный перенос

Опция wrap (включена по умолчанию) указывает Vim переносить длинные строки, которые не помещаются на экран, так, что оставшаяся часть строки отображается на следующей линии. Опция wrap влияет только на отображение текста, сам текст при этом не изменяется.

Изначально перенос строки происходит ровно в том месте, где размещается последний ее символ, поместившийся на экране, даже если он находится в середине слова. Для более умного переноса используйте опцию linebreak . Когда эта опция включена командой set linebreak , перенос строки происходит только после символов, которые перечислены в опции breakat , которая по умолчанию содержит в себе пробел и некоторые знаки препинания (смотрите :help breakat ).

Остаток строки обычно начинается с начала следующей линии, без всякого отступа. Опция breakindent сообщает Vim, что необходимо отображать перенесенный остаток строки с отступом, так, что на всех последующих линиях перенесенные части строки имеют тот же отступ, что и начало этой строки. Поведение breakindent может быть настроено при помощи опции breakindentopt . Например, для файлов исходного кода на языке Python может быть полезно добавлять дополнительный отступ в 4 пробела для перенесенных частей длинной строки (подробнее смотрите в :help breakindentopt ):

Использование мыши

Vim позволяет пользоваться мышью, но только в тех терминалах, которые это поддерживают:

Чтобы включить поддержку мыши, добавьте в

Опция mouse=a устанавливается в defaults.vim

Переход на новую строку с помощью клавиш со стрелками

По умолчанию, при нажатии ← в начале строки или → в конце, курсор не переводится на следующую/предыдущую строку.

Читайте также:  Check all process running linux

Это можно исправить с помощью добавления строки set whichwrap=b,s, ,[,] в ваш файл

Объединение файлов

Vim включает в себя diff-редактор (программа, которая отображает различия между двумя файлами и позволяет удобно их объединять). Используйте vimdiff для этого — просто укажите ей пару файлов: vimdiff файл1 файл2 . Ниже приведен список команд vimdiff.

Действие Горячая клавиша
следующие изменение ]c
предыдущее изменение [c
diff obtain do
diff put dp
развернуть блок zo
свернуть блок zc
перечитать файлы :diffupdate
переключить окна Ctrl+w+w

Советы и рекомендации

Нумерация строк

Чтобы включить отображение номера столбца, используйте :set number . По умолчанию показываются абсолютные значения номеров строк, относительные включаются посредством :set relativenumber .

Переход к новой строке осуществляется посредством :line number или line numbergg . Все переходы запоминаются в лист переходов, для более подробной информации смотрите :h jump-motions .

Проверка орфографии

Проверку орфографии в Vim можно включить с помощью:

По умолчанию установлен только английский словарь. Другие словари можно найти в официальных репозиториях по запросу vim-spell . Еще больше словарей можно найти в FTP-архиве Vim. Словари необходимо поместить в каталог для словарей —

/.vim/spell/ . Включить словарь можно командой :setlocal spell spelllang=ru_yo (заменив ru_yo на имя нужного словаря).

Действие Команда
следующая ошибка ]s
предыдущая ошибка [s
предложения для исправления z=
добавить правильное написание zg
добавить правильное написание (на сеанс) zG
добавить неправильное написание zw
добавить неправильное написание (на сеанс) zW
повторить проверку орфографии во всем файле :spellr

/.vimrc или /etc/vimrc и перезапустите Vim.
Вы можете включить проверку орфографии для конкретных типов файлов (например .txt), используя плагин FileType и собственное правило для определения типа файла. Чтобы включить проверку орфографии для всех файлов, оканчивающихся на .txt, создайте файл /usr/share/vim/vimfiles/ftdetect/plaintext.vim и вставьте туда строку: autocmd BufRead,BufNewFile *.txt setfiletype plaintext . Далее, вставьте строку autocmd FileType plaintext setlocal spell spelllang=ru в файл

/.vimrc или /etc/vimrc и перезапустите Vim. Или поместите строку autocmd BufRead,BufNewFile *.txt setlocal spell в

/.vimrc или /etc/vimrc и перезапустите Vim. Не забудьте отредактировать строчку (specifically *.txt ), чтобы включить соответствующие типы файлов для проверки орфографии.
Чтобы включить проверку орфографии только для документов LaTeX (или TeX), добавьте autocmd FileType tex setlocal spell spelllang=ru в файл

/.vimrc или /etc/vimrc и перезапустите Vim.

Сохранение позиции курсора

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

Запуск Vim по команде vi

Создайте псевдоним для vi на vim .

Если вы хотите, чтобы при вводе sudo vi запускался vim , то установите пакет vi-vim-symlink AUR , который удалит vi и заменить его символической ссылкой на vim .

Возврат каретки DOS/Windows

Если вы видите последовательность ^M в конце каждой линии, это означает, что вы редактируете текстовый файл, который был создан в MS-DOS или Windows. Дело в том, что в Linux для переноса принято использовать один символ новой строки (LR), тогда как в системах Windows/MS DOS для той же цели используется последовательность из двух символов: возврата каретки (CR) и новой строки (LR). Как раз эти символы возврата каретки и отображаются в виде ^M .

Для удаления всех символов возврата каретки из файла, выполните:

Обратите внимание, что ^ здесь — управляющий символ, а не обычный. Чтобы ввести управляющую последовательность ^M , нажмите Ctrl+v,Ctrl+m .

Также вы можете просто установить пакет dos2unix и исправлять файлы командой dos2unix файл .

Пустое пространство в нижней части окон gVim

Когда используется оконный менеджер, настроенный на игнорирование размеров окна, gVim заполняет неиспользованные области окна стандартным фоновым цветом темы GTK.

Читайте также:  Windows run exe from cmd

Решение заключается в регулировании количества места, которое будет резервировать в нижней части окна gVim. Поместите следующую строку в

Плагины

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

Установка

Используя встроенную систему управления пакетами

В Vim 8 добавлена возможность загрузки сторонних плагинов. Чтобы использовать эту функциональность, переместите плагины в

Используя менеджер плагинов

Менеджер плагинов позволяет устанавливать плагины и управлять ими одинаковым образом независимо от того, на какой системе вы запускаете Vim. Он представляет собой специальный плагин, который выполняет роль пакетного менеджера для других плагинов.

  • Vundle — в настоящее время наиболее популярный менеджер плагинов Vim.
  • Vim-plug — минималистичный менеджер плагинов для Vim, который имеет много особенностей, например, загрузка плагинов по запросу и параллельное обновление.
  • pathogen.vim — простой плагин для управления переменной runtimepath.
  • Dein.vim — менеджер плагинов, заменяющий NeoBundle, доступен как vim-dein-gitAUR .

Из репозиториев Arch

Группа vim-plugins объединяет множество разнообразных плагинов. Используйте команду pacman -Sg vim-plugins для отображения списка пакетов, которые вы можете затем установить, используя pacman.

cscope

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

Скопируйте стандартный файл cscope, который Vim будет автоматически читать:

/.vim/plugin/cscope_maps.vim , чтобы включить горячие клавиши cscope в Vim 7.x:

Создайте файл, который содержит список файлов для индексации (cscope может обрабатывать множество языков, но для примера мы возьмем файлы на Си/Си++ с расширениями .c, .cpp и .h):

Создание файлы базы данных, которые cscope будет читать:

Горячие клавиши по умолчанию:

Не стесняйтесь изменять горячие клавиши:

Taglist

Taglist отображает структуру файлов исходного кода и позволяет эффективно просматривать исходники на различных языках программирования.

Источник

ИТ База знаний

Курс по Asterisk

Полезно

— Узнать IP — адрес компьютера в интернете

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Калькулятор инсталляции IP — АТС Asterisk

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

Как пользоваться vim в Linux

Как редактировать файлы через консоль?

4 минуты чтения

Сегодня в статье будут кратко описаны главные функции текстового редактора Vim – данный редактор очень часто является самым простым способом отредактировать конфиг\текстовый файл, но он обладает не самым дружелюбным интерфейсом. Давайте разберём основные моменты.

Мини — курс по виртуализации

Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена

Текстовый редактор Vim

Этот текстовый редактор умеет работать в нескольких режимах: режиме вставки, командном режиме и «ex mode» режиме (режим последней строки). Сразу после открытия файла с помощью команды vim %file_name% редактор запуститься в так называемом «командном режиме» — ввод текста будет недоступен, Vim будет воспринимать только команды. Для переключения в режим вставки необходимо нажать «i» – у вас появится возможность редактировать текст. После того как все манипуляции будут завершены, вам необходимо будет перейти в режим последней строки и дать команду сохранить\выйти\сохранить и выйти и так далее – для этого необходимо: если находитесь в командном режиме нажать «:» (двоеточие) и ввести команду, а если находитесь в режиме вставки – сначала нужно нажать Escape и затем нажать двоеточие.

Командный режим и его возможности

В командном режиме доступно очень большое количество команд, с полным списком которых можно ознакомиться по ссылке: https://www.fprintf.net/vimCheatSheet.html, я же приведу здесь только самые часто используемые и полезные.

Читайте также:  Kde plasma mac os theme

Самое главное, что нужно запомнить – это клавиши, используемые для перемещения по тексту – это h, j, k, l.

  • h — сдвиг на один символ влево
  • j сдвиг на один символ вниз
  • k сдвиг на один символ вверх
  • l сдвиг на один символ вправо

Кроме того, есть возможность перемещаться на одно слово вперед или назад – важно помнить, что словом является нечто вида «aesr1001k», то есть без дефиса и прочих разделительных знаков – «aesr-1001k» – это будет восприниматься редактором как два слова. Итак, для перехода на одно слово вперед нужно нажать «w», а для перехода назад – «b». Не очень интуитивно, не правда ли?:)

Если вам нужно что-то копировать – в Виме это делается достаточно просто – для этого нужно сначала переключиться в режим редактирования текста (клавиши «V» (выделение целых строк),»v»(посимвольное выделение) или «Ctrl-v»(блочное выделение) – после переключения можно будет выделять текст используя кнопки описанные выше или же используя клавиши со стрелками. После выделения нужно нажать клавишу «y» для копирования фрагмента в буфер обмена. Для вставки используются маленькая и большая «p» – маленькая для вставки после курсора и большая, соответственно, до.

Что касается удаления – здесь тоже есть свои «трюки»:

  • d или x — удаление символов – курсор нужно ставить над нужным символом и нажимать указанную клавишу
  • dw — удаление слова под курсором
  • db — удаление предыдущего слова
  • dd — удаление целой строки
  • d$ — удаление части строки от позиции курсора до конца строки
  • d^ — удаление части строки от позиции курсора до начала строки

Что если вам необходимо найти какую-нибудь информацию в тексте? Для этого вам потребуется переключиться в режим поиска, причём есть два режима поиска: при нажатии на «/» — включиться поиск в прямом направлении, и при нажатии на на «?» — включиться поиск в обратном направлении. После этого нужно ввести шаблон поиска – к примеру: :/ipaddress

Также возможен поиск и замена – данный режим включается командой :s, после чего вам необходимо будет указать слово для поиска и слово, на которое произойдет замена: :%s/192.168.1.1/192.168.2.2/ — в данном примере указана глобальная область поиска, и первый найденный сетевой адрес 192.168.1.1 будет заменен на 192.168.2.2. Если же необходимо заменить все найденные адреса на новые и запрашивать подтверждение при каждой замене – нужно добавить буквы «gc» — :%s/192.168.1.1/192.168.2.2/gc

У многих мог возникнуть вопрос – как же сделать столь привычное Undo, то есть отменить последние действие – для этого нужно воспользоваться командой «u» — но, к сожалению, отменить можно только последние действие. Если же нужно повторить отмененное действие (т.е сделать UnUndo) нужно нажать «Ctrl+r».

Важно – если отменен режим совместимости с Vi, то отменять можно большее количество действий.

Сохранение и выход

Теперь перейдем к важному моменту – сохранению и выходу. Тут есть несколько опций:

  • :w сохранение изменений без выхода
  • :wq или 😡 — старое доброе «сохранить и выйти»
  • :q! — выход без сохранения изменений
  • :w %file_name% — «сохранить как» в новый файл

На этом всё, помните, что Vim не является самым удобным редактором, и, если есть возможность – лучше установите что-то более привычное для вас. Но навыки использования Vim важны, так как часто это единственно доступный инструмент для редактирования конфигов на удаленных серверах.

Онлайн курс по Linux

Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps

Источник

Оцените статью