Commit Graph

483 Commits

Author SHA1 Message Date
Johannes Altmanninger
395f438378 Remove unnecessary leading space in prompt from mappings
We often use the pattern «map global normal ": foo"».  The space
after the colon is unnecessary since execution of the mapping won't
add to history anyway, since 217dd6a1d (Disable history when executing
maps, 2015-11-10).
With the parent commit, the space is no longer necessary for user
mappings, so there is no reason to continue the cargo-cult.

Remove the space from mappings to set a good example.
2022-08-01 07:37:02 +02:00
Johannes Altmanninger
a36473f4bb Do not record prompt history when executing user mode mappings
Commit 217dd6a1d (Disable history when executing maps, 2015-11-10)
made it so with

	map global normal X %{:echo 123<ret>}

X does not add to prompt history (%reg{:}).

Unfortunately this behavior was not extended to mappings in the "user"
keymap, nor to mappings in custom user modes.
In my experience, not adding to history is almost always the expected
behavior for mappings. Most users achieve this by adding a leading space:

	map global user X %{: echo 123<ret>}

but that's awkward. We should have good defaults (no nnoremap)
and map should work the same way across all modes.

Fix this by also disabling history when executing user mappings. This
is a breaking change but I think it only breaks hypothetical scenarios.

I found some uses where user mappings add to history but none of them
looks intentional.

f702a641d1/.config/kak/kakrc (L169)
604ef1c1c2/kakrc (L96)
d22e7d6f68/kak/kakrc (L71)
https://grep.app/search?q=map%20%28global%7Cbuffer%7Cwindow%29%20user%20.%2A%5B%21%3A/%5D%5B%5E%20%5D.%2A%3Cret%3E&regexp=true
2022-08-01 07:37:02 +02:00
Johannes Altmanninger
f435b2b70a doc execeval: mention that the colon register is saved by default 2022-08-01 07:15:08 +02:00
Johannes Altmanninger
487056daf7 doc registers: fix asciidoc syntax for <a-*>
GitHub renders this as

	*, <a->*, s

while :doc renders it as

	*, <a->, *s

with this fix it's

	*, <a-*>, s
2022-07-30 22:18:37 +02:00
Johannes Altmanninger
545c8429e0 doc keys: avoid pleonasm 2022-07-30 22:18:37 +02:00
Maxime Coste
f137ee6595 Merge remote-tracking branch 'Pound-Hash/docs_faces' 2022-07-28 21:19:52 +10:00
Pound_Hash
12c2b53105 Made changes suggested by krobelus 2022-07-26 13:42:28 -07:00
Pound_Hash
9364796033 [faces.asciidoc] Amended English mechanics and styling for correctness
and clarity.
2022-07-15 19:12:57 -07:00
Alan
f5763aaeff
Update doc/pages/execeval.asciidoc
Co-authored-by: Screwtapello <thristian@gmail.com>
2022-07-13 23:22:55 -07:00
Pound_Hash
0bbab694be Amended the documentation for grammatical correctness, neatness, uniformity,
and clarity.
2022-07-13 19:41:42 -07:00
Johannes Altmanninger
52688509b3 doc changelog: update with some breaking changes 2022-07-10 23:07:46 +02:00
Maxime Coste
2d8456db10 Move user mappings to <space> and keep/remove selection to , 2022-07-05 08:43:40 +10:00
Maxime Coste
ef8a11b3db Make x just select the full lines
`x` is often criticized as hard to predict due to its slightly complex
behaviour of selecting next line if the current one is fully selected.

Change `x` to use the previous `<a-x>` behaviour, and change `<a-x>` to
trim to fully selected lines as `<a-X>` did.

