Commit Graph

16 Commits

Author SHA1 Message Date
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
Frank LENORMAND
9127ed0d55 src rc: Rename exec/eval into execute-keys/evaluate-commands 2017-11-03 11:09:45 +03:00
Frank LENORMAND
c9b280b712 rc: Don't use command aliases to highlight keywords properly 2017-11-03 10:34:41 +03:00
Maxime Coste
80d661e6a7 rc/: More consistent uses of regex syntax
Always use \A \z for subject start/end, always \b for word boundaries
2017-10-25 10:27:25 +08:00
Frank LENORMAND
b9cdccd53a rc: Document non-hidden options with -docstring 2017-05-16 14:35:43 +03:00
Alex Leferry 2
671b50bb52 update command names 2017-01-04 13:04:27 +01:00
Frank LENORMAND
f6a2925950 Fix, complete and add docstring documentation to builtin commands
Level out the builtin commands loaded at startup in terms of format and
expressiveness. The following convention was followed:
* commands that take more than one argument have to be described along
  with their parameters prior to the actual documentation, otherwise the
  docstring consists in a capitalized sentence
  e.g. `command <arg1>: do something`
* optional arguments are enclosed in square brackets, to comply with the
  format used for hardcoded commands
  e.g. `cd [<directory>]`
* describe the effects of the command in the documentation string and
  omit implementation details unless they are relevant. Usually command
  names include the name of the tool they use, so they don't need to be
  redundantly mentioned
  e.g. `tmux-new-pane <arguments>: open a new pane`
* document the format the parameters to the commands, or list them if
  they are to be chosen among a list of static values (c.f. `spell.kak`)
2016-10-11 10:26:17 +03:00
Frank LENORMAND
6ae1eaf97c Adapt to recent changes to exec's behavior, remove non POSIX double brackets 2016-09-29 09:55:44 +03:00
Frank LENORMAND
843d03f2e7 Disable automatic paragraph formatting by default, work around the lack of string refill in fold 2016-07-14 17:32:56 +03:00
Frank LENORMAND
712c990592 Fix the selection patterns on corner cases 2016-07-14 17:21:35 +03:00
Frank LENORMAND
ba3c7bab06 Fix paragraph wrapping in the autowrap script 2016-07-14 16:40:08 +03:00
Frank LENORMAND
3f71fb9640 Use POSIX fold instead of fmt 2016-07-08 18:02:39 +03:00
Frank LENORMAND
a605497553 Fix the autowrap script, use an external tool to wrap paragraphs 2016-07-08 13:50:47 +03:00
Frank LENORMAND
ea0a9b6e07 Get rid of useless operations 2016-03-14 09:15:47 +02:00
Frank LENORMAND
2501e95571 Fix bugs and factorize code in the autowrap script 2016-03-13 09:47:17 +02:00
Maxime Coste
fef0277998 Reorganise rc/ into subdirectories
* core: set of tools to work on kakoune source code
 * base: very common languages and tools
 * extra: less common languages and tools
2016-01-29 09:03:23 +00:00