Commit Graph

2184 Commits

Author SHA1 Message Date
Steven Chan
568d46bf72 Fix and simplify ctags-funcinfo command
1. Enable the command to correctly show the prefix of a function name [prefix::basename],
   where prefix is the value gotten from a class, struct, or namespace field of the tag line.

2. Use a readtag filter expression to replace a use of grep.
2019-01-29 11:17:23 -08:00
Maxime Coste
1b469f4c00 Merge http://github.com/ckafi/kakoune 2019-01-23 20:24:24 +11:00
Steven Chan
ae86ffcbf9 Fixes for ctags.kak
1. Fix #2250. Enable ctags to handle absolute file paths.
   Only prepend tagroot to tag location if it is a relative file path.

2. Include signature field in the default ctags command.
   The regex for displaying signature info includes a mandatory pattern
   for 'signature' field, but the field is not a default option for the ctags command.
   If the tags file is generated by the as-is ctags command, pattern matching will fail,
   and the whole ctags line for the selected function will be displayed instead.
2019-01-21 15:09:33 -08:00
Maxime Coste
ca105f8cc6 Rework c-family shell expansions to speed them up slightly 2019-01-20 12:33:46 +11:00
Maxime Coste
a9ee4e8af4 Small optimization in clojure.kak awk script 2019-01-20 12:32:31 +11:00
Maxime Coste
a35a1591d0 Convert scheme.kak expensive shell scope to awk 2019-01-20 12:31:57 +11:00
Maxime Coste
8587ecaeb4 Slight simplification in c-family.kak
There is no need to have split types/macros into many different
variables.
2019-01-19 11:33:53 +11:00
Maxime Coste
2f7ec014b7 Use a here-document for clojure.kak awk script 2019-01-19 10:42:46 +11:00
Maxime Coste
41ce602574 Fix some escaping issues in clojure.kak 2019-01-19 10:29:23 +11:00
Maxime Coste
4a358e0707 Merge remote-tracking branch 'eraserhd/clojure-highlighting-with-awk' 2019-01-19 10:14:05 +11:00
Jason Felice
52c0b7d6b4 Rewrite clojure highlighting to use awk
First, avoids the shell escaping issue mentioned in #2604.  Second,
speeds up Kakoune boot time.
2019-01-18 11:20:15 -05:00
Tobias Frilling
ef19d318c4 Better tmux REPL support
This allows one REPL per kakoune session and allows the REPL to run in a
different tmux session than the kakoune client.
2019-01-18 14:42:04 +01:00
Maxime Coste
0f9e6680e2 Support quoted here-documents in sh highlighting 2019-01-17 19:58:53 +11:00
Maxime Coste
da8058487b Fix C++ raw strings not being checked for matching captures 2019-01-17 19:50:43 +11:00
Maxime Coste
0600724a8b Improve some corner cases in c-family auto-indenting 2019-01-14 23:42:57 +11:00
Maxime Coste
30919b749c Merge remote-tracking branch 'JJK96/bash' 2019-01-13 23:41:24 +11:00
Jan-Jaap Korpershoek
b306f6aa37 [Bash] Handle hashtag inside expansion (Fix #2684) 2019-01-11 00:02:36 +01:00
Maxime Coste
7dbd9bc1e2 Merge remote-tracking branch 'SolitudeSF/nimfix' 2019-01-10 20:28:07 +11:00
Jan-Jaap Korpershoek
c0588529c2 Merge branch 'master' into i3 2019-01-09 16:09:11 +01:00
Jan-Jaap Korpershoek
cb13fb63d3 Add new keywords 2019-01-09 16:08:14 +01:00
SolitudeSF
289b57bb67
rc: nim - properly highlight hex/oct/bin literals, refactor, fix more edgecases 2019-01-08 21:08:46 +02:00
fsub
059b086e62 c-family: Regroup C++ keywords and consider C++20 2019-01-06 19:22:48 +01:00
Justin Frank
8a6a76fcd3 Added 'catch' to kakrc keywords 2019-01-02 13:30:34 -08:00
Maxime Coste
090ccafa8d Merge remote-tracking branch 'Muffindrake/uch_stdlib' 2018-12-30 10:55:26 +11:00
SolitudeSF
d010b163fa
rc: nim - fix prefixed triplestring edgecase 2018-12-29 19:31:49 +02:00
Maxime Coste
81cef40171 Merge remote-tracking branch 'SolitudeSF/nimfix' 2018-12-29 10:34:45 +11:00
SolitudeSF
a9ef25f172
rc: add missing builtin types, fix displaying of triple string literals, float literals, character literals, type suffixes, enable raw string literals, operators highlighting in nim 2018-12-27 21:49:00 +02:00
Maxime Coste
e2f2503da4 Merge remote-tracking branch 'SolitudeSF/nimfix' 2018-12-28 06:43:24 +11:00
Maxime Coste
f54ba6d4b2 Merge remote-tracking branch 'lenormf/fix-git-notes' 2018-12-28 06:40:13 +11:00
SolitudeSF
a4e65d4706
rc: add missing builtin types, fix displaying of triple string literals, float literals, character literals, type suffixes, enable raw string literals in nim 2018-12-27 21:34:33 +02:00
Maxime Coste
1c7b63709f Merge remote-tracking branch 'occivink/generic-term-command' 2018-12-28 06:27:51 +11:00
Jason Felice
1631327c33 Some collected fixes for Clojure highlighting
- condp is a keyword
- Highlight '10' correctly
- Highlight shebang line as a comment
2018-12-27 11:46:54 -05:00
Olivier Perret
eebc8c2f7d Fix a couple of mistakes in iterm.kak 2018-12-22 10:32:25 +01:00
Olivier Perret
5146f7ba33 Rework 'terminal' commands
* Arguments of the kakoune command are now preserved in the shell call
* Escaping logic is moved from 'new' to 'terminal'
2018-12-22 09:37:17 +01:00
Olivier Perret
02fa967476 Factor the 'new' commands out of their respective windowing systems 2018-12-22 09:37:03 +01:00
Olivier Perret
3e4f3ed9d2 Better handling of escaping in iterm.kak
Thanks eraserhd
2018-12-22 09:37:03 +01:00
Olivier Perret
84da1911be Attempt to create iterm-terminal commands 2018-12-22 09:37:03 +01:00
Olivier Perret
74d1dc756a Only accept one parameter to 'terminal' commands
Also explicitly state that they're executed in a shell scope
2018-12-22 09:37:01 +01:00
Olivier Perret
c8403624a7 Expose a 'terminal' command for the various windowing systems
It allows plugins to create generic terminal using the user's preferred windowing system
For example, it can be used to run fzf, gdb or simply a shell.

* 'new' commands are refactored to simply use the 'terminal' one
* style and docstrings has been unified
* all windowing systems go through "sh -c" for consistency purposes, even if unnecessary
2018-12-22 09:36:34 +01:00
Olivier Perret
6f9e297def Revert cosmetic hook order change
The order in which they're run actually matters
2018-12-20 19:15:40 +11:00
Olivier Perret
f085e43bf9 Unify auto-indent trimming hooks
* ModeChange hooks that remove indent now belong to *-trim-indent groups, instead of just -indent
* *-filter-around-selections hooks and commands have been renamed to trim-indent for clarity
2018-12-19 10:20:11 +01:00
Olivier Perret
d8466f0f39 c-family.kak: remove redundant -family in hook groups 2018-12-19 10:03:37 +01:00
Muffindrake
bcb87279e5 Remove accidental line paste 2018-12-15 10:30:53 +01:00
Muffindrake
2e141d2c2c Add atomic type qualifier and atomic_flag type 2018-12-15 09:54:22 +01:00
Muffindrake
bbd34de26c Add missing stdlib macro highlighting and uchar types 2018-12-15 09:33:46 +01:00
Maxime Coste
e49a0d2581 doc.kak: Do not join together bullet lists
Fixes #2610
2018-12-13 19:36:23 +11:00
Frank LENORMAND
9b9aedd175 rc lint: Prevent diagnostics from being expanded
Fixes #2629
2018-12-13 10:42:52 +03:00
Maxime Coste
527e28539e Merge remote-tracking branch 'occivink/cleanup-hook-once' 2018-12-11 10:39:24 +11:00
Olivier Perret
27f951638c Execute cleanup hooks on any filetype change 2018-12-11 00:35:57 +01:00
Olivier Perret
93c308ca53 Fixes to d.kak and moon.kak 2018-12-11 00:13:30 +01:00
Olivier Perret
f5a2ded44b Change cleanup of extra/ languages to use a simpler hook -once 2018-12-11 00:13:30 +01:00
Olivier Perret
898d45f5d5 Change cleanup of base/ languages to use a simpler hook -once 2018-12-11 00:13:30 +01:00
Olivier Perret
6765723c68 Change cleanup of core/ languages to use a simpler hook -once 2018-12-11 00:13:30 +01:00
Frank LENORMAND
f8d660027b rc git: Support the break instruction 2018-12-10 20:10:05 +03:00
Frank LENORMAND
17ebc582b6 rc scheme: Fix the initialization of the static words
Fixes #2607
2018-12-01 07:40:55 +03:00
Maxime Coste
a7336f8663 Merge remote-tracking branch 'sbwhitecap/pr/treat_t_files_as_perl' 2018-11-28 21:28:07 +11:00
Maxime Coste
086db6a9d3 Fix extra_word_chars in various scripts
Add '_' to the list now that it is not built-in anymore
2018-11-28 18:13:55 +11:00
Kazuki Shigemichi
5221254363 Treat .t files as perl 2018-11-27 22:43:50 +09:00
Maxime Coste
4610166263 Merge remote-tracking branch 'lePerdu/markdown_highlighter' 2018-11-27 18:22:21 +11:00
Alyssa Ross
9e99415c46
makefile.kak: highlight .mk files
This extension is commonly used for helper files, etc.
2018-11-26 02:20:31 +00:00
Maxime Coste
bef7683e1b Merge remote-tracking branch 'Muffindrake/c_stdint' 2018-11-25 22:59:22 +11:00
Maxime Coste
2598fc1534 Merge remote-tracking branch 'lePerdu/fix-lua-comments' 2018-11-25 22:58:55 +11:00
Maxime Coste
ec6b88be96 Merge remote-tracking branch 'jjthrash/master' 2018-11-23 22:32:35 +11:00
Muffindrake
d40a6bc44a Highlight bool type 2018-11-23 00:12:01 +01:00
Jimmy Thrasher
576f7b13b9 Don't highlight Ruby eigenclass definitions as here docs
E.g. for the following code snippet, the code was highlighted as a string
```ruby
class Bob
	class <<self
		def hello
		end
	end
end
```
2018-11-21 16:45:07 -05:00
Olivier Perret
808580056f doc: don't pollute command history with mapping 2018-11-21 17:30:58 +01:00
Maxime Coste
3ed7ec21bd Merge branch 'python_add_async_await_keywords' of http://github.com/Roger/kakoune 2018-11-19 21:07:53 +11:00
Maxime Coste
c4ffd95570 Merge remote-tracking branch 'JJK96/master' 2018-11-19 20:50:11 +11:00
Maxime Coste
f46b53a441 Merge branch 'gas-hex-fix' of http://github.com/andreyorst/kakoune 2018-11-19 20:49:40 +11:00
lePerdu
41d2176179 Add back list marker highlighting 2018-11-18 10:34:11 -05:00
lePerdu
9053a1cdc1 Make list items match as regions 2018-11-18 10:34:06 -05:00
Frank LENORMAND
70097a98b3
Sinplify regex
Co-Authored-By: JJK96 <jjkorpershoek96@gmail.com>
2018-11-18 08:28:50 +01:00
Frank LENORMAND
7dd81ec516 rc git: Support notes 2018-11-17 16:47:29 +03:00
Jan-Jaap Korpershoek
7fc43252f1 Make header clearer 2018-11-16 13:56:48 +01:00
Jan-Jaap Korpershoek
1228eddc00 Add markdown sql language support 2018-11-16 13:54:43 +01:00
Andrey Orst
3e194fbb2e fix hex numbers for gas filetype - add missing a-f letters 2018-11-13 13:02:04 +03:00
lePerdu
e539347f2a Give lua block comments higher match precedence 2018-11-12 15:39:34 -05:00
roger
b672e7c100 python: add async/await keywords highlighting 2018-11-12 15:03:32 +01:00
Muffindrake
a807dbf1e0 Add missing highlighting for time/wctype 2018-11-11 15:33:55 +01:00
Muffindrake
3012bf48e5 Convert subshells to strings 2018-11-08 18:26:16 +01:00
Muffindrake
3c9f9255d7 Add macros for float.h 2018-11-08 18:03:31 +01:00
Muffindrake
f088dd957a Update C grammar
This highlighting and static completion for types and macros that were
previously missing. No functions are included, but some macros are
highlighted as such, even if they're function-like macros.
2018-11-08 10:30:27 +01:00
Maxime Coste
9bc893e70b Merge remote-tracking branch 'laelath/c-indent-fixes' 2018-11-06 20:22:50 +11:00
Maxime Coste
bcd50d7dd8 Merge remote-tracking branch 'eraserhd/clojure-indent-fix' 2018-11-06 20:16:57 +11:00
Justin Frank
521e5032c9 Don't require content in parens for single statment indent 2018-11-01 00:21:48 -07:00
Justin Frank
ee65954ed4 Make statement after if/else/while/for optional for indenting c-family 2018-10-31 16:09:13 -07:00
Jason Felice
db937beff0 Make lisp/clojure indent work for append 2018-10-29 12:16:13 -04:00
Ruslan Prokopchuk
b65a6493aa replace usage of the deprecated 'e' face attribute with the new 'F' one
and update set-face docstring
2018-10-28 08:52:14 +11:00
Maxime Coste
433e39566d Merge remote-tracking branch 'lenormf/highlight-troff' 2018-10-23 08:20:21 +11:00
Jason Felice
e399bf7562 EDN files are Clojure syntax 2018-10-22 10:23:26 -04:00
Frank LENORMAND
2999702b01 rc troff: Highlight *ROFF files
Fixes #2508
2018-10-21 16:24:14 +03:00
Maxime Coste
7470c85a1a Merge remote-tracking branch 'maximbaz/do-not-enforce-autoformat-ocaml' 2018-10-21 18:45:16 +11:00
Maxime Coste
7dbca46bf0 Merge remote-tracking branch 'schickm/bugfix/hbs-highlighter-toggling' 2018-10-21 11:52:22 +11:00
Sébastien Lerique
681942e44b Support commenting syntax in Elm 2018-10-09 11:40:07 +02:00
Matt Schick
8e698e0054 Simplify handlebars adding/removal hooks
Removing the handlebars highlighters when a client toggles away from hbs window unintentionally causes
other clients attached to hbs windows to no longer highlight correctly.  The only other option is to
copy the entire html highlighter and all of it's rules, but that seems like a maitenance headache.
So instead, just leave the hbs rules injected into the html rules once the user opens any handlebars file.
It's not ideal, but I'd say it's the least bad option.
2018-10-06 08:39:01 -05:00
Maxime Coste
888ec60adf Fix kakrc shell script completion region definitions 2018-10-06 10:49:14 +10:00
Maxime Coste
5bdcfab018 Merge remote-tracking branch 'laelath/shell-command-completion' 2018-10-06 10:47:23 +10:00
Maxime Coste
81fa2ad300 Merge remote-tracking branch 'laelath/kitty-repl-cwd' 2018-10-04 20:17:22 +10:00
Maxime Coste
d9e95ff1fc Merge branch 'patch-1' of https://github.com/andreyorst/kakoune 2018-10-04 20:16:47 +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
Justin Frank
74fb175da1 Made kitty repl window start in the current working directory
Enclose PWD expansion
2018-10-03 09:44:49 -07:00
Andrey Orst
44483e06f7
Simplifed regex variant by mawww 2018-10-03 15:16:16 +03:00
Maxime Coste
fd00776012 Merge remote-tracking branch 'schickm/html-highlighter-indent-bugfix' 2018-10-03 21:44:43 +10:00
Andrey Orst
5dce923785
use more complex regex to handle all suffix combinations 2018-10-02 19:01:53 +03:00
Matt Schick
1d731dbdd0 Fix/improve html-indent-on-new-line
* Fixes erroring execute-keys statement by using '<lt>' rather then '<'
* Reworks hook to not indent after self closing tags
2018-10-02 06:09:14 -05:00
Tim Allen
8385212f98 doc.kak: Fix bashism.
Fixes #2442.
2018-10-01 15:45:28 +10:00
Maxime Coste
150ee05077 Merge remote-tracking branch 'lenormf/fix-doc-anchor' 2018-10-01 11:18:20 +10:00
Maxime Coste
c9467ea959 Merge remote-tracking branch 'lenormf/fix-extended-std-c' 2018-10-01 11:13:16 +10:00
Maxime Coste
dc7f9a813c Merge remote-tracking branch 'TeddyDD/editorconfig' 2018-10-01 11:12:05 +10:00
Maxime Coste
2e0b58a43f Merge remote-tracking branch 'eraserhd/lisp-indent' 2018-10-01 11:11:11 +10:00
Maxime Coste
5709ff7f20 Merge branch 'kd/fix-nim-singlequote-highlighter' of git://github.com/kdheepak/kakoune 2018-10-01 11:10:42 +10:00
Frank LENORMAND
798a7ec351 rc doc: Fix the anchor jump error message
Fixes #2442
2018-09-30 10:43:27 +03:00
Frank LENORMAND
51ced99286 rc c: Highlight more standard types and macros
Related to #2438
2018-09-29 17:43:06 +03:00
Daniel Lewan
0ae88593d3 add highlighting and static words to editorconfig 2018-09-29 14:21:31 +02:00
Jason Felice
e237bf6f15 Better Lisp and Clojure indent
Algol-like indenting doesn't work for Lisp as we tend to open (and
close) many forms on one line.  This generally puts the cursor
where it should be, though it is probably confused by strings
with brackets and things.
2018-09-29 11:25:11 +01:00
Dheepak Krishnamurthy
1549c18b8e Add single_string highlighter 2018-09-28 03:41:10 -06:00
Maxime Coste
004ed72f44 Merge remote-tracking branch 'laelath/kitty-qol-commands' 2018-09-27 19:08:47 +10:00
Maxime Coste
6a82398d0f Merge remote-tracking branch 'schickm/hbs-highlighter-refactor' 2018-09-27 19:08:09 +10:00
Maxime Coste
f3d6586df2 Merge remote-tracking branch 'laelath/clang-format-fixes' 2018-09-27 18:55:50 +10:00
Justin Frank
7e15f200b1 Fixed several clang output formatting errors 2018-09-26 11:22:30 -07:00
Matt Schick
e7e87db94e Rework the handlebars highlighter
- Removes -recurse from handlebars comments. Handlebars parsers (janl/mustache.js, ember-cli/ember-cli-htmlbars), do not treat comments as recursive, so don't highlight them as so.
- Creates shared/hbs-file highligher group. This represents a handlebars file, which is html that happens to contain some handlebars tags.
- Augments the shared/html highlighter when needed. Because handlebars lives inside of html, we need to add the highlighter inside of it. Since there's no way to scope modifications of a shared highlighter to a window, here I'm modifying/unmodifying the shared/html highlighter whenever the user attaches/detaches a filetype of "hbs" to/from the window.
- Matches namespaced helpers as well. In htmlbars, helpers (components) can have '/'s in them, so make sure to continue highlighting through those. Also removes unused capturing groups.
- Allows for de-indenting when closing a block expression
- Brings in html highlighter hooks
- Improves indent matching on close of yielded blocks. Previous version just flat out didn't work.
2018-09-26 06:12:24 -05:00
Andrey Orst
ab09864bd5
Update c-family.kak 2018-09-25 10:23:07 +03:00
Justin Frank
d06e8d662d Added focus-tab call to kitty-focus 2018-09-23 21:12:07 -07:00
Justin Frank
903ae46b5d Added more kitty integration 2018-09-23 13:15:29 -07:00
Maxime Coste
09546a950e doc.kak: Fix rendering of indented code blocks
Fixes #2376
2018-09-23 22:42:30 +10:00
Maxime Coste
dbfed1306f git.kak: Refactor commit message highlighting
Use regions to avoid highlighting the commit message as a diff.
The new method will fail if one line of the commit message matches
'^diff --git' but that is fairly unlikely.

