Commit graph

19 commits

Author SHA1 Message Date
huwwa
4f3c4dcd60 improve colors and styles
* add error-location style and colorize error locations.
2026-06-12 15:41:07 +02:00
Charlie Gordon
77e57d11c7 Colorization: improve colorization of diff and process output
* improve color combining code for diff/patch output: preserve code
  syntax coloring on red or green background.
* improve `curline_style` handling (needs more work)
* add `QETermStyle` transparent color handling in `apply_style`
* highlight trailing blanks in a single place
* transpose `qe_term_get_style()` arguments for consistency
* add `qe_term_style_string()` and `qe_styledef_string()`
* extend style string parser to accept missing foreground color
2026-06-09 14:19:28 -04:00
Charlie Gordon
3da74c964b Buffer/file: add diff-buffer-file
* add command to compare buffer with its file in a popup
* add [d] for diff when prompting for buffer/file synching
* add default behavior for buffer/file synching
* add CONFIG_LINUX, CONFIG_FREEBSD, CONFIG_OPENBSD, CONFIG_NETBSD
* add diff styles
2026-06-04 15:08:24 +02:00
Charlie Gordon
bd50376780 Various improvements
- add charset.h
- add tools/unitable.c to compute unicode_width.h
- add tools/unicode_gen.c to compute more unicode tables
- use Unicode 15.0.0
- add rules to compute width tables from Unicode tables and TTY
- move basic definitions from util.h to cutils.h
- use CONFIG_SESSION for session support (undefined if CONFIG_TINY)
- define CompleteFunc and CT_xxx flags for completion functions
- pass CompleteFunc to xxx_complete() functions
  this allows more generic implemetation, without including qe.h
- rename fill_border() as fill_window_slack() for readability
- add QELEVEL environment variable to detect recursive invocation
- use stricter parser for load_ligatures()
- bump VERSION to 5.3.4u
2022-09-19 15:16:59 +02:00
Charlie Gordon
2c85e017fd Improve colorization
- add QE_STYLE_BLANK_HILITE style for extra blanks at end of lines
- add MODEF_NO_TRAILING_BLANKS flag to control this feature on a mode basis
- add -nc (--no-crc) command line option du disable CRC based update cache
- add disable-crc global variable for the same purpose
- fix termios c_oflag flags in raw mode
2020-10-21 09:55:01 +00:00
Charlie Gordon
49a1c1275b style and color fixes:
- document default styles
- skip_blanks() returns the next character
- simplify minimal parser
- handle multiline comments in config files
2020-10-09 00:00:55 +00:00
Charlie Gordon
a69bceb37d display: fix various old bugs
- add st_errno in ModeProbeData so dired only matches wildcards if no
  file exists with that exact name (argument passed probe_mode())
- add LF_NOWILDCARD qe_load_file flag to prevent wildcard handling
- display line numbers and terminal right margin in new gutter style
- free EditState:line_shadow display CRCs when changing modes:
  this fixes an old display bug when switching between html and text mode
- added convenient default bindings:
  C-c ~     -> toggle-read-only
  C-c c     -> set-buffer-file-coding-system
  C-c b     -> toggle-bidir
  C-c C-\   -> set-input-method
  C-c l     -> toggle-line-numbers
  C-c t     -> toggle-truncate-lines
  C-c w     -> word-wrap
- disable terminal emulation on shell buffers without the SF_COLOR flag
- only update mark on process output in interactive terminal emulator buffers
- only compute shell current directory on terminal emulator buffers
- auto select mode and character set after 3MB of output
- update wrap_cols on all windows upon shell-refresh (C-l in shell-mode)
- improve shell_get_curpath(): handle debian default prompt
- updated TODOs
2017-05-10 15:46:16 +00:00
Charlie Gordon
5d463eb5ad styles: improve consistency
- 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
2017-04-11 06:46:13 +00:00
Charlie Gordon
dff0947665 search: show search matches, fix bugs
- fix bug with word-match incremental search
- pass max offset to eb_search
- simplify search code, keep separate u32 and flag arrays
- add ISearchState* to EditWindow to display current or last matches
- add style for search matches
2015-08-19 20:33:01 +00:00
Charlie Gordon
5af9d29a2e searching: many improvements
- clean search and replace code
- fix point position upon matches in forward and backward directions
- prevent reverse search from find overlapping matches
- hilite current match
- add style search-match to hilite the current match in incremental-search
  defaults to cyan / magenta
- C-l centers the window
- C-q quotes next character in incremental search
- C-w grabs the word at point
- C-y grabs from point to next end of line
- A-b cycles unihex hex and normal search
- A-w toggles word matching
- A-y yanks last kill in search string
- add same control keys to query-replace command
- fix searching and replacing in hex and unihex modes
- wrap search after failure
- pass search data as u32 buffer
- add eb_insert_u32_buf(b, offset, buf, len) to insert unicode code points
- add window.offset_end -> offset of first char beyond the window
- add qestate.emulation_flags to select between standard emacs behaviour and
  alternate behaviours in internal commands
- fix do_center_cursor() when point is before window start
- add do_center_cursor_maybe() to center window if point is not visible
- allow C-q to quote DEL key (ASCII 127)
2015-08-15 13:08:41 +00:00
Charlie Gordon
1a13bf7d7a add QE_STYLE_ERROR style 2014-05-30 19:56:01 +00:00
Charlie Gordon
349a4995a3 improve xml and htmlsrc colorizers
* match script and style tags exactly
* handle short tags
* simplify recursive colorizing for script tags
* use c-mode colorizer for css styles
2014-04-10 08:03:04 +00:00
Charlie Gordon
2681b68040 removed EditBuffer.yank_mark and QEmacsState.mark_yank_region
changed API for GetColorizedLineFunc: offset passed by address,
  updated to start of next line
added check_readonly(EditState *s)
added tentative code for unregistring bindings, cycling modes and charsets
experiment alternate method for region highlighting:
  added EditState.region_style and EditState.curline_style
  added QEmacsState.hilite_region
  added DisplayState.style
  added clear_color to reset style bits in unicode array
  display_char_bidir takes style from DisplayState, code point is bare.
  fixed problem in text_display where line_num was not computed in shell mode
  handle region coloring in text_display (tentative)
display line numbers and hex dump offsets as QE_STYLE_COMMENT
display hex dump as QE_STYLE_FUNCTION
2008-01-09 13:41:40 +00:00
Charlie Gordon
4743fa1308 added remove_slash and append_slash path utilities
renamed canonize to canonicalize
added crude support for ~user -> /home/user
added win32 specific stuff in basename
added C-/ as an alias for C-_
some cosmetics, moved code
create files with mode 0644 in raw_save_buffer
untabified, removed redundant spaces
modified code generators to the same effect
2008-01-03 09:51:29 +00:00
Charlie Gordon
24b0aa5f6e use transparent background for HTML src styles 2007-12-20 11:33:55 +00:00
Charlie Gordon
fa760147c8 added Perl mode: perl.c
added Makefile mode: makemode.c
added HTML source mode: htmlsrc.c
added more dependencies in Makefile
added styles for HTML source coloring:
    html-comment, html-string, html-script, html-entity, html-tag
no longer rely on \n at end of line in c_colorize_line
2007-12-18 18:07:03 +00:00
Charlie Gordon
2ce9cd8aab added styles string-q and number 2007-12-15 07:27:45 +00:00
Charlie Gordon
7752172d59 added color_define and completion primitives
added QASSERT macro
various comments and cosmetics
2005-05-05 11:36:28 +00:00
Charlie Gordon
3dd0f5660c Initial revision 2004-05-29 10:17:37 +00:00