Commit Graph

421 Commits

Author SHA1 Message Date
Maxime Coste
78419bc76f Remove InsertCompletionSelect hook 2019-04-17 08:38:52 +02:00
Maxime Coste
9118a18d5d Change completions option docstring element to be an arbitrary command
We can have the previous behaviour by just passing the docstring to
`info -placement menu`.
2019-04-17 08:38:52 +02:00
Maxime Coste
02fc42a12a Rename info -placement to info -style and support modal style
Fixes #1375
Closes #1380
2019-04-17 08:38:52 +02:00
Maxime Coste
ace499ecb1 Pass selected completion text to InsertCompletionHide 2019-04-16 15:56:07 +02:00
Justin Frank
f49644e8ee Fix typo in documentation and clarify override behaviour 2019-04-15 12:53:45 -07:00
Maxime Coste
0bff4851d9 Support '-placement menu' switch in the info command
Expose insert completion menu documentation via the info command.
2019-04-15 17:22:48 +02:00
Maxime Coste
6b79c1e000 Support named captures in hooks
Fixes #2857
2019-04-15 23:56:49 +10:00
Justin Frank
891c6ca8e2 Fix typo in changelog 2019-04-08 17:08:35 -07:00
Justin Frank
93ced79f37 Updated the changelog, commands, and hooks docs to be clearer 2019-04-08 17:06:56 -07:00
Justin Frank
87bcf23f3e Added module system to changelog, commands, and hooks doc files 2019-04-08 17:06:56 -07:00
Maxime Coste
69663bdc81 Update changelog 2019-04-08 22:19:17 +10:00
Maxime Coste
c8839e7904 Add a ClientCreate and ClientClose hook
As discussed in #2830.
Closes #2500.
2019-04-08 21:59:32 +10:00
Maxime Coste
08f1a471fd Merge remote-tracking branch 'elasticdog/current-option-values' 2019-04-07 21:08:48 +10:00
Maxime Coste
deff8f2b8e Merge remote-tracking branch 'Frojdholm/fix-typo-highlighters' 2019-04-07 13:40:41 +10:00
Maxime Coste
d0df1ffe71 update version notes and changelog 2019-04-07 09:51:27 +10:00
Maxime Coste
41f19f8dc9 Add support for %file{...} expansions
This should make the use case exposed in #2836 implementable.
2019-04-07 09:43:40 +10:00
Maxime Coste
744778be30 Add a -to-file <filename> switch to the echo command
As discussed in #2836
2019-04-07 09:32:17 +10:00
Hampus Fröjdholm
1046e3d4d5 Fix typo highlighters docs 2019-04-04 04:48:27 +02:00
Bruno Heridet
b40eeae6e3 doc: add precision about -buffer switch on eval/exec
Relevant filter in the code:
```
        if (*bufnames == "*")
        {
            for (auto&& buffer : BufferManager::instance()
                               | transform(&std::unique_ptr<Buffer>::get)
                               | filter([](Buffer* buf) { return not (buf->flags() & Buffer::Flags::Debug); })
                               | gather<Vector<SafePtr<Buffer>>>()) // gather as we might be mutating the buffer list in the loop.
                context_wrap_for_buffer(*buffer);
        }

```
2019-03-26 19:34:23 +01:00
Maxime Coste
b531bab1ce Add support for -shell-script-* completion in :prompt
Fixes #2754
2019-03-24 19:28:46 +11:00
Tim Allen
066217ad4b doc: The faces doc should list all the supported color names. 2019-03-23 11:38:21 +11:00
Maxime Coste
cf0458e734 Add cursor_display_column expansion
Fixes #2788
2019-03-23 11:32:32 +11:00
Maxime Coste
830dd2b619 Update changelog to notify change in rc/ hierarchy 2019-03-21 22:03:11 +11:00
Aaron Bull Schaefer
ada4e01f97 Document how to view the current value for options 2019-03-18 08:27:08 -07:00
Maxime Coste
af38d9230c Merge remote-tracking branch 'Screwtapello/document-edit-flags' 2019-03-13 06:50:15 +11:00
Maxime Coste
7c5831780b Fix typo
Thanks to occivink
2019-03-05 21:07:49 +11:00
Maxime Coste
e65a7f1310 Merge branch 'patch-1' of https://github.com/bugabinga/kakoune 2019-03-05 20:51:04 +11:00
Maxime Coste
ffb1813759 Merge remote-tracking branch 'krobelus/write-all-note-modified' 2019-03-05 20:50:15 +11:00
Maxime Coste
2fa78d720f Merge remote-tracking branch 'eraserhd/tmux-mac-color-fix' 2019-03-05 20:49:19 +11:00
Maxime Coste
4843149b6a Make error description available as "%val{error}" during catch blocks
Fixes #2761
2019-03-05 20:46:23 +11:00
Jason Felice
f140b01b5b Notes on true color and Mac OS 2019-03-02 22:53:15 -05:00
Johannes Altmanninger
b849099472 Document that write-all only writes modified buffers 2019-02-25 10:59:45 +01:00
Oliver Jan Krylow
b36ece46c4
rename auto_complete -> autocomplete in docs 2019-02-24 10:45:38 +00:00
Jason Felice
7cf6eddc30 Add object mode expansions 2019-02-17 20:18:19 -05:00
Maxime Coste
e169a1893b Merge remote-tracking branch 'eraserhd/object-command-submode' 2019-02-17 11:22:02 +11:00
Tim Allen
d862556066 doc: Add more details about debug buffers.
From https://github.com/mawww/kakoune/issues/2739#issuecomment-464400235
2019-02-17 11:09:58 +11:00
Tim Allen
abbf843763 doc: Document the switches of :edit. 2019-02-15 20:07:56 +11:00
Jason Felice
000aa2282c Add object command 2019-02-14 09:32:04 -05:00
Maxime Coste
4dae2c875b Introduce a writemethod option to either overwrite or replace files
This permit to choose if files should be written by overwriting their
content (the default), or by writing to a separate temporary file
and rename it to the current file.