Fixes #2371
2018-09-23 18:00:51 +10:00
Maxime Coste
bb1cb0dbf1 doc.kak: Tweak paragraph joining logic
Fixes #2378
2018-09-23 17:40:16 +10:00
Maxime Coste
49645f8efc Merge remote-tracking branch 'laelath/spell-clear' 2018-09-23 17:05:51 +10:00
Jason Felice
538f2a74c7 Fix clojure numbers
- Fix issue where numbers which were part of symbols were highlighted.
- Fix issue where hexidecimals weren't highlighted past the 'x'
2018-09-22 16:16:36 -04:00
Justin Frank
5700587926 added spell-clear convenience command 2018-09-21 12:30:13 -07:00
Maxime Coste
fd107b8b5e Merge remote-tracking branch 'Delapouite/remove-hooks' 2018-09-20 21:14:22 +10:00
Maxime Coste
8618b286c5 Merge remote-tracking branch 'laelath/highlighter-fixes' 2018-09-20 21:14:01 +10:00
Delapouite
425aa56eaf Use remove-hooks regex in rc 2018-09-19 19:59:57 +02:00
Andrey Orst
b3f817c1ff
Fix highlighting of unsigned long long in C filetype
Values like `0xffffffffffffffffull` were highlighted only till first `u` leaving `ll` without highlighting. This change addresses this issue. It also adds uppercase `ULL` highlighting in values.
2018-09-19 16:50:26 +03:00
Maxime Coste
7956e893be Merge remote-tracking branch 'laelath/git-hide-diff' 2018-09-18 22:30:50 +10:00
Maxime Coste
0fca6ae3dd Merge remote-tracking branch 'Screwtapello/code-regions-for-markdown' 2018-09-18 22:30:07 +10:00
Tim Allen
9e142c6643 markdown.kak: Use lookahead/lookbehind assertions for formatting spans.
Previously, one of the syntaxes for italic was (greatly summarized) something
like this:

    [^_]_[^_]+_[^_]

That is to say, the regex matched the blanks on both sides of the italic span,
as well as the actual span content. That means that if you had consecutive
italic words:

    _some_ _italic_ _words_

...only the odd-numbered words would be highlighted: the space after "_some_"
was counted as part of that span, so it wasn't available as part of "_italic_"
and therefore "_italic_" wouldn't be highlighted. Likewise, if the first word
in a buffer was italic, it wouldn't be highlighted because the first underscore
was not preceded by a non-underscore character!

Now we use lookahead/lookbehind assertions, which don't count as part of the
matched span, so consecutive spans don't interfere with one another.

Fixes #2111.
2018-09-18 19:21:28 +10:00
Tim Allen
535abe2ba7 markdown.kak: Clean up code-block and code-span formatting.
Previously, a code block was anything between triple-backtics, including inline
blocks:

        some text ```
        not a codeblock, but highlighted as one
        ``` other text

and even if the closing backticks had the wrong indent:

        ```
        this is a code block containing a triple backtick
            ```
        this is still a code block, but Kakoune thinks otherwise
        ```

Now we use the -match-capture flag to ensure the start and end fences have
exactly the same indent.

Previously, the generic code-block region was defined first, which meant that
it took priority over all the language-specific highlighters. Now we define
the generic code-block highlighting *after* the others, which fixes #2304.

Previously, code-spans were defined as ordinary inline markup, but in Markdown
ordinary formatting doesn't work inside code-spans. Therefore, they are now
regions unto themselves, defined according to section 6.3 of the CommonMark
spec <https://spec.commonmark.org/0.28/#code-spans>, which addresses a comment
on #2111.
2018-09-18 19:18:32 +10:00
Jason Felice
fbd733f49c Homebrew Brewfile is ruby 2018-09-17 10:29:05 -04:00
Justin Frank
f6d5b23122 fixed hooks running when entered character was not alone on the line 2018-09-16 20:53:23 -07:00
Justin Frank
391e58625f fixed mistakenly indenting matching characters 2018-09-16 17:05:32 -07:00
Justin Frank
2c753889ca changed order of git hide-diff in menus 2018-09-16 13:52:17 -07:00
Justin Frank
f422b8c725 added git hide-diff convenience command 2018-09-16 00:30:46 -07:00
Justin Frank
4bb87ef430 macros always end at the start of a line comment 2018-09-15 10:52:18 -07:00
Justin Frank
e32d5ec88e tweaked some of the c-family highlighting of defines 2018-09-14 19:03:49 -07:00
Maxime Coste
c8fd1e1cf6 Merge remote-tracking branch 'laelath/c-indent-edits' 2018-09-13 20:42:04 +10:00
Maxime Coste
b8d312cfe0 Merge remote-tracking branch 'laelath/kakrc-indent-edit' 2018-09-12 21:01:33 +10:00
Justin Frank
22bda7a7d2 removed unnecessary gi in matching deindent hook 2018-09-12 00:04:05 -07:00
Justin Frank
852d22a543 changed opening matching regexes to be simpler 2018-09-12 00:04:05 -07:00
Justin Frank
2f0b0d468c added auto deindent to kak files 2018-09-12 00:04:05 -07:00
Justin Frank
fa9d13700a Added deindenting of single statements 2018-09-11 21:21:25 -07:00
Maxime Coste
d65c99a448 Further fixes in go-tools.kak to improve its robustness 2018-09-10 21:22:32 +10:00
Maxime Coste
73b6f0994f Merge remote-tracking branch 'swdunlop/master' 2018-09-10 21:18:07 +10:00
Maxime Coste
d57203f41f Merge remote-tracking branch 'laelath/clang-fixes' 2018-09-10 19:41:08 +10:00
Justin Frank
0f8caceac5 fixed highlighting of exec lines 2018-09-08 14:00:00 -07:00
Justin Frank
5c8a756d56 fixed showing parse errors not working 2018-09-08 11:39:30 -07:00
Justin Frank
558d4b864a added autoindentation and comment copying to i3 syntax support 2018-09-06 21:53:04 -07:00
Jason Felice
1b1119e85c Improve Clojure highlighting 2018-09-04 20:44:25 -04:00
Scott W. Dunlop
575b02b171 go-tools.kak: quote completions and scope
Since the gocode completions contain white space, they cannot be used without quotations.

Also, since I'm in there, the buffer should be quoted for heathens who use white space in their paths.
2018-09-04 11:41:35 -07:00
Scott W. Dunlop
48f23f0312 go-tools.kak: fix set-options for go completions
Restores Go completions, as discussed in #2215
2018-09-04 10:58:57 -07:00
Justin Frank
15bf1c7614 updated kitty integration to use the no-response switch 2018-09-01 12:14:33 -07:00
Emerson Ferreira
5e8727ad1b
Add support for Void Linux package templates
These templates are simple shell scripts, similar to PKGBUILDs.
They reside in srcpkgs, so we can use this to identify if
`template` really is a Void Linux package template.
2018-08-20 14:29:32 -03:00
Maxime Coste
a91fc83bfe Merge remote-tracking branch 'lenormf/fix-git' 2018-08-20 07:56:32 +10:00
Maxime Coste
1904202d05 Merge remote-tracking branch 'lenormf/fix-lisp' 2018-08-20 07:49:21 +10:00
Frank LENORMAND
802f51c02a rc git: Support new rebase commands 2018-08-19 07:44:00 +03:00
Maxime Coste
a8dce6abcd Merge remote-tracking branch 'aver-d/dart_comment' 2018-08-19 08:05:25 +10:00
Maxime Coste
1485150b68 Use -once hooks to remove fifo directories 2018-08-19 08:04:31 +10:00
aver-d
d2f48b1942 Add dart to comment.kak 2018-08-17 23:23:59 +01:00
Frank LENORMAND
099ad2319f rc systemd: Make sure files are in the systemd directory
Fixes #2272
2018-08-17 14:08:51 +03:00
Frank LENORMAND
55198032d2 rc git-tools: Change the CWD before running some git commands
When opening buffers from a directory that's not under versioning
(or even from a different repository), `git` commands will not work.

This commit temporarily changes the current working directory to that
of the current buffer to make sure the context is right.
2018-08-16 14:34:48 +03:00
Justin Frank
d557b09ac6 added protobuf syntax support 2018-08-15 21:39:29 -07:00
Harm Aarts
0d087966bf Add Dart rc file
Based heavily on `go.kak`.
2018-08-14 21:06:36 +02:00
Frank LENORMAND
afd44ddaea rc lisp: Highlight basic numeral forms 2018-08-13 20:49:15 +03:00
Frank LENORMAND
93e1b3c254 rc lisp: Extend the range of identifier characters 2018-08-13 20:48:53 +03:00
Frank LENORMAND
36d94cecb4 rc lisp: Fix variable highlighting
Fixes #2289
2018-08-11 10:13:38 +03:00
Maxime Coste
983a8f759a Merge remote-tracking branch 'laelath/fix-git-hide-blame' 2018-08-09 11:25:30 +02:00
Justin Frank
5b236e25a0 i3 comments don't require a space after the hash 2018-08-08 10:28:27 -07:00
Justin Frank
5b83968a29 fixed git hide-blame not working 2018-08-08 10:11:55 -07:00
Maxime Coste
ae75032936 Merge remote-tracking branch 'Screwtapello/support_rust_raw_strings' 2018-08-05 11:44:15 +01:00
Maxime Coste
610dbd97e9 Merge remote-tracking branch 'lenormf/fix-lint' 2018-08-05 10:37:15 +01:00
Frank LENORMAND
5953a38bdd rc lint: Be more resilient to null coordinates
Some syntax checkers (such as `cppcheck`) like to pass
extra-information using a regular diagnostic line - but with null
coordinates (0:0).

This commit makes the `:lint` command ignore such messages, to prevent
`set-option` from failing when assigning coordinates to `lint_flags`, and to avoid unecessary information in the `*lint-output*` buffer.
2018-08-02 14:20:16 +03:00
Tim Allen
8a9471ca5c rust.kak: Support Rust's raw-string syntax.
According to the Rust language reference[1], a raw string starts with an 'r',
zero or more '#' characters, and a '"', and doesn't close until a '"' is
immediately followed by the matching number of '#' characters.

[1]: https://doc.rust-lang.org/reference/tokens.html#raw-string-literals
2018-08-02 15:16:25 +10:00
Frank LENORMAND
bf488338aa rc systemd: Make sure files are in the systemd directory
Fixes #2272
2018-08-01 10:51:15 +03:00
Maxime Coste
1c0cc61ccc Merge remote-tracking branch 'lenormf/fix-lint' 2018-07-31 16:05:00 +01:00
Hao Deng
b2b7672eb3
sql is case insensitive
make sql hilighter case insensitive.
2018-07-30 14:49:21 -04:00
Frank LENORMAND
eee0035a0f rc lint: Create temporary file with the same buffer extension
Fixes #2189
2018-07-30 15:12:41 +03:00
Maxim Baz
451c72cc33
Do not enforce autoformat in ocaml 2018-07-28 12:27:27 +02:00
Jan-Jaap Korpershoek
db6f51b411 Fix unclosed string due to unescaped ' 2018-07-26 11:16:44 +02:00
Jan-Jaap Korpershoek
0a1c4ecf3d Add / behind add-highlighter path 2018-07-26 10:59:42 +02:00
Maxime Coste
47666ba20b Merge remote-tracking branch 'lenormf/syntax-systemd' 2018-07-25 21:11:08 +10:00
Maxime Coste
c668d4c060 Merge remote-tracking branch 'laserswald/scheme-support' 2018-07-24 20:28:09 +10:00
Frank LENORMAND
64c7f8c564 rc: Highlight systemd files in a dedicated script 2018-07-24 11:28:09 +03:00
Ben Davenport-Ray
dca6ad4822 Add Scheme support 2018-07-23 15:55:26 -04:00
Maxime Coste
5fb43478ff Merge remote-tracking branch 'lenormf/fix-lint' 2018-07-22 21:12:06 +10:00
Maxim Baz
6cc46dd307
Recognize systemd timer syntax 2018-07-22 01:33:44 +02:00
Frank LENORMAND
929ef9f5ec rc lint: Escape pipes in diagnostics 2018-07-20 13:18:33 +03:00
Maxime Coste
d640c321c0 cmake.kak: recognize CMakeCache.txt files as ini 2018-07-19 18:40:55 +10:00
Maxime Coste
ab94d1745e mail.kak: Recognize Date header 2018-07-19 18:40:48 +10:00
Maxime Coste
2a3e3f0514 Tweak various scripts to improve the time they take to load
As requested in #2152, startup time should be slightly better.
2018-07-19 18:32:29 +10:00
Maxime Coste
d8cf4f3f3b Merge remote-tracking branch 'lenormf/fix-lint' 2018-07-19 08:27:40 +10:00
Frank LENORMAND
4bd6fe55d4 rc lint: Fix diagnosis displaying 2018-07-18 17:42:56 +03:00
Frank LENORMAND
6f35f41ba0 rc lint: Adapt to upstream changes in the format of string lists 2018-07-18 15:48:34 +03:00
Frank LENORMAND
4612d0928a rc lint: Print an error when lintcmd is empty 2018-07-18 14:16:05 +03:00
Maxime Coste
e7782ff14d Merge remote-tracking branch 'maximbaz/recognize-gitconfig-syntax' 2018-07-15 20:30:00 +10:00
Maxime Coste
6e77e64734 Merge remote-tracking branch 'maximbaz/fix-python-indent' 2018-07-14 23:18:47 +10:00
Maxime Coste
8e1bd88958 Merge remote-tracking branch 'Screwtapello/fix-racer-integration' 2018-07-14 23:17:45 +10:00
Tim Allen
bc0cd64ecf racer.kak: Fix more fallout from the recent quoting changes. 2018-07-10 18:55:47 +10:00
Maxim Baz
26bc173631
Fix python indent for lines ending with colon 2018-07-08 18:21:01 +02:00
Maxim Baz
b0b466e0d3
Recognize .gitconfig syntax 2018-07-08 18:10:12 +02:00
Maxime Coste
2659912220 go-tools.kak: Fix go-disable-autocomplete
As described in #2191
2018-07-08 21:02:51 +10: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
677ae610f4 Merge remote-tracking branch 'occivink/comment-regs' 2018-07-08 15:59:43 +10:00
Maxime Coste
b3f9f533eb Merge remote-tracking branch 'maximbaz/fix-highlighters' 2018-07-08 15:57:10 +10:00
Maxim Baz
a4b8954934
Remove the -highlight suffix 2018-07-07 01:51:18 +02:00
Maxime Coste
f0b3925ba7 Merge remote-tracking branch 'maximbaz/improve-comment-line' 2018-07-07 09:39:46 +10:00
Maxim Baz
50c0f9dbdd
Missed one place 2018-07-06 13:13:36 +02:00
Maxim Baz
4e0f404eaa
Fix highlighter in lint.kak 2018-07-06 12:43:21 +02:00
Maxim Baz
fcec136f1e
Fix highlighters in git-tools 2018-07-06 12:33:53 +02:00
Maxim Baz
4b18a15a9f
kak_selections_desc is now space-separated 2018-07-05 23:46:21 +02:00
Maxim Baz
89280d0f20
Update according to bbtu 2018-07-05 23:29:53 +02:00
Olivier Perret
efcd94820c comment.kak: don't modify registers as side effect 2018-07-05 20:49:51 +02:00
Maxime Coste
b06ad06507 Fix man.kak add-highlighter commands 2018-07-05 18:00:37 +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
Shachaf Ben-Kiki
619184bdf6 Fix static_words in go.kak 2018-07-05 07:54:28 +10:00
Shachaf Ben-Kiki
1a2eecd037 Fix clang.kak and part of lint.kak
* Make clang.kak compatible with POSIX `[`.
* Make lint.kak dump range/line-specs correctly. It still doesn't read them
  correctly -- that'll be easier after the upcoming $kak_ changes for lists.
2018-07-05 07:54:28 +10:00
Maxime Coste
7f117dff1e Fix kitty KakBegin hook with new command syntax 2018-07-05 07:54:28 +10:00
Maxime Coste
3c2e7e13c6 Fix cmake.kak raw string highlighting 2018-07-05 07:54:28 +10:00
Maxime Coste
9ea6b88c1f Fix remaining kak scripts to use the new highlighter syntax 2018-07-05 07:54:28 +10:00
Maxime Coste
43223fba8c Fix various scripts highlighter commands 2018-07-05 07:54:28 +10:00
Maxime Coste
96c9718144 Parse unknown switches as positional for region highlighters 2018-07-05 07:54:28 +10:00
Maxime Coste
40211d1e3b Fix git-tools.kak highlighting 2018-07-05 07:54:28 +10:00
Maxime Coste
f61bcef469 Fix tests and required scripts to get back to green make test 2018-07-05 07:54:28 +10:00
Maxime Coste
e486a97ad8 Fix highlighters in rc/core post syntax refactoring 2018-07-05 07:54:28 +10:00
Maxime Coste
b0ccf97b44 Refactor RegionsHighlighters to define each region as a separate command 2018-07-05 07:54:28 +10:00
Maxime Coste
b4b335155e Refactor add-highlighter to make naming explicit
The highlighter name must be given as part of the path of the
highlighter, as the last element.

Fixes #1712
2018-07-05 07:54:28 +10:00
Maxime Coste
51cff07821 jedi.kak: Fix post command line parsing refactoring 2018-07-05 07:54:28 +10:00
Shachaf Ben-Kiki
1b9474cd44 Fix remaining static_words and spell.kak for the new list syntax 2018-07-05 07:54:28 +10:00
Maxime Coste
7abf04babd Improve highlighting of Kakrc string regions
Unfortunately Strings that start with a quoted quote (like '''str')
are still incorrectly highlighted, a deeper refactoring of the regions
highlighter will be necessary.
2018-07-05 07:54:28 +10:00
Maxime Coste
759a253923 Change kakrc string highlighting to follow the new string syntax 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
a6ba65c121 doc.kak: Fix post list syntax refactoring 2018-07-05 07:54:28 +10:00
Maxime Coste
2729042f83 Fix c-family.kak static_words definition 2018-07-05 07:54:28 +10:00
Maxime Coste
e9fc54538d Convert some of the rc/ scripts to the new list syntax
Other scripts relying on lists are broken at the moment, and will
be fixed. This commit is a proof of concept of the new way to work
with lists.
2018-07-05 07:54:28 +10:00
Maxime Coste
cad5f37efd Fix register saving post -save-regs behaviour change 2018-07-05 07:54:28 +10:00
Maxime Coste
a77710e098 ctags.kak: remove -no-hooks from execute-keys 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
86616c207d Merge remote-tracking branch 'lenormf/synchronized-write' 2018-07-04 19:46:40 +10:00
Maxime Coste
220458839d Fix git-tools.kak use of $@ 2018-07-04 19:46:06 +10:00
Frank LENORMAND
ab2eade28d rc: Synchronize important file writes
Fixes #2178
2018-07-04 09:55:05 +03:00
Maxime Coste
956c0e32e8 Merge remote-tracking branch 'maximbaz/add-missing-python3-keyword-nonlocal' 2018-07-03 22:18:08 +10:00
Maxim Baz
44f0230fe1
Add missing python3 keyword: nonlocal 2018-07-02 23:28:25 +02:00
Maxim Baz
fb045ec072
Let the update_diff fail if we are not in git repo 2018-07-02 22:43:23 +02:00
Maxim Baz
551674875d
Don't swallow stderr, don't update diff when not in git repo, use underlined ~ symbol 2018-07-02 22:34:54 +02:00
Maxime Coste
68e5674f59 Merge remote-tracking branch 'maximbaz/ini-support-properties-fix-equals-color' 2018-07-02 20:11:49 +10:00
Maxime Coste
379e7c2d2d Merge remote-tracking branch 'maximbaz/improve-git-gutter' 2018-07-02 20:09:10 +10:00
Maxim Baz
b9a0c86cdc
Quote file path, keep silent when not in git repo 2018-07-01 22:54:11 +02:00
Maxime Coste
24ab99c8bf Merge remote-tracking branch 'lenormf/fix-multiplexers-docstring' 2018-07-01 11:17:54 +10:00
Maxime Coste
8fcce5d1b1 Merge remote-tracking branch 'Screwtapello/fix-rust-lifetime-highlighting' 2018-07-01 11:12:45 +10:00
Maxim Baz
a56c39d69b
Improve git gutter 2018-07-01 02:24:46 +02:00
Frank LENORMAND
46943d4374 rc: Clearify the behavior of multiplexers that create new clients
Note: `GNU/screen` has a different interpretation of what constitutes
a "vertical split", hence the inverted command descriptions, compared
to the tmux/iterm etc.

Closes #1626
2018-06-30 14:19:32 +03:00
Frank LENORMAND
513eb2720e rc iterm: POSIX fixes 2018-06-30 14:07:20 +03:00
Frank LENORMAND
76ac7ab663 rc git: Highlight the delete operation when rebasing 2018-06-29 18:23:49 +03:00
Maxim Baz
7cfd0d1b39
trigger travis 2018-06-29 01:37:56 +02:00
Maxim Baz
d8a2588e9c
another attempt to fix macOS issue 2018-06-29 01:22:17 +02:00
Maxim Baz
c683b09287
Rename align-cursors-left to align-selections-left 2018-06-29 00:56:37 +02:00
Maxim Baz
5d689858df
Improve comment-line command 2018-06-28 23:47:48 +02:00
Maxim Baz
b2867a0197
Support .properties extension, fix coloring the equals sign 2018-06-28 00:08:44 +02:00
Tim Allen
53f0ce8247 rust.kak: lifetimes do not include the following non-word character.
A Rust data structure that is generic over a type conventionally uses a single
capital letter for the type variable, like `Vec<T>` or `HashMap<K, V>`. A Rust
data structure that is generic over a reference-lifetime conventionally uses an
apostrophe followed by a single lower-case letter for the lifetime variable,
like `Something<'a>`.

Previously, Kakoune would highlight "'a>" as the lifetime parameter; with this
change Kakoune highlights "'a" and leaves the closing ">" alone.
2018-06-23 17:55:02 +10:00
Frank LENORMAND
560eb3ee36 rc extra: Fix kitty support 2018-06-23 08:55:38 +03:00
Matthew Vilim
b63d410219 improve solarized theme and Scala syntax highlighting 2018-06-22 13:42:06 -07:00
Tim Allen
3d0c19f8fb Prevent the :format command from triggering hooks.
The :format command is often called from a BufWritePre hook to format the
current buffer, however the :format command itself calls `:write` to store the
buffer in a temporary location, potentially causing an infinite recursion.

If we disable hooks while running :format, there's no danger of that occurring.
2018-06-20 21:11:58 +10:00
Maxime Coste
7591924f85 ctags.kak: Remove tags starting with '!' from ctags completion 2018-06-20 20:20:50 +10:00
Maxime Coste
a6c8dcf305 Add a cmake.kak file for highlighting cmake files 2018-06-19 19:40:33 +10:00
Maxime Coste
9053dadfc3 Add kitty.kak to support kitty integration 2018-06-19 19:39:45 +10:00
Katharina Fey
a329f02701
Adding support for kitty terminal 2018-06-19 09:38:15 +02:00
Maxime Coste
119d2e89e0 git-tools.kak: Fix leaking of pipe file descriptors in git-blame support 2018-06-19 07:43:13 +10:00
Maxime Coste
b1605d046b Merge remote-tracking branch 'Laaas/master' 2018-06-17 18:08:47 +10:00
Jan-Jaap Korpershoek
941947ee26 Fix issue where spell-replace would not work if the new word contained a space 2018-06-15 16:37:30 +02:00
Las
575e9d44cf Improve rust syntax highlighting
Changes:
- Highlight float literals with float type suffixes (nf64 and nf32)
- Make module items use the module color
- Highlight macro variables $variable
- Highlight lifetimes
- Highlight u128 and i128
- Highlight character literals (e.g. 'a')
- Highlight dyn keyword (will in the future be used for trait objects)
2018-06-13 00:59:38 +02:00
Maxime Coste
3208bc3762 Merge remote-tracking branch 'JJK96/master' 2018-06-03 12:25:38 +10:00
Jan-Jaap Korpershoek
3b098c884f Change syntax highlighting regex for numbers so that numbers in identifiers are no longer highlighted. 2018-06-01 11:21:22 +02:00
Delapouite
5305c6b1ff Add 'nop' keyword highlighting in .kak files 2018-06-01 10:46:05 +02:00
Hao Deng
57b71f0750
Update tmux-repl.kak 2018-05-31 09:37:50 -04:00
Hao Deng
aeddf067d0
Update tmux-repl.kak 2018-05-31 09:35:28 -04:00
Hao Deng
9e0fb5da5f tmux-send-text can take 1 parameter now. 2018-05-30 22:26:26 -04:00
Maxime Coste
ffdeab8aba Merge remote-tracking branch 'Delapouite/lint-counters' 2018-05-30 23:46:28 +10:00
Maxime Coste
9c59f59999 Merge remote-tracking branch 'Delapouite/grep' 2018-05-30 23:45:19 +10:00
Delapouite
bbf484c596 Limit highlighter to line in grep buffers 2018-05-30 14:40:29 +02:00
Maxime Coste
d6101bc10a Merge remote-tracking branch 'JJK96/master' 2018-05-29 08:13:08 +10:00
Jan-Jaap Korpershoek
d1feae6716 Add check for i3 filetype 2018-05-28 11:04:34 +02:00
Maxime Coste
5ad188e14c rc/: Escaping cleanups in bundled scripts
Remove escapes that trigger errors when experimenting with doubling-up
escaping.
2018-05-26 21:32:50 +10:00
Maxime Coste
6ce248b59c tupfile.kak: regex escaping cleanup 2018-05-26 21:31:57 +10:00
Delapouite
712feed7e5 Display a more comprehensive status message for lint command 2018-05-26 12:30:01 +02:00
Maxime Coste
4effa577da Merge branch 'patch-2' of git://github.com/co-dh/kakoune 2018-05-26 09:46:50 +10:00
Jan-Jaap Korpershoek
29c06b46e4 Add syntax highlighting for i3/sway config file 2018-05-24 21:47:45 +02:00
Delapouite
678085a685 Fix truncated message in lint.kak 2018-05-24 19:36:32 +02:00
Hao Deng
7276b182ea
save pane id instead of index
pane index '#P' will change when new pane added.
2018-05-23 22:13:37 -04:00
Alyssa Ross
08c948f52b
Insert spaces after line comment markers
Every other text editor I've ever used does this, and this makes Kakoune
consistent with how comments work in e.g. its own source code.
2018-05-22 12:24:54 +01:00
Maxime Coste
8c6af54db3 c-family.kak: Fix comment line continuation behaviour
Fixes #2043
2018-05-19 14:15:16 +10:00
Maxime Coste
1e3d941fdc Merge remote-tracking branch 'h-3-0/add-toml' 2018-05-17 08:15:47 +10:00
Henri Jones
809f825e66 Add TOML v4.0.0 config 2018-05-16 23:00:05 +01:00
Maxime Coste
8e1646b702 c-family.kak: Remove unneeded itersel
itersel can get very expensive with many selections, it should only
be used when necessary.
2018-05-17 07:41:32 +10:00
Maxime Coste
b204e773d4 Do not push jumps implicitely in transient contexts
This should improve performance in draft contexts.
2018-05-14 08:23:00 +10:00
Maxime Coste
095ccfedb4 Merge remote-tracking branch 't6/patch-freebsd-tmux' 2018-05-09 23:03:13 +10:00
Maxime Coste
3c29bf1ea6 ctags.kak: Improve shell compatibility in ctags-funcinfo 2018-05-09 23:02:38 +10:00
gspia
bbd1fd6576 Comments for Idris 2018-05-04 10:22:17 +03:00
Tim Allen
7e124eef98 markdown.kak: backtick spans should be non-greedy.
Previously, due to a typo, Kakoune would highlight backtick spans from the first backtick to the last backtick in a paragraph, no matter how many backticks were in between. Now spans correctly stop at the first backtick after the opening backtick.
2018-05-02 13:54:45 +10:00
Maxime Coste
72bf881488 git-tools.kak: Remove not (yet) existing -with-hooks switch use
Fixes #2015
2018-04-27 19:44:58 +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
f99f0020dc Fix (again) C++ raw string highlighting 2018-04-25 21:19:04 +10:00
Tobias Kortkamp
bb124895b7
tmux-repl fails on FreeBSD and claims that tmux' version is too old
even though tmux 2.7 is installed.

The problem is that
```
expr "$(tmux -V)" : 'tmux \([0-9]*\|master\)'
```
fails on FreeBSD.  It works fine with GNU expr.

Replace the expression with cut(1) and a simple parameter expansion
which should hopefully work fine on any POSIX system.

Signed-off-by: Tobias Kortkamp <git@tobik.me>
2018-04-24 20:16:32 +02:00
Maxime Coste
ee604fd863 Merge remote-tracking branch 'Delapouite/set-option' into master 2018-04-22 09:41:15 +10:00
Maxime Coste
4c5a3c1dff git-tools.kak: improve completion support and no-message detection 2018-04-22 09:40:45 +10:00
Maxime Coste
fea6bc9524 c-family.kak: Fix highlighting of raw strings 2018-04-22 09:40:45 +10:00
Delapouite
9eb1bb4481 Docs: fix docstrings in rc files set-optionset 2018-04-19 19:28:32 +02:00
Maxime Coste
567c82840a ruby.kak: Refactor end autoinsertion logic to be more robust
Fixes the bug described by PR #1994
2018-04-14 12:47:42 +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
Maxime Coste
e6a9e14872 markdown.kak: Do not use regions for single/double ` spans
Using a region for them breaks any other regex based highlighter
we would want to apply on top of them.

Fixes #1870
2018-04-04 07:40:03 +10:00
Maxime Coste
510be03910 ctags.kak: Fix compatibility with OSX by using custom realpath implementation 2018-03-30 09:30:18 +11:00
Maxime Coste
8eee5500ea Revert "Simplify comment-line command using trimming primitive"
This reverts commit e661fece72.
2018-03-30 09:29:05 +11:00
Maxime Coste
4a2125f752 make.kak: Fix Ninja compatibility for directory entering messages 2018-03-30 09:18:06 +11:00
Delapouite
e661fece72 Simplify comment-line command using trimming primitive 2018-03-27 19:53:13 +02:00
Maxime Coste
e9e83cdb8d Merge remote-tracking branch 'lenormf/fix-kakrc' 2018-03-26 07:47:59 +11:00
Maxime Coste
f236e837f4 Merge remote-tracking branch 'lenormf/fix-d' 2018-03-25 18:54:52 +11:00
Frank LENORMAND
66f99a3802 rc kakrc: Highlight boolean values 2018-03-25 10:27:12 +03:00
Frank LENORMAND
757e9de1c8 rc d: Improve D highlighting 2018-03-25 10:25:52 +03:00
Maxime Coste
2d85e94516 Fix uses of rotate selection in rc/ files 2018-03-25 11:45:27 +11:00
Maxime Coste
3fe93db610 Merge remote-tracking branch 'alyssais/patch-1' 2018-03-24 08:17:41 +11:00
Maxime Coste
3ae94d017d iterm.kak: use command argument instead of sending text
Instead of starting the default shell and sending it text (hoping
it will support POSIX like shell syntax), just use the `env` utility
to set the correct environment and exec kakoune.
2018-03-24 08:06:36 +11:00
Alyssa Ross
7c0d10f458
ruby.kak: support squiggly heredocs
Squiggly heredocs were introduced in Ruby 2.3.

They work like `<<-` but strip indentation.
2018-03-23 13:42:48 +00:00
Maxime Coste
42404ddb3a Merge remote-tracking branch 'Delapouite/kakrc' 2018-03-23 07:42:38 +11:00
Maxime Coste
c31b66f3a0 Merge git://github.com/gspia/kakoune 2018-03-23 07:42:12 +11:00
Maxime Coste
2139173d89 Merge remote-tracking branch 'bclinthall/jsBracketAlign' 2018-03-23 07:38:58 +11:00
Clint Hall
06cc993cd4 Fix javascript close bracket alignment 2018-03-22 12:31:43 -04:00
Delapouite
754a96eb3e Add hl for declare-user-mode and enter-user-mode in kakrc.kak 2018-03-22 15:08:59 +01:00
gspia
056560131a Add a space to haskell commment-line comment string. 2018-03-22 13:56:07 +02:00
Maxime Coste
796fbc6c1f java.kak: Add some highlighted keywords and highlight annotations 2018-03-22 20:48:18 +11:00
Maxime Coste
f8e297acef Merge remote-tracking branch 'topisani/master' 2018-03-22 07:49:49 +11:00
topisani
2682e3021d [rc] Improve php.kak
- Added <?php and ?> tags, and highlight everything outside as html
 - Highlight documentation comments and @fields
 - Added basic string interpolation highlighting
2018-03-21 14:44:52 +01:00
Delapouite
d09256ec4c Add extra_word_chars '-' to css.kak 2018-03-21 07:59:40 +01:00
Maxime Coste
b27d4afa8d Regex: Only allow SyntaxCharacter and - to be escaped in a character class
Letting any character to be escaped is error prone as it looks like
\l could mean [:lower:] (as it used to with boost) when it only means
literal l.

Fix the haskell.kak file as well.

Fixes #1945
2018-03-20 04:57:47 +11:00
Dan Rosén
6fdb9db5d9 Improve JS/TS highlighter slightly 2018-03-19 11:31:38 +01:00
Marc
b3cc80126a Remove unused var in racer support 2018-03-18 10:46:46 +00:00
Marc
484164580e CARGO_HOME to identify racer dependencies 2018-03-17 20:27:11 +00:00
Marc
ee7cab82b4 Make racer support scripts more POSIX compliant 2018-03-16 12:25:17 +00:00
Maxime Coste
ebd47d538b Merge remote-tracking branch 'marcesquerra/racer-extra-commands' 2018-03-16 15:17:11 +11:00
Marc
898dfea8a1 racer-go-definition forces readonly on files external to the project 2018-03-15 20:37:27 +00:00
Maxime Coste
8479b33861 Merge remote-tracking branch 'Screwtapello/more-markdown-highlighting-improvements' 2018-03-15 23:23:44 +11:00
Tim Allen
0a4a9f1c3d Markdown inline formatting should not span paragraphs.
Previously, two underscore characters in a document would mark the entire
space between them as italic, no matter how far apart. Now we only accept a
single consecutive newline within an inline-formatted span, so hard-wrapped
documents will still format nicely but stray characters won't mess up your
entire document.

Note that the highlighter for backtick-enclosed spans was modified,
even though it's redundant with the code-block highlighting introduced
in 5bc62c694.
2018-03-15 18:26:20 +11:00
Tim Allen
78f1e1ca98 Highlight footnote-style hyperlinks.
As well as the traditional `[text](url)` syntax, Markdown allows the text to
be followed by a tag in square brackets. If the text is followed by nothing
at all, then the tag for that link is the text itself. The actual URL
is supplied later in the document, like a footnote at the bottom of the page:

	Some text with [a link][tag] and [another link].

	[tag]: http://www.example.com/link1
	[another link]: http://www.example.com/link2

This adds the "link" face to the URL in such footnote lines.
2018-03-15 18:16:47 +11:00
Alex Leferry 2
1ede2b89bb Add application media-type to file-type detection 2018-03-14 17:04:03 +01:00
Marc
2bf8941d99 Clean racer support functions 2018-03-14 15:56:25 +00:00
Marc
2f41fdb683 Tweak the bash code on the racer support 2018-03-13 13:52:09 +00:00
Marc
67ce6946d2 Add jumpToDefinition and showDoc support for rust (with racer) 2018-03-12 12:47:47 +00:00
Delapouite
e46251db69 Add ctagscmd option
Fixes #1611
2018-03-11 15:13:19 +01:00
Maxime Coste
c6c501eb5b asciidoc.kak: Fix highlighting of _itallic_ markup
`_` is a word character, so the regex cannot be exactly the same
as for `*`.
2018-03-05 11:20:56 +11:00
Maxime Coste
56e005e996 Merge remote-tracking branch 'marcesquerra/racer-fix-for-mac' 2018-03-05 07:41:18 +11:00
Marc
2ef1ac0b3b Fix racer complation on Mac 2018-03-04 20:14:53 +00:00
Maxime Coste
e4e2ed2a42 Merge remote-tracking branch 'fsub/arch-linux' 2018-03-05 00:39:37 +11:00
Maxime Coste
8acedacf7c Merge remote-tracking branch 'marcesquerra/racer-tweaks' 2018-03-04 10:59:31 +11:00
Maxime Coste
65258934d3 lua.kak: Rework 'end' auto insertion logic
Fixes #1525
2018-03-04 10:36:32 +11:00
fsub
e583b9a258 Fix #1838: Introduce 'arch-linux.kak' 2018-03-03 19:59:54 +01:00
Maxime Coste
5c247bf1dd c-family.kak: Do not mistake '\"' for a double quoted string start
Fixes #1893
2018-03-01 14:01:09 +11:00
Maxime Coste
3e50d39f8e comment.kak: recognize xml files 2018-02-28 15:07:25 +11:00
Marc
f6a3fd2e4e Unify racer code completion format
Makes all the suggestions on the completion menu have the same format:
  {type}{suggestedWord}{extra description}

the type column is aligned to 6 characters wide (and aligned to the right),
to allow the suggestion to be easily visually detectable and, as a bonus,
the type too.

For example, a bit of menu would look like this:
        fn stdout() -> Stdout
     trait BufRead: Read
    struct BufReader<R>

Type is one of the following:
  -     fn
  -   enum
  -    mod
  -  trait
  - struct

It also trims the module extra bits to only 30 characters long (it can be a lot longer than that)
2018-02-26 13:07:41 +00:00
Marc
d79e680e71 Remove trailing ':' from racer execution
When AWK processes the racer response, it adds a trailing ':' that
kakoune completion expects to lead to a row having an 'a|b|c' shape,
but it's empty instead. Removing the extra ':' allows the racer
complation to actually work.
2018-02-26 12:24:12 +00: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
e93c31ff0d doc.kak: stricter parsing of formatted text
Format markers such as *, _ or ` must be followed/preceeded by a non
whitespace character to be considered formatting marker.
2018-02-22 22:22:13 +11:00
Maxime Coste
026cf8af3a doc.kak: fix handling of lines begining with * or -
Those were considered as any other lines for paragraph joining,
threat them as a new paragraph start, to correctly handle asciidoc
lists.
2018-02-22 22:09:00 +11:00
Maxime Coste
9b5b974397 iterm.kak: Implement focus support 2018-02-20 20:56:06 +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
Maxime Coste
cbf11d7a07 nim.kak: Fix wrong tr invocation 2018-02-19 21:24:36 +11:00
Maxime Coste
4f75358ce3 lua.kak: Fix string highlighting with -match-capture regions
With the introduction of -match-capture for the lua region highlighter,
the string closing regex had spurious captures that were not going to
match.

Fixes #1850
2018-02-18 16:21:05 +11:00
Maxime Coste
f8861734cf rc/: Replace simple uses of sed with tr 2018-02-18 15:00:30 +11:00
Maxime Coste
82c8a6e9dd Merge remote-tracking branch 'alexherbo2/rc-ruby' 2018-02-18 11:36:42 +11:00
Alex Leferry 2
04b57539e8 Recognize .gemspec files as Ruby 2018-02-18 00:49:09 +01:00
Frank LENORMAND
f25e8640b8 base javascript: Tweak variable highlighting
This commit avoids false positives when highlighting literals such as
`$window`, which is a regular variable but still highlighted as a
special value.

Special highlighting of variables that start with a dollar sign `$`
was also removed, as not all variables start with a dollar sign,
and we don't have a reliable way yet to detect variables.
2018-02-17 11:53:56 +03:00
Maxime Coste
f5e39972eb Merge remote-tracking branch 'jacobdufault/lua-better-strings' 2018-02-15 23:35:01 +11:00
Jacob Dufault
42f78dfac3 Highlight nested == comments/strings in lua.
For example,

  [==[ string ]==]
2018-02-11 22:23:49 -08:00
Maxime Coste
d95530b171 lint.kak: Update lint info when the linting data changed
Fixes #1836
2018-02-11 22:03:24 +11:00
Maxime Coste
c939c30135 ocaml.kak: remove invalid unset-option static_words hook
unsetting static_words whenever any buffer filetype is set to non ocaml
is wrong, it breaks static_words for every filetype whose filetype hook
run before the ocaml ones.
2018-02-11 21:51:32 +11:00
Maxime Coste
01259bf22c Merge remote-tracking branch 'MilanVasko/lua-comment-fix' 2018-02-11 19:10:24 +11:00
Milan Vaško
128e0f53ff Fixed Lua block comment highlighting
Block comments in Lua were broken, apparently due to the opening
sequence being interpreted as a line comment. Changing the order in the
highlighter seems to fix this issue.
2018-02-10 13:40:48 +01:00
Alex Leferry 2
39c0c03351 Highlight Ruby control access keywords 2018-02-08 13:34:40 +01:00
Maxime Coste
fb07e2cfcf clang.kak: workaround OSX awk strange parsing of bracket expressions
For some reason `[[:alnum:]{}_]` does not match `{` when
`[{}_[:alnum:]]` does
2018-02-07 19:40:45 +11:00
Dan Rosén
3ac328c1f7 Highlight JSX
Additionally merges the javascript and typescript highlighters.

Fixes #1700
2018-02-04 08:31:03 +01:00
Maxime Coste
9883cf5f75 Merge remote-tracking branch 'nochiel/nochiel-fix-tmux-repl' 2018-02-04 09:33:52 +11:00
Daniel Lewan
bc876fa4b6 add justfiles support 2018-02-03 14:43:20 +01:00
Nicholas Ochiel
ca8cbf316c Check if tmux was compiled from master.
Fixes #1827.
2018-02-03 01:14:25 +03:00
Maxime Coste
cfa497362c Merge remote-tracking branch 'alexherbo2/rc-javascript' 2018-01-31 09:39:40 +11:00
Alex Leferry 2
6fe8b9eb70 Highlight JavaScript static keywords 2018-01-30 19:19:12 +01:00
Jimmy Thrasher
7bf235b0ee Add heredoc support for ruby.kak 2018-01-26 07:56:36 -05:00
Maxime Coste
43f50c0852 Convert bundled scripts to ModeChange hook 2018-01-21 10:35:05 +11:00
Dan Rosén
a612432c8d Highlight python operators 2018-01-07 23:36:41 +01:00
Dan Rosén
40aaf63338 Highlight python doctests in docstrings 2018-01-07 23:36:41 +01:00
Maxime Coste
4740dbf9fa doc.kak: Fix anchor name completion 2017-12-29 09:37:04 +11:00
Dan Rosén
969f416027 Generate the markdown highlighter code 2017-12-13 07:27:45 +01:00
Maxime Coste
cb2ff7eb5f Merge remote-tracking branch 'danr/fence' 2017-12-12 17:57:26 +11:00
Maxime Coste
593a75acbe Merge remote-tracking branch 'lenormf/fix-pony' 2017-12-12 17:55:18 +11:00
Maxime Coste
82b7f462dc Merge remote-tracking branch 'SolitudeSF/nim' 2017-12-12 17:55:02 +11:00
Frank LENORMAND
996168f504 rc pony: Remove hardcoded indentation settings 2017-12-11 18:27:28 +03:00
SolitudeSF
8ae8e7b31a Removed indentation settings 2017-12-11 10:26:06 +02:00
Dan Rosén
5bc62c6942 Fix highlight references in Markdown fenced code blocks
Fixes #1735

We need \K to not interfer with languages own interpretation of ` like multiline strings in javascript

We need \b in e.g. java\b otherwise it blocks javascript

I couldn't get the bare ``` to not block the other highlighters when introducing \K any other way than negative lookahead of all possible highlighers
2017-12-10 23:00:26 +01:00
Maxime Coste
62f47b780b Merge branch 'fix-haskell-variables-regression' of git://github.com/bitonic/kakoune 2017-12-11 08:54:23 +11:00
Maxime Coste
d494b9de34 Merge remote-tracking branch 'SolitudeSF/nim' 2017-12-11 08:48:50 +11:00
Francesco Mazzoli
fa61d7aac0 fix regression in highlighting of qualified Haskell variables
Commit 870d2d22d7 introduced a regression
in the highlighting of qualified Haskell variables, such as `Foo.bar`.
After that commit `Fo` was highlighted as a constructor (note, not
`Foo`, just `Fo` without the trailing `o`). This restores the original
behavior.
2017-12-10 21:04:03 +01:00
Maxime Coste
19556d5fbe Merge remote-tracking branch 'Geemili/fix-inline-markdown' 2017-12-10 10:18:51 +11:00
Maxime Coste
9071e2a6bf Merge remote-tracking branch 'Geemili/feature-restructuredtext' 2017-12-10 10:18:23 +11:00
SolitudeSF
6eabec908e Expand nim support 2017-12-09 23:02:59 +02:00
LeRoyce Pearson
4f069edca6 Add reStructuredText support script
- headers
- bold emphasis
- regular emphasis
- code highlighting
- inline literals
2017-12-09 14:15:00 -06:00
LeRoyce Pearson
3acf3aa5a2 Fix overlapping inline markup
Make it some some text like "**bold**" wil not be marked as italic and bold.
2017-12-08 16:04:43 -06:00
Maxime Coste
2f9deaf067 Merge remote-tracking branch 'nochiel/nochiel-screen' 2017-12-07 19:54:11 +08:00
Maxime Coste
7072e65a28 Merge remote-tracking branch 'danr/typescript-comment' 2017-12-07 10:46:26 +08:00
Dan Rosén
fbe312e0d0 Add typescript to comment.kak 2017-12-06 20:50:05 +01:00
Maxime Coste
1b44056fce man.kak: Better support for renaming a man buffer
Fixes #1718
2017-12-06 14:49:38 +08:00
Maxime Coste
a9f1a23f35 man.kak: use shell-candidates instead of shell-completions 2017-12-06 14:10:10 +08:00
Maxime Coste
363a0c3a0d man.kak: Fix behaviour when called with no params with Posix shells
Seems dash nevers falls back for ${@-$blah}, it does not considers $@
to be empty. Use ${1-$blah} instead as we never have more than one
parameter.
2017-12-06 13:23:39 +08:00
Frank LENORMAND
e5742fd6b1 - Fix: proper escaping of kak_{session, client} 2017-12-06 02:30:42 +03:00
Nicholas Ochiel
494d046fb2 * Integrate ranger with GNU Screen.
- Ensure ranger opens with the currently focused client tty if multiple screen clients are connected to the same session.
- Ensure args are passed to ranger correctly.
- Ensure command-line args are passed to ranger correctly. (Only strict long format works e.g. `ranger --cmd="echo foo"`)
- Change the current directory because `screen -X` uses screen's cwd not kakoune's.
- Use heredoc to make escaping and quoting easier to debug and slightly less unpredictable.
- Use ranger's `--choosefiles` option instead of mapping keys and having to do multiple levels of escaping and quoting of args esp. command-line args which were unusable in `screen -X eval`.
- Remove screen region when user quits ranger.
2017-12-06 02:29:40 +03:00
Nicholas Ochiel
908e0c1f8c * Crude implementation of focus: use the current region to switch to the desired window.
- The proper way to do this would be to switch focus to the target client's region but GNU Screen offers no obvious way to do that.

- Remove screen region after client is closed.

- Assumed: Kak server runs in screen.
2017-12-03 20:05:02 +03:00
Maxime Coste
23fdb914bf Merge remote-tracking branch 'lenormf/fix-dockerfile' 2017-12-03 18:13:39 +08:00
Maxime Coste
c83f7d5b1e Merge remote-tracking branch 'lenormf/nim-support' 2017-12-03 18:13:30 +08:00
Maxime Coste
35d2b2b4bc c-family.kak: Use regex custom text object to simplify some indent 2017-12-03 17:48:04 +08:00
Maxime Coste
1a38849086 c-family.kak: indent after parenthesis at end of line 2017-12-03 17:47:44 +08:00
Frank LENORMAND
f3238f4e65 rc dockerfile: Remove a left-over debug instruction 2017-12-01 17:12:41 +03:00
Maxime Coste
e9e3dc862c Merge git://github.com/valerdi/kakoune 2017-12-01 16:40:31 +08:00
Maxime Coste
90c91ca3a2 Merge remote-tracking branch 'lenormf/fix-dockerfile' 2017-12-01 16:39:50 +08:00
valerdi
4d4c6aa82b
added AbstractString to keywords 2017-11-30 15:44:12 +01:00
Frank LENORMAND
e102251880 rc: Implement basic Nim support 2017-11-29 19:15:00 +03:00
Maxime Coste
74b0c98769 Merge remote-tracking branch 'occivink/comment' 2017-11-24 16:29:30 +08:00
Olivier Perret
ee117b9499 set registers directly instead of expanding options in exec 2017-11-23 10:30:10 +01:00
Frank LENORMAND
58ccf6b295 rc python: Highlight built-in exceptions 2017-11-18 11:56:47 +03:00
Maxime Coste
386f595a49 screen.kak: use define-command full name instead of def alias 2017-11-16 12:56:42 +08:00
Maxime Coste
281890ea7a Merge remote-tracking branch 'nochiel/nochiel-screen' 2017-11-16 12:56:09 +08:00
Nicholas Ochiel
133fcb0ce4 code review: typos. 2017-11-15 17:42:37 +03:00
Nicholas Ochiel
d9a574acd5 Integration with GNU screen; based on tmux.kak
- Hack: kak sets `/proc/self/fd/0 -> /dev/null`. Get the client process tty because Screen needs to know the controlling terminal. Else Screen will use the last known tty and will open new windows on a different terminal if one is connected.
2017-11-15 06:10:26 +03:00
Maxime Coste
77b0ee1e19 Merge remote-tracking branch 'lenormf/extend-python-highlighters' 2017-11-14 18:08:27 +08:00
Frank LENORMAND
105d7a1276 rc python: Extend highlighted keywords and numbers 2017-11-14 12:50:20 +03:00
Maxime Coste
2ab9f65b36 c-family.kak: Use <a-S> in various auto indent hooks 2017-11-14 13:32:46 +08:00
Maxime Coste
9c964e97f0 c-family.kak: Highlight character literals later
That way it overrides integer literal highlighters in the case where
they conflict.
2017-11-14 11:45:30 +08:00
fsub
ee695ecf95 c-familiy.kak: improve highlighting of C++ literals 2017-11-12 18:16:20 +01:00
Maxime Coste
add7f7e76b Revert "c-family.kak: Remove invalid 'compl' keyword from C++ highlight"
This reverts commit f8dee65d6e.

compl is actually the alternate keyword for `~`.
2017-11-11 09:54:32 +08:00
Maxime Coste
f8dee65d6e c-family.kak: Remove invalid 'compl' keyword from C++ highlight 2017-11-09 10:43:46 +08:00
Maxime Coste
5791632a98 c-family.kak: use space separated words list 2017-11-09 10:25:03 +08:00
Maxime Coste
a131edb9b3 Merge remote-tracking branch 'fsub/c-family' 2017-11-09 10:09:58 +08: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
b8fdcff7b0 doc.kak: anchor/section completion support 2017-11-08 17:20:37 +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
Maxime Coste
d6b5240bdf doc.kak: Remove unused lines 2017-11-06 20:53:50 +08:00
Maxime Coste
73182de20c doc.kak: Support jumping on links using <ret> 2017-11-06 20:52:24 +08:00
Maxime Coste
19cda837ff doc.kak: Simplify completion script 2017-11-06 20:47:12 +08:00
Delapouite
29e2a73638 Fix lint.kak evaluate-commands → eval 2017-11-06 10:51:55 +01:00
fsub
db15f7adc5 c-family.kak: Add missing C++ keywords, attributes, and types 2017-11-05 10:11:59 +01:00
fsub
1ad83745c2 c-family.kak: Sort keywords, attributes, values, and decorators 2017-11-05 10:11:59 +01:00
Maxime Coste
b5de3064e0 Merge remote-tracking branch 'lenormf/fix-tupfile' 2017-11-05 12:22:18 +08:00
Tim Allen
f9351d65eb rust.kak: Support Rust's documentation comments.
As well as ordinary `//` line-comments, Rust regards `///` comments
as documentation applying to the following item, and `//!` comments as
documentation applying to the enclosing item, so we should copy those
to new lines, too.
2017-11-04 21:54:48 +11:00
Frank LENORMAND
61ab3a1d26 rc: Fix Tupfile highlighting 2017-11-04 10:56:20 +03:00
Frank LENORMAND
ff557a0cf0 rc: Simplify Dockerfile support, highlight values and additional keywords 2017-11-04 10:45:58 +03:00
Olivier Perret
16f42fe3a6 refactor comment.kak
* move most of the kakoune implementation outside of the shell scope
  to avoid unnecessary escaping
* let kakoune do the option expansions to avoid injection of special
  characters
* split block commenting options into two and do the < to <lt>
  conversion directly
* show error messages directly in the buffer rather than in *debug*

Fixes #1600 and #875
2017-11-03 13:20:02 +01:00
Olivier Perret
00d8716c79 commenting: move rust to the C-style group 2017-11-03 13:13:42 +01:00
Maxime Coste
9b216e0e79 Merge remote-tracking branch 'lenormf/fix-rc-aliases' 2017-11-03 19:32:30 +08: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
Kylie McClain
79f725a558 sh: support mksh 2017-11-02 23:23:54 -04:00
Maxime Coste
b3daf6b746 doc.kak: Support rendering _italic_ text as well 2017-11-02 17:42:16 +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
90865b65cd asciidoc.kak: Highlight ^=+ syntax sections 2017-11-02 09:52:18 +08:00
Maxime Coste
424b2389cb kakrc.kak: Fix highlighting of key words at start of buffer 2017-11-02 01:28:37 +08:00
Maxime Coste
5e6077acc2 html.kak: Change </...> align hook to only run after inserting '>'
Improve the hook to support nesting of tags as well.
2017-10-30 17:04:54 +11:00
Maxime Coste
c8257a58a5 kakrc.kak: set '-' as an additional word char 2017-10-28 13:43:04 +08:00
Maxime Coste
d7671f0cdf kakrc.kak: Fix static word definition 2017-10-28 13:43:04 +08: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
c95bd83ea1 haskell.kak: remove complex lookarounds
Highlighting is going to be slightly less correct, but we get rid
of the last incompatible regex in rc/
2017-10-25 10:29:27 +08:00
Maxime Coste
d09924d24b asciidoc.kak: use a more tolerant block regex for
Get rid of the nasty backreference we were relying on.
2017-10-25 10:29:27 +08:00
Maxime Coste
591ddb86e3 markdown.kak: Remove fenced block support from
Its not in the spec, except for code blocks that we handle differently
anyway. More importantly it currently relies on backreference.
2017-10-25 10:29:11 +08:00
Maxime Coste
7dc800c213 Simplify lookaround use in moon.kak
(?=[A-Z]\w*) is strictly the same as (?=[A-Z]) as \w* will always
at least match an empty string.
2017-10-25 10:29:11 +08:00
Maxime Coste
870d2d22d7 haskell.kak: Remove some complex lookarounds 2017-10-25 10:28:59 +08:00
Maxime Coste
0fa59e5fd2 rc/: Tweak some regexes to be compatible with our impl limitations
The upcoming custom implementation does not support arbitrary lookarounds,
and other advanced regex features. Simplify the regexes to avoid those.
2017-10-25 10:27:39 +08:00
Maxime Coste
bf6e5daa08 Use stricter regex syntax
boost regex tolerates non-escaped special characters, and escaped
non-special characters. Standardize on stricter syntax, where
special characters must be escaped, and non-special characters must
not.
2017-10-25 10:27:39 +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
30ce5a0055 Merge remote-tracking branch 'nochiel/nochiel-modelines' 2017-10-23 16:34:17 +08:00
Maxime Coste
214f321951 Merge remote-tracking branch 'danr/Fix-introduced-mistake-in-kakrc-highlighting' 2017-10-23 16:33:26 +08:00
Maxime Coste
6d65d8e778 kakrc.kak: refactor grammar handling 2017-10-23 10:56:45 +08:00
Dan Rosén
577d84217a Fix introduced mistake in kakrc highlighting 2017-10-22 01:23:12 +02:00
Nicholas Ochiel
d168c75002 vim modeline regex should accept not one but "at least one" whitespace. 2017-10-21 21:04:39 +03:00
Maxime Coste
6740e3cc0c Add some more keywords to kakrc highlighting 2017-10-21 18:48:35 +08:00
Maxime Coste
e6009f7f9b Merge remote-tracking branch 'danr/Improve-kakrc-highlighter' 2017-10-21 17:36:08 +08:00
Dan Rosén
5b0f070300 Improve kakrc highlighter 2017-10-21 10:08:50 +02:00
Dan Rosén
1310193a0a Fix typescript highlighter
Before this patch keywords are highlighted in comments etc
2017-10-21 09:56:38 +02:00
Maxime Coste
f76535613e Merge remote-tracking branch 'helvetie/ini-comments' 2017-10-20 17:29:02 +08:00
helvetie
7edc1a57a3 ini.kak: add ';' as a valid comment character 2017-10-19 15:05:17 +02:00
wheatdog
6f6e76a245 Fix latex.kak
Solve #1346
2017-10-17 21:14:08 +08:00
Maxime Coste
209113aa1c Merge remote-tracking branch 'nochiel/nochiel-fix-autorestore' 2017-10-17 10:30:24 +08:00
Maxime Coste
431e226fc8 Merge remote-tracking branch 'danr/Add-support-for-typescript' 2017-10-15 22:51:44 +08:00
Nicholas Ochiel
24e9b86562 ref vim options.txt 2017-10-15 06:04:19 +03:00
Alex Suraci
c702c915c1 iterm: use 'exec' so pane auto-closes with editor
this uses 'export' to set $TMPDIR instead; fish provides an 'export'
function for bash-compatibility, so this should work for both shells.

note that prior to this change, opening new panes with fish did not
work, as fish does not support `FOO=1 bar` syntax.
2017-10-13 16:01:06 -04:00
Nicholas Ochiel
040a096f36 Do not restore old backup files. This check is necessary for cases where
- the file was edited with a different editor/program or
- kak didn't restore a backup or
- if old backups weren't purged or
- if autorestore wasn't loaded (e.g. `kak -n`) after backups were generated.
2017-10-12 15:33:21 +03:00
Dan Rosén
ad724ab1a8 Add support for typescript 2017-10-10 10:23:25 +02:00
Maxime Coste
397e5ef0e1 Fix potential bug in clang.kak 2017-10-10 10:53:12 +08:00
Frank LENORMAND
1cfee17a16 rc man/doc: Don't show groff warnings
Sometimes the implementation of `man` will display errors, e.g.

```
<standard input>:4808: warning [p 54, 13.2i]: can't break line
```

Those errors are harmless but are still reported on the debug buffer,
so we hide them by redirecting the standard error stream to /dev/null.
2017-09-30 08:23:10 +03:00
Frank LENORMAND
1e3c343773 rc doc: Use POSIX flag -name instead of -iname 2017-09-30 08:15:14 +03:00
Frank LENORMAND
18e64c5c7d rc doc: Implement the -i flag of sed in a POSIX manner 2017-09-29 22:16:31 +03:00
Frank LENORMAND
f26854694e rc doc: Remove window hooks automatically assigned
When using the `man` filetype to make use of the text highlighters
of the `man.kak` script, the documentation pages inherit from the
window resizing hooks that won't work on `doc` buffers.

Fixes #1591
2017-09-29 22:12:09 +03:00
Nicholas Ochiel
755cbd4436 Fix: glob for backup files. 2017-09-27 00:34:05 +03:00
exitium
a4ba9b339e Fix Lua comment delimiter insertion (see #1584) 2017-09-23 10:20:02 -04:00
Maxime Coste
a303cf5698 Merge remote-tracking branch 'lenormf/fix-perl' 2017-09-18 10:08:13 +09:00
Maxime Coste
9fea868e9e Merge remote-tracking branch 'Delapouite/css' 2017-09-18 10:02:43 +09:00
Maxime Coste
902724e558 c-family: auto close unions with a semicolon as well 2017-09-18 09:41:26 +09:00
Frank LENORMAND
1b11412796 rc perl: Don't highlight regex, fix string escapes
Highlighting perl regex patterns with regular expressions (with
highlighters) caused several misses that made most of the file
unreadable. This commit makes `perl.kak` not try to highlight
those patterns in the code, and also addresses issues with string
highlighting.
2017-09-14 14:16:58 +03:00
Maxime Coste
661047795c Merge remote-tracking branch 'lenormf/mercurial-support' 2017-09-11 21:11:27 +08:00
Frank LENORMAND
90961b0990 rc: Add support for MySQL, SQL Server and MS Access
Closes #1540
2017-09-09 11:54:24 +03:00
Frank LENORMAND
3cb159f056 rc: Add support for Mercurial
The script only highlights comments in commit messages, but it's a basis
to improve upon if more features are needed in a later time.
2017-09-08 14:44:55 +03:00
Delapouite
2001a9a087 css.kak: add hl to more common CSS length units 2017-09-06 12:08:49 +02:00
Maxime Coste
4c2ed2062a Merge remote-tracking branch 'lenormf/fix-html' 2017-08-31 11:22:09 +07:00
Philippe Daouadi
f56c5d687e Check for gocode, goimports and gogetdoc on go-tools loading 2017-08-30 10:19:13 +02:00
Frank LENORMAND
4f8211ecea rc base html: Highlight attributes with no value 2017-08-29 14:17:28 +03:00
Maxime Coste
716816966f Merge remote-tracking branch 'lenormf/fix-html' 2017-08-26 16:16:07 +07:00
Frank LENORMAND
eb0786e001 rc base html: Highlight the DOCTYPE and tag attributes 2017-08-26 11:28:56 +03:00
Maxime Coste
27ba416ddf Merge remote-tracking branch 'danr/Improve-Haskell-highlighter' 2017-08-26 10:48:21 +07:00
Maxime Coste
c8335a6515 Merge remote-tracking branch 'blastrock/go-tools-error' 2017-08-26 10:47:04 +07:00
Enrico Lumetti
59e5a4126d editorconfig.kak: fix awk typo 2017-08-23 21:11:46 +02:00
Dan Rosén
ef1a1e6bd3 Improve Haskell highlighter
Import keywords are put in keyword face instead of meta face.
This leaves room for pragmas and macros to be in the meta face.

Operator keywords are put in keyword face too.

Finally, expression keywords are put in face attribute.
2017-08-22 16:29:27 +02:00
Philippe Daouadi
9fafb1aba1 Show error when using go-jump and jq is not installed 2017-08-21 10:02:47 +02:00
Maxime Coste
420c6aca23 Change documentation directory towards $kak_runtime/doc 2017-08-03 15:00:02 +07:00
Tim Allen
e640e6d859 Consecutive markdown list bullets are not a valid list prefix.
Previously, if you opened a new line after an underlined heading (what
the CommonMark spec calls a "Setext heading") or inserted a newline into
a line that started with `**strong emphasis**` the Markdown autoindent
hook would assume the leading symbols were list bullets and paste them
at the beginning of the new line.

However, the CommonMark specification says that list bullets must be
followed by at least one horizontal whitespace character, so Setext
heading underlines and strong emphasis are not valid list bullets and
should not be matched by the autoindent pattern.

This commit changes the regex that selects the pastable prefix of the
previous line so that it must match either:

  - One or more `>` characters with optional whitespace between them
    (a blockquote prefix), optionally followed by a list bullet; or
  - An optional blockquote prefix and a list bullet

Since we don't strictly need either the blockquote prefix nor the list
bullet, we could concievably just make both optional... but for lines
without either, the regex would find a zero-length match, and for the
purposes of copy/paste Kakoune treats that as a one-character match.
Therefore, the regex is written to fail if neither pattern is found.
2017-08-01 20:36:40 +10:00
Maxime Coste
4dac61c864 Fix grep-next/prev-match not jumping correctly to first/last match
When used just after grepping, grep-next-match ended up jumping to
the second match, as `0g` is the same as `g`.

The fix itself is pretty ugly, a better one might be to distinguish
the `0` count from no count given, so that `0g` could fail with
"no such line" or similar.
2017-07-29 03:02:11 +07:00
Maxime Coste
6ab98f8bf8 Fix grep-jump on eol 2017-07-29 03:02:11 +07:00
Maxime Coste
337a38552b Fix sakura termcmd setup
Sakura `-e` is xterm compatible, so would require a `sh -c`, but it
also provides `-x` which takes a single argument, switch to that.
2017-07-25 10:26:52 +02:00
Maxime Coste
d1de9912c0 Merge remote-tracking branch 'lenormf/fix-git' into c++14 2017-07-19 17:20:18 +02: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
Frank LENORMAND
21847a5f85 rc man: Avoid undefined behavior on expr
Looking up the man page for `index` was failing on systems using
GNU/coreutils. The `:man` command matched whatever page it was given with
the `expr` utility. This tool behaves as expected when it follows strictly
the POSIX standard but the GNU implementation introduces additional commands
(including `index`), about which the standard states:

```
The use of string arguments length, substr, index, or match produces unspecified results.
```

As a result, parsing the man page number is now implemented with pure
shell expansions, to avoid triggering an undefined behavior when the topic
searched is one of the keywords above.
2017-07-17 21:24:41 +03:00
Frank LENORMAND
8687222518 rc git: Don't force a highlighting format on commits 2017-07-17 08:36:47 +03:00
Frank LENORMAND
74babc36b1 rc formatter: Don't force selection restoration
The `|` primitive now correctly restores selections, we don't need to
forcibly restore the main one after formatting anymore.
2017-07-14 11:21:48 +03:00
Maxime Coste
52c8dc9d09 Highliight git MERGE_MSG files as commit messages 2017-07-08 13:39:48 +09:00
Maxime Coste
822225cbbb Merge remote-tracking branch 'lenormf/fix-tupfile' 2017-07-08 13:39:22 +09:00
Frank LENORMAND
50b635ce2d rc c-family: Add a hook to the insert group 2017-06-29 13:29:48 +03:00
Frank LENORMAND
a2be15801f rc tupfile: Fix the keywords regex 2017-06-29 13:13:01 +03:00
Delapouite
a932b6b21e Add error message when using format command with no formatcmd specified 2017-06-26 22:10:04 +02:00
Maxime Coste
f41d78083a Use the extra_word_chars option in word based normal commands
the completion_extra_word_chars is now gone, superseeded by
extra_word_chars that gets used both for completion and for normal mode.

Fixes #1304
2017-06-26 15:28:41 +01:00
Frank LENORMAND
6376aa6206 rc formatter: Make sure the formatter returned successfully
The previous implementation used to replace the contents of the buffer with
whatever the `formatcmd` was returning, regardless of the exit code of the
command, which led to the buffer being wiped out on error.

This commit does the formatting in a temporary file, and only replaces the
current buffer with the contents of the -formatted- temporary file if the
`formatcmd` returned successfully.

Fixes #1357
2017-06-23 15:12:23 +03:00
Maxime Coste
45ac100c21 Merge remote-tracking branch 'lenormf/fix-ctags-command-names' 2017-06-23 10:22:15 +01:00
Maxime Coste
d9edd3f013 Merge remote-tracking branch 'dianne/string-highlighter-fix' 2017-06-21 16:56:06 +01:00
Dianne Wagner
57cb2d0682 apply '"' highlighting fix to haskell as well 2017-06-18 19:18:14 -07:00
Dianne Wagner
3ae0d86b27 rust highlighter: '"' is not the start of a string
this uses the string opening regex from the c-family highlighter to prevent
highlighting the rest of the file as a string on encountering the character
literal '"'
2017-06-18 18:39:45 -07: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
9a10d79ae8 rc ctags: Make commands follow the naming convention 2017-06-15 15:40:15 +03:00
Maxime Coste
e73cd78288 Fix corner case in C family indenting 2017-06-13 10:19:38 +01:00
Maxime Coste
398b2b115c Merge remote-tracking branch 'lenormf/fix-tmpdir-modules' 2017-06-12 05:06:14 +01:00
Frank LENORMAND
d113d5232a rc jedi: Don't create an unused debug/log file 2017-06-09 14:30:58 +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
Alex Leferry 2
105b35192f Add Alacritty 2017-06-08 19:02:44 +02:00
Maxime Coste
81118552c8 Fix missing hook removal command in c-family.kak 2017-06-07 12:44:00 +01:00
Frank LENORMAND
8794687f36 Revert "doc: Fix the documentation of the alt_dirs option"
This reverts commit ef88b28392.
2017-06-04 11:24:10 +03:00
Frank LENORMAND
ef88b28392 doc: Fix the documentation of the alt_dirs option 2017-06-03 21:49:10 +03:00
Maxime Coste
d8a90ad5d3 Merge remote-tracking branch 'danr/Remove-ad-hoc-rules-in-kakrc-highlighter' 2017-06-03 15:16:49 +01:00
Maxime Coste
f3f6ac9e8a Merge remote-tracking branch 'danr/Improve-kakrc-highlighter-with-more-static-words' 2017-06-03 15:16:14 +01:00
Maxime Coste
5b66be26f6 Merge remote-tracking branch 'Delapouite/svg' 2017-06-03 14:44:55 +01:00
Maxime Coste
9d71be769b Rename _grep_current_line option to grep_current_line 2017-06-03 14:04:06 +01:00
Delapouite
2acdafa325 Add SVG detection as xml in file.kak 2017-06-02 15:43:51 +02:00
Maxime Coste
d8cc50ed79 man.kak: Rename _manpage option to manpage 2017-05-27 07:40:47 +01:00
Maxime Coste
ad154e7bb7 Highlight non numeric man sections as well in man.kak 2017-05-27 07:34:35 +01:00
Maxime Coste
0b592c5641 Slight style tweak in doc.kak 2017-05-27 06:14:01 +01:00
Maxime Coste
ca38e10314 Make shell variable expansion in "strings" highlighted the same way as in code 2017-05-25 19:54:08 +01:00
Maxime Coste
f2f04d55fc Make the lint_errors a range-specs option in lint.kak
lint_errors are now maintained up to date with buffer changes.
2017-05-25 19:54:08 +01:00
Maxime Coste
26298e8f7b Use a line-specs for the clang_errors option in clang.kak
That way, we can have it updated when the buffer changes, and get
diagnostics on the correct lines.
2017-05-25 19:54:08 +01:00
Maxime Coste
a84d7cf06b Add break and continue to the list of sh keywords 2017-05-25 19:54:08 +01:00
Maxime Coste
3e4e4f6210 Add support for raw C++ strings in c-family highlighting 2017-05-25 06:51:39 +01:00
Maxime Coste
c4db46b58b Rename line-flags option type to line-specs
Generalize this option type, which is a timestamped list of
<line number>|<arbitrary string>. That way this type is not strongly
coupled with the flag-lines highlighter, and can be reused for other
use cases.
2017-05-24 15:41:43 +01:00
Maxime Coste
a0e63fbe93 Fix man.kak when man pages filenames just end up with the manual section 2017-05-23 13:59:31 +01:00
Maxime Coste
2f9b77b748 Smarter align to opening parenthesis/brace supporting multiline 2017-05-21 22:31:05 +01:00
Maxime Coste
c6508ee101 Merge remote-tracking branch 'lenormf/doc-public-options' 2017-05-21 07:09:37 +01:00
Maxime Coste
e43e44f9cc Commit correct version of c-family indent change 2017-05-21 07:08:20 +01:00
Maxime Coste
cab0adaa53 Support aligning to opening { as well as ( in c-family indent 2017-05-20 11:08:13 +01:00
Maxime Coste
55d1d1020d Merge remote-tracking branch 'lenormf/rc-misc-fixes' 2017-05-19 21:53:02 +01:00
Maxime Coste
803895d581 Merge remote-tracking branch 'danr/Highlight-object-keys-in-yaml' 2017-05-19 21:37:31 +01:00
Maxime Coste
be8692bcdb Merge remote-tracking branch 'danr/Fix-reference-to-kakrc-highlighter-for-markdown' 2017-05-19 21:34:45 +01:00
Maxime Coste
32b415d87d Merge remote-tracking branch 'danr/Add-some-missing-languages-to-comment.kak' 2017-05-19 21:34:27 +01:00
Maxime Coste
eec8239c78 Highlight 'copied' file action in git-commit buffers 2017-05-17 20:19:56 +01:00
Maxime Coste
dfaafcd49a Rename range-faces to range-specs
range-faces are now used to replace-range highlighters, where the string
part is not interpretted as a face but as a display line, so the name was
not relevant anymore.
2017-05-17 19:40:52 +01:00
Frank LENORMAND
d59bafa2c1 rc: Simplify and optimize the alt command 2017-05-16 18:20:19 +03:00
Frank LENORMAND
56837eaece rc: Use POSIX command -v instead of which 2017-05-16 18:20:19 +03:00
Frank LENORMAND
b9cdccd53a rc: Document non-hidden options with -docstring 2017-05-16 14:35:43 +03:00
Dan Rosén
736720f31a Highlight object keys in yaml 2017-05-16 09:30:01 +02:00
Dan Rosén
4f7f7edea0 Add some missing languages to comment.kak 2017-05-16 09:21:30 +02:00
Dan Rosén
5f97117ab4 Remove ad-hoc rules in kakrc highlighter
These are less useful with more static words, and they are
woefully incomplete: no support -docstring for map, set
uses the variable face, but there is no corresponding
highlighter for decl or %opt{..}.
2017-05-15 21:58:57 +02:00
Dan Rosén
1e4958353a Improve kakrc highlighter with more static words 2017-05-15 21:58:57 +02:00
Dan Rosén
80570a0dc7 Fix reference to kakrc highlighter for markdown 2017-05-15 21:58:57 +02:00
Vincent Siliakus
812af8c886 Use only default faces 2017-05-11 18:40:07 +02:00
Vincent Siliakus
848de57f20 Add Elixir highlighter 2017-05-06 08:19:57 +02:00
Frank LENORMAND
9f62c1a552 rc: Use $SHELL instead of spawning bash arbitrarily 2017-04-30 13:38:32 +03:00
Frank LENORMAND
9a138af17f rc: Properly modify tmux's environment with env 2017-04-17 22:55:37 +03:00
Maxime Coste
1f74ca1a4f Merge remote-tracking branch 'lenormf/fix-iterm2' 2017-04-10 20:24:48 +01:00
Frank LENORMAND
a244c10167 rc: Forward $TMPDIR to iterm subprocesses 2017-04-10 22:17:59 +03:00
Frank LENORMAND
b6d055a87b rc: Export $TMPDIR to new tmux processes
`tmux` will start new processes (e.g. when creating panes or windows)
with the same environment it was started with, which means that if the
$TMPDIR variable was overriden for the kakoune server from within
`tmux`, newly created panes/windows won't have access to the server
socket to sustain a session.

This commit fixes the issue by always exporting the $TMPDIR variable
from the parent `tmux` environment to the new processes.

Fixes #1319
2017-04-09 09:20:25 +03:00
Alex Leferry 2
08c4fac07f rc/ranger: use $kak_hook_param_capture_N 2017-04-01 22:46:31 +02:00
Maxime Coste
fa7f29a120 spell.kak: preserve spelling language from :spell in :spell-replace 2017-03-28 08:32:21 +01:00
Maxime Coste
b9317ba38c Change lint.kak column display to put it at the end 2017-03-10 12:41:01 +00:00
Maxime Coste
e888dae787 Merge remote-tracking branch 'kurkale6ka/lint_cols' 2017-03-10 12:28:17 +00:00
Maxime Coste
a0b42323ed Add a -debug flag to :edit to set the buffer as debug data
As for the *debug* buffer, buffers with the debug flag wont get
used for cycling through buffer, or word completion.
2017-03-08 19:33:25 +00:00
Martin Chaine
b5a9979bfb also handle enums explicitly 2017-03-07 09:55:22 +01:00
Martin Chaine
b5f6a9b227 escape pipe from closure in the description 2017-03-06 22:30:59 +01:00
Delapouite
cdb076603c Add Symbol, async and await highlighting for javascript.kak 2017-03-05 19:25:15 +01:00
Maxime Coste
bdb3da6b36 Merge remote-tracking branch 'casimir/patch-1' 2017-03-03 21:33:20 +00:00
Maxime Coste
a0c301ac42 Merge remote-tracking branch 'lenormf/fix-autorestore' 2017-03-03 21:13:53 +00:00
Maxime Coste
7d07064a41 Merge remote-tracking branch 'alexherbo2/rc-ocaml' 2017-03-03 21:11:06 +00:00
Maxime Coste
96625fc7ae Merge remote-tracking branch 'alexherbo2/rc-ruby' 2017-03-03 21:11:00 +00:00
Frank LENORMAND
947b518f03 rc: add a spell-next command 2017-03-01 22:16:28 +03:00
Frank LENORMAND
4ba7c7a2c4 rc: POSIX and cosmetic fixes in the spell script` 2017-03-01 16:14:02 +03:00
Martin Chaine
d232064a0b add racer completion for rust 2017-03-01 13:11:35 +01:00
Frank LENORMAND
0fd41540d1 rc: Don't print errors when no buffer backup exist 2017-03-01 14:55:29 +03:00
Alex Leferry 2
63f9f9bbc9 highlight hash access symbols 2017-02-28 09:48:17 +01:00
Alex Leferry 2
c0e402c06f add rc/ocaml.kak 2017-02-27 22:05:27 +01:00
Maxime Coste
72bea292f8 Merge remote-tracking branch 'lenormf/fix-autorestore' 2017-02-27 20:15:25 +00:00
Frank LENORMAND
5f5706eda3 rc: POSIXify the modeline.kak script
Fixes #893
2017-02-26 10:27:56 +03:00
Frank LENORMAND
c379c5cbdc rc: Simplify/POSIXify the autorestore.kak script
This commit allows buffers that were not previously written to disk to
be restored if a backup has been generated in their name. Consequently,
we got rid of a few non-POSIX calls to `find` (using `-maxdepth` or
`-delete`), and of the logic that detected the newest backup (which
didn't seem a good reason enough to steer away from a portable command).

Fixes #1236
2017-02-24 14:48:49 +03:00
Maxime Coste
964252d396 Merge remote-tracking branch 'omar-polo/master' 2017-02-22 09:43:03 +00:00
Omar Polo
129424daea improved haskell comment regex 2017-02-21 21:26:05 +01:00
Maxime Coste
186eed0906 jedi.kak: python 3 compat fix 2017-02-20 20:13:48 +00:00
Maxime Coste
edc2a88643 Rename BufNew and BufOpen hooks to BufNewFile and BufOpenFile
Fixes #1225
2017-02-19 13:08:06 +00:00
Maxime Coste
b456de78a7 pony.kak: Remove redundant BufNew/BufOpen hooks
BufCreate will be called in any case.
2017-02-19 13:04:19 +00:00
Maxime Coste
55bd3b7949 Merge remote-tracking branch 'tmiller/add-elm-support' 2017-02-13 20:28:29 +00:00
Maxime Coste
14fa89e642 Merge remote-tracking branch 'lenormf/fix-doc-ansi-sequences' 2017-02-13 20:27:38 +00:00
Maxime Coste
f7d794d047 Merge remote-tracking branch 'nicholastmosher/faces' 2017-02-13 20:25:41 +00:00
Maxime Coste
5b1229709d Fix make.kak handling of 'Entering directory' and absolute paths
Fixes #1212
2017-02-13 13:52:51 +00:00
Tom Miller
ec77784d98 Add elm language support
Using Haskell's language file as a starting point this add support for
Elm.
2017-02-13 07:52:01 -06:00
Frank LENORMAND
0532251aaf Make sure no ANSI sequences are in the data returned by man
The Debian implementation of `man-db` does not strip ANSI sequences out
of the file, even though the documentation says it would do so. The
commit that originally closed this issue wasn't related to the problem
experienced, this one hopefully addresses it.

This commit also addresses an issue with the `-i` flag in BSD `sed`
which expects an argument (the GNU implementation doesn't).

Fixes #1098
2017-02-10 13:30:06 +03:00
Nick Mosher
e1927fa9c4 Adds faces module and function. Renames identifier face to variable. 2017-02-09 21:43:29 -05:00
Alex Leferry 2
d029af86af fix regex highlighting 2017-02-09 23:00:36 +01:00
Maxime Coste
033ded15ae Add proper heredoc highlighting support to sh.kak 2017-02-06 23:00:20 +00:00
Maxime Coste
f3feecbe15 Merge remote-tracking branch 'alexherbo2/rc-scss' 2017-02-03 13:46:27 +00:00
Maxime Coste
99b7d83ca3 Highlight c-family include paths as identifiers 2017-02-03 13:35:45 +00:00
Alex Leferry 2
1fecb99a4d support in-line comments 2017-02-01 13:56:24 +01:00
Maxime Coste
6e39e8371a Improve POSIX sed compatibility in lint.kak
Fixes #1072
2017-01-31 22:42:43 +00:00
Maxime Coste
159c143757 Fix autorestore script when we have multiple restore files 2017-01-30 00:10:31 +00:00
Maxime Coste
565d835d57 Fix option name in haskell.kak 2017-01-29 16:10:48 +00:00
Maxime Coste
5cb0fb13aa Merge remote-tracking branch 'doppioandante/haskell-extra-chars' 2017-01-29 14:47:30 +00:00
Maxime Coste
e2d24701fa Merge remote-tracking branch '4d47/php-comments' 2017-01-29 14:43:59 +00:00
Mathieu Gagnon
ee9482d90d Add octothorpe to php comment highlighters 2017-01-29 06:28:28 -05:00
Mathieu Gagnon
97d99358d1 Set commenting options for php
The defaults are working but using c-family style is more idiomatic,
it also enable support for `comment-selection`.
2017-01-29 06:23:11 -05:00
Maxime Coste
1048036d3c Merge remote-tracking branch 'alexherbo2/rc-comment' 2017-01-25 21:18:48 +00:00
Maxime Coste
d3ecc9f311 More tolerant recognition of underlined titles in asciidoc highlight 2017-01-25 00:24:41 +00:00
Enrico Lumetti
05d76ecf9a Add quote to completion characters in haskell 2017-01-22 19:24:46 +01:00
lisael
eeedd4854c Cleanups and added :$ as autoindent trigger 2017-01-20 13:51:25 +01:00
lisael
ffdab1aeb3 added https://github.com/ponylang/ponyc filetype 2017-01-20 04:57:13 +01:00
Alex Leferry 2
4f3c28aa37 fix quote convention 2017-01-15 15:12:57 +01:00
Alex Leferry 2
b66d58b703 remove optional value 2017-01-15 15:07:17 +01:00
Alex Leferry 2
d6cb1b8e53 fix typo 2017-01-15 15:05:01 +01:00
Alex Leferry 2
165227dac2 rename line and block comments options 2017-01-15 14:58:07 +01:00
Alex Leferry 2
98cc81ae07 rename :comment-selection to :comment-block 2017-01-15 14:48:12 +01:00
Alex Leferry 2
1f0ec535bd tweak :comment-line behaviour to comment selected lines 2017-01-15 14:43:45 +01:00
Alex Leferry 2
4ad4b2d41a rename commenting.kak to comment.kak 2017-01-15 14:25:32 +01:00
Maxime Coste
c0afbe8626 Remove MAN_KEEP_FORMATTING for doc.kak
Fixes #1098
2017-01-15 11:26:57 +00:00
Maxime Coste
10ac883b60 Use byte offsets in spell
Fixes #1126
2017-01-15 11:22:47 +00:00
Maxime Coste
474f22c429 Fix trailing space in yaml.kak 2017-01-14 21:05:40 +00:00
Bruno-Sosa
bcdee989d7 Empty commit
Bruno Sosa Copyright Waiver

  I dedicate any and all copyright interest in this software to the
  public domain.  I make this dedication for the benefit of the public at
  large and to the detriment of my heirs and successors.  I intend this
  dedication to be an overt act of relinquishment in perpetuity of all
present and future rights to this software under copyright law.
2017-01-14 21:54:14 +01:00
Bruno-Sosa
dcfdcf97c8 fix file YAML detection 2017-01-14 21:50:20 +01:00
Maxime Coste
83cb7b12bd Merge remote-tracking branch 'doppioandante/java-indent' 2017-01-14 14:50:52 +00:00
Maxime Coste
700cb7b7fb Merge branch 'master' of git://github.com/tadzik/kakoune 2017-01-14 14:50:16 +00:00
Maxime Coste
ec618357de Fix modeline.kak declaring the same command twice 2017-01-14 14:47:57 +00:00
Enrico Lumetti
dabf78dfe4 Add auto indentation to java files
Adapted from d.kak.
Some missing keywords were added.
2017-01-13 21:36:49 +01:00
Tadeusz “tadzik” Sośnierz
1e6b05fc4c No need for two hooks for a single Perl highlighter. Thanks, casimir! 2017-01-13 16:03:40 +01:00
Tadeusz “tadzik” Sośnierz
a7666efd4f Unhardcode variable declarartion highliting in Perl code, colour them as identifiers instead 2017-01-13 14:59:20 +01:00
Tadeusz “tadzik” Sośnierz
635951e325 Treat .pm files as Perl code 2017-01-13 14:59:20 +01:00
Maxime Coste
5ad4499503 Fix naming conventions in bundled scripts
Do not use _ prefix for hidden commands, use - as a word separator
in command names.
2017-01-13 01:00:43 +00:00
Maxime Coste
91a56c11fe Various auto indent fixes regarding wrong use of x instead of <a-x> 2017-01-13 00:50:03 +00:00
Maxime Coste
5989903e7c Copy comments *before* copying indentation
Fixes #1118
2017-01-11 13:56:48 +00:00
Maxime Coste
faa18b3a8f Merge git://github.com/knubie/kakoune 2017-01-10 13:51:57 +00:00
Maxime Coste
4cfa4062bc Add '-' as completion extra word character for kakrc files 2017-01-10 13:48:04 +00:00
Maxime Coste
343df600cb Merge remote-tracking branch 'alexherbo2/command-names' 2017-01-10 13:44:11 +00:00
Matt Schick
e1833801f8 Change html highlighting to be ref inside of hbs highlighting 2017-01-08 17:29:36 -08:00
Maxime Coste
d2199bc619 Merge branch 'javascript-highlighter-add-template-literals' of git://github.com/schickm/kakoune 2017-01-06 19:36:49 +00:00
Maxime Coste
a8fb280b6d make.kak: highlight gcc/clang style location markers 2017-01-06 17:05:39 +00:00
Matt Schick
0d5cb79801 Add support for ES6 template literals to javascript highlighting 2017-01-06 07:27:21 -08:00
Maxime Coste
60d0813704 Tweak clang menu highlight so that we dont separate backspace from the escaped char 2017-01-04 12:23:25 +00:00
Alex Leferry 2
671b50bb52 update command names 2017-01-04 13:04:27 +01:00
Alex Leferry 2
8f821f0fba update kakrc keywords 2017-01-04 00:30:50 +01:00
Maxime Coste
5763cbb927 Merge branch 'add-handlebars-syntax-highlighters' of git://github.com/haarts/kakoune 2017-01-03 10:31:44 +00:00
Maxime Coste
c3e1bab9d6 Fix comment autoinsert for c-family as well.
Fixes #1074
2017-01-02 12:05:49 +00:00
Maxime Coste
8316a5c145 Merge remote-tracking branch 'casimir/editor-config-enhancements' 2017-01-02 11:04:26 +00:00
Maxime Coste
4901a02e50 Add indentation hooks to kak filetype support script 2017-01-02 04:33:42 +00:00
Maxime Coste
5ab60cde51 Rename python indentation command to be more consistent
We use `-` as word separator, and there is no need for leading
underscore.
2017-01-02 04:20:05 +00:00
Maxime Coste
d5231c713e Fix corner case in C indentation 2017-01-02 04:15:12 +00:00
Martin Chaine
d6bde05d27 don't handle trailing newline option
kakoune handles files as a list of lines with a newline ending
2017-01-01 19:19:40 +01:00
Martin Chaine
45fb4b6bac allow to override filename + remove existing hooks 2016-12-30 19:32:04 +01:00
Martin Chaine
292d9c9f01 fix BOM option value 2016-12-30 19:32:04 +01:00
Martin Chaine
88a8548017 fix typo 2016-12-30 19:32:04 +01:00
Martin Chaine
2c3b2e9b52 fix indent options and add whitespaces ones 2016-12-30 19:32:04 +01:00
Dan Rosén
5ddc28eaad Fix comment-leader auto-insertion
Fixes #1074
2016-12-29 01:39:02 +01:00
Alex Leferry 2
d80ebbc245 support ```[<space>…]<language> code block 2016-12-27 14:09:20 +01:00
Matthew Steedman
bedf0c77ae add 'extend' to ruby grammar
Technically `include` and `extend` are both just methods on `Module` and `Object`, respectively, but it I think we should have both or neither.
2016-12-25 14:01:56 -05:00
Harm Aarts
f9c860d235 Add Handlebars syntax highlighting.
This is based on the HAML syntax highlighting. Of note is the loading of
the html highlighter since Handlebars is embedded in html.
2016-12-21 21:31:05 +01:00
Leira Hua
6cbc9e0a34 Fixes #995 Documentation rendering problem
BSD sed doesn't accept ascii number with '\x', used printf to generate
\x8 as @lenormf suggested.
2016-12-20 02:31:55 -08:00
Leira Hua
e10f1e53fc fixed clang-complete on macOS, paste command need - to read from stdin 2016-12-18 23:18:15 -08:00
Maxime Coste
d8620b9e79 Merge remote-tracking branch 'leemachin/add-php-script' 2016-12-16 19:56:15 +00:00
Lee Machin
94d72c4bad Add basic PHP syntax highlighting
based on the highlighting for JS
2016-12-16 19:20:26 +02:00
Kylie McClain
516c9591b9 base/markdown: Correct italic/bold detection regex
As specified at https://daringfireball.net/projects/markdown/syntax#em
italics are made with either single asterisks/underscores, and bold is
double asterisks/underscores. Before this, single asterisks were
understood as bold, and only underscores were understood as italics;
both of which behaviors are incorrect.
2016-12-16 00:21:33 -05:00
Matt Schick
6deaed01de Add face 'GitDiffFlags' for git diff flag_lines
No defaults have been altered, just added the ability to do user override.  The existing facespec had a background of 'black', which ends up looking a little harsh for people who do black text on a white background.
2016-12-15 06:09:27 -08:00
Maxime Coste
85cd27138d Remove mimetype option for good
file.kak now is responsible for mapping whatever mimetype file uses
to the filetype that Kakoune uses.

Fixes #975
Fixes #979
2016-12-14 13:40:00 +00:00
Maxime Coste
1bdf26fd6e Merge remote-tracking branch 'casimir/remove-mimetype' 2016-12-14 13:30:59 +00:00
Maxime Coste
8e351e8285 Remove use of non-standard -l option in doc.kak
This will break BSD unfortunately, we should try to find a
portable fix for that.

Fixes #967
2016-12-14 01:02:53 +00:00
Maxime Coste
066d6d1120 Do not use find -printf in doc completion implementation 2016-12-14 00:59:19 +00:00
Maxime Coste
53e9496343 Remove the 'h' alias for doc, just provide 'help' 2016-12-14 00:08:23 +00:00
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
a132985888 Fix uses of renamed make_current_error_line option
Fixes #952
2016-12-10 13:39:02 +00: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
Martin Chaine
5fcb99a154 smarter mimetype matching 2016-12-07 14:00:06 +01:00
Martin Chaine
74432ac8f2 match filetype for eml extension
stolen from #878
2016-12-06 17:53:12 +01:00
Martin Chaine
b64bcf7b3e better filetype detection
http://asciidoctor.org/docs/asciidoc-recommended-practices/#document-extension
2016-12-06 17:49:30 +01:00
Martin Chaine
7384288e07 transform mimetype to a fallback option
The option is now used as a fallback when detection by extension fails. Some
scripts like `base/mail.kak` and `base/html.kak` still rely heavily on it.
2016-12-06 17:48:46 +01:00
Maxime Coste
d88d0bac42 Rework editorconfig.kak to make it more robust and handle tabs more correctly 2016-12-02 13:44:51 +00:00
Maxime Coste
168abcdb48 Fix c-family.kak after the change to keep handling of eol 2016-11-29 00:01:37 +00:00
Martin Chaine
85759d51eb go: error is a type not a keyword 2016-11-28 15:06:26 +01:00
Martin Chaine
34be6c42e7 add error to types 2016-11-28 14:05:25 +01: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
fbd32fb512 Merge remote-tracking branch 'lenormf/fix-html-mimetypes' 2016-11-23 00:25:45 +00:00
Frank LENORMAND
0c4c7ba240 Support xml based code in html.kak
This commit extends the range of mimetypes detected in `html.kak` to the
following:
* text/html
* text/x-html
* text/xml
* application/xml
* application/…+xml (e.g. xhtml, rss)

Static .xml file will also be highlighted as HTML.
2016-11-22 11:07:53 +03:00
Frank LENORMAND
7f9e24cdbf Remove flake8.kak, deprecated by lint.kak
Builtin support for `flake8` can be obtained using the following:
```
set window lintcmd 'flake8 --filename=* --format="%(path)s:%(row)d:%(col)d: error: %(text)s"'
```
2016-11-22 10:56:17 +03:00
wheatdog
cf096a1f19 enhance latex.kak: comments, \%, \_, \$ 2016-11-19 23:01:07 +08:00
Maxime Coste
8e56917984 ctags.kak: Fix compatibility with original-awk
Fixes #928
2016-11-17 13:03:43 +00:00
Maxime Coste
16b8615089 ctags.kak: Replace some subshells with parameter expansions 2016-11-16 10:01:08 +00:00
Dimitar Dimitrov
27265b655a Don't double sub shell 2016-11-15 22:49:51 +00:00
Maxime Coste
f1400e49ab Remove some tabs from ctags.kak 2016-11-15 22:49:51 +00:00
Maxime Coste
10fa6afa08 Rework ctags.kak to read from all the different tag files.
Ensure tags files are not read twice through different paths.
Handle paths containings space correctly

Closes #802, to which much credits goes for this change.
2016-11-15 22:48:49 +00:00
Olivier Perret
b6acafc8ec fix lua.kak 2016-11-15 21:23:46 +01: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
cb074793a0 Highlight numbers as values in json 2016-11-14 13:14:21 +00:00
Maxime Coste
dcd733e5fa Do a first phase of command renaming 2016-11-14 00:27:14 +00:00
Dimitar Dimitrov
8917c3662b Add column information 2016-11-09 22:36:33 +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
Martin Chaine
6271c60080 add missing builtins + clean duplicate interface 2016-11-07 11:10:38 +01:00
Martin Chaine
352c56bfb5 let the user set the format hook 2016-11-06 17:22:54 +01:00
Martin Chaine
28e37b608d remove trailing whitespaces 2016-11-05 18:40:37 +01:00
Martin Chaine
590e28ea7f Extended support for go
completion, auto-format, documentation and more
2016-11-05 17:54:56 +01: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
9ca0467c4d Merge remote-tracking branch 'kurkale6ka/lint_explicit' 2016-11-02 22:47:45 +00:00
Maxime Coste
01dba547fb Tweak c-family indentation logic 2016-11-02 22:27:50 +00:00
Dimitar Dimitrov
c5ebd5e303 Remove since it gets overwritten by the NormalIdle hook +
$kak_cursor_line will always be 1 as that runs in a temporary context for the window
2016-11-02 17:00:04 +00:00
Dimitar Dimitrov
9a87e7fdff Use same idiom as for lint-next 2016-11-02 14:18:38 +00:00
Dimitar Dimitrov
05f7ab7568 lint-prev 2016-11-02 14:09:33 +00:00
Dimitar Dimitrov
ae339dc3c4 Use %~~ for delimiting to avoid issues with braces in the message 2016-11-02 14:09:33 +00:00
Maxime Coste
bd5c952d76 Merge remote-tracking branch 'kurkale6ka/spell_replace' 2016-10-29 11:51:02 +01:00
Maxime Coste
2a1a9d9aad Merge remote-tracking branch 'casimir/patch-2' 2016-10-29 11:30:12 +01:00
Maxime Coste
79b193d2be Fix ctags update-tag command that could fail depending on the locale 2016-10-28 09:48:57 +01:00
Martin Chaine
0272d3909d Fix sed for macOS 2016-10-27 11:22:16 +02:00
Maxime Coste
7c6c6871ce BufferRange option syntax support <line>.<column>+<len> and is inclusive
Fixes #864
2016-10-26 22:58:12 +01:00
Maxime Coste
4b2004c6ff git-tools.kak: Fix passing of custom parameters to git commit 2016-10-24 20:45:57 +01:00
Maxime Coste
1c97be5716 Merge remote-tracking branch 'casimir/taskpaper-support' 2016-10-23 18:30:50 +01:00
Maxime Coste
d54640f41d Merge remote-tracking branch 'kurkale6ka/sh_lint_2' 2016-10-23 18:30:23 +01:00
Maxime Coste
f3d7209781 Merge remote-tracking branch 'casimir/patch-1' 2016-10-23 18:30:06 +01:00
Martin Chaine
93c2943ff9 different highlight for variable declaration 2016-10-23 11:55:32 +02:00
Martin Chaine
2f86038abe const and var are keywords not attributes 2016-10-23 11:16:04 +02:00
Martin Chaine
1012fae065 Add missing Go keyword
Add `var` to the keywords, per https://golang.org/ref/spec#Keywords.
2016-10-22 20:02:22 +02:00
Olivier Perret
84b02bf407 fish.kak: fix edge cases in newline insertion 2016-10-22 10:19:19 +02:00
Dimitar Dimitrov
d5e0426a77 Avoid problems when the message contains comas 2016-10-21 15:01:09 +01:00
Martin Chaine
d7d79af8b4 Add taskpaper basic support 2016-10-21 13:32:17 +02:00
Dimitar Dimitrov
9529aa7020 Use -s for functions 2016-10-21 10:42:41 +01:00
Dimitar Dimitrov
52d1929d81 Add a spell replace function 2016-10-21 10:42:41 +01:00
Maxime Coste
dcebdd54f3 Merge remote-tracking branch 'lenormf/fix-spell' 2016-10-20 21:52:38 +01:00
Maxime Coste
f9f1b6a2b3 Merge remote-tracking branch 'kurkale6ka/sh_lint' 2016-10-20 21:51:55 +01:00
Dimitar Dimitrov
02ab268416 Sort 2016-10-20 12:08:42 +01:00
Dimitar Dimitrov
a773f2ba4b Add sh linter 2016-10-19 17:17:59 +01:00
Frank LENORMAND
ae08312bce Allow the spelling checks to run in the background
The escaping of the main shell script is also tidied up, and some
processes that were spawned for no reason are removed.
2016-10-18 15:14:37 +03:00
Maxime Coste
658d993d71 Try to fix autorestore posix compatibility 2016-10-17 21:31:56 +01: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
Maxime Coste
ee5c246861 Merge remote-tracking branch 'lenormf/fix-flake8' 2016-10-13 00:20:10 +01:00
Maxime Coste
e7f41b2dda Merge remote-tracking branch 'casimir/golang-rename' 2016-10-13 00:19:45 +01:00
Frank LENORMAND
8b5cf3feb0 Add a missing then keyword to an if statement 2016-10-12 15:35:25 +03: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
Martin Chaine
3b6cafd692 Renamed dlang to d 2016-10-09 11:57:55 +02:00
Martin Chaine
e14804fada Renamed golang to go 2016-10-08 21:42:43 +02:00
Maxime Coste
d89959dfa8 autorestore.kak: more tweaks, a WIP version was pushed by error 2016-10-07 08:57:45 +01:00
Maxime Coste
1970cb68c9 Refactor autorestore.kak to make it faster 2016-10-06 22:35:07 +01: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
f67d5076c4 Tweak spell.kak, embrace printf and refactor a bit 2016-10-06 13:32:51 +01:00
Maxime Coste
92b4046ba8 Merge remote-tracking branch 'lenormf/fix-spell' 2016-10-06 09:27:50 +01:00
Frank LENORMAND
273455ecc8 Fix non POSIX instructions, print errors when they occur 2016-10-05 07:56:40 +03:00
Maxime Coste
8a4cf85e22 Use eval -no-hooks when writing the buffer in a tmp file for scripting purposes 2016-10-03 20:29:54 +01:00
Maxime Coste
4addf65042 Merge remote-tracking branch 'alexherbo2/fish-rc' 2016-10-02 20:38:55 +01:00
Maxime Coste
4d6af15734 Merge remote-tracking branch 'lenormf/fix-autowrap' 2016-10-02 20:26:36 +01:00
Maxime Coste
ae50b3f089 Fix clojure hook 2016-10-02 00:02:52 +01:00
Maxime Coste
1b9c8b9cf2 Fix hool -> hook in rc files 2016-10-01 14:09:59 +01:00
Maxime Coste
6e17ecfb6e Fix golang.kak highlighting hooks 2016-10-01 13:44:18 +01:00
Maxime Coste
e65aa4a6de Merge remote-tracking branch 'greduan/highlighter-group' 2016-10-01 13:43:21 +01: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
Maxime Coste
a66aed21c2 Merge remote-tracking branch 'lenormf/fix-flake8' 2016-09-28 21:47:09 +01:00
Maxime Coste
c77719bad0 Merge remote-tracking branch 'greduan/rename-ini-highlighter' 2016-09-28 21:46:31 +01:00
Maxime Coste
098c94b878 Do not automatically enable ranger on directory open errors
Use an explicit command that does that 'ranger-open-on-edit-directory'
and remove the file_manager option that is not needed anymore.
2016-09-28 19:34:29 +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
greduan
f02c6633fb Do s/ini-highlighter/ini/ on rc/base/ini.kak 2016-09-28 08:23:21 +02:00
Alex Leferry 2
5c4eda5ba6 refactorize command hooks 2016-09-27 12:48:26 +02:00
Alex Leferry 2
c853e3a502 disable hooks 2016-09-27 12:48:24 +02:00
Alex Leferry 2
f0820bc83d slight refactor in _fish_filter_around_selections command 2016-09-27 12:47:42 +02:00
Alex Leferry 2
0e185c54ef compact commands 2016-09-27 11:36:43 +02:00
Maxime Coste
b74a268552 Merge remote-tracking branch 'lenormf/fix-markdown' 2016-09-27 09:36:42 +01:00
Alex Leferry 2
503b5bea4c add ranger.kak 2016-09-26 11:51:53 +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
Frank LENORMAND
7d51dca290 Indent after other keywords 2016-09-25 09:19:04 +03:00
Frank LENORMAND
048004f3a4 Allow dashes in target names for syntax highlighting 2016-09-25 09:13:39 +03:00
Frank LENORMAND
fbc2091df9 Rewrite some non POSIX conditionals 2016-09-24 12:49:19 +03:00
Frank LENORMAND
9a2f0c350b Add language highlighting to markdown code blocks
Fixes #808
2016-09-24 11:25:58 +03:00
Frank LENORMAND
24ef77704c Add more standard GNU keywords to the makefile completion keywords 2016-09-24 11:09:42 +03:00
Maxime Coste
6f8d5d2e1f Merge remote-tracking branch 'alexherbo2/ranger-rc' 2016-09-22 23:19:37 +01: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
80413e1e3a Merge remote-tracking branch 'alexherbo2/ruby-rc' 2016-09-19 09:26:04 +01:00
Maxime Coste
8deadcc318 Merge remote-tracking branch 'kurkale6ka/add_quotes' 2016-09-19 09:25:00 +01:00
Maxime Coste
94748713f2 Merge remote-tracking branch 'casimir/modeline-compat' 2016-09-19 09:23:13 +01:00
Alex Leferry 2
e18d145f96 highlight :: operator 2016-09-16 11:12:02 +02:00
Alex Leferry 2
bb911cc229 fixes symbol highlighting 2016-09-16 10:54:53 +02:00
Martin Chaine
a03cc59608 Use POSIX case and BRE 2016-09-09 16:48:49 +02:00
Alex Leferry 2
6e634c680a fixes 'end' insertion 2016-09-09 15:36:45 +02:00
Alex Leferry 2
5b99ef3197 disable hooks 2016-09-09 15:35:23 +02:00
Dimitar Dimitrov
b9ef5a2f2a Always use quotes with sh/bash 2016-09-09 12:04:55 +01:00
Martin Chaine
6faed96b68 Highlight diff in git-commit too 2016-09-07 13:50:21 +02:00
Maxime Coste
e9c63316f5 Tweak c-family indent logic 2016-09-05 23:33:34 +01:00
Frank LENORMAND
12ddf22761 Fix the directory from which the file containing a matching tag will be opened 2016-08-31 14:23:36 +03:00
Maxime Coste
80298a95a0 clang.kak: Use two sed processes instead of one to avoid extra long pattern space
The previous version was ending up with all the completion candidates
in a single, multiline pattern space, regex substitution on it was
extremely slow compared to the two process version where substitution
is always running on a single candidate.
2016-08-30 23:41:27 +01:00
Maxime Coste
7b81131071 Merge remote-tracking branch 'lenormf/fix-doc-completion' 2016-08-30 22:41:31 +01:00
Enrico Lumetti
5ee57f18df Invoke tmux only after checking its existence 2016-08-30 16:51:33 +02:00
Frank LENORMAND
47d9f4a993 Allow instant completion of doc pages
Closes #750
2016-08-30 17:25:34 +03:00
Alex Leferry 2
d3075c0325 add ranger.kak 2016-08-30 13:20:12 +02:00
Maxime Coste
551263c564 Use shell-candidates for :git command completion 2016-08-30 01:01:18 +01: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
1119d00a96 Use shell-candidates for ctags completion, and cache tag names in a separate file 2016-08-06 06:51:33 +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
Maxime Coste
a95937918d Merge remote-tracking branch 'lenormf/fix-autowrap' 2016-07-19 21:36:05 +01:00
Kylie McClain
db4d188a42 rc/base/etc: Use a more efficient expression
I was hitting a stack size issue with the previous regular expression used
to match filesystem lines, so I decided to rewrite it. Admittedly I don't
know entirely if this has better performance, but it seems to work well
and additionally isn't too greedy with matching like the previous one.
2016-07-17 16:45:13 -04:00
Frank LENORMAND
78c6b7c03d Don't completely remove empty lines when fixing indents 2016-07-15 10:29:19 +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
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
Maxime Coste
6bcfc7268f Merge remote-tracking branch 'lenormf/fix-sh-operators' 2016-07-09 12:48:21 +01: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
7419f8241a Fix operators highlighting in shell scripts 2016-07-08 13:13:08 +03:00
Maxime Coste
0c825af771 Merge remote-tracking branch 'lenormf/fix-kakrc-highlight' 2016-06-27 21:00:22 +01:00
Maxime Coste
df38d1539b Change ctags autoinfo to run on {Normal,Insert}Idle 2016-06-27 20:55:49 +01:00
Frank LENORMAND
b8c83a914a Update the keywords highlighted in kak files 2016-06-26 16:59:48 +03:00
Frank LENORMAND
3a4e258fde Print an error message when unsupported tmux functions are called
Closes #615
2016-06-23 20:07:51 +03:00
Maxime Coste
a2d76e27b0 Use a draft context for *.h c/cpp filetype decision 2016-06-22 20:49:58 +01:00
Maxime Coste
796a2ad63d Remove useless and non posix -e switch to awk invocations in rc scripts
Fixes #705
2016-06-21 19:00:41 +01:00
Frank LENORMAND
4747ba6be9 Allow man buffer to be redrawn automatically when the window is resized
Tweaked by Maxime Coste
Closes #671
2016-06-06 18:07:10 +01:00
Maxime Coste
f9260a6d3a Treat tags paths as relative to the tags file
Fixes #662
2016-05-24 22:48:15 +01:00
Alex Leferry 2
dc05497e8f fixes hooks removing 2016-05-24 19:37:51 +02:00
Maxime Coste
656b8c1c95 Fix clang-show-completion-info command 2016-05-11 23:57:21 +01:00
Maxime Coste
b7cf5d6001 Fix some uses of printf in git-tools.kak 2016-05-09 13:52:54 +01:00
Jimmy Thrasher
bab174b0ec Add swift.kak for Swift highlighting
No autoindent logic at the moment
2016-05-05 09:43:37 -04:00
Maxime Coste
9298efd19b Restore whitespace cleanup on InsertEnd in python.kak 2016-05-05 13:59:06 +01:00
Maxime Coste
8c5d3128ef static_words def style tweak in c-family.kak 2016-05-05 13:54:12 +01:00
Maxime Coste
13ab721f64 python.kak: restore cleaning up trailing whitespaces on newline 2016-05-05 13:50:49 +01:00
Maxime Coste
763bb5aed1 Use the current client tmux session when splitting a new client 2016-05-05 13:32:16 +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
664f382ab2 Convert a non-POSIX extended sed regex to a basic notation 2016-04-23 09:56:53 +03:00
Frank LENORMAND
bdb67d8227 Remove a non-POSIX and unneeded -r sed flag 2016-04-23 09:56:53 +03:00
Frank LENORMAND
3b2fd831f4 Replace non-POSIX -o test flag with a double pipe 2016-04-23 09:56:53 +03:00
Frank LENORMAND
262de38c3d Replace non-POSIX '<<<' here strings with a regular pipeline 2016-04-23 09:56:53 +03:00
Frank LENORMAND
84a21f8cfb Replace non POSIX calls to echo with printf %s 2016-04-23 09:56:53 +03:00
Maxime Coste
3f74dd2924 Remove uses of \< and \>, always use std regex compatible \b 2016-04-21 20:43:17 +01:00
Maxime Coste
1c43faeba9 Remove non-posix expansion in autorestore.kak 2016-04-20 13:25:38 +01:00
Mohammed Kareem
9dee71e7c3 Reformatting, no tabs and fixed indentation. 2016-04-13 02:29:56 +02:00
Mohammed Kareem
e97f99dbab Flake8 diagnostics support
This follows the clang diagnostics example and does the same thing. It
just uses the flake8 program and the regex's are a bit different.
2016-04-12 21:17:50 +02:00
Frank LENORMAND
82a3f10a82 Fix arbitrary keys execution in the doc command 2016-04-12 10:41:16 +03:00
Maxime Coste
a026ebf298 style tweak in the static words definitions 2016-04-09 10:20:13 +01:00
Maxime Coste
a49685d996 Merge remote-tracking branch 'lenormf/fix-static-completion' 2016-04-09 10:08:19 +01:00
Maxime Coste
a8b2834d56 Merge branch 'master' of git://github.com/crooney/kakoune 2016-04-04 13:43:19 +01:00
Maxime Coste
675a68abb8 Small fixes in clang.kak completion handling 2016-04-04 13:42:58 +01:00
Maxime Coste
b5a68307ba Use a specific option type completions for insert completion
Fix escaping in jedi.kak as well
2016-04-04 13:42:58 +01:00
chris rooney
27f78e241a whitespace fix 2016-04-01 09:02:15 -04:30
chris rooney
2718c05c0e initial commit of jade/pug highlighter 2016-04-01 08:50:31 -04:30
Maxime Coste
24372938c5 Improve parse error display in clang.kak 2016-03-31 13:58:18 +01:00
Frank LENORMAND
65f160fae7 Fix the patterns that detect commented selections 2016-03-25 21:40:17 +02:00
Frank LENORMAND
464007e332 Fix hook declarations 2016-03-25 21:31:01 +02:00
Maxime Coste
c1c17db5e9 Collapse jumps in man .kak 2016-03-21 13:44:31 +00:00