Loric Brevet
83b7bbdc55
rc/tools/git: edit a git indexed file with git edit
2023-11-04 13:43:10 +01:00
Johannes Altmanninger
286dab11d4
rc tools git: "git apply" to apply selections in diffs
...
This adds a somewhat discoverable frontend for common uses of the
patch command.
Here are some frequently used commands
# apply selected changes
git apply
# revert selected changes
git apply -R
# stage selected changes
git apply --cached
# unstage selected changes
git apply --cached -R
# apply selected changes and stage them
git apply --index
For everyday use that's a lot of typing so I recommend adding mappings.
2023-11-04 12:14:48 +01:00
Johannes Altmanninger
8c0424b521
rc tools patch: "patch" command to apply selections in diffs to file
...
One of the features I miss most from Magit/Fugitive/Tig is to
apply/revert/stage/unstage individual hunks or even exactly the
selected line(s). This provides a much more convenient way of
splitting changes than "git add/restore -p".
Implement a "patch" command that applies the selected lines within
a diff by piping them to the "patch" program.
It can also feed other programs like "git apply" (see the next commit).
Original discussion: https://discuss.kakoune.com/t/atomic-commits-in-kakoune/1446
Interestingly, :patch is defined outside the "patch" module. This is
to make it readily available for interactive use.
Putting it into the module does not save any work.
I tentatively added a patch module anyway so we can explicitly declare
this dependency.. although there is the argument that this is not
really needed?
2023-11-04 12:14:48 +01:00
Dimitri Sabadie
27f19fdd91
Rename diff_* into git_diff_*.
2023-11-03 22:04:22 +01:00
Dimitri Sabadie
8e10822a87
Support setting diff characters in git diffs.
...
This commit adds `diff_add_char`, `diff_mod_char`, `diff_del_char` and `diff_top_char` as `str` options, with typical
defaults.
This commit also replaces the hard coded +, _, ≃, etc. hardcoded characters in `git update-diff` to use the options from
above.
2023-11-03 22:04:22 +01:00
Maxime Coste
154a393c7b
Merge remote-tracking branch 'arrufat/zig-syntax'
2023-11-02 18:29:35 +11:00
Maxime Coste
41e57f62dc
Merge branch 'juliacolors' of http://github.com/chriselrod/kakoune
2023-11-02 18:28:53 +11:00
Maxime Coste
e882c23501
Merge remote-tracking branch 'greenfork/improve-janet-syntax'
2023-11-02 18:21:59 +11:00
Maxime Coste
81d94ac06c
Merge remote-tracking branch 'ii8/master'
2023-11-02 18:21:15 +11:00
Adrià Arrufat
0015a29c19
rc/filetype/zig: remove align builtin and add f80 type
...
In commit ca36d0d228
the align function was added as a builtin accidentally.
Also, f80 type was added in Zig 0.10.0: https://ziglang.org/download/0.10.0/release-notes.html#f80
2023-11-02 12:13:41 +09:00
Bob Qi
8424fbe0f0
rc/make.kak reuse make_error_pattern
2023-11-02 09:11:18 +08:00
chriselrod
7bc1504725
@macro!
2023-11-01 17:23:03 -04:00
chriselrod
bf4f780cfa
Many more Julia operators
2023-10-31 23:13:33 -04:00
chriselrod
e48d81d20b
Add more highlighters for Julia
2023-10-31 22:49:19 -04:00
Dmitry Matveyev
4332b0dc71
janet: syntax improvements and trailing whitespace cleaning
2023-10-31 11:15:38 +04:00
murray
b20747d44e
Gren highlighting
...
Gren is an elm fork and it's syntax is currently still
similar enough to use the same highlighter.
2023-10-29 20:51:42 +00:00
Bob Qi
760f63b827
rc/make.kak set option type to be regex
2023-10-29 09:05:33 +08:00
Bob Qi
cb540def46
rc/make.kak avoid another using pattern directly
2023-10-27 10:16:57 +08:00
Bob Qi
8e5ca3f214
rc/make.kak introduce a new option to be back compatible
2023-10-27 09:57:10 +08:00
Bob Qi
2d849cc147
rc/make.kak set search register to avoid injection
2023-10-27 08:25:38 +08:00
Bob Qi
d0571ce238
rc/make.kak support override the whole error line pattern
2023-10-26 10:13:07 +08:00
Maxime Coste
b020922e6f
Fix some corner cases in c-family indentation
2023-10-25 12:51:16 +11:00
Maxime Coste
d50048d0b4
Highlight a few extra mail headers
2023-10-24 10:47:20 +11:00
Maxime Coste
5c793a6a1e
Merge remote-tracking branch 'Screwtapello/hint-git-next-hunk'
2023-10-04 21:04:27 +11:00
Tim Allen
9286a7ee49
Make "git next-hunk" hint about how it works.
2023-10-04 10:53:20 +11:00
Tim Allen
87787defd8
The command is called "git prev-hunk", not "git previous-hunk".
2023-10-04 10:52:15 +11:00
Caleb Heuer
5ec40c63b2
Add highlighting of Lua variables, labels, and self keyword
2023-09-30 11:57:30 -06:00
James Dugan
24ab9d4343
Added odinlang support
2023-09-24 17:03:07 -06:00
Maxime Coste
12f42a2faf
Merge remote-tracking branch 'stacyharper/git-grep-complete'
2023-09-23 21:26:40 +10:00
Bob Qi
235552c5fa
rc/tools/git add --column to git grep
2023-09-18 16:18:32 +08:00
Willow Barraco
527a897584
rc/tools/git: enable <ret> to diff-jump
...
As we require diff here, it make using git log -p very convenient to go
to the source files.
2023-09-12 13:46:48 +02:00
Willow Barraco
cfd7d8e361
rc/tools/git: add basic completion for git-grep
2023-09-12 11:32:26 +02:00
Willow Barraco
01fd6552af
tools/git: add git grep using existing grep tool
2023-09-10 11:31:07 +02:00
Maxime Coste
f21145c249
Merge remote-tracking branch 'QiBaobin/filetype-grovvy'
2023-09-08 05:28:56 +10:00
Maxime Coste
76306f7c05
Merge remote-tracking branch 'raiguard/rc/go-highlighting'
2023-09-08 05:28:08 +10:00
Bob Qi
8f6ef9512f
add groovy filetype
2023-09-07 09:52:00 +08:00
Caleb Heuer
142925fc90
This is numerics, not identifiers
2023-09-06 12:24:06 -06:00
Caleb Heuer
c338efe078
Support generics in function highlighting
2023-09-06 12:03:49 -06:00
Caleb Heuer
6148a16a0e
Add spread operator
2023-09-06 12:03:49 -06:00
Caleb Heuer
88bb854f36
Improve Go highlighting
2023-09-06 12:03:49 -06:00
Bob Qi
c6270512fd
fix a sed error on mac
...
sed: 1: "/^&/ { s/^[^:]*: //; s/ ...": extra characters at the end of p command
2023-09-05 14:48:26 +08:00
Michał Kruszewski
521549fb69
troff: Highlight .PSPIC and .PDFPIC macros
2023-07-30 09:47:10 +02:00
Maxime Coste
dad128e4a6
Merge remote-tracking branch 'QiBaobin/rc/windowing/wezterm'
2023-07-29 15:34:15 +10:00
Maxime Coste
90acec991f
Merge remote-tracking branch 'omasanori/ocaml-lex-and-yacc'
2023-07-29 15:33:48 +10:00
Maxime Coste
991b233468
Merge remote-tracking branch 'arrufat/zig-builtin-functions'
2023-07-29 15:33:15 +10:00
Bob Qi
117f12dbd6
pass cwd for wezterm terminal
2023-07-27 13:28:37 +08:00
Masanori Ogino
8fb0a99f05
Detect .mll and .mly files as OCaml sources
2023-07-26 17:15:06 +09:00
Adrià Arrufat
fdb33e7302
zig: add c_char type
2023-07-26 12:37:35 +09:00
Adrià Arrufat
ca36d0d228
zig: update builtin functions for v0.11.0
2023-07-26 12:26:49 +09:00
Adrià Arrufat
eabc7cd2a8
Set filetype to Zig for zon files.
2023-07-25 15:30:52 +09:00
Adrià Arrufat
3cca4c5098
Auto-remove empty comments in Zig like in the C-family.
...
This makes Kakoune behave more consistently when using it for Zig.
Empty comments are already auto-removed from the C-family and Python.
In this PR, string literals that start with \\ are not removed in purpose.
2023-07-04 16:40:24 +09:00
Maxime Coste
4f60a828cd
Merge remote-tracking branch 'ericv8v9s/master'
2023-07-03 20:06:01 +10:00
Maxime Coste
74b0bf6c9e
Merge remote-tracking branch 'GrantMoyer/patch-1'
2023-07-03 20:04:00 +10:00
Eric
a9b52b315c
Fixed lisp highlighter marking everything as variable
2023-07-01 15:27:13 +08:00
Grant Moyer
7115858093
Quote doc file path in doc-render command
...
Without quoting the file path,
the `doc` command fails to display any docs with spaces or backslashs (on Cygwin) in their paths.
2023-06-23 12:38:19 -04:00
Evan Lloyd New-Schmidt
c1e6fe4ca1
Add standard SQL comments
2023-06-21 16:48:24 -07:00
Maxime Coste
18d4c40f08
Fix c-family closing brace indent behaviour on some corner cases
2023-06-15 17:42:19 +10:00
Maxime Coste
4106791adc
Fix windowing detection echoing last module error if none matched
...
Display a more general message in the debug buffer.
2023-06-13 17:08:42 +10:00
Bob Qi
365fe58826
fix arg quoting
2023-06-09 17:57:48 +08:00
Bob Qi
b64dce3e95
rc/windowing/wezterm.kak
2023-06-09 15:43:07 +08:00
Maxime Coste
6bee11c7dd
Merge remote-tracking branch 'QiBaobin/kakrc-hl'
2023-06-05 20:13:07 +10:00
Maxime Coste
0338294223
Merge remote-tracking branch 'greenfork/hare-comment-insert'
2023-06-05 20:11:23 +10:00
Dmitry Matveyev
caf6f6ff7e
hare.kak: change back the command
...
Previously was changed in
https://github.com/mawww/kakoune/pull/4785
Probably some race condition that right now works with a big letter P?
2023-06-04 09:49:52 +06:00
Johannes Altmanninger
b7e9d9bae3
rc detection modeline: optimize modeline pre-filtering
...
modeline-parse leads by matching an expensive regex against the entire buffer,
which can take a long time on huge files.
Perl takes too long on this regex and it seems not even ripgrep
optimizes the \z component
$ ruby -e '10000.times { puts "a" * 10000 }' > big
$ time rg --multiline --only-matching '\A(.+\n){1,5}|(.+\n){1,5}\z' big | wc -l
10
__________________________
Executed in 419.81 millis
usr time 399.84 millis
sys time 20.78 millis
where
$ time kak big -e q
__________________________
Executed in 179.19 millis
usr time 133.61 millis
sys time 53.50 millis
Let's lose the regex.
Fixes #4911
2023-06-02 22:38:32 +02:00
Bob Qi
acaca4955e
add Highlight for complete-command shell-script
2023-06-02 15:31:41 +08:00
Maxime Coste
7f950bc4a9
git.kak: Use gawk's strftime instead of shelling out to date
...
`date -d` is not posix, strftime neither, but at least we only rely
on one non-posix tool and avoid forking.
Should help a bit for #4847
2023-05-30 13:01:56 +10:00
Maxime Coste
375a3c87df
Merge remote-tracking branch 'jtrv/grep-kak-literal-string-matching'
2023-05-15 21:22:56 +10:00
Maxime Coste
a69be6288c
Merge remote-tracking branch 'poweredbypie/master'
2023-05-10 20:08:12 +10:00
Maxime Coste
4a8b24bb8c
Merge remote-tracking branch 'razcore-rad/godot4-gdscript'
2023-05-10 20:01:49 +10:00
Maxime Coste
bdc459e666
Merge remote-tracking branch 'arrufat/improve-python-insert-on-new-line'
2023-05-10 20:01:08 +10:00
Maxime Coste
83753b7f94
Merge remote-tracking branch 'm-kru/troff_pic'
2023-05-10 20:00:36 +10:00
Maxime Coste
e74424d889
Merge remote-tracking branch 'Frojdholm/rc-windowing-kitty-window-id'
2023-05-10 19:54:12 +10:00
Johannes Altmanninger
94e3ea9687
rc windowing wayland/x11: do not pollute terminal environment
...
The x11-terminal command spawns a potentially long-lived terminal
process. The terminal can is completely independent of the Kakoune
session that created it.
Due to how it's implemented, the spawned terminals will have
environment variables "kak_opt_termcmd" and "kak_quoted_reg_a"
set. This can be surprising, especially since, by convention, the
environment contains no lowercase variables. Let's stop exporting them.
2023-05-09 11:32:37 +02:00
Hampus Fröjdholm
7c54de2334
Match against kitty window id directly when using kitty @ launch
...
When launch matches using `id` kitty tries to match against tab id
before matching windows. When there are multiple tabs it's likely to
match a tab before matching a window.
Use `window_id` directly to avoid any possiblity of matching tabs.
This is only needed for `kitty @ launch` for other commands there is
no specific `window_id` field.
2023-05-07 17:06:09 +02:00
Johannes Altmanninger
be7a0695a8
rc: move remaining comment insertion hooks to *-insert group
...
This continues the work started by 0a9c90fec
(rc: use a separate
*-insert hook to auto-insert comments, 2021-04-17).
The one that's left is Rust but that one is trickier.
2023-05-03 19:36:50 +02:00
JacobTravers
cac2167540
case directly to $kak_opt_grepcmd
2023-04-06 10:20:52 -07:00
Michał Kruszewski
0a2541f73a
troff filetype: Add support for pic syntax highlighting
2023-04-06 09:30:53 +02:00
JacobTravers
d8b9b13d07
apply literal flag according to grep tool
2023-04-05 15:34:37 -07:00
Adrià Arrufat
cea35cf5f4
Delete commenting prefix on empty lines in Python
2023-04-02 21:09:57 +09:00
JacobTravers
4d9b853561
Use grep -F when no argument is passed (literal string match)
...
Why?
Most users who pass the current selection to grep likely do not intend to pass
the selection as a regex input string.
This makes the grepcmd use an additional -F flag to perform literal-string
matching for the current selection. The -F flag seems to be the standard flag
for literal-string matching in every grep implementation I've found.
2023-03-31 14:11:14 -07:00
Răzvan C. Rădulescu
1e597eb010
fix improper set/get = highlight for Godot v4.x GDScript
2023-03-25 07:14:34 +02:00
Răzvan C. Rădulescu
6ff293ad3a
Add missing in
to Godot v4.x GDScript keywrods
2023-03-24 09:16:53 +02:00
Răzvan C. Rădulescu
1882d76392
Add unique names (%NodeName) highlight for Godot v4.x GDScript
2023-03-22 06:24:23 +02:00
Răzvan C. Rădulescu
0e298ca62e
Clean up Godot 4.x GDScript highlights & fix const highlight overtaking numbers
2023-03-20 12:52:23 +02:00
Răzvan C. Rădulescu
d6326f609c
Highlight all uppercase words for constants & enums Godot v4.x GDScript
2023-03-20 07:31:08 +02:00
Răzvan C. Rădulescu
80f0cda8b5
Update GDScript highlighting for Godot v4.0
2023-03-19 18:55:27 +02:00
PoweredByPie
db348bc6b3
rc/filetype/svelte.kak: Set buffer rather than window filetype
2023-03-14 23:02:53 -07:00
Maxime Coste
86dc4130e1
Merge branch 'fix/hare-comment-insert' of http://github.com/stacyharper/kakoune
2023-03-13 21:38:01 +11:00
Maxime Coste
58ead47fb4
Merge remote-tracking branch 'krobelus/tmux'
2023-03-13 21:33:31 +11:00
Bob Qi
4f0334c476
add zellij-action command
2023-02-26 07:29:39 +08:00
Bob Qi
02bc786fb7
remove the option and provide session name explictly
2023-02-24 12:21:16 +08:00
Bob Qi
f33126c2a9
give up to wrap command into a shell to avoid conflict with connect.kak
2023-02-22 15:57:22 +08:00
Bob
4ff5de6273
Create zellij.kak
2023-02-22 13:17:04 +08:00
Maxime Coste
6b7ed51be1
Merge branch 'hare-packed' of http://github.com/stacyharper/kakoune
2023-01-27 11:26:17 +11:00
Maxime Coste
9763ce4fe9
Merge remote-tracking branch 'razetime/master'
2023-01-27 10:58:32 +11:00
Maxime Coste
247e4885e8
Merge remote-tracking branch 'm-kru/troff_headings_highlighting'
2023-01-18 07:46:36 +11:00
razetime
b794855c70
add APL highlighting
2023-01-14 11:04:16 +05:30
Adrià Arrufat
f92df3ec96
Add reset to git command docstring
2023-01-06 00:17:38 +09:00
Stacy Harper
8c4b591a9e
Add @packed to hare highlighter
...
ref: https://todo.sr.ht/~sircmpwn/hare/783
2023-01-02 20:38:12 +01:00
Michał Kruszewski
dddadce7e8
troff filetype: Fix headings highlighting
2022-12-30 21:45:17 +01:00