Adapt existing indentation script to the new behaviour
2022-07-05 08:43:40 +10:00
Maxime Coste
d13b3f41cb Merge remote-tracking branch 'potatoalienof13/fixdoc' 2022-06-30 19:52:43 +10:00
Maxime Coste
d87ee212ba Insert all register values in prompt after <c-r> when Alt-modified
`<c-r><a-.>` will insert all selections joined by space instead of only
the main one as `<c-r>.` would.
2022-06-30 16:39:18 +10:00
potatoalienof13
810071a6ee Finish broken sentence 2022-06-28 18:27:00 -04:00
Maxime Coste
21b17aa265 Merge remote-tracking branch 'Pound-Hash/doc_buffers' 2022-06-14 08:45:20 +10:00
Sidharth Kshatriya
5a5fc50c12 highlighter doc: some clarificatory edits 2022-05-23 16:52:30 +05:30
Pound_Hash
3a661bd27c Amended grammar, punctuation, and word choice. 2022-05-17 10:39:06 -07:00
Maxime Coste
860be32ddd Merge branch 'command_parsing' of http://github.com/Pound-Hash/kakoune 2022-05-16 19:46:58 +10:00
Pound_Hash
a3c0665acc 1) Modified some wording to be more precise
2) Reformatted paragraphs to wrap at column 80
3) Added periods are the end of several lines for overall consistency
2022-05-10 09:53:03 -07:00
Dan Rosén
3b0f69a6d6
Fix documentation for %val{window_range}
Makes line and column be the right way around in the docs.
2022-04-22 21:26:15 +02:00
Pound_Hash
56287daac0 Fixed English mechanics: grammar, punctuation, and wording 2022-04-16 12:08:24 -07:00
Maxime Coste
b2c6bc4690 Merge branch 'doc-buffers' of http://github.com/Pound-Hash/kakoune 2022-04-11 19:55:34 +10:00
Pound_Hash
dbc88281c7 Fixed grammar; rendered the construction parallel. 2022-04-10 21:49:54 -07:00
Johannes Altmanninger
7c43a4b51b doc: fix dead links to doc pages 2022-04-09 15:29:54 +02:00
Johannes Altmanninger
0f0f2b126d doc commands: fix names of complete-command's completion_type arguments 2022-03-08 22:10:28 +01:00
Maxime Coste
d95d351cbe Document ! and <a-!> breaking change 2022-03-06 10:13:14 +11:00
Frank LENORMAND
85b78dda2e src: Select the data inserted by ! and <a-!>
Closes #1468
2022-03-06 10:13:14 +11:00
Maxime Coste
7061001728 Add a complete-command command to configure command completion
This makes it possible to change command completion in hooks and
paves the way to more flexibility in how custom commands can be
completed
2022-03-06 10:13:14 +11:00
Coleman McFarland
0b5ed7613f Update module description in response to code review 2022-02-14 10:20:10 -05:00
Coleman McFarland
f206640abc Grammar correction options.asciidoc 2022-02-13 21:27:31 -05:00
Coleman McFarland
c682f30ab6 Change "edition" to "editing" in keys.asciidoc 2022-02-13 21:18:35 -05:00
Coleman McFarland
11f98dc0f1
Add brief modules explanation
In lieu of adding a whole docs page for modules, a brief introduction can
be added above the provide-module and require-module command docs.
2022-02-13 15:15:07 -05:00
Johannes Altmanninger
c120063da9 doc options: more detail on how completions options are handled
Cross-reference the "completers" option, and explain how filtering works.

Originally submitted as part of #4418

Helped-by: Tim Allen <screwtape@froup.com>
2022-01-10 08:59:30 +11:00
Maxime Coste
eece95a066 Merge remote-tracking branch 'krobelus/escape-all-the-tuples' 2021-12-06 19:22:38 +11:00
Maxime Coste
1b8574449f Kakoune 2021.11.08 2021-11-07 16:51:39 +11:00
Maxime Coste
47ba45e9e6 Merge remote-tracking branch 'lenormf/patch-17' 2021-11-04 18:57:23 +11:00
Frank LENORMAND
d3b1ad7734 doc pages: Document -cursor-separator of number-lines 2021-11-04 08:06:10 +03:00
Frank LENORMAND
0442453a64
doc regex: Avoid confusion in relationship with ECMAScript
Co-authored-by: Screwtapello <thristian@gmail.com>
2021-10-29 19:21:50 +02:00
Johannes Altmanninger
068623e1c8 doc options: state that all |-separated tuples need escaping
For the "completions" option type, the documentation states that |
and \ need to be escaped as \| and \\.
The same parser is for other option types that are lists-of-tuples:
range-specs and line-specs, so they need escaping too. Document that.

