home/doc/pages/changelog.asciidoc
Maxime Coste 1631a7d8d9 Replace the Exclusive face attribute with Final
Final is more granular, it consists of FinalFg (f), FinalBg (g)
and FinalAttr (a) which control if a face's fg, bg, or attributes
fully overwrite the previous face (instead of merging) and if
following faces apply on top of this face or not.

Fixes  if the Whitespace face has the FinalFg flag.
2018-09-23 23:27:14 +10:00

103 lines
3.8 KiB
Plaintext

= Changelog
This changelog contains major and/or breaking changes to Kakoune between
released versions.
== Development version
* `remove-hooks` <group> argument is now a regex and removes all
hooks whose group matches it.
* `exclusive` face attribute (e) has been replaced with more
granular `final foreground` (f), `final background` (g), and `final
attributes` (a), or the three combined as `final` (F). Semantics
changed slightly as those attributes apply to the existing face as
well (a final face will not get modified by a following face if that
following face does not have the final attribute itself.
== Kakoune 2018.09.04
This version contains a significant overhaul of various Kakoune
features that can break user configuration. This was a necessary
change to make Kakoune command model cleaner and more robust.
* `%sh{...}` strings are not reparsed automatically anymore, they need
to go through an explicit `evaluate-commands`
* The `-allow-override` switch from `define-command` has been renamed
`-override`.
* The search prompt uses buffer word completion so that fuzzy completion
can be used to quickly search for a buffer word.
* The `wrap` highlighter can accept a new `-marker <marker_text>` switch.
* The command line syntax has changed to support robust escaping.
- `%sh{...}` is not expanded to multiple tokens automatically anymore,
to evaluate its output as multiple tokens/commands, use the
`evaluate-commands` command:
-------------------------------------------------------------
evaluate-commands %sh{ echo "first command; second command" }
-------------------------------------------------------------
- Escaping of `'` in `'...'` and `"` and `%` in `"..."` strings is done
by doubling up (`''`, `""` and `%%`) instead of using a backslash
- Bare words escaping has been tweaked.
See <<command-parsing#,`:doc command-parsing`>>.
* Various lists (options, registers...) in Kakoune are now written using
the command line syntax:
- `set-register` now take an arbitrary number of parameters and sets
the register to multiple strings. `%reg` expands to a list of strings.
- the `$kak_reg_*` environment variable is now a list, `$kak_main_reg_*`
provides the previous behaviour.
- `%opt` expands list options as list of strings.
- selection descs are whitespaces separated instead of `:` separated
* Highlighters syntax has changed to permit explicit naming and remove
highlighter specific name parameters (such as for the group highlighter)
`add-highlighter <path>/<name> <type> <params>` is the new syntax.
* Regions highlighters have been overhauled and are now specified with
a sequence of commands instead of a single one:
------------------------------------------------------------------
add-highlighter <path>/<name> regions
add-highlighter <path>/<name>/<region name> region <begin> <end> \
<type> <params>
------------------------------------------------------------------
The recursion regex is opt-in through a `-recurse <recurse>` flag.
They also are not necessarily groups anymore, a region can directly
apply any other highlighter
See <<highlighters#,`:doc highlighters`>>
* Highlighter type names have been unified, types that used `_` as
word separators, such as `show_whitespaces` are now using `-`
(`show-whitespace`).
* `a` on end of line is not treated specially anymore, it will start
inserting on the next character, which will be the first character
of the next line.
* `autoshowcompl` options has been renamed `auto_complete` and is
now a `flags(insert|prompt)` option, allowing more granular
configuration of when the completions should be displayed
automatically.
* Prompt editing shortcuts have been changed to match readline.
== Kakoune 2018.04.13
First official Kakoune release.