Commit Graph

34 Commits

Author SHA1 Message Date
Olivier Perret
27f951638c Execute cleanup hooks on any filetype change 2018-12-11 00:35:57 +01:00
Olivier Perret
6765723c68 Change cleanup of core/ languages to use a simpler hook -once 2018-12-11 00:13:30 +01:00
Maxime Coste
1485150b68 Use -once hooks to remove fifo directories 2018-08-19 08:04:31 +10:00
Maxime Coste
e486a97ad8 Fix highlighters in rc/core post syntax refactoring 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
Maxime Coste
869736359a Make all fifo cleanup hooks run always
Those should not get prevented from running just because the user
disabled hooks, they are important for cleanup.
2018-04-26 08:31:36 +10:00
Maxime Coste
4a2125f752 make.kak: Fix Ninja compatibility for directory entering messages 2018-03-30 09:18:06 +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
Maxime Coste
9755f7f8f2 make.kak: Fix echoing of error message when jumping
The use of `%{...%reg{...}}` was not being expanded correctly, as
the enclosing %{...} prevents the internal %expand{...} from being
considered.

The introduction of an additional command allows us to bypass
quoting hell as the expansion of %reg{5} could contain arbitrary
text.
2018-02-19 21:43:43 +11: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
d49555fc75 Move highlighters into Scopes
That means we can now have highlighters active at global, buffer, and
window scope. The add-highlighter and remove-highlighter syntax changed
to take the parent path (scope/group/...) as a mandatory argument,
superseeding the previous -group switch.
2017-10-28 13:43:04 +08: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
Maxime Coste
9c4448ac41 Remove echo -color support, superseeded by echo -markup
`echo -color Error "blah"` is the same as `echo -markup '{Error}blah'`
Fixes #1512
2017-07-19 17:18:52 +02:00
Alex Leferry 2
585778057f Update command names 2017-06-16 13:53:03 +02:00
Frank LENORMAND
cb9a2e562b rc: Fix calls to mktemp
The GNU and BSD implementations differ on several points, this commit
hopefully finds a middle ground.
2017-06-16 11:51:46 +03:00
Frank LENORMAND
813d09a101 rc: Fix calls to mktemp
Allow `mktemp` to make use of the `TMPDIR` environment variable when
calling it with a template.

Don't use the deprecated `-t` flag.
2017-06-09 14:30:54 +03:00
Frank LENORMAND
b9cdccd53a rc: Document non-hidden options with -docstring 2017-05-16 14:35:43 +03:00
Maxime Coste
5b1229709d Fix make.kak handling of 'Entering directory' and absolute paths
Fixes #1212
2017-02-13 13:52:51 +00:00
Maxime Coste
343df600cb Merge remote-tracking branch 'alexherbo2/command-names' 2017-01-10 13:44:11 +00:00
Maxime Coste
a8fb280b6d make.kak: highlight gcc/clang style location markers 2017-01-06 17:05:39 +00:00
Alex Leferry 2
671b50bb52 update command names 2017-01-04 13:04:27 +01:00
Maxime Coste
ca225ad4dc Cleanup make.kak and optimize the make-next/make-prev regexes 2016-12-09 13:33:01 +00:00
Paul d'Hubert
010453a2ac Update make.rc error pattern matching
- Use the classic unix file:line:(col:)? pattern for matching.
- The option `make_error_pattern` can be used to further restrict errors
to be matched (to include / exclude warnings, etc.
2016-12-08 11:33:28 +01:00
Paul d'Hubert
c54a8ef987 Allow setting custom make error pattern
The current pattern used by the commands `make-next` and `make-prev`
are not suitable for all usages.

For example the go compiler will not suffix errors with `error: ` and is
not usable with these functions. This change allows the user to define
a custom error pattern, instead of having to work around the error (for
example using sed to insert the `error: ` suffix).

What do you think of this? I have not followed the current convention
of having options without separators (like `makecmd`). Also this does
not feel to be the right solution because the pattern has to be set at
global level.
2016-12-08 11:01:05 +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
Maxime Coste
1b9c8b9cf2 Fix hool -> hook in rc files 2016-10-01 14:09:59 +01:00
greduan
a68f5f20a1 Add highlight group to highlighters rmhl hooks 2016-09-28 08:45:01 +02:00
greduan
6c6359de93 Add highlight group to highlighters addhl hooks 2016-09-28 08:25:02 +02:00
Maxime Coste
bbceae97a2 Fix uses of <c-m> in rc files, <ret> should be used now 2016-07-11 19:47:56 +01:00
Frank LENORMAND
a20f5fc6a2 Pass a generic pattern to printf calls, use echo when possible 2016-04-23 10:00:36 +03:00
Frank LENORMAND
84a21f8cfb Replace non POSIX calls to echo with printf %s 2016-04-23 09:56:53 +03:00
Maxime Coste
3499d440de Collapse jumps in grep.kak and make.kak 2016-03-20 16:37:58 +00: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