Only their last element can contain arbitrary data, so range-specs
and line-specs could work without escaping if we tweaked the parser.
2021-10-29 18:25:53 +02:00
Frank LENORMAND
764a8b0602
doc regex: Avoid confusion in relationship with ECMAScript
The prologue led some users to believe the implementation was compliant with ECMAScript let alone some differences (who *are* documented at the end of the page).
2021-10-29 12:09:19 +02:00
Maxime Coste
da10ce817e Kakoune 2021.10.28 2021-10-28 09:13:34 +11:00
Taupiqueur
dd917e47f4 Fix region highlighter example 2021-10-19 18:21:48 +02:00
Maxime Coste
6ac2d84254 Merge remote-tracking branch 'lenormf/patch-16' 2021-09-26 11:09:33 +10:00
Maxime Coste
3acf85f267 Restore diff based terminal output optimization when synchronized
terminal_synchronized ui_option now also controls this behaviour,
update out of date documentation for ui_options as well.

As discussed in #4317
2021-09-26 11:03:50 +10:00
Frank LENORMAND
3131e18f28
doc keys: Explain <c-s> better 2021-09-11 09:14:51 +03:00
Tim Allen
dc07c649de Add standard DiagnosticError and DiagnosticWarning faces.
kak-lsp uses these faces to mark errors inside the buffer, instead of the Error
face which is much more jarring, and which does not have an associated warning
face. Since the :spell command marks errors inside the buffer, it's also updated
to use this new face.

Adding these faces to Kakoune makes it more likely that colorschemes will
automatically do the right thing when used with kak-lsp, and makes it possible
to use a subtle appearance (like curly underlines) for in-buffer errors while
keeping Kakoune errors bold and jarring as they should be.
2021-09-07 17:46:50 +10:00
Maxime Coste
3fc8e29d10 Add support for curly underline and separate underline color
Add support for a third color in face definition that controls
the underline and a 'c' attribute for curly underline (that takes
precedence over 'u' if both are specified)

Allow empty colors to mean default, so that `,,red+u` means the
same as `default,default,red+u`

Fixes #4138
2021-09-07 08:21:26 +10:00
Maxime Coste
2dd8b0e767 Merge remote-tracking branch 'harryoooooooooo/command-fifo-doc' 2021-09-04 09:25:54 +10:00
Maxime Coste
b841f3a214 Remove terminal_wheel_up/down_button UI option
It seems nobody uses it, and it is not plugged through anyway.

Closes #2642
2021-09-02 20:46:35 +10:00
Maxime Coste
e839c64375 Fix documentation for terminal_synchronized UI option
Fixes #4321
2021-09-02 20:44:19 +10:00
harryoooooooooo
ef604e7de2 doc: expansions: Fix bad asciidoc syntax for kak_command_fifo 2021-09-01 23:00:22 +08:00
Maxime Coste
bc11f972c5 Kakoune 2021.08.28 2021-08-28 14:07:42 +10:00
Maxime Coste
94388dc51e Merge remote-tracking branch 'alexherbo2/fix-typos' 2021-08-17 08:48:47 +10:00
Maxime Coste
15aa4fe137 Document the new write behaviour 2021-07-20 22:45:33 +10:00
Maxime Coste
40e3614cf4 Prevent overwriting existing file in :write <explicit filename>
Add a -force (equivalent to w!) switch that enables overwriting.
2021-07-20 22:30:41 +10:00
Maxime Coste
428ddeb97b Add 'terminal_synchronized' ui_option to opt-in synchronized output
Synchronized output does not work well with various terminals
(including the linux console). It should also be unnecessary when
not going through a slow link.