As discussed in #2036
2019-02-12 21:01:19 +11:00
Maxime Coste
d28dbd0918 Merge remote-tracking branch 'lePerdu/expansion-docs' 2019-02-03 10:09:53 +11:00
Jan-Jaap Korpershoek
0d8d32cf38 Change all instances of count to monospace 2019-02-01 18:19:50 +01:00
Jan-Jaap Korpershoek
4521099ebb Add explanation of count for s and S commands 2019-02-01 16:36:57 +01:00
lePerdu
665d90b9bb Document escaping %-strings and add more examples 2019-01-31 09:00:08 -05:00
lePerdu
a5f865a566 Add/fix cross-references for expansions 2019-01-31 08:48:35 -05:00
lePerdu
deda159536 Change "brace" back to "nestable punctuation" 2019-01-30 21:12:48 -05:00
lePerdu
db4bb6788d Make word splitting description more precise 2019-01-30 21:12:39 -05:00
lePerdu
a7320a01aa Specify only lists can expand to multiple args 2019-01-30 16:17:45 -05:00
lePerdu
5a4ba0b35f Update and clarify expansion/quoting docs 2019-01-30 15:46:40 -05:00
Tim Allen
4247cf6def doc: Document the buffer=/path/to/file scope syntax.
Also, make sure all commands that involve scopes link to the scopes
documentation, and refer to the "scope" parameter as `*scope*` for consistency.
2019-01-23 12:34:02 +11:00
Maxime Coste
cb7401439b Kakoune v2019.01.20 2019-01-20 22:52:01 +11:00
Maxime Coste
0e859f54da Update changelog to document regex highlighter change 2019-01-03 22:57:15 +11:00
Maxime Coste
328c497be2 Add support for named captures to the regex impl and regex highlighter
ECMAScript is adding support for it, and it is a pretty isolated
change to do.

