FreeBSD Manual Pages
DTE(1) General Commands Manual DTE(1) NAME dte - A small, configurable text editor SYNOPSIS dte [-HR] [-c command] [-t ctag] [-r rcfile] [[+line[,column]] file]... dte [-h|-B|-K|-V|-b rcname|-s file] OPTIONS -c command Run command, after reading the rc file and opening any file argu- ments. See dterc(5) for available commands. -t ctag Jump to source location of ctag. Requires tags file generated by ctags(1). -r rcfile Read configuration from rcfile instead of ~/.dte/rc. -s file Load file as a dte-syntax(5) file and exit. Any errors encountered are printed to stderr(3) and the exit status is set appropriately. -b rcname Dump the contents of the built-in rc or syntax file named rcname and exit. -B Print a list of all built-in config names that can be used with the -b option and exit. -H Don't load history files at startup or save history files on exit (see FILES section below). History features will work as usual but will be in-memory only and not persisted to the filesystem. -R Don't read the rc file. -K Start in a special mode that continuously reads input and prints the symbolic name of each pressed key. -h Display the help summary and exit. -V Display the version number and exit. +line,column arguments can be used to specify the initial cursor position of the next file argument. These can also be specified in the format +line:column. KEY BINDINGS There are 3 editor modes, each having a different set of key bindings. Bindings can be customized using the bind command (see dterc(5)) or dis- played using the show bind command. The key bindings listed below are in the same format as accepted by the bind command. In particular, key combinations are represented as follows: * M-x is Alt+x * C-v (or ^V) is Ctrl+v * S-left is Shift+left * C-M-S-left is Ctrl+Alt+Shift+left Normal Mode Normal mode is the mode the editor starts in. Pressing basic keys (i.e. without modifiers) simply inserts text into the buffer. There are also var- ious key combinations bound by default: S-up, S-down, S-left, S-right Move cursor and select characters C-S-left, C-S-right Move cursor and select whole words C-S-up, C-S-down Move cursor and select whole lines C-c Copy current line or selection C-x Cut current line or selection C-v Paste C-z Undo C-y Redo M-x Enter command mode C-f Enter search mode F3 Search next F4 Search previous C-t Open new buffer M-1, M-2 ... M-9 Switch to buffer 1 (or 2, 3, 4, etc.) C-w Close current buffer C-s Save C-q Quit Command Mode Command mode allows running various editor commands using a language simi- lar to Unix shell. The next and prev commands switch to the next/previous file. The open, save and quit commands should be self-explanatory. For a full list of available commands, see dterc(5). The key bindings for command mode are: up, down Browse previous command history. tab Auto-complete current command or argument C-a, home Go to beginning of command line C-b, left Move left C-c, C-g, Esc Exit command mode C-d, delete Delete C-e, end Go to end of command line C-f, right Move right C-k, M-delete Delete to end of command line C-u Delete to beginning of command line C-w, M-C-? (Alt+Backspace) Erase word Search Mode Search mode allows entering a regular expression to search in the current buffer. The key bindings for search mode are mostly the same as in command mode, plus these additional keys: M-c Toggle case sensitive search option. M-r Reverse search direction. Enter Perform regex search. M-Enter Perform plain-text search (escapes the regex). ENVIRONMENT The following environment variables are inspected at startup: DTE_HOME User configuration directory. Defaults to $HOME/.dte if not set. HOME User home directory. Used when expanding ~/ in filenames and also to determine the default value for DTE_HOME. XDG_RUNTIME_DIR Directory used to store lock files. Defaults to $DTE_HOME if not set. TERM Terminal identifier. Used to determine which terminal capabilities are supported. COLORTERM Enables support for 24-bit terminal colors, if set to truecolor or 24bit. The following environment variables affect various library routines used by dte and are inspected on every use: PATH Colon-delimited list of directory prefixes, used by execvp(3) to find executables. The following environment variables are set by dte: DTE_VERSION Editor version string. This is set at startup to the same version string as shown by dte -V. PWD Absolute path of the current working directory; set when changing directory with the cd command. OLDPWD Absolute path of the previous working directory; set when changing directory with the cd command and also used to determine which di- rectory cd - switches to. FILES $DTE_HOME/rc User configuration file. See dterc(5) for a full list of available commands and options or run "dte -b rc" to see the built-in, default config. $DTE_HOME/syntax/* User syntax files. These override the syntax files that come with the program. See dte-syntax(5) for more information or run "dte -b syntax/dte" for a basic example. $DTE_HOME/file-history History of edited files and cursor positions. Used only if the file-history option is enabled. $DTE_HOME/command-history History of dterc(5) commands used while in command mode. $DTE_HOME/search-history History of search patterns used while in search mode. $XDG_RUNTIME_DIR/dte-locks List of files currently open in a dte process (if the lock-files op- tion is enabled). EXIT STATUS 0 Program exited normally. 64 Command-line usage error (see "synopsis" above). 65 Input data error (e.g. data specified by the -s option). 71 Operating system error. 74 Input/output error. 78 Configuration error. Note: the above exit codes are set by the editor itself, with values in ac- cordance with sysexits(3). The exit code may also be set to values in the range 0..125 by the quit command. EXAMPLES Open /etc/passwd with cursor on line 3, column 8: dte +3:8 /etc/passwd Run several commands at startup: dte -c 'set filetype sh; insert -m "#!/bin/sh\n"' Read a buffer from standard input: echo 'Hello, World!' | dte Interactively filter a shell pipeline: echo 'A B C D E F' | tr ' ' '\n' | dte | tac NOTES It's advised to NOT run shell pipelines with multiple interactive programs that try to control the terminal. For example: echo "Don't run this example!!" | dte | less A shell will run these processes in parallel and both dte(1) and less will then try to control the terminal at the same time; clobbering the in- put/output of both. SEE ALSO dterc(5), dte-syntax(5) AUTHORS Craig Barnes Timo Hirvonen October 2022 DTE(1)
NAME | SYNOPSIS | OPTIONS | KEY BINDINGS | ENVIRONMENT | FILES | EXIT STATUS | EXAMPLES | NOTES | SEE ALSO | AUTHORS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=dte&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>