This will eventually be removed if it is not proven to be useful
to some users.
2021-07-12 10:25:59 +10:00
Jason Felice
5d497dc46e src: Support strikethrough faces 2021-07-12 10:25:59 +10:00
Maxime Coste
7e66846172 Rename NCursesUI to TerminalUI 2021-07-12 10:25:58 +10:00
Maxime Coste
64e306f64b Document command-fifo in changelog 2021-07-07 19:46:47 +10:00
Maxime Coste
3d7fb8ddbc Add support for $kak_command_fifo and $kak_response_fifo
Those fifos are accessible during %sh{...} blocks, the command fifo
executes commands written to it once the write end side is closed
(multiple open/write/close sequences are supported), the response
fifo is a simple helper fifo available to write response back to
the shell process

An example use of this feature is to request some list options
content from without being limited by the environment size:
```
%sh{
    echo "echo -to-file $kak_response_fifo -quoting shell -- %opt{some_list}" > $kak_command_fifo
    eval "set -- $(cat $kak_response_fifo)"
}
```
2021-07-07 19:25:06 +10:00
Maxime Coste
394a104405 Merge remote-tracking branch 'Screwtapello/doc-improvements' 2021-07-07 19:18:27 +10:00
Maxime Coste
d78da60b45 Merge remote-tracking branch 'Screwtapello/document-completion-escaping' 2021-06-15 20:40:19 +10:00
Taupiqueur
ad1dc79789 Fix typos 2021-06-13 04:12:03 +02:00
Tim Allen
bdb668ba54 Document how to escape special characters in completions. 2021-06-11 00:27:13 +10:00
Tim Allen
b228232de7 Clarify which parts of Kakoune the extra_word_chars option affects.
Also, document the "empty option implies underscore" quirk.
2021-06-09 17:50:30 +10:00
Maxime Coste
3d6d61141c Merge remote-tracking branch 'somasis/doc-style' 2021-05-18 20:53:21 +10:00
Tim Allen
e958499400 Document that $kak_token_to_complete is zero-based, not 1-based.
Also, clean up some formatting: definition lists don't need a leading `-`, use
`$` for environment variables, consistent indentation, etc.
2021-05-17 20:25:05 +10:00
Kylie McClain
4ae2102cd8 regex.asciidoc: rephrasing, style, consistency
* Polish some grammar in places.
* Correct some capitalization nitpicks.
* Use "newline" rather than "line feed", which tends to be more common
  in Kakoune's documentation thusfar.

I rephrased some sections, as some of them read a little odd.
* Zero width assertions
    * Consistently use "subject's beginning" instead of "subject begin",
      it reads better.
    * Improve the flow of the word boundary descriptions.
* Modifiers
    * Improve phrasing to emphasize the linear nature of their usage and
      remove a double negative.
    * Use `.` instead of "dot", since that aids in searching through the
      page for things talking about the dot character.
* Compatibility
    * Use asciidoc syntax for the link to the ECMA-262 standard.
    * Use better punctuation on the point about escapes.
2021-05-16 09:16:14 -04:00
Kylie McClain
9bc5e76ad7 {commands,hooks}.asciidoc: Use consistent capitalization for Kakoune 2021-05-15 22:17:41 -04:00
Maxime Coste
7394307a3d Merge remote-tracking branch 'nojhan/feat_padding-options' 2021-04-28 08:11:15 +10:00
Maxime Coste
9b94c2b1d8 Merge remote-tracking branch 'lenormf/patch-10' 2021-04-25 20:16:22 +10:00
Tim Allen
dd28d6f560 doc: Ensure the hook -always switch is documented.
- Make sure switches are in commands.asciidoc.
- Make hooks.asciidoc link to commands.asciidoc.
- Minor wording fix-ups.
2021-04-19 12:46:47 +10:00
nojhan
daa63ba879 [feat] add ui_options: padding_char & padding_fill
In some cases, it may be difficult to easily spot the area out of the buffer
(bad color scheme, small font, superimposed windows).

This patch adds two ncurses ui_options to bypass this problem:
- `ncurses_padding_char`, to configure the padding character,
- `ncurses_padding_fill`, to indicate whether to fill the padding line
  (or to display a single character).

The default config is the legacy one (a single "~").
2021-04-05 20:21:48 +02:00
Maxime Coste
fa3aa3c1a3 Add + key to duplicate selections and <a-+> to merge overlapping ones
This is an experiment and might get reverted if overlapping selections
prove too cumbersome.