Fixes #2293
2019-01-03 22:55:50 +11:00
Frank LENORMAND
ae5c108df8 changelog: Document right click support 2018-12-25 10:54:40 +03:00
Jason Felice
66cec1533a Add quotes to expansions example 2018-12-21 15:19:53 -05:00
Maxime Coste
64f1c31401 Refactor parsing of keys and introduce a builtin key parser mode
By setting the ncurses_builtin_key_parser ui_option to true, we
can disable ncurses parsing of key strokes to get less portable
parsing but support for more complex modifiers.
2018-12-09 21:35:22 +11:00
Maxime Coste
e0b9327a9f Merge remote-tracking branch 'lenormf/fix-trim-selections' 2018-11-27 18:25:14 +11:00
Maxime Coste
31d3cef093 Merge remote-tracking branch 'lenormf/rename-auto_complete' 2018-11-25 23:01:02 +11:00
Maxime Coste
29d4a582d8 Merge remote-tracking branch 'Delapouite/typos' 2018-11-19 20:50:59 +11:00
Maxime Coste
9a68a2d3af Change BufReadFifo hook param to contain the inserted range
the buffer name was not a very interesting information, whereas
the buffer range allows a hook to run only on the appended text
instead of all the buffer.
2018-11-14 17:52:57 +11:00
Delapouite
4c68abab11 doc: fix misc typos for source and region highlighter 2018-11-10 12:12:03 +01:00
Olivier Perret
b96ab67479 Expose selection(s) length with a value 2018-11-08 20:14:33 +11:00
Delapouite
794f84498c doc: complete list of normal commands using default registers 2018-10-28 09:52:33 +01:00
Maxime Coste
3b40ab82f4 Kakoune v2018.10.27 2018-10-27 09:26:50 +11:00
Maxime Coste
e9802bac6f Notify that asciidoc is not a dependency anymore in the changelog 2018-10-23 08:24:08 +11:00
Tim Allen
26e5768207 Be specific about the units of ranges and cursor positions. 2018-10-09 14:31:02 +11:00
Maxime Coste
eba40028b9 Update startup messsage and changelog.asciidoc 2018-10-06 10:55:26 +10:00
Maxime Coste
5bdcfab018 Merge remote-tracking branch 'laelath/shell-command-completion' 2018-10-06 10:47:23 +10:00
Maxime Coste
75a2adb3e5 Move keymap to pages/keymap.asciidoc
As suggested in #2468
Closes #2468
2018-10-06 10:34:39 +10:00
Justin Frank
ab6bc41358 Added shell command completion support to define-command and prompt
This commit also introduces a regression in that I decided that the best way to
avoid overly long and confusing names was to rename the current shell-*
switches to script-*, and have the shell command completion be
shell-completion.

renamed script-{completion,candidates} to shell-script-*

Updated docs with new switch names

Added -shell-completion switch to x11-repl and kitty-repl
2018-10-03 09:46:31 -07:00
Delapouite
1204e7f3fb docs: add <a-m> / <a-M> in changelog and keymap 2018-10-01 18:54:43 +02:00
Maxime Coste
551021d6e5 Merge remote-tracking branch 'lenormf/backward-match' 2018-10-01 11:25:53 +10:00
Maxime Coste
a339bd9b05 Merge remote-tracking branch 'Screwtapello/mapping-command-tips' 2018-10-01 11:08:05 +10:00
Frank LENORMAND
2d44712766 src: Implement <a-m> and <a-M>
Closes #2425
2018-09-30 19:56:37 +03:00
Frank LENORMAND
6b7200e4d5 src: Move <a-m> to <a-_> 2018-09-30 19:45:20 +03:00
Tim Allen
f12ac7164b Make it explicit that buffer-scope items are available in window-scope. 2018-09-28 18:01:17 +10:00
Tim Allen
b57784e06c Spaces around ellipses. 2018-09-28 18:00:20 +10:00
Frank LENORMAND
3d79107773 src: Drop selections that only contain whitespace on _
Fixes #2387
2018-09-27 14:47:26 +03:00
Tim Allen
3c8d160a62 Address code-review comments. 2018-09-27 15:37:38 +10:00
Tim Allen
c7d1ec0a09 mapping.asciidoc: add tips for mappings that trigger commands 2018-09-25 18:42:07 +10:00
Tim Allen
e493eba46d expansions.asciidoc: Rewrite to make Kakoune syntax the primary reference.
Also, moved the "Markup strings" section to faces.asciidoc, since it wasn't
anything to do with expansions, and updated various hyperlinks to point at the
new location.
2018-09-25 18:31:29 +10:00
Eric James Michael Ritz
a2f844cfb4 Improve the documentation for the 'm' key
The GitHub issue referenced below describes the default behavior of
the 'm' key in a way that was unknown to me.  As the issue says,
"'m' is a pretty misunderstood key", and goes on to describe how
the documentation makes it sound as if the cursor must be on the
matching character before 'm' will work.  However, this is not true;
pressing 'm' will jump forward to "select the next sequence enclosed
in balanced chars".  This patch updates the documentation so that it
describes that behavior.

GitHub-Issue: #2425
Special-thanks: Delapouite
2018-09-23 12:43:22 -04:00
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 #2388 if the Whitespace face has the FinalFg flag.
2018-09-23 23:27:14 +10:00
Tim Allen
3819304589 hooks.asciidoc: Make sure all parts of the hook command are described.
Also, some minor grammar fixes.
2018-09-22 18:43:56 +10:00
Tim Allen
00bdb041b0 Describe the %val{text} expansion. 2018-09-20 12:46:52 +10:00
Maxime Coste
0c3d9ccd20 Change remove-hooks to take a regular expression
All hooks whose group match this regex will be removed.

Fixes #2380.
2018-09-12 21:26:21 +10:00
Maxime Coste
87a71ec1bd Merge remote-tracking branch 'Delapouite/doc-missing-chars' 2018-09-12 21:00:02 +10:00
Tim Allen
f7d8f7a9e1 docs: Describe which Win* hooks use a draft context.
Also, rewrote the description of WinDisplay since it wasn't obvious to me what
"bound" meant in this context.
2018-09-11 20:56:12 +10:00
Delapouite
afc1aab60a docs: add few missing characters in faces and keys pages 2018-09-09 11:19:45 +02:00
Maxime Coste
d73ec20285 Kakoune v2018.09.04 2018-09-04 08:22:28 +10:00
Maxime Coste
37e2558413 Add readline word erase bindings, throw in clipboard for good measure
Add <c-w> and <a-d> (along with <c-W> and <a-D> that work on WORDs),
and <c-y> which pastes the transient clipboard contant (which saves
big erase, such as word erase and line end/begin erase).

Fixes #2355
2018-09-04 07:55:56 +10:00
Maxime Coste
b581a4fbed Merge remote-tracking branch 'Delapouite/sync-exit-status' 2018-09-03 22:33:20 +10:00
Maxime Coste
ad75d1870c Update changelog with readline bindings change 2018-09-03 22:31:17 +10:00
Maxime Coste
4b7e77ae00 Change line editing bindings to match readline's
In the end, no better solution materialized so far, and custom
Kakoune line editing bindings are hard to remember. Using well
known readline bindings seems just more convenient.

Closes #800, although it does not contain all the binding proposed
by it (I might accept a few additional ones, such as <c-w>, but not
too much, I still see that as a hack pending a nicer solution).
2018-09-03 22:15:28 +10:00
Delapouite
5e75f748a2 docs: add missing -sync and exit status in autoinfo and doc page 2018-09-03 08:25:08 +02:00
Maxime Coste
df655422d1 Merge remote-tracking branch 'Screwtapello/support-user-map-options' 2018-08-30 20:10:00 +10:00
Maxime Coste
872ecd472c Merge remote-tracking branch 'Delapouite/auto_complete' 2018-08-30 20:07:08 +10:00
Shachaf Ben-Kiki
5238c2d93d Extend source command to support parameters.
Parameters are accessible in %arg{n}, as with define-command.
2018-08-30 10:00:13 +02:00
Delapouite
c2bd4b38a0 Add toggling capabilities for <c-o> in Insert and Prompt mode
Ref #2121
2018-08-27 22:08:38 +02:00
Maxime Coste
d99cd3981c Merge remote-tracking branch 'henrebotha/fix-1' 2018-08-27 08:14:28 +10:00
Maxime Coste
8a904b02b9 Merge remote-tracking branch 'Delapouite/write-quit' 2018-08-26 12:13:52 +10:00
Frank LENORMAND
5a066c139e doc options: Make default list values space separated 2018-08-25 15:03:42 +03:00
Delapouite
1f7788375e docs: add missing write-quit command 2018-08-23 18:53:15 +02:00
Henré Botha
aa6d9b8cd5 Fix run-on sentence in options doc 2018-08-22 14:58:11 +02:00
Tim Allen
ede9155fc7 Document which option-types can be used with declare-options. 2018-08-21 18:24:33 +10:00
Tim Allen
49ef9968c0 Support user-defined "str-to-str-map" options. 2018-08-21 18:24:14 +10:00
Delapouite
231e140d37 docs: add -always and -once switch on hooks page 2018-08-16 19:06:57 +02:00
Tim Allen
6315b917dd Mention the default value of the "count" variable. 2018-08-16 00:00:19 +10:00
Maxime Coste
f8198b3022 Fix specs based highlighter documentation
Lists elements are now given as separate arguments rather than
as a single ':' separated string.

Fixes #2261
2018-07-28 19:33:11 +10:00
Frank LENORMAND
21e93ebc11 doc: Fixed a typo in the changelog 2018-07-19 18:57:37 +03:00
Maxime Coste
56912dd22c Merge remote-tracking branch 'icetan/buffer-reload-hook' 2018-07-19 08:29:22 +10:00
Maxime Coste
d23ac09fc1 Add support for <a-;> in prompt mode
Fixes #2096
Closes #2060
2018-07-15 11:17:16 +10:00
Maxime Coste
bde726d034 Change autoshowcompl to auto_complete with insert|prompt possible values 2018-07-15 11:10:32 +10:00
Maxime Coste
58c7b06e1d Document $kak_reg_* changes in the changelog
Closes #2202
2018-07-14 23:37:42 +10:00
Alyssa Ross
ec72108174
Update number-lines name in docs 2018-07-10 16:05:26 +00:00
Christopher Fredén
cb8270feaa
Add documentation of BufReload hook 2018-07-09 14:20:52 +02:00
Maxime Coste
79ec8d0010 Rename highlighters that used an underscore to use a dash
For example `show_matching` is now `show-matching`.
2018-07-08 19:14:15 +10:00
Maxime Coste
a676b26664 Add precisions about command line syntax in changelog 2018-07-05 18:00:26 +10:00
Maxime Coste
63d4c8c311 Change a on end of line behaviour to be consistent
`a` will just jump on next line, `a` on last end of line opens a new
line beneath it.

Fixes #1164
2018-07-05 08:00:14 +10:00
Maxime Coste
2e0e206951 Make recurse regex opt-in with a -recurse switch instead of opt-out 2018-07-05 07:54:28 +10:00
Maxime Coste
6d320328b0 Add highlighter syntax change informations in changelog 2018-07-05 07:54:28 +10:00
Maxime Coste
7976f8289e Update highlighters.asciidoc page to reflect the new syntax 2018-07-05 07:54:28 +10:00
Maxime Coste
eab98c88bd Refactor handling of startup info to make it configurable
A new `status_info_version` option allows user to disable info
message regarding changes that happened at that version or
earlier.
2018-07-05 07:54:28 +10:00
Maxime Coste
30c52eab7e Formatting fix of expansions.asciidoc 2018-07-05 07:54:28 +10:00
Maxime Coste
cc851d5c28 Update Changelog to describe the list syntax overhaul 2018-07-05 07:54:28 +10:00
Maxime Coste
27163106c7 Make register expansions expand to the full register content
Now that we have a nice standard way to express lists of strings,
registers can be fully exposed. An new $kak_main_reg_... env var
was added to provide the previous behaviour which is relied on by
doc.kak.
2018-07-05 07:54:28 +10:00
Maxime Coste
8aba0b3cb4 Change set-register command to take a list of values
Registers are lists of strings, so this make it possible to set
the whole list instead of forcing registers to a single element
when going through the set-register command.
2018-07-05 07:54:28 +10:00
Maxime Coste
4e2e971033 Update commands.asciidoc, options.asciidoc and expansions.asciidoc pages 2018-07-05 07:54:28 +10:00
Maxime Coste
20f70d9177 doc/pages: Add command-parsing.asciidoc to describe command line parsing 2018-07-05 07:54:28 +10:00
Maxime Coste
24d8a58b0d Add -with-hooks to execute-keys and make -no-hooks evaluate-commands specific 2018-07-05 07:54:28 +10:00
Maxime Coste
9082564ab7 Make -with-maps only available for execute-keys command
It does not make a lot of sense to have this switch for
evaluate-commands.
2018-07-05 07:54:28 +10:00
Maxime Coste
5902c7b790 Do not save any registers by default in evaluate-commands 2018-07-05 07:54:28 +10:00
Maxime Coste
ec16969609 Do not reparse %sh{...} strings
Automatic reparsing of %sh{...}, while convenient in many cases,
can be surprising as well, and can lead to security problems:

'echo %sh{ printf "foo\necho bar" }' runs 'echo foo', then 'echo bar'.
we make this danger explicit, and we fix the 'nop %sh{...}' pattern.

To reparse %sh{...} strings, they can be passed to evaluate-commands,
which has been fixed to work in every cases where %sh{...} reparsing
was used..
2018-07-05 07:54:28 +10:00
Olivier Perret
8edef8b3f1 Add support for regex flag to toggle dot-matches-newline 2018-06-24 12:41:50 +02:00
Maxime Coste
3824da2ad9 Merge remote-tracking branch 'Delapouite/inner-object' 2018-06-19 19:43:28 +10:00
Maxime Coste
98c67fa9e0 Merge remote-tracking branch 'Delapouite/window-scope' 2018-06-19 19:42:26 +10:00
Maxime Coste
a9b1c8f2d7 scopes.asciidoc: Remove spurious whitespace from some link text 2018-06-19 07:42:48 +10:00
Delapouite
c0c7b6590f docs: add more explanation about the ambiguous "window" scope.
The info are currently burried in a hard to find wiki page:
https://github.com/mawww/kakoune/wiki/The-window-scope
2018-06-04 11:12:58 +02:00
Delapouite
8ca98da1cb docs: add missing <a-{> <a-}> <a-[> and <a-]> keys 2018-06-03 10:29:52 +02:00
Delapouite
b60ed6ca53 docs: fix missing ] in wrap hl -marker switch docstring
Also add the related changelog entry
2018-05-30 18:11:19 +02:00
Maxime Coste
a9193840ad Merge branch 'patch-3' of git://github.com/co-dh/kakoune 2018-05-27 07:21:51 +10:00
Hao Deng
1a348f3d22
Update highlighters.asciidoc
Is this what you want? first time use asciidoc
2018-05-26 17:07:04 -04:00
Maxime Coste
f1c1de834a Add a -marker <marker_text> switch support to the wrap highlighter
This makes wrapped lines very explicit.

Fixes #2065
2018-05-26 22:22:00 +10:00
Hao Deng
f7914d8662
plus sign missed 2018-05-25 21:12:03 -04:00
Delapouite
43745a8fb2 docs: Add more info about which keys use a default register 2018-05-25 09:15:07 +02:00
Maxime Coste
36e7e93f78 Fix formatting in highlighters.asciidoc 2018-05-23 08:19:50 +10:00
Matt Peterson
651501e983
Fix add-highlighter ref 2018-05-21 14:35:43 -04:00
Maxime Coste
ec0f8fe574 Extend try command to support multiple catches.
If a catch command fails, and another catch is availabe following
it, that following catch gets executed.
2018-05-19 14:15:16 +10:00
Maxime Coste
60aef5e16d Add a changelog.asciidoc doc page
changelog.asciidoc should track major/breaking changes between
versions.
2018-05-19 14:15:16 +10:00
Maxime Coste
14d12fac04 Rename -allow-override switch to -override
Closes #2057
2018-05-19 14:15:16 +10:00
Delapouite
592ab71048 Docs: regroup faces dealing with specific highlighters 2018-05-19 14:15:16 +10:00
Samuel Rødal
0c4f0b7a3f doc: Fix documentation referring to debug buffer as scratch buffer 2018-05-11 17:52:19 +07:00
Delapouite
408c3d6957 Docs: homogenize "selections" idiom in keys.asciidoc 2018-05-07 10:58:58 +02:00
Delapouite
8b00d763e0 Docs: add exhaustive list of scoped objects 2018-04-28 17:41:24 +02:00
Delapouite
9f852652ee Docs: fix rotate content example 2018-04-19 18:55:41 +02:00
Maxime Coste
99fea9c0f9 Fix typo
Thanks @lenormf
2018-04-12 21:28:15 +10:00
Maxime Coste
5fa19f4d7f NCursesUI: Add support for shifted function keys
Shifted function keys are not well standardized around terminals,
Shift F(N) usually returns F(X) + N, with X=12 on xterm, X=10 on
rxvt-unicode... Default to X=12 and make it configuable through
the ncurses_shift_function_key ui_option.

This fixes what #1898 tried to.
2018-04-11 20:39:57 +10:00
Tim Allen
50e422659b Add support for the shift modifier.
Because keyboard layouts vary, the shift-modifier `<s-…>` is only supported
for special keys (like `<up>` and `<home>`) and for ASCII lowercase where
we assume the shift-modifier just produces the matching uppercase character.
Even that's not universally true, since in Turkish `i` and `I` are not an
uppercase/lowercase pair, but Kakoune's default keyboard mappings already
assume en-US mappings for mnemonic purposes.

Mappings of the form `<s-x>` are normalized to `<X>` when `x` is an ASCII
character. `<backtab>` is removed, since we can now say `<s-tab>`.
2018-04-11 15:15:45 +10:00
Maxime Coste
d571c207e6 Make version available through $kak_version and debug info 2018-04-09 17:06:02 +10:00
Maxime Coste
57baad4afd Make FaceRegistry scoped
set-face now takes a scope argument, and faces can be overridden on
a buffer or window basis.

colorscheme apply on global scope, which should be good enough for
now.

Fixes #1411
2018-04-07 16:27:50 +10:00
Delapouite
2d775921bc Docs: describe the -add switch of set-option 2018-04-05 11:35:03 +02:00
Maxime Coste
6ee68b5b08 Merge remote-tracking branch 'Delapouite/asciidoc' 2018-04-04 21:09:57 +10:00
Maxime Coste
6ee60ff9d7 Prompt: add <a-!> to expand the typed expansions in current line
Fixes #1952
2018-04-04 11:00:25 +10:00
Delapouite
f2837442fc Docs: fix asciidoc list formatting issue 2018-04-03 13:33:30 +02:00
Delapouite
2b457c62b2 Docs: add short mention about "named pipe" in fifo section 2018-04-03 10:20:56 +02:00
Frank LENORMAND
566dc1f26b doc highlighters: Don't hardcode timestamps 2018-03-31 09:18:59 +03:00
Delapouite
153fbdcc33 Docs: add missing * for -buffer switch of exec/eval 2018-03-27 08:21:31 +02:00
Maxime Coste
ec7f3738ee Move rotate selection and rotate selection contents to ) and <a-)>
Backward rotation are supported with (.

Fixes #1210
2018-03-25 11:39:26 +11:00
Delapouite
ecd6cebdab Docs: add %/ token to default path option 2018-03-23 10:24:18 +01:00
Maxime Coste
1cdeace128 Merge remote-tracking branch 'Delapouite/doc-commands' 2018-03-21 06:42:31 +11:00
Delapouite
00cb49438a Docs: add missing [<switches>] in commands signatures 2018-03-20 09:13:09 +01:00
Maxime Coste
e444cd3937 Merge remote-tracking branch 'lenormf/contrib-tmux-truecolor' 2018-03-20 05:28:53 +11:00
Maxime Coste
eee4576743 Merge remote-tracking branch 'Delapouite/scopes' 2018-03-12 11:53:43 +11:00
Delapouite
5ba8293d2b Docs: fix formatting and add explanation about "current" scope. 2018-03-11 18:07:13 +01:00
Maxime Coste
11d6aefc91 Merge remote-tracking branch 'Delapouite/keys' 2018-03-11 12:09:02 +11:00
Maxime Coste
4584ecac77 Move WORD text object to <a-w>
It improves consistency and it looked like there was support for that
change on github.
Fixes #1861
2018-03-10 00:25:19 +11:00
Maxime Coste
f801d0064a Merge remote-tracking branch 'Delapouite/hls' 2018-03-10 00:07:03 +11:00
Delapouite
07572ca6d7 Docs: fix typo for prompt mode <a-l> 2018-03-09 09:22:06 +01:00
Delapouite
abc2d28570 Docs: extend explanations about line_flags, ranges and replace-ranges 2018-03-06 12:15:55 +01:00
Delapouite
950e24949a Docs: add missing insert mode <c-x>L in docs 2018-03-05 08:47:28 +01:00
Maxime Coste
4ab8125de1 pages/hooks.asciidoc: Document GlobalSetOption 2018-03-05 11:20:17 +11:00
Delapouite
c4eb4438d2 Remove <scope> from user-modes commands 2018-03-02 09:28:27 +01:00
Maxime Coste
34c7db0ea7 pages/modes.asciidoc: Tweak wording 2018-03-01 14:38:41 +11:00
Maxime Coste
dcab629895 Merge remote-tracking branch 'Delapouite/modes' 2018-03-01 14:09:20 +11:00
Delapouite
a6a1c34288 Add -lock switch to enter-user-mode command 2018-02-27 19:55:00 +01:00
Delapouite
c2541dbfe2 Docs: add modes page 2018-02-24 12:05:21 +01:00
Maxime Coste
6a6e71dc0f Highlight cursors differently when they lie on an end of line
When on an end of line, certain behaviours can be surprising, for
example delete will join the following line (which makes sense, and
is consistent, but hard to predict if we do not know the cursor is
on and end of line).

As Kakoune is moving more and more towards treating end of lines
as any other character, making it clear when the cursor lies on
them seems like a good way to reduce surprise.
2018-02-24 21:32:01 +11:00
Maxime Coste
4d11bb20c3 Always collapse jumps in exec/eval, remove -collapse-jumps switch
There does not seem to be any reasonable use cases of not collapsing
jumps when the input is not comming from the user. Always collapse
them.

It could make sense to move jump collapsing out of context_wrap as
in general any action not comming directly from the user should
collapse them, at the moment a comment or mapping will not collapse
jumps, which is unfortunate.
2018-02-24 19:02:15 +11:00
Frank LENORMAND
84017a7917 faq: Document how to render colors properly in tmux 2018-02-23 20:54:40 +03:00
Olivier Perret
48912a21d3 document 'register' value 2018-02-22 21:47:34 +01:00
Maxime Coste
61c627135a doc pages: Document kak_token_to_complete and kak_pos_in_token
Fixes #1845
2018-02-22 22:46:35 +11:00
Maxime Coste
99d1fee44c Merge remote-tracking branch 'Delapouite/trim' 2018-02-22 22:06:27 +11:00
Delapouite
fccfc76e89 Add trim_selections primitive 2018-02-13 14:35:10 +01:00
Delapouite
6b447a0ecb Add declare-user-mode / enter-user-mode commands 2018-02-12 14:19:58 +01:00
Maxime Coste
9c25e955df Use '/' register as the default register for <a-k> and <a-K>
Fixes #1808
2018-01-26 14:15:18 +11:00
Maxime Coste
b677797b92 Document the availability of shell expansions in normal mode
Fixes #1805
2018-01-23 15:59:46 +11:00
Maxime Coste
d22c989984 Rename InputModeChange hook to ModeChange
InputModeChange is a bit long to type and its pretty clear in Kakoune
that "Mode" means "Input mode", so use a shorter and as clear name.
2018-01-21 10:34:09 +11:00
Maxime Coste
07dfcd336d Fallback to getpwuid in the unlikely case $HOME is underfined
Add a homedir() helper function, and document the $kak_config
env var.
2018-01-20 11:19:23 +11:00
Delapouite
74898120ed Add session name filtering for KakBegin hook 2017-12-21 22:22:33 +01:00
Maxime Coste
e0b28fa421 Introduce InputModeChange hook
InputModeChange <old mode>:<new mode> is intended to replace the various
<Mode>Begin/<Mode>End hooks.

Fixes #1772
2017-12-18 11:09:54 +11:00
Delapouite
70394ae248 Docs: homogenize and emphasize hooks filtering text 2017-12-16 15:31:31 +01:00
Maxime Coste
f950fe3376 hooks.asciidoc: Fix few rendering problems 2017-11-28 19:40:07 +08:00
Delapouite
9c5fa1d68b Docs: fix typo avance → advance in keys 2017-11-25 17:18:12 +01:00
Maxime Coste
ec6ecd5772 Add an InsertCompletionSelect hook
InsertCompletionSelect will be called whenever the selected insert
completion changes. If the original text is selected back, the hook
parameter will be empty. If another candidate is selected, the hook
parameter will be its text content.

Fixes #1676
2017-11-25 13:57:47 +08:00
Maxime Coste
706c1672d5 Normal: add <a-S> to select first and last char of selection
Fixes #550
2017-11-13 17:36:04 +08:00
Maxime Coste
1f02a1f7e2 Doc pages: Use passive form, never address the reader as 'you'
Except for the FAQ, it could be fixed, but it does not have to be
as formal as the rest of the docs.
2017-11-12 22:44:04 +08:00
Maxime Coste
9af08b768e Merge remote-tracking branch 'Delapouite/README' 2017-11-12 22:34:31 +08:00
Delapouite
7261dba7ed Docs: add a new buffers.asciidoc to move over FIFO parts from README 2017-11-11 10:22:25 +01:00
Delapouite
3c17aa32b5 Docs: add README links to marks, jumps, objects, macros and macros keys 2017-11-10 18:06:38 +01:00
Delapouite
a1836b47a4 Docs: use full names for exec/eval and add links to relevant pages 2017-11-08 18:38:31 +01:00
Delapouite
3588369ad5 Docs: group commands in common sections 2017-11-08 13:29:36 +01:00
Maxime Coste
8aa35c0724 doc.kak: Use a github compatible anchor generation
Convert session names to lowercase and replace spaces with minus
to generate anchor names.
2017-11-08 20:15:46 +08:00
Maxime Coste
b63f16e7a2 doc.kak: Support anchors and internal links
Underline links, support jumping to a specific anchor either in
the current page or another one, use those new features in some
pages.
2017-11-08 16:32:49 +08:00
Delapouite
3b250fe824 Docs: use asciidoc links between pages 2017-11-06 10:08:59 +01:00
Maxime Coste
7f51e51fcb Introduce matching_pairs option that controls the pairs used by m 2017-11-04 15:53:53 +08:00
Maxime Coste
20fe8e0112 options.asciidoc: use _italic_ for default values 2017-11-02 17:42:44 +08:00
Maxime Coste
4c3d36f9fe documentation pages: Remove tabs 2017-11-02 17:37:39 +08:00
Maxime Coste
3c2159f06c options.asciidoc: Document other option commands, remove tabs 2017-11-02 17:36:10 +08:00
Maxime Coste
4fabba3d12 doc.kak: Render documentation internally instead of relying on man
doc.kak now behaves as a basic asciidoc renderer. Asciidoc is unfortunately
still a dependency to generate the manpage of the `kak` command.
2017-11-02 10:03:24 +08:00
Maxime Coste
6f2088cbc4 Wrap: Add -indent switch support that wraps preserving line indent 2017-11-02 01:28:28 +08:00
Maxime Coste
6bc408e9b9 Remove duplicated documentation from the README
Just point towards the relevant doc page.
2017-11-01 19:49:13 +08:00
Maxime Coste
ed65d86c72 Rename doc/manpages to doc/pages
That fact we use man for these is an implementation detail.
2017-11-01 19:05:37 +08:00