Due to the limitations of the techniques used when communicating with a
terminal, it is not possible to “decide” that the user pressed the
Escape key for about a second after the actual key press
(see EscapeTime). This means that you will experience annoying delays when
using menus. If you have no f1 key, use Escape-Escape, or
redefine a keystroke assigning the command Escape
, and you will be
able to use that keystroke instead of Escape. Unfortunately,
some GUI-based terminals (most notably, gnome-terminal
) use f1
for their own purposes; in that case, you can assign the Escape
command to another key (see Configuration).
If your system has a standard Meta or Alt key, there is a good chance that you have several other shortcuts. If the built-in Meta bindings do not work, you must discover which is the effect of the Meta in your terminal emulator. Indeed, it is possible in theory to configure about 150 shortcuts. See Configuration. In any case, prefixing a key with Escape has the same effect as holding down Meta, so with the standard key bindings you can, for instance, advance by word with Escape followed by F.
--no-syntax
option.Even if ne
will switch transparently to memory-mapped disk files, syntax
highlighting requires a great deal of additional memory.
Terminal
settings.If you are a Mac user, you need to check the “Delete sends CTRL-H” option
in the ‘Advanced’ tab of the Terminal
application settings.
ne
does tilda expansion.When you have to specify a file name, you can always start with ~/ in order to specify your home directory, or ~user/ to specify the home directory of another user.
Sometimes, due to different opinions about the best default foreground and background colors, some of the color choices in a syntax file might be unreadable (for instance, ‘dim white’ on a terminal with a white background). Just copy the guilty syntax specification file to the ~/.ne/syntax directory, and change the color names at the start of the file.
When you’re struggling to clean up a mix of TABs and SPACEs,
temporarily switching to the ‘tabs’ syntax may help. The command
Syntax tabs
makes TAB characters show up in a different
background color from SPACEs. Once you’ve gotten your white space
issues straightened out, you can switch back to the syntax appropriate
for your current file type.
ne
does interactive filename completion.When you have to specify a file name as last element of a long input, you can invoke the completer using Tab. If you hit it twice in a row, you will enter the file requester, where you can navigate and escape back to the command line, either with f1, which will let you edit again your previous input, or with Tab, which will copy your current selection over your previous file name. In other words, you can freely alternate completion, editing and browsing.
ne
tries to emit as few characters as possible when updating the
screen. However, for each key you type it is likely that the status
bar has to be updated. If your connection is very slow, you can
disable the status bar to get a quicker response (see StatusBar).
If you press after Escape any key that does not produce the second
character of an escape sequence, ne
will immediately recognize the
Escape key code as such. Since non-alphabetical keys have no effect while
browsing through the menus, if you’re forced to use Escape as menu
activator you can press, for instance, ‘,’ just after it to speed
up the menu activation (note that ‘:’ would not work, because it would
activate the command line). Alternatively, you can just type Escape
twice in a row.
Turbo mode (see Turbo) allows performing very complex operations without updating the screen until the operations are complete. This can be a major plus if you are editing very long files, or if your terminal is slow. If the default value (0, which means twice the number of visible rows) does not give you the best results, experiment other values.
Regular expressions must be studied very carefully. If you spend a lot
of time doing editing, it is definitely reasonable to study even their
most esoteric features. Very complex editing actions can be performed by
a single find/replace using the \n
convention. But remember
always that regular expressions are much slower than a normal search: in
particular, if you use them on a UTF-8 text, ne
has to transform
them into an equivalent (but more complex) expression that cannot match
partially a UTF-8 sequence, and this expansion makes the search even
slower.
Many boring, repetitive editing actions can be performed in a breeze
by recording them the first time. Remember, however, that while recording
a complex macro you should always use a cursor movement that will apply
in a different context. For instance, if you are copying a word, you cannot
move with cursor keys, because that word at another application of the
macro could be of a different length. Rather, use the next/previous word
keys and the MoveEOW
command, which guarantee a correct behaviour in
all situations.
When you save an autoprefs file, the file simply contains a macro that,
when executed, produces the current configuration. However, you could want,
for instance, to never change the insert/overwrite state. In this case, just
edit the autoprefs files with ne
and delete the line containing the
command setting the insert flag. When the autoprefs are loaded later, the
insert flag will be left untouched. This trick is particularly useful with
the StatusBar
and FastGUI
commands.
Sometimes it can happen that a keystroke does not work—for instance,
Control-O does not open a file. This usually is due to the kernel
tracking that key for its purposes. For instance, along a telnet
connection with xon/xoff flow control, Control-S and
Control-Q would block and release the output
instead of saving and quitting.
In these cases, if you do not need the system
feature you should check how to disable it: for instance, some BSD-like
systems feature a delayed suspend signal that is not in the POSIX
standard, and thus cannot be disabled by ne
. On HP-UX, the command
stty dsusp ^-
would disable the signal, and would let the control
sequence previously assigned to it to run up to ne
.