v1.9.1 (latest release)
-----------------------
**Changes:**
* Fixed `make check` when running from a release tarball.
v1.9
----
**Additions:**
* Added a new `pipe-to` command, to complement the existing `pipe-from`
and `filter` commands.
* Added a new `show` command, which can be used to introspect the
current values of aliases and bindings.
* Added a `-k` flag to the `copy` command, to allow keeping the current
selection after copying.
* Added a man page entry for the (previously undocumented) `eval`
command.
* Added new `$FILETYPE` and `$LINENO` special variables.
* Added a `display-invisible` global option, to allow visible rendering
of otherwise invisible Unicode characters.
* Added an `-s` command-line flag, for validating custom syntax files.
* Added a compile-time `ICONV_DISABLE=1` option, which disables linking
to the system iconv library (but makes the editor UTF-8 only).
* Added a Desktop Entry file, which can be installed using
`make install-desktop-file`.
**Improvements:**
* Updated Unicode support to version 12.1.
* Modified the `errorfmt` command, to allow sub-match groups in the
regexp pattern to be ignored.
* Various improvements to syntax highlighting and filetype detection.
* Various performance optimizations.
**Fixes:**
* Fixed a bug that would sometimes cause files to be saved as UTF-8,
even if another encoding was specified.
From Craig Barnes via Github PR.
ClosesNetBSD/pkgsrc#47.
v1.8.2 (latest release)
-----------------------
Released on 2019-04-23.
**Changes:**
* Fixed makefile to work with GNU Make 3.81 (which is still used
by OS X and Ubuntu 14.04).
v1.8.1
------
Released on 2019-04-22.
**Fixes:**
* Fixed parsing of escaped special characters in command arguments
(which was causing Lua syntax highlighting to fail).
* Removed use of `rep` (repeat character) control sequence, due to
problems caused by certain terminal emulators that claim to be
"xterm" but don't support the full set of features in the xterm
`terminfo(5)` entry (notably, the FreeBSD 12 console).
**Additions:**
* Show a confirmation prompt if Ctrl+q (quit) is pressed with unsaved
changes, instead of a cryptic error message.
v1.8
----
Released on 2019-04-18.
**Additions:**
* Added support for 24-bit RGB terminal colors.
* Added support for `strikethrough` terminal attribute.
* Added support for `alias` names containing multi-byte Unicode characters.
* Added `refresh` command (to force a full screen redraw).
* Added `dte -K` command-line option (for keycode debugging).
* Added support for reading a buffer from `stdin` at startup.
* Added support for binding Ctrl/Alt/Shift + F1-F12 on xterm-like terminals.
* Added `-s` flag to `bol` command, to allow moving to beginning of indented
text, before moving to beginning of line (a.k.a "smart home").
* Added `-c` flag to all cursor movement commands, to allow selecting
characters while moving.
* Added `-l` flag to `up`, `down`, `pgup` and `pgdown` commands, to
allow selecting whole lines while moving.
* Added default bindings for various Shift+key combinations, for doing
GUI-style text selections.
* Added key bindings to command mode for deleting/erasing whole words
(Alt+Delete and Alt+Backspace).
**Improvements:**
* Optimized built-in filetype detection.
* Fixed cursor interaction with Unicode combining characters.
* Improved handling of Unicode whitespace and unprintable characters.
* Updated character class lookup tables to Unicode 11.
* Expanded documentation for `hi` and `compile` commands.
* Optimized code to reduce editor startup and input latency.
**Breaking changes:**
* Changed the `bind` command to be much more strict when parsing key
strings and show an error message when invalid. The caret (`^`)
modifier can now only be used alone (not in combination with other
modifiers) and the `C-`, `M-` and `S-` modifiers *must* be
uppercase.
* Removed support for chained key bindings (e.g. `bind '^X c' ...`).
Commands that aren't bound to simple key combinations can just be
accessed via command mode.
* Removed support for recognizing some Ctrl/Alt/Shift key combinations
produced by the `rxvt` terminal emulator. The key codes produced by
`rxvt` violate the [ECMA-48] specification. Users of such terminals
are encouraged to configure the key codes to mimic `xterm` instead.
v1.7
----
Released on 2018-05-08.
**Changes:**
* Added support for opening multiple files using glob patterns
(e.g. `open -g *.[ch]`).
* Added support for binding more xterm extended key combinations
(Ctrl/Meta/Shift + PageUp/PageDown/Home/End).
* Improved compiler error parsing for newer versions of GCC.
* Improved handling of underline/dim/italic terminal attributes
(including support for the `ncv` terminfo capability).
* Many other small bug fixes and code improvements.
v1.6
----
Released on 2017-12-20.
**Changes:**
* Added new, default `dark` color scheme.
* Added Ctrl+G key binding to exit command mode.
* Added Ctrl+H key binding for `erase` command.
* Added syntax highlighting for TeX and roff (man page) files.
* Improved syntax highlighting of Python numeric literals.
* Improved syntax highlighting for CSS files.
* Added `ft -b` command for detecting file types from file basenames.
* Converted user documentation to Markdown format.
* Created new [website] for online documentation.
* Added support for terminfo extended (or "user-defined") capabilities.
* Added built-in support for `st` and `rxvt` terminals.
* Fixed some built-in regex patterns to avoid non-portable features.
* Fixed compiler warnings on NetBSD.
* Removed tilde expansion of `~username` from command mode, in order to
avoid using `getpwnam(3)` and thereby allow static linking with GNU
libc on Linux.
dte is a small and easy to use console text editor.
Features:
- Multiple buffers/tabs
- Unlimited undo/redo
- Search and replace
- Syntax highlighting
- Customizable color schemes
- Customizable key bindings
- Command language with auto-completion
- Jump to definition (using ctags)
- Jump to compiler error