Fixes #4041
2021-02-15 09:01:14 +11:00
Tim Allen
a5e9b69e61 doc: Document the -menu switch for define-command.
This switch was added in c972dfd2.
2021-01-10 23:24:32 +11:00
Tim Allen
e85538e670 doc: Sort define-command's switches to match its docstring. 2021-01-10 23:16:12 +11:00
Maxime Coste
966ad0443d Merge remote-tracking branch 'Cycatz/master' 2021-01-04 09:50:00 +11:00
Maxime Coste
fe12bb4512 Add a changelog entry for shell expansion trailing newline change 2021-01-04 09:48:52 +11:00
Dan Rosén
455cf4838e
Fix typos in changelog 2020-12-29 01:28:13 +01:00
Cycatz
466834fcc3 Fix typo: requiered -> required 2020-12-28 00:11:44 +08:00
Frank LENORMAND
ac2d7bd097
doc mapping: Document semicolon and percent 2020-12-15 17:13:02 +03:00
Maxime Coste
644660f65f Merge remote-tracking branch 'lenormf/patch-9' 2020-11-18 19:57:29 +11:00
Frank LENORMAND
5931655397
doc commands: Align mis-indented command flags 2020-11-17 16:09:56 +03:00
Frank LENORMAND
d673f61620
doc commands: Fix spelling mistake 2020-11-17 15:57:17 +03:00
Maxime Coste
d495369e75 Merge remote-tracking branch 'ManDay/master' into master 2020-11-11 07:25:54 +11:00
Maxime Coste
e6c598dec4 Merge branch 'remove-quote-in-expansion' of http://github.com/contrun/kakoune into master 2020-11-08 15:06:11 +11:00
SeerLite
aa22ea58cf doc options: Clarify how to empty lists/maps 2020-10-27 16:08:16 -03:00
Cedric Sodhi
221fc38bd9 Disabled backtick escaping
Fixes issue #2377 by removing the ability to escape backticks in backticks in compliance with asciidoc's behaviour. Adjusted hooks.asciidoc, keys.asciidoc, and command-parsing.asciidoc to match accordingly.
2020-10-27 12:36:33 +01:00
Maxime Coste
90043e7df0 Replace write -atomic with write -method <method>
`-atomic` becomes `-method replace` and `-method overwrite` is now
supported explicitely instead of only available through the
writemethod option.

Fixes #3827
2020-10-27 20:20:18 +11:00
YI
489773dbf4 remove extra double quotes in expansion documentation 2020-10-22 09:03:20 +08:00
Maxime Coste
65587d1eee Auto-insert best completion on space for menu completions
The menu flag signifies that only the completions are valid arguments,
hence it makes sense to auto insert the best one on space.

Because full match is always considered the best match in completion
ranking, this should always have a reasonable behaviour.

This makes it harder to enter a hidden command, but completion can
always be disabled via <c-o> or by quoting in those rare cases.
2020-10-19 21:43:03 +11:00
Maxime Coste
97e88b6087 Remove the rename-client's nc alias
Closes #3789
2020-10-19 20:30:33 +11:00
Maxime Coste
f549190a98 Add support for explicit completion in prompt mode 2020-10-19 19:36:58 +11:00
Delapouite
8989febe7a doc: mention comma key for entering user-mode 2020-10-04 13:34:57 +02:00
Tim Allen
9bc00b6853 doc: Document the form of next-key sub-modes in the ModeChange hook. 2020-09-21 17:28:18 +10:00
Maxime Coste
0e58d4702c Merge branch 'patch-1' of http://github.com/xiaq/kakoune into master 2020-09-17 19:35:56 +10:00
Maxime Coste
ec3d7c3104 Add support for removing from options
`set -remove ...` will remove from the current option value, substracting
from int, removing elements from vectors and maps.
2020-09-09 21:00:30 +10:00
Qi Xiao
1f5d566d15
Update commands.asciidoc
Fix typo: "automatically" should be "atomically"
2020-09-07 23:46:30 +01:00