Commit Graph

78 Commits

Author SHA1 Message Date
Noé Rubinstein
93620a76f0 doc.kak: add aliases for :h and :help
This would help VIM users find the documentation
2016-12-13 19:28:23 +01:00
Maxime Coste
0f486666e0 Remove underscore prefix from indent command in c-family.kak
We already define these commands as hidden, this underscore has
little value.
2016-12-09 13:51:44 +00:00
Maxime Coste
d8f00198f3 Improve C indentation support around namespace/struct closing bracket 2016-12-09 13:50:41 +00:00
Maxime Coste
ca225ad4dc Cleanup make.kak and optimize the make-next/make-prev regexes 2016-12-09 13:33:01 +00:00
Maxime Coste
5caa969947 Merge branch 'make/error-pattern' of git://github.com/pauldub/kakoune 2016-12-08 23:02:11 +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
Martin Chaine
5b95e537ba don't reset line chars for python 2016-12-08 11:18:16 +01:00
Martin Chaine
3227fa7b57 Fix python comment chars 2016-12-08 11:07:25 +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
Maxime Coste
168abcdb48 Fix c-family.kak after the change to keep handling of eol 2016-11-29 00:01:37 +00:00
Maxime Coste
97a84a4765 c-family.kak: rename gcc_macros to builtin_macros 2016-11-27 23:38:47 +00:00
Frank LENORMAND
94971e0e8a Introduce the builtin face, modify scripts accordingly 2016-11-24 17:06:45 +03:00
Maxime Coste
90de54af2f Rework c-family /* */ comments auto insertion of prefix star
Fixes #918
2016-11-14 21:11:20 +00:00
Maxime Coste
dcd733e5fa Do a first phase of command renaming 2016-11-14 00:27:14 +00:00
Frank LENORMAND
85ce5db08a Merge the "error" duplicate face into "Error" 2016-11-09 17:51:42 +03:00
Maxime Coste
fff129f15b Merge remote-tracking branch 'lenormf/fix-sh-highlighting' 2016-11-08 20:20:45 +00:00
Frank LENORMAND
aca984f000 Highlight variable expansions as values in shell scripts 2016-11-08 19:03:41 +03:00
Frank LENORMAND
277117f64b Fix the doc command for users of BSD man
This commit uses options and flags that will work on both the BSD and
the `man-db` implementations, however those changes remain unportable as
the POSIX standard only defines a single `-k` flag for the utility,
which we don't need.

The call to the `col` utility has also been replaced by a call to `sed`,
as the former is only shipped on systems that have the `nroff` formatter
installed.
2016-11-03 14:57:55 +03:00
Maxime Coste
01dba547fb Tweak c-family indentation logic 2016-11-02 22:27:50 +00:00
Maxime Coste
cf5bcdf1bb Merge remote-tracking branch 'lenormf/fix-formatcmd' 2016-10-17 18:28:57 +01:00
Maxime Coste
1431dcff46 Fix bug in c-family indentation logic after visibility labels
Fixes #872
2016-10-16 19:27:53 +01:00
Frank LENORMAND
ac42ea414e Add commenting characters to all supported languages
The default commenting character is now '#', considering the superior
amount of files that use it for comments compared to the previous
C-style comment characters.

The logic now also prioritize the opening commenting characters if they
contain a colon, to be able to use selection commenting on markdown
files.
2016-10-15 11:07:21 +03:00
Frank LENORMAND
68d3eda270 Miscellaneous fixes to the commenting.kak script
This commit properly produces backslash characters within double quote
strings instead of hoping the shell will not recognize the escape
sequence that they form with the following character. Use the proper
POSIX function declaration form.

The uncommenting logic now also ignores trailing newline characters,
which shortens the amount of operations needed to uncomment a selection.
2016-10-14 22:15:35 +03:00
Frank LENORMAND
5db1d1beef Move the commenting variables back to commenting.kak
Initialising the `comment_line_chars` and `comment_selection_chars` variables
in language support scripts created a hard dependency of those scripts
to `commenting.kak`, which would create errors when this script was not
loaded, e.g. when running tests.
2016-10-14 22:12:01 +03:00
Frank LENORMAND
67a8e8ca3c Remove all references to formatcmd
Initializing the `formatcmd` variable in the default language support
scripts created a dependency to the `formatter.kak` script, which we do
not want. Examples of such cases are when users haven't loaded the
`formatter.kak` script, or when Kakoune runs its test suite and
selectively loads some language scripts for testing purposes.
2016-10-14 19:16:45 +03:00
Maxime Coste
5af29b0254 Fix python comment copy logic in python.kak
And introduce the first unit test that sources bundled support
scripts.

Fixes #860
2016-10-13 20:13: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
35a6d4916e Fix :doc completion candidates, they do not depend on the current word
Fixes #845
2016-10-06 13:38:49 +01: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
0d5a1ddf4c Merge remote-tracking branch 'lenormf/fix-makefile' 2016-09-25 15:17:03 +01:00
Frank LENORMAND
b26d083627 Place the Makefile highlighting script alongside the make support script 2016-09-25 09:19:56 +03:00
Kylie McClain
3ec0cbd07a formatter.kak: Use sed rather than ${variable//string/replacement}
Using ${variable//string/replacement} is a bash extension, it is not part
of POSIX shell scripting.

http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_02
2016-09-21 19:54:17 -04:00
Maxime Coste
e9c63316f5 Tweak c-family indent logic 2016-09-05 23:33:34 +01:00
Frank LENORMAND
47d9f4a993 Allow instant completion of doc pages
Closes #750
2016-08-30 17:25:34 +03:00
Maxime Coste
3a24763d53 c-indent: only align to opening paren if it is on the immediate previous line 2016-08-09 18:45:13 +01:00
Maxime Coste
967a55d09f c-indent: Tweak implementation of c-family-insert-on-newline 2016-08-05 09:37:25 +01:00
Maxime Coste
19e36425f4 c-indent: Restore previous indent after a closing parenthesis 2016-08-05 09:05:47 +01:00
Maxime Coste
d836fe7d66 c-indent: fix align to opening paren touching too much text 2016-08-05 09:05:30 +01:00
Maxime Coste
b3f4840f45 Merge remote-tracking branch 'lenormf/fix-hooks-cfamily' 2016-08-05 08:07:41 +01:00
Maxime Coste
b80dbf9322 Move x11.kak and tmux.kak to rc/base from rc/core 2016-07-28 09:17:18 +01:00
Martin Chaine
82e28bce11 Move iterm.kak to rc/extra 2016-07-25 12:52:40 +02:00
Martin Chaine
fce5274f81 Introduce iTerm2 support (split, tab, window) 2016-07-25 12:23:56 +02:00
Frank LENORMAND
78c6b7c03d Don't completely remove empty lines when fixing indents 2016-07-15 10:29:19 +03:00
Frank LENORMAND
4204f6dae6 Create an insert group, fix and improve the existing hooks 2016-07-12 17:23:55 +03: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
7419f8241a Fix operators highlighting in shell scripts 2016-07-08 13:13:08 +03:00
Frank LENORMAND
b8c83a914a Update the keywords highlighted in kak files 2016-06-26 16:59:48 +03:00
Maxime Coste
a2d76e27b0 Use a draft context for *.h c/cpp filetype decision 2016-06-22 20:49:58 +01:00