MyTetra Share
Делитесь знаниями!
Что настроить в редакторе Micro, чтобы его интерфейс стал удобнее и привычнее
Время создания: 20.11.2017 13:42
Текстовые метки: micro editor, micro, editor, редактор, настройка, первичная
Раздел: Компьютер - Linux - Редакторы текста - Текстовый редактор micro
Запись: xintrea/mytetra_syncro/master/base/1511174536fwax013mmg/text.html на raw.github.com

Общие настройки редактора


Общие настройки находятся в файле:



/home/<user>/.config/micro/settings.json



Желательно установить опции:



  • "savecursor": true - запоминать положение курсора в открываемых/закрываемых файлах
  • "useprimary": false - запретить копирование в буфер обмена при выделении мышкой при каждом движении мышки. Полезно, если micro используется в терминале в удаленной сессии. Копирование в буфер обмена будет происходить только после нажатия Ctrl+C.



Настройки клавиатуры


По-умолчанию, в старых версиях редактора micro, файл настройки клавиатуры не создан. Его можно создать вручную:



touch ~/.config/micro/bindings.json



В более новых версиях, как минимум в 2.0.3, этот файл созадется автоматически.


Его содержимое должно быть в формате Json, примерно так:



{

"CtrlY": "Undo",

"CtrlZ": "Redo"

}



Получить помощь по возможным комбинациям клавиш можно в самом редакторе, нажав Ctrl+E (переход в командный режим), и введя команду:



help keybindings



Начиная с версии 1.3.2 появилась проблема, которую обещают исправить в версии 1.3.4. Проблема в том, что решили использовать клавишу ESC для ввода магических кодов со стартовым кодом 27. Кому это надо - отдельный вопрос. Факт в том, что в Micro перестали работать:


  • выход из редактора по ESC
  • выход из помощи по ESC
  • выход из командного режима по ESC
  • различные отмены по ESC


Для того, чтобы вернуть нормальное поведение ESC, необходимо: установить micro 1.3.1 или ниже (автор статьи использует вообще 1.2.0). И в файле bindings.json надо прописать опцию:



"Esc": "Quit"



После такой настройки клавиша ESC заработает как положено. Другими словами: в версиях 1.3.2 - 1.3.x данная настройка не работает.


UPD: Проверено, что настройка заработала в версии 1.4.0.


Еще стоит прописать такие опции для более привычного поведения курсора во время выделения:



"ShiftHome": "SelectToStartOfLine",

"ShiftEnd": "SelectToEndOfLine",

"CtrlShiftRight": "SelectWordRight",

"CtrlShiftLeft": "SelectWordLeft",

"CtrlRight": "WordRight",

"CtrlLeft": "WordLeft"



Эти опции заставят работать выделение до конца/начала строки при нажатии Shift-Home/End. А так же заработает перепрыгивание и выделение по словам при нажатой клавише Ctrl.


Примечание: в версии 1.4.0 так и не заработало выделение текста по клавишам Shift+PageUp/PageDn. Поэтому быстрое выделение больших блоков текста пока в редакторе Micro не работает.



Настройка поиска


По-умолчанию, в micro работает поиск и при нажатии F7 и при нажатии Ctrl+F. Вроде бы удобно, зато продолжение поиска вперед и назад сделано самобытными комбинациями Ctrl+N и Ctrl+P. Видимо, имелись в виду VI-подобные комбинации /n и /p. Мало того, по-дефолту клавиша поиска занимает даже не две, а три комбинации: помимо F7 и Ctrl+F вызвать поиск можно клавишей F3, о чем написано в документации на шорткаты:



| F3 | Find |

| F4 | Quit |

| F7 | Find |



Но зачем нужно такое разнообразие вызова поиска, если при этом не работает по привычным клавишам продолжение поиска вперед и назад? Это исправляется (правда, не до конца) следующим образом.


В файле bindings.json надо добавить следующую строчку (надо не забывать следить за запятыми в конце JSON строк), чтобы заработало продолжение поиска вперед:



"F3": "FindNext",



Продолжение поиска вперед по клавише F3 настроено. А что насчет других комбинаций? А что насчет комбинаций для продолжения поиска назад?


Навесить продолжение поиска вперед в старом DOS-стиле не получается вообще:



"ShiftF7": "FindNext", - не работает

"Shift-F7": "FindNext", - не работает



Выходит, что для поиска вперед остается использовать только кнопку F3. А поиск назад на привычные комбинации вообще настроить невозможно, так как комбинации Shift и Ctrl вместе с функциональными клавишами, похоже, не работают:



"ShiftF3": "FindPrevious", - не работает

"Shift-F3": "FindPrevious", - не работает

"CtrlShiftF7": "FindPrevious" - не работает

"Ctrl-Shift-F7": "FindPrevious" - не работает



В общем, надо ждать последующего развития редактора, в котором наконец-таки заработают клавиши-модификаторы вместе с функциональными клавишами.



Установка редактора Micro в качестве системного


Если установить редактор Micro как системный, его подхватит MidnightCommander (mc) и начнет его использовать при редактировании файлов. Нужно только не забыть снять галку "Встроенный редактор" в настройках MC (в англоязычном интерфейсе она называется "Use internal edit").


Чтобы указать редактор как системный, нужно в каталоге пользователя в файле .bashrc прописать строчку:



export EDITOR=micro



Для принятия изменений надо перезапустить сессию bash. Предполагается, что редактор Micro размещен в директории /usr/bin.



 
MyTetra Share v.0.58
Яндекс индекс цитирования