Commit Graph

61 Commits

Author SHA1 Message Date
Alyssa Ross
c409bce579
Recognize Ruby identifiers beginning with _
:_foo, @_foo, $_foo, and { _foo: 1 } are all valid Ruby syntax, but were
not recognized by the highlighter.
2019-03-15 16:24:44 +00: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
27f951638c Execute cleanup hooks on any filetype change 2018-12-11 00:35:57 +01:00
Olivier Perret
898d45f5d5 Change cleanup of base/ languages to use a simpler hook -once 2018-12-11 00:13:30 +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
Delapouite
425aa56eaf Use remove-hooks regex in rc 2018-09-19 19:59:57 +02:00
Jason Felice
fbd733f49c Homebrew Brewfile is ruby 2018-09-17 10:29:05 -04: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
Maxime Coste
f61bcef469 Fix tests and required scripts to get back to green make test 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
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
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
2d85e94516 Fix uses of rotate selection in rc/ files 2018-03-25 11:45:27 +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
f8861734cf rc/: Replace simple uses of sed with tr 2018-02-18 15:00:30 +11:00
Alex Leferry 2
04b57539e8 Recognize .gemspec files as Ruby 2018-02-18 00:49:09 +01:00
Alex Leferry 2
39c0c03351 Highlight Ruby control access keywords 2018-02-08 13:34:40 +01:00
Jimmy Thrasher
7bf235b0ee Add heredoc support for ruby.kak 2018-01-26 07:56:36 -05:00
Frank LENORMAND
9127ed0d55 src rc: Rename exec/eval into execute-keys/evaluate-commands 2017-11-03 11:09:45 +03:00
Frank LENORMAND
c9b280b712 rc: Don't use command aliases to highlight keywords properly 2017-11-03 10:34:41 +03:00
Maxime Coste
d49555fc75 Move highlighters into Scopes
That means we can now have highlighters active at global, buffer, and
window scope. The add-highlighter and remove-highlighter syntax changed
to take the parent path (scope/group/...) as a mandatory argument,
superseeding the previous -group switch.
2017-10-28 13:43:04 +08:00
Maxime Coste
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
9c4448ac41 Remove echo -color support, superseeded by echo -markup
`echo -color Error "blah"` is the same as `echo -markup '{Error}blah'`
Fixes #1512
2017-07-19 17:18:52 +02:00
Alex Leferry 2
63f9f9bbc9 highlight hash access symbols 2017-02-28 09:48:17 +01:00
Nick Mosher
e1927fa9c4 Adds faces module and function. Renames identifier face to variable. 2017-02-09 21:43:29 -05: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
Alex Leferry 2
671b50bb52 update command names 2017-01-04 13:04:27 +01:00
Dan Rosén
5ddc28eaad Fix comment-leader auto-insertion
Fixes #1074
2016-12-29 01:39:02 +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
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
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
1b9c8b9cf2 Fix hool -> hook in rc files 2016-10-01 14:09:59 +01:00
greduan
a68f5f20a1 Add highlight group to highlighters rmhl hooks 2016-09-28 08:45:01 +02:00
greduan
6c6359de93 Add highlight group to highlighters addhl hooks 2016-09-28 08:25:02 +02:00
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
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
Alex Leferry 2
dc05497e8f fixes hooks removing 2016-05-24 19:37:51 +02:00
Frank LENORMAND
a20f5fc6a2 Pass a generic pattern to printf calls, use echo when possible 2016-04-23 10:00:36 +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
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
Frank LENORMAND
4bb5658206 Replace non-POSIX here-strings and calls to echo 2016-03-17 15:32:32 +02:00