Man page - e(1)
Packages contains this manual
Manual
e
NAMESYNOPSIS
DESCRIPTION
EDITOR SELECTION
NAME
e - invoke your editor, with optional file:lineno handling
SYNOPSIS
e
[
<editor’s options>
]
<file>
[
:
line
]
[
<file>
...]
<pipeline>
| e -:
[
<editor’s
options>
]
<pipeline>
| e -::
[
<editor’s
options>
]
DESCRIPTION
Programs that mention line numbers in messages have mostly standardized on "file:line: Message" or "file:line:col: Message". Alas, this is not what editors support, which is almost always "+line" "file".
e takes a list of file names, optionally followed with : line , then possibly with : column and/or an additional colon, and gives to your editor. The line numbers are passed as a separate argument " + line " before the file name which is what editors expect.
Alternatively, you can provide file names on the standard input, and specify -: or -:: as the first argument. The former allows file names without line numbers, the latter silently ignores anything not in the expected format.
Examples:
git grep FIXME|e -:
make 2>&1 >/dev/null|grep error:|e -::
This is roughly a shorthand for "e ‘pipeline|cut -d: -f1-2‘".
e is also handy as a general-purpose smart alias for running the editor. If yours has a long name like "jstar" or "emacs", you save four keystrokes on what for a typical Unix user is the most often issued command.
EDITOR SELECTION
If the environment variable $EDITOR is set, e will use that. Otherwise, it calls sensible-editor , which asks what editor to use then saves your answer. You can run select-editor to get asked again.