Git log: commit 8fa069eea5f397561410bac4b670cdabd82400c3
Author: Peter Pentchev <roam@debian.org>
Date: Wed Dec 10 23:56:35 2025 +0200
Update the Debian packaging for kakoune 2025.06.03
commit c863d769591b0d2beea510f60b2423796a72dced
Merge: dcc5bdd0 c24c8023
Author: Peter Pentchev <roam@debian.org>
Date: Wed Dec 10 23:48:09 2025 +0200
Merge kakoune 2025.06.03 into the Debian branch
commit dcc5bdd0a9734fca7bb49afbe437c7fbc512df47
Author: Peter Pentchev <roam@debian.org>
Date: Wed Dec 10 23:44:17 2025 +0200
Update the changelog file
commit 533226b7e9ed8b19f9805758b357eabda1342cba
Author: Peter Pentchev <roam@debian.org>
Date: Wed Dec 10 23:32:04 2025 +0200
Add a `debputy reformat` superficial autopkgtest
commit 218cfc2c48ad61ec79fba4c228a138f5aff595b1
Author: Peter Pentchev <roam@debian.org>
Date: Wed Dec 10 23:30:35 2025 +0200
Temporarily disable reprotest on Salsa CI
commit ae2344034078ce7e593cf66735f538f92bf2734d
Author: Peter Pentchev <roam@debian.org>
Date: Sun Oct 26 10:41:27 2025 +0200
Try to figure out why reprotest fails on salsa
commit 5b040165c4045a0795ee5be9fb9f5cd352a42d4e
Author: Peter Pentchev <roam@debian.org>
Date: Sun Oct 26 10:03:42 2025 +0200
Temporarily disable diffoscope on Salsa CI, needs investigation
commit 95fb7ab892e05fed851f831d503d73e0bfaf4881
Author: Peter Pentchev <roam@debian.org>
Date: Sat Oct 25 11:44:57 2025 +0300
Add Salsa CI configuration
commit f1bd7b18f1865c8da7c3536478461b0054b3abf1
Author: Peter Pentchev <roam@debian.org>
Date: Sat Oct 25 11:44:15 2025 +0300
Convert the watch file to version 5 of the format
commit c42c8213c857ce54e24a719d561485f9f392a079
Author: Peter Pentchev <roam@debian.org>
Date: Sat Oct 25 11:42:49 2025 +0300
Refresh the debputy-style formatting
commit 1727a187205d26c5f0ba17e94fc78151505fbb4b
Author: Peter Pentchev <roam@debian.org>
Date: Sat Oct 25 11:42:19 2025 +0300
Declare compliance with Policy 4.7.2 with no changes
commit c24c802373fc223fb80f1b80419ce6dcc59f2836
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Jun 3 14:21:56 2025 +1000
Kakoune 2025.06.03
commit 8e876c9295615714688637a34f7c693deee25812
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Jun 3 14:01:11 2025 +1000
Support '*' and comma separated list for exec/eval -client switch
Closes #5326
commit 96316448848db3555be1592360a2d03bea0dfeb1
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Jun 3 13:53:01 2025 +1000
Refactor context_wrap use a context_wrap_for_context lambda
This makes the code a bit clearer by avoiding the base_context and
effective_context pointers and replacing them with calling this
lambda with the correct context we want to use as base.
This also paves the way towards adding `-client *` support
commit ac7689173deae118eff2b3642bec9ca38fba28a0
Merge: c7a7c359 e4df80c7
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Jun 3 09:26:53 2025 +1000
Merge branch 'master' of https://github.com/ewtoombs/kakoune
commit c7a7c35963133c0d57dc2abe341dac6c7763b19c
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Jun 3 09:26:15 2025 +1000
Prevent deletion of buffers while creating new windows
`kak -n -E 'hook global WinCreate .* %{ delete-buffer }'` was crashing
because we would delete the buffer during window construction, which
would not be able to delete the window as it was not fully constructed
and registered yet. This led to a window referencing a deleted buffer.
Fixing this by deleting the window later on failed because we can enter
an infinite loop where we constantly create a new *scratch* buffer, then
a window to display it, which deletes that buffer.
Make it an error to try to delete a buffer while a new window is
being setup by adding a Locked flag to buffers and checking that in
BufferManager::delete_buffer
Fixes #5311
commit ccb3090361103368ed57d628b5922e18a49fc604
Author: Maxime Coste <mawww@kakoune.org>
Date: Thu May 29 16:28:59 2025 +1000
Merge overlapping selections before replacing characters
Without doing this, replace with multiple selection at buffer end
breaks as the first selection will replace the end-of-line with a
non-eol character, then a new eol will automatically be added which
will put remaining selections past the end of the buffer.
Fixes #5316
commit e4df80c76ebc4589d5de086b59b1e6ba906fd279
Author: Eric Toombs <not@public.tld>
Date: Fri May 23 10:00:39 2025 +0300
Fixed latex highlighting the rest of the way
I forgot to handle escaped backslashes in \[ and \( blocks.
commit d5fc4454551d4d9ee462d1291057a016fbfe3882
Author: Maxime Coste <mawww@kakoune.org>
Date: Fri May 23 10:14:09 2025 +1000
Disable BufSetOption hook during buffer registration
The hook is manually triggred at the end of registration, by
disabling it we avoid the hook being potentially called multiple
times due to interaction with other hooks.
Fixes #5324
commit b0f541aae65c06f828245e6f90a40967f8e98322
Author: Maxime Coste <mawww@kakoune.org>
Date: Fri May 23 09:43:34 2025 +1000
Fix out-of-bounds write in short strings when reaching capacity
When we reach capacity for Short strings, we re-use the field past the
buffer (remaining_capacity) to hold the terminal null character, this
works well but the code was trying to set it twice: when computing
the remaining capacity (which is 0 when we hit capacity), and when
setting the null character. While this second operation should be fine
in practice, it is technically undefined behaviour as we overwrite
it by accessing past the end of the buffer.
commit 93e3037e490195af39f22ae42eaf82a74774e475
Merge: ad30bbdf 73f11ba2
Author: Maxime Coste <mawww@kakoune.org>
Date: Fri May 23 09:16:18 2025 +1000
Merge branch 'master' of https://github.com/ewtoombs/kakoune
commit ad30bbdfa383ea0e01031ade115c43cd6966e179
Author: Jimmi Holst Christensen <git@hejsil.anonaddy.me>
Date: Thu May 22 15:23:06 2025 +0200
ci: Use install-strip make step in static binary workflow
commit ec72b0a60f7a6567010e3ba6a0d258aef7c97bd6
Author: Jimmi Holst Christensen <git@hejsil.anonaddy.me>
Date: Thu May 22 15:15:53 2025 +0200
ci: Update action-gh-release to v2 for static binary workflow
commit 73f11ba2f54bfb19eb001fc4832cd3e7f862e10f
Author: Eric Toombs <not@public.tld>
Date: Fri May 16 12:55:00 2025 +0300
latex: highlight $ $$ \[ and \( math modes properly.
These math modes were being split apart by control sequence regions.
To avoid this, they must be their own regions.
Fixes https://github.com/mawww/kakoune/issues/5249 .
Also, I got rid of an errant / in the control sequence ending regex that couldn't be right.
commit 2d8c0b8bf0d7d18218d4c939003da39a018361e7
Merge: 3dac6e28 bcead34b
Author: Maxime Coste <mawww@kakoune.org>
Date: Sun May 11 10:34:41 2025 +1000
Merge remote-tracking branch 'svmhdvn/github-actions'
commit 3dac6e28ef2baaf01924a6b71310fc18d0a3c17e
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sat May 10 21:39:28 2025 +0200
Use linewise paste only if register is missing no trailing newline
We use linewise paste if any of the pasted register elements has a trailing
newline. As shown in the previous patch, this leads to awkward situations
where insertion positions from <a-P> are not monotonically increasing.
This complicated behavior is questionable. The root cause is that linewise
paste may insert some strings that don't have a trailing newline. This leads
to weird cases of GIGO, especially when using <a-P> when the last element
is missing a trailing newline.
Simplify the implementation by not activating linewise paste in that case.
Instead of special-casing the last element, try to simplify the behavior
further by using line-wise paste only if *all* elements are properly
terminated. I can't think of a real-world case where the existing behavior
would be desired.
A regression test shows a change in behavior. Might be less weird now.
The added test case is a copy except it uses "P" instead of "p" (the extra
newline is because "d" deletes the last newline in the buffer which gets
added back implicitly).
(I think the list of register elements is never empty, so this should never
cause a trivial linewise paste. Even if so, that would be fine because
inserting nothing is a nop either way.)
Fixes #5312
commit 23ea6e6a5230a62fc4c183b1898efb550db0c347
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sat May 10 21:39:27 2025 +0200
Work around non-forward insertions by linewise <a-P>
Given a buffer with two selections
%(a)b%(c)
Consider <a-P>, which inserts all elements of the dquote register, joined
to a scalar string. This insertion happens once before each selection.
Let the dquote register contain "\n" and "\nd". Since the first element ends
in a newline, we enable linewise paste mode.
The insertion at the first selection results in:
contents: \n\nd%(a)b%(c)
timestamps: 11111000000000
On top of that, the insertion at the second selection would result in:
contents: \n\n\n\ndd%(a)b%(c)
timestamps: 1111222221000000000
Observe that the second insertion actually takes place inside the text added
by the first insertion.
This is because we are inserting before the current line, and the first
insertion does not end in a newline.
This breaks the forward change tracker's assumption that each change takes
place after the previous one, causing an assertion failure. We use this
data structure to translate from old to new coordinates. Specifically,
after the first insertion, the selection around %(c) which is initially
1.3,1.3 needs to be updated to 3.4,3.4.
Work around this by instantiating a new ForwardChangesTracker after each step.
This is very ugly because it's quadratic, and because it doesn't change the
fact that the second insertion is made inside the first one. I think we
can revert the workaround added by this patch, see the next patch.
Closes #5312
commit a89747c458b7e316ba78fc0a52fad36f827dd63f
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sat May 10 21:23:31 2025 +0200
Fix <a-?> crash when first selection wraps
The <?> and <a-?> commands drop selections where the search wrapped.
If a selection is dropped this way, we adjust the new main index.
If the very first selection is dropped this way, *and* it happens to
be the main index, "--main_index" overflows and chaos ensues.
Fix this by saturating main index at zero. This seems more intuitive
than wrapping around ("% new_sels.size()").
This issue only happens to <a-?>, not <?>. When <?> wraps when starting
from the first selection, it necessarily also wraps after all other
selections. (Based on this insight, I started drafting an optimization
to skip searches whose results would be discarded anyway because they
will definitely wrap. Not sure if it's worth it, since it applies
only to the rare edge case of <?>/<a-?> with multiple selections.)
Fixes #5314
commit 3241f1b63025ebad4f8706594acf265f0e5e9c4a
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sat May 10 21:23:30 2025 +0200
Test for <?> dropping selections where search wraps
Add a test covering this branch in extend_to_next_matches():
else if (new_sels.size() <= main_index)
--main_index;
Specifically, this test would fail if the "<=" were to be replaced with "<".
commit 1de0003e292034f11d05be7ffbe366f4fc23bb76
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sat May 10 21:19:35 2025 +0200
Fix compiler warning on space in string-literal suffix def
GCC complains:
src/string.hh:376:39: warning: space between quotes and suffix is deprecated in C++23 [-Wdeprecated-literal-operator]
376 | inline constexpr StringView operator"" _sv(const char* str, size_t)
| ^~
commit 7c3efe3b92816697383c5792d7876e7ed6e331ae
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sat May 10 21:13:09 2025 +0200
Update GDB pretty printer following SSO layout change
Commit 2754e27cf (Increase SSO from 22 to 23 chars., 2024-06-07) changed
they layout of SSO-strings. Specifically, is_long() no longer takes a bit
away from the size field.
Update the GDB pretty printer accordingly, making it work with small strings
again.
commit dedbc2179cdb8f287b042462de040d125ae796b2
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sat May 10 21:11:36 2025 +0200
Revert "rc git: clarify reason for NormalIdle hook"
Commit eee362087 (Improve info box clearing behaviour, 2025-03-22)
was merged shortly before
commit 1c50bcd89 (rc git: clarify reason for NormalIdle hook, 2025-03-24).
The first commit broke the second in the sense that "git blame-jump" no
longer displays a message in the status line (with commit date/author/subject).
I haven't had time to debug this yet. Revert the part of this cleanup commit
that was broken.
commit bcead34b533fc47a9eadfac423926f0c0beb63c8
Author: Siva Mahadevan <account@svmhdvn.name>
Date: Fri Jan 19 02:02:45 2024 +0000
ci: move linux and macos to Github Actions
commit 0fbbcb007d043c2649f989b0bdec4a96f56a44a4
Merge: d48713ae f0440b8e
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Apr 29 08:31:47 2025 +1000
Merge remote-tracking branch 'thacuber2a03/master'
commit d48713ae054cc369231747a843d2034da9bb3d49
Merge: 61c46e0d 03b7f708
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Apr 29 08:30:57 2025 +1000
Merge branch 'patch-2' of https://github.com/Supreeeme/kakoune
commit 61c46e0dd74bd9f1576a051a69d79ceeaef10051
Merge: d3e07829 41d5b36c
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Apr 29 08:29:44 2025 +1000
Merge remote-tracking branch 'svmhdvn/push-onupwmqqpspt'
commit d3e0782942e926f14d079f7c3d419e390a5d8a74
Merge: dea8d1ba d93b23b6
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Apr 29 08:25:48 2025 +1000
Merge remote-tracking branch 'arrufat/go-new-line-comment'
commit dea8d1ba36d77af59cf97cc72d2f91e6c6c73848
Merge: 76de76e5 0e5ed571
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Apr 29 08:25:25 2025 +1000
Merge branch 'fix-rust-return' of https://github.com/vbauerster/kakoune
commit 76de76e5d0f1f0fb197f947f000140102524e0dc
Merge: 761ac45e 2292e108
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Apr 29 08:24:16 2025 +1000
Merge remote-tracking branch 'nojhan/feat-filetype-ttl'
commit f0440b8e6cba7a3fe40b5f3be4c094f7dfca26c5
Author: thacuber2a03 <70547062+thacuber2a03@users.noreply.github.com>
Date: Sun Apr 27 19:36:04 2025 -0400
rc/filetype/moon.kak: more small changes
commit cdb6ee25d393afb042a8246cd80e73b3d5bede7e
Author: thacuber2a03 <70547062+thacuber2a03@users.noreply.github.com>
Date: Sun Apr 27 19:12:51 2025 -0400
rc/filetype/moon.kak: extra adjustments
commit bb0021b1583f192796e434d624edbf775d8570d4
Author: thacuber2a03 <70547062+thacuber2a03@users.noreply.github.com>
Date: Sun Apr 27 17:59:29 2025 -0400
rc/filetype/moon.kak: overhaul
commit 03b7f70873cc7a3401e9b526d97c1812eefe8bdd
Author: Shawn Wallace <yungwallace@live.com>
Date: Thu Apr 17 12:00:20 2025 -0400
Document built in command switch behavior
commit 41d5b36c6a57f8f533c90c0644c0fdf98e0e373e
Author: Siva Mahadevan <me@svmhdvn.name>
Date: Wed Apr 16 19:15:40 2025 -0400
filetype/prolog: fix comment highlighters
commit d93b23b6a3c1e3c09a20bf95fa21cc71b3746c91
Author: Adrià Arrufat <adria.arrufat@gmail.com>
Date: Mon Apr 14 15:38:56 2025 +0900
improve inserting comments on new lines for go
Now it matches the behavior from c-family, python, and zig
commit 0e5ed571e08c2ad317333755974305ebb9c93be9
Author: Vladimir Bauer <vbauerster@gmail.com>
Date: Fri Apr 11 18:55:13 2025 +0500
rc filetype rust: hl return as keyword
That line makes return keyword to highlight same color as macro plus
bold which makes it look like a macro. I'm not sure if it was done on
purpose but it's wrong. Return is the same keyword like any other so why
make it look apart?
commit 2292e1087c14cbb5fa566122ecda4b3a678fec36
Author: nojhan <nojhan@nojhan.net>
Date: Thu Apr 10 11:08:07 2025 +0200
feat(filetype): ttl syntax highlighter
commit 761ac45e61531a8aa5fb0536d692959ee23c0c12
Author: Eric <ericv8v9s@outlook.com>
Date: Wed Apr 9 03:16:55 2025 -0400
Fixed latex highlighter escaping math mode
Previously, using any macro in math mode (e.g. `$x \in X$`)
causes the whole thing to fail to be recognized as math
because the macro (`\in`) would be captured by the "cs" region.
commit 922607221b8e5b2683babb9ebeba9372e97b836c
Merge: 0a0d2905 a75c693c
Author: Maxime Coste <mawww@kakoune.org>
Date: Sat Apr 5 09:46:25 2025 +1100
Merge remote-tracking branch 'eraserhd/Rmd-is-markdown'
commit 0a0d29053a744c0e94511d3b1a2be9653d0a13e1
Author: Adrià Arrufat <adria.arrufat@gmail.com>
Date: Thu Apr 3 14:37:55 2025 +0900
update zig builtins
commit 424a7ee8aaaa5ac23355bcabcebf485e6a63c9c3
Author: Maxime Coste <mawww@kakoune.org>
Date: Wed Apr 2 17:45:11 2025 +1100
Reduce include creep
commit 63efcc06d5bee7f05a1ee9539b2391c80e5d6205
Author: Maxime Coste <mawww@kakoune.org>
Date: Wed Apr 2 17:35:23 2025 +1100
Tweak ranked match behaviour to consider the number of full words
Tracking the number of query words that appear as full words in the
candidate seems to fix a few cases where the existing fuzzy matching
algorithm was not great.
I have been running with this for a while and did not notice any
annoyances, the whole RankedMatch code probably deserves more attention
but this seems to go in the right direction.
commit a75c693cf1eb1b51862411a70475c2e84abc42a8
Author: Jason Felice <jason.m.felice@gmail.com>
Date: Mon Mar 31 19:09:46 2025 -0400
Handle Rmd
commit c7d688f578c7b58989fc04e7bb1e9b5a939a5730
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sun Mar 23 16:08:43 2025 +0100
Revert "editorconfig: fix trim_trailing_whitespace"
https://editorconfig.org says
> trim_trailing_whitespace: set to true to remove any whitespace
> characters preceding newline characters and false to ensure it
> doesn't.
We also trim trailing empty lines, which causes unnecessary formatting
discrepancies when working with other tools that implement the specification
only.
This backs out commit 33f44f6abcd758977e346adb91b991c003725281.
Cc: Jonathan Halmen <jonathan@halmen.org>
commit 0785de6173e5532e9eae3bcde595ed48dfe0fb75
Author: Maxime Coste <mawww@kakoune.org>
Date: Wed Mar 26 09:11:05 2025 +1100
Remove unused variable
commit 40751c033d5482d5dd56cd83f2f4e130dbb102f7
Author: Maxime Coste <mawww@kakoune.org>
Date: Wed Mar 26 09:09:16 2025 +1100
Make sure captures are taken into account when comparing selections
sel1 == sel2 was using BasicSelection::operator==, ignoring captures,
which led to selection history deciding that selection did not change
in some cases where only the captures had been updated and for the
new selection not to be properly applied, leading to missing capture.
commit 04accbb26734fe3f91443ee8567d275a09020f27
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Mar 25 08:21:17 2025 +1100
Bump build to c++23
commit 807e04654cb52e128d40f9f05365104d9e7f51d6
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Mon Mar 24 01:30:22 2025 +0100
rc git: fix blame/blame-jump/apply on files with eolformat=crlf
<a-|> produces \n line endings, which confuses Git when the tracked file
uses \r\n line endings. Work around that.
commit 1c50bcd8943e104081090ee1cbaf6e367d75ca4e
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Mon Mar 24 01:35:32 2025 +0100
rc git: clarify reason for NormalIdle hook
When blame and blame-jump invoke "git show" they set a BufCloseFifo hook to
display a statusline message and center the viewport.
As mentioned in the previous patch (which fixed a copy-paste error), the
statusline message does not need a NormalIdle hook. Move it to prevent
such errors.
commit f1ce997cc4175ffc00e6f789e8a92c8afe4d811a
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Mon Mar 24 01:35:31 2025 +0100
rc git: display error from git blame immediately
When "git blame" fails, it prints an error message to the status line via
a NormalIdle hook. But the hook is only necessary for "execute-keys vv".
(as a workaround for https://github.com/mawww/kakoune/issues/5082).
Since we run "git blame" in the background, it will not trigger a NormalIdle
hook when finished. This means that the "failed to run git blame" message
will only be shown after the next key press.
This problem can be reproduced by first adding a sleep here:
diff --git a/rc/tools/git.kak b/rc/tools/git.kak
index 05e6ff144..bd899365f 100644
--- a/rc/tools/git.kak
+++ b/rc/tools/git.kak
@@ -301,4 +301,5 @@ define-command -params 1.. \
echo 'echo -markup {Information}Press <ret> to jump to blamed commit'
(
+ sleep .1
trap - INT QUIT
if [ -z "${kak_opt_git_blob}" ]; then
and then running ':git blame' in a file that is not Git-tracked.
Reduce the scope of the hook to show this error message immediately.
commit b242a4e049cb94e304183472ab81b027d67c31d6
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sun Mar 23 16:16:25 2025 +0100
Fix prompt history recording when using mapped keys
Commit e3122ab2c (Refactor prompt history handling, 2023-07-05) was a nice
simplification but it breaks a rare edge case. It suppresses history
recording if all keys the prompt receives were synthesized. That's not
quite the right criteria:
it means that if prompt is created, edited and and executed, all via mapped
keys, we fail to add to history.
The criteria should rather be something like "if all keys the prompt receives
came from synthesized events".
Make it so. This allows us to get rid of the "noninteractive" nested bool
that was only used for disabling history.
commit 6fa99d403c0d5884610fd23e59a2fc10ed258a9a
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sun Mar 23 16:16:24 2025 +0100
Default InputHandler::handle_key() synthesized argument
We have only one place where we handle actual keys typed by the user.
commit 43782d0ca11b4eff14ff3ab8274de20140f3567c
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sun Mar 23 15:58:57 2025 +0100
rc git: fail blame-jump explicitly when there is no client
My
kak -e 'hook global WinCreate /.* %{ git blame-jump }; edit README.asciidoc'
hangs until I cancel it with <c-c>.
The error is
error while waiting for shell: 1:1: 'evaluate-commands': 3:21: 'execute-keys': no such client: '-draft'
git blame-jump cannot do anything useful without a client in context, so
fail early and explicitly.
commit daaa32104fcbafdecd2f6eec15975dca3b7cc665
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sun Mar 23 15:59:58 2025 +0100
rc git: throw an error when diffutils is not installed
Some of our git wrappers use the diff utility; if it's not installed we'll
hang because no one is opening the fifo for reading. For example, this
happens when running
chmod -x $(which diff) &&
kak -e "edit README.asciidoc; git apply"
Fail earlier, I guess -- although it's probably fine as-is.
commit d433eb27c9944af33cd01acbef14a0220ad55251
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sun Mar 23 16:01:53 2025 +0100
rc git: blame to not hide error when cd_bufdir fails
Running "git blame" in a scratch buffer echoes "Press <ret> to jump
to blamed commit" even though the blaming clearly fails. The failure
is silent because cd_bufdir exits the shell, so we don't even attempt
to run "git blame". cd_bufdir prints a "fail" command stdout but that
goes to /dev/null in this case.
I don't really understand why 891a9f5fe (Merge remote-tracking branch
'lenormf/fix-git-tools', 2019-09-22) moved cd_bufdir inside this
background subshell. I guess it didn't matter as much back then when
we didn't have the "Press <ret> to jump" message. Also the existing
error message printed by cd_bufdir for scratch buffers is confusing.
Fail as early as possible, showing a suitable error. Note that "git blame"
does work in filetype=git-diff and filetype=git-log buffers, so don't attempt
cd_bufdir inside those.
commit 796ccc45f0bcabb31c1ac5df36d2ced082ad294d
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sun Mar 23 16:06:23 2025 +0100
rc git: fix blaming when in subdirectory
When $PWD is different from $(git rev-parse --show-toplevel, recursive blaming is broken.
For example (assuming k moves to a delted line):
kak -e 'cd src; edit main.cc; git blame-jump; hook -once g NormalIdle .* %{ exec k; git blame-jump }'
Fix this by
1. computing the correct path from diff-parse (we already require
the git command be run in a git directory).
2. passing absolute paths to the recursive "git blame" invocations
commit eee362087dab83df7ddd7302f9182097642497a8
Author: Maxime Coste <mawww@kakoune.org>
Date: Sat Mar 22 15:51:05 2025 +1100
Improve info box clearing behaviour
Schedule clearing of the info box from normal mode even if mode
was disabled, clear on insert idle as well.
Fixes #5300
commit e4858054449de932315225755b98f50554b79d6f
Merge: c46b663e 153c592e
Author: Maxime Coste <mawww@kakoune.org>
Date: Sat Mar 22 14:41:28 2025 +1100
Merge remote-tracking branch 'vanillajonathan/prql'
commit c46b663e3ed46b784f92d1c364599e383cda44f9
Merge: 2b37548b db0737c1
Author: Maxime Coste <mawww@kakoune.org>
Date: Sat Mar 22 14:40:01 2025 +1100
Merge remote-tracking branch 'OliveIsAWord/master'
commit 2b37548b5e8839dd22dc5ac21196e0e5d835a3d1
Merge: da5e5bc6 302001d8
Author: Maxime Coste <mawww@kakoune.org>
Date: Sat Mar 22 14:37:53 2025 +1100
Merge remote-tracking branch 'lenormf/fix-user-mode-lock'
commit 153c592e70bca74d1a5804c0806a8ff014db1c48
Author: Jonathan <vanillajonathan@users.noreply.github.com>
Date: Tue Mar 18 14:13:25 2025 +0000
Add syntax highlighting for PRQL
PRQL is a modern language for transforming data — a simple, powerful, pipelined SQL replacement.
https://prql-lang.org/
https://github.com/PRQL/prql
commit 203a375530fdf10f8add807066836c2f1119d1d9
Author: Jonathan <vanillajonathan@users.noreply.github.com>
Date: Tue Mar 18 14:08:40 2025 +0000
vanillajonathan 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.
commit db0737c190390f7abccca5d2628b824ba0d7b171
Author: Olive <89336634+OliveIsAWord@users.noreply.github.com>
Date: Mon Mar 10 17:55:37 2025 -0600
minor grammar fix
commit 1a394df9c63b0237f9f235703252d8fdf722bfaf
Author: OliveIsAWord <89336634+OliveIsAWord@users.noreply.github.com>
Date: Mon Mar 10 17:15:35 2025 -0600
OliveIsAWord 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.
commit da5e5bc635fa6a3def21d3d59906b9ee0f1d1831
Author: Maxime Coste <mawww@kakoune.org>
Date: Fri Feb 28 23:57:04 2025 +1100
contrib/gendocs.py: Try 'npx antora' if 'antora' is not available
commit 11f631983044128444e83563c93cb98b0bc524cd
Merge: 3a227db9 b548d7c2
Author: Maxime Coste <mawww@kakoune.org>
Date: Fri Feb 28 23:31:12 2025 +1100
Merge remote-tracking branch 'igor-ramazanov/contrib/gendocs.sh'
commit 3a227db9a22bd7a3f3169294d57ea9016428eddc
Author: Maxime Coste <mawww@kakoune.org>
Date: Fri Feb 28 12:34:01 2025 +1100
Try to fix cirrrus-ci builds
commit 8c38d9bbe0b399f0c26952ba835fb303f73627cb
Merge: bb6f4f0d 5bb6d066
Author: Maxime Coste <mawww@kakoune.org>
Date: Fri Feb 28 12:09:14 2025 +1100
Merge remote-tracking branch 'velrest/gjs' into HEAD
commit bb6f4f0da24a00fb5738221b58bc9f30b5438bb6
Merge: f31d6953 1e5efaa0
Author: Maxime Coste <mawww@kakoune.org>
Date: Wed Feb 26 20:45:48 2025 +1100
Merge branch 'patch-1' of https://github.com/Supreeeme/kakoune into HEAD
commit f31d69538396839bae3216b3d4af217c38e229b9
Merge: dac924b3 3df30b66
Author: Maxime Coste <mawww@kakoune.org>
Date: Wed Feb 26 20:45:11 2025 +1100
Merge remote-tracking branch 'dontlaugh/master' into HEAD
commit dac924b3ac02f83b0354e3e997c69303ebebe656
Merge: 2f895404 c5f15d1a
Author: Maxime Coste <mawww@kakoune.org>
Date: Wed Feb 26 20:44:33 2025 +1100
Merge remote-tracking branch 'thacuber2a03/master' into HEAD
commit 2f8954045cd497720afd7989851d2f8f058295dc
Merge: 1eec81b5 9a80568e
Author: Maxime Coste <mawww@kakoune.org>
Date: Wed Feb 26 20:44:09 2025 +1100
Merge remote-tracking branch 'TeddyDD/doc-kakoune-runtime-manpage' into HEAD
commit 1eec81b5311f6954a34e481eec8298cf0d436adb
Author: Maxime Coste <mawww@kakoune.org>
Date: Thu Feb 20 08:11:18 2025 +1100
Try to fix MacOS compilation
commit b3f95ee69b4cf8b5ad643647f96adb5cdf0f3997
Author: Maxime Coste <mawww@kakoune.org>
Date: Wed Feb 19 22:08:11 2025 +1100
Slight style tweaks
commit f910d6cb657ff39df5c536929e4146f88acda93f
Author: Maxime Coste <mawww@kakoune.org>
Date: Wed Feb 19 22:03:56 2025 +1100
Move command/filename completion logic to completion.cc
Refactor list_files to use a callback instead of returning a vector,
file.cc/hh should not know about completion logic.
commit eb7d34333b0698e8e1a8af4f2be908ab08cb2089
Author: Maxime Coste <mawww@kakoune.org>
Date: Wed Feb 19 20:58:49 2025 +1100
Cleanup file.cc/hh dependencies
file.cc/hh should not know about Context, Buffer, etc... It should
be a pretty low level set of helper functions. Move buffer related
functions to buffer_utils and extract busy indicators to callers.
commit 1e5efaa0fa7917e558d270d95ed2c7e398e9653b
Author: Shawn Wallace <yungwallace@live.com>
Date: Tue Feb 18 10:45:59 2025 -0500
rc git: Use wider characters for added/modified lines
commit 9eda509282ebc881207c2d8278085cb53835641c
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Tue Feb 18 09:00:14 2025 +0100
rc git: fix blame in diff of deleted/renamed files
The code paths around "Missing commit line, assume it is an uncommitted
change" in both blame and blame-jump code look suspiciously similar.
It's possible that we can extract at least something, but there is
a fundamental difference: blame-jump only jumps to another diff,
while blame jumps from diff to blob, which may be a good reason for
keeping them separate.
More specifically, blame-jump passes « $version = "-" » because it's
only interested in the parent commit/file/line, whereas blame wants
to default to using the child commit/file/line (for added and context
lines) and only uses the parent commit/file/line when run on deleted
lines or on uncommitted changes (where HEAD is assumed to be parent
commit even if there is no child).
Unfortunately the blame path forgot to change to use the parent file
for these; fix that and get rid of some code duplication.
commit 72bfe0153b47196b335c51553a1707beddab69aa
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Tue Feb 18 09:00:13 2025 +0100
rc git: remove dead code
This branch is always taken since we check $diff_line_text above.
commit e1b0473cec1497e79205f5ba9a101c159dfc809d
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Tue Feb 18 09:00:12 2025 +0100
rc git: remove else after return
commit 026284deb250ae420ea97f90a716fdda3ab6224f
Author: Maxime Coste <mawww@kakoune.org>
Date: Sun Feb 16 10:17:00 2025 +1100
Revert "WIP history register"
This is not finished yet, and pushed by accident, again...
This reverts commit 22b461c3a0b22dd4501943230f0774c34f0b4b35.
commit b548d7c2b9c0e90249e956bbfdd78ff5fad3c2d5
Merge: ce4dc805 0a4bea85
Author: Igor Ramazanov <igor.ramazanov@protonmail.com>
Date: Wed Feb 12 23:46:00 2025 +0000
Merge branch 'mawww:master' into contrib/gendocs.sh
commit 9a80568e300821dd882eb260f47356a08c5cf010
Author: Daniel Lewan <daniel@teddydd.me>
Date: Mon Feb 10 14:13:10 2025 +0100
Document KAKOUNE_RUNTIME in manpage
commit 0a4bea856fe6ddd6420d6d7141b20eed8fe0bd25
Author: Johannes Altmanninger <aclopte@gmail.com>
Date: Sun Jan 26 08:37:12 2025 +0100
Format blamed commit timestamps using the original time zone
Surprisingly, these two commands show different commit times:
git blame README.asciidoc
kak -e 'git blame' README.asciidoc
This is because git shows times as of the original time zone (of the
author/committer). Our blame integration uses the current local time.
- blame-jump displays the date in the status line of a git-show buffer
This date may be inconsistent with the buffer's "Date:" header,
so this seems surprising. Fix that. This fixes a test in some
time zones.
- Unlike "git blame", our ":git blame" does not display time zone
info by default. So, the conversion to localtime might make sense.
I don't really have an opinion on this. Change it too I guess,
since the current behavior might not have been intended.
Fixes #5285
commit 22b461c3a0b22dd4501943230f0774c34f0b4b35
Author: Maxime Coste <mawww@kakoune.org>
Date: Mon Feb 10 11:58:23 2025 +1100
WIP history register
commit c5f15d1a3d52e2769cb842d4e7746f042c100555
Author: thacuber2a03 <70547062+thacuber2a03@users.noreply.github.com>
Date: Tue Feb 4 23:43:17 2025 -0400
rc/filetype/lua.kak: fix some highlighter issues
commit a6b12ffd1e0c345d4d73462d855c4822b4cf5234
Author: Maxime Coste <mawww@kakoune.org>
Date: Wed Feb 5 12:55:33 2025 +1100
Make Control modifier quote inserted registers in prompt mode
It is often usefull to quote the inserted register, like when doing
`:grep <c-r>/`, or when pulling selected filenames with `<c-r><a-.>`.
commit 3df30b663f3bac3851955e367f6d35ebe85d96aa
Author: Coleman McFarland <43583445+dontlaugh@users.noreply.github.com>
Date: Tue Feb 4 14:56:41 2025 -0500
Change kak_expect_throw macro to use alignof
commit 8b3ddd5df547130b55280debcfc29d5dad7eb9b2
Merge: 9fcd541d d6f820ef
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Feb 4 19:35:56 2025 +1100
Merge branch 'master' of https://github.com/rowanxshi/kakoune
commit 9fcd541d466296373d82a84ed23c6d13804f1141
Merge: 4599a6b9 4ffa6fc7
Author: Maxime Coste <mawww@kakoune.org>
Date: Tue Feb 4 19:28:07 2025 +1100
Merge remote-tracking branch 'mu-suwi/fix-fennel-highlight'