- add wrappers in display.h
- renamed tty dpy_xxx handlers for consistency
- separate tty_term_resize called on signal and tty_dpy_invalidate
- add dpy_xor_rectangle for software cursor, remove QECOLOR_XOR
- remove static state for minibuffer handling, use mode specific state attached
to the buffer.
- remove static pointer for the popup last active window. Use new
target_window member in EditState.
- remove EditState.minibuf, replaced by WF_MINIBUF flag in EditState.flags
- rename minibuffer commands for consistency
- remove unused global variable debug_flags
- prevent search from minibuffer
- fix toggle-full-screen refresh bug. C-x f is bound to toggle-full-screen
and could be typed by mistake for C-x C-f, switching to full screen mode
but with a refresh delay. This caused confusing behavior interpreted as a
layout bug.
- make charset_ucs2le, charset_ucs2be, charset_ucs4le, charset_ucs4be local
in charset.c
- make edit_detach() and edit_attach() local in qe.c
- redraw status and diag messages in edit_display(). This caused display
bugs in x11 as asynchronous messages were erased by minibuffer window
refresh.
- display status messages in diag area (bottom right screen corner) if
minibuffer is active.
- force put_status message update if message starts with !
- force complete_refresh if window was resized or layout was changed
- move up_down_last_x to an EditState member
- make single_window static in qe.c
- move user_option to the QEmacsState structure
- move minibuffer and completion state to a MinibufState structure
- remove static state in do_minibuffer_exit
- add key name: LB for `{`, RB for `}` and VB for `|`
- add qe_strtobool(str, def). Returns boolean value from str:
y yes t true 1 evaluate to true
any other string evaluates to false
the empty string evaluates to def
- add bstr_t type:
constant bounded string with pointer and length.
bstr_make creates a bstr_t from a string pointer or NULL
bstr_token creates a bstr_t from a string upto a separator
bstr_get_nth creates a bstr_t from a the nth element of a string list
bstr_equal compares bstr_t objects for equality
- use macros for type safe registation of command line options
- combine short, long, argument names and help string
- support command line options with optional arguments
- add LF_NOSELECT flag for qe_load_file()
- add find-file-noselect command: load a file into a buffer but do not
attach the buffer to the current window. Due to the current implementation
of set_mode, the buffer is only attached to the file, the file will only be
loaded when it is finally attached to a window.
- add 8K color modes and 64-bit QETermStyle values
- add 64-bit buffer style support
- reduce colored character system used in syntax handlers to 8-bit style
and 24-bit code point
- use QETermStyle type instead of int wherever a composite style is used
- force color system used by the terminal with environment variables:
USE_16_COLORS=1, USE_256_COLORS=1 or USE_TRUE_COLORS=1
- rename font styles QE_STYLE_xxx to QE_FONT_STYLE_xxx
- rename font family QE_FAMILY_xxx to QE_FONT_FAMILY_xxx
- improve tests/16colors.pl: display bold italics combination
- improve tests/color-spaces.pl: compare true color and palette dumps
- add colortest target in Makefile to produce various color patterns
- auto-indent multi-line comments to align initial stars
such as this:
/* This is a comment
* with a second line.
*/
and free form comment paragraphs this way:
/* This is a comment
with a second line.
*/
- add various utilities for color escape sequence testing:
tests/16colors.pl
tests/256colors2.pl
tests/color-spaces.pl
tests/truecolors.sh
tests/xterm-colortest.sh
tests/xterm-colour-chart.py
- use colored code-points only for syntax highlighting
- use QETermStyle and QEStyleDef internally
- convert to TTYChar attributes only for text terminal output.
- remove most CHAR_MASK and STYLE_SHIFT handling
- pass QETermStyle array to get_colorized_line mode handlers
- pass QETermStyle array to isearch_colorize_matches
- remove combine_static_colorized_line
- move color matching functions to util.c
- rename get_tty_color as qe_map_color
- improve local variable naming consistency:
DisplayState *ds, QEStyleDef *stp, QEStyleDef styledef.
- add support for 256 and true color terminals
- fix color handling for defined styles
- fix bold, italic and underline handling for terminals
- use more explicit symbols for qe-term emulator in shell.c
- shell buffer terminal emulator still uses 16 colors
- display buffer style in C-X =
- bumped version to 0.5.0dev
- pass target window to completion functions
- fix tag completion at find-tag prompt
- add tag support in python mode
- set tag offset to the actual word instead of start of line
- add buffer properties with offset tracking
- use buffer properties for type, macro, function and object definitions.
- display current function or type name on mode line
- add list-tags command to show the tags detected for the current buffer
- add goto-tag on C-X , and M-F1 to jump to the definition of the current word
- add find-tag on C-X . to search for a given tag with completion
- more explicit sh-bang support
- support $'This is a quote: "\'"' syntax
- better match for keywords
- keywords introduce command state except for, case, export and in
- renamed script-mode to shell-script-mode
- merged patch by Hadrien Lacour
- improve parsing, recognise names, keywords, meta-characters, substitutions...
- add flexibility in forward-block (M-C-f) and backward-block (M-C-b) to
match block delimiters with non default styles
- rename all popup related mode functions from less_* to popup_*
- add less-mode for .less files (preprocessor for css files)
- add FILE to list of C types
- fix invalid widths in unicode_width.h
- avoid setting s->offset to invalid values in hex.c
- update s->unihex_mode on the fly if larger code-points are displayed
- display code-points with at least 4 hex digits
- compute default s->dump_width more accurately