Редактирование команд во внешнем редакторе

External Command Editing по-английски

Большую команду, если много аргументов, хочется как-то вставить в редактор, отредактировать и потом запустить.

В Bash

Надо указать в переменной EDITOR название редактора

bash-3.2$ echo $EDITOR

bash-3.2$ EDITOR='vim'
bash-3.2$ echo $EDITOR
vim

Когда редактор указан, комбинация клавиш ctrl+x+e

  1. зажать клавишу ctrl
  2. нажать клавишу x
  3. отпустить x
  4. не отпуская ctrl нажать клавишу e

откроет редактор (указанный выше - vim), и там можно уже работать.

Zsh

https://apple.stackexchange.com/questions/347742/what-is-the-ctrlxe-equivalent-for-macoss-terminal#comment589518_347745

У меня из коробки не заработало. Но помогли несколько команд

EDITOR="vim"
autoload -U edit-command-line
zle -N edit-command-line
bindkey '^X^E' edit-command-line

Можно сохранить это дело в .zprofile.

В zsh можно прямо на месте добавить ещё одну строчку и ходить туда-сюда по-ним.

Iterm

Since version 3 of iTerm you can use Composer feature.

Use:

  •  + Shift + . = to open the editor window
  • Shift + Enter = to send the command for execution

https://stackoverflow.com/a/68989080

Notes mentioning this note

There are no notes linking to this note.


Here are all the notes in this garden, along with their links, visualized as a graph.