summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-11-01Fix pasting all from empty registerMaxime Coste
Raise an error if the register is empty for paste-all Fixes #4414
2021-10-29Fix incorrect reading logic and EAGAIN handlingMaxime Coste
This is one of the issues raised by #4410
2021-10-29Complete alias command with existing alias namesMaxime Coste
2021-10-29Fix terminal underline color not being properly resetMaxime Coste
2021-10-28Kakoune 2021.10.28Maxime Coste
2021-10-25src/main.cc: Fix inline assembly syntax error on ARMRobert Clausecker
ARM uses @ as a comment character, so %progbits must be used in place of @progbits here. This change fixes the build on armv7 FreeBSD 13.0. Fixes mawww/kakoune/issues#4385 See also https://bugs.freebsd.org/259434
2021-10-24Merge remote-tracking branch 'lenormf/fix-2164'Maxime Coste
2021-10-24src: Make `gf` open all selected pathsFrank LENORMAND
The buffer whose path is under the main selection will be focused after all others have been opened. Closes #2164
2021-10-24Fallback to basic path on platforms where _CS_PATH is not definedMaxime Coste
This happens on termux for example.
2021-10-24Ensure rename-buffer uses a filename for file buffersMaxime Coste
Fixes #4391
2021-10-24Merge remote-tracking branch 'lenormf/fix-4340'Maxime Coste
2021-10-23src: Fix undefined behaviourFrank LENORMAND
Cppcheck produces the following warnings: ``` shared_string.hh:27:49: portability: Shifting signed 32-bit value by 31 bits is implementation-defined behaviour shared_string.hh:27:49: error: Signed integer overflow for expression '1<<31'. ``` Fixes #4340
2021-10-23src: Use pre-increment iterator syntaxFrank LENORMAND
Cppcheck produces the following warning: ``` string_utils.cc:24:9: performance: Prefer prefix ++/-- operators for non-primitive types. ``` Fixes #4340
2021-10-23src: Fix the API of `KeymapManager::add_user_mode()`Frank LENORMAND
Cppcheck produces the following warning: ``` keymap_manager.hh:54:37: performance: Function parameter 'user_mode_name' should be passed by const reference. ``` Fixes #4340
2021-10-23Use DECRQM/DECRPM to detect support for synchronized outputMaxime Coste
Enable it if supported by default, let the user override it with the existing terminal_synchronized ui option. This should finalize work discussed on #4317
2021-10-21src: Implement the `enumerate()` range filterFrank LENORMAND
2021-10-10Split InsertMode into InsertMode and PasteModeMaxime Coste
They are quite different use cases, and this allow moving InsertMode to input_handler.hh which is what uses it. This also cleans up the code as we can get rid of get_insert_pos and rely more on SelectionList::for_each.
2021-10-09Merge http://github.com/Jonta/kakouneMaxime Coste
2021-10-09Merge remote-tracking branch 'lenormf/fix-1840'Maxime Coste
2021-10-07GrammarJonta
2021-10-07Merge pull request #1 from Jonta/Jonta-grammar-an-highlighter-1Jonta
Grammar
2021-10-07GrammarJonta
2021-10-07GrammarJonta
2021-10-06src: Remove spurious `break`Frank LENORMAND
2021-10-06src: Allow `ga` to skip removed buffersFrank LENORMAND
This commit prevents `ga` from returning a “no last buffer” error when the previously displayed buffer was removed. Since the jumps list keeps track of the order in which buffers were displayed already, handling arbitrary `delete-buffer`s as well, cycle through it to implement `ga` instead of storing a pointer. Note that this commit doesn't take into account buffer flags that might exclude some buffers from being cycled over by commands. Fixes #1840
2021-10-06Merge remote-tracking branch 'lenormf/fix-3976'Maxime Coste
2021-09-30Merge remote-tracking branch 'lenormf/fix-4353'Maxime Coste
2021-09-30rework selection insert/replace using a for_each methodMaxime Coste
expose that method so that various commands can take advantage of it for performance or simplicity purposes.
2021-09-26Merge remote-tracking branch 'lenormf/modeline_readonly_status'Maxime Coste
2021-09-26Merge remote-tracking branch 'lenormf/patch-15'Maxime Coste
2021-09-26Restore diff based terminal output optimization when synchronizedMaxime Coste
terminal_synchronized ui_option now also controls this behaviour, update out of date documentation for ui_options as well. As discussed in #4317
2021-09-21Merge remote-tracking branch 'Screwtapello/add-diagnostic-faces'Maxime Coste
2021-09-21Merge remote-tracking branch 'lenormf/drop-travis'Maxime Coste
2021-09-21src: Show a `readonly` modeline tag when relevantFrank LENORMAND
2021-09-15src: Error out on unmapped key in `g` and `v`Frank LENORMAND
Fixes #4353.
2021-09-14src: Make `g` and `v` case sensitiveFrank LENORMAND
The current implementation allows users to declare mappings in the `goto` and `view` modes with uppercase letters, but doesn't consider case to be meaningful. This quirk is also inconsistent as hitting an unmapped key will quit the mode menu without complaints, but hitting a key that isn't in it will work if it has a lowercase mapping equivalent. Fixes #3976
2021-09-09src: Fix `on-key` usage docstringFrank LENORMAND
2021-09-09Remove scrolling detection/optimization in terminal outputMaxime Coste
Just validate if line changed or not. This should avoid flickering on terminals such as the linux console that eagerly redraw on line deletions. Unfortunately this means drawing will use more data and might add a bit of latency on slow links. Fixes #4317 Fixes #4320
2021-09-08src: Uninstall libexec properlyFrank LENORMAND
2021-09-08Fix set-face docstring to include underline colorMaxime Coste
2021-09-07Add standard DiagnosticError and DiagnosticWarning faces.Tim Allen
kak-lsp uses these faces to mark errors inside the buffer, instead of the Error face which is much more jarring, and which does not have an associated warning face. Since the :spell command marks errors inside the buffer, it's also updated to use this new face. Adding these faces to Kakoune makes it more likely that colorschemes will automatically do the right thing when used with kak-lsp, and makes it possible to use a subtle appearance (like curly underlines) for in-buffer errors while keeping Kakoune errors bold and jarring as they should be.
2021-09-07Add support for curly underline and separate underline colorMaxime Coste
Add support for a third color in face definition that controls the underline and a 'c' attribute for curly underline (that takes precedence over 'u' if both are specified) Allow empty colors to mean default, so that `,,red+u` means the same as `default,default,red+u` Fixes #4138
2021-09-05Fix strikethrough support in face to string conversionMaxime Coste
2021-09-04Add missing strikethrough in set-face docstringMaxime Coste
2021-09-02Remove unnecessary c_str() callsMaxime Coste
2021-09-02Remove terminal_wheel_up/down_button UI optionMaxime Coste
It seems nobody uses it, and it is not plugged through anyway. Closes #2642
2021-08-30Do not go through some temporary selections for indent/deindentMaxime Coste
This does not seem necessary and simplifies the logic
2021-08-30Take a function SelectionList::insert to get string to insertMaxime Coste
This makes it unnecessary to allocate Vector<String> to insert and allows to remove the insert_pos pointer hack by passing it to the callback.
2021-08-28Kakoune 2021.08.28Maxime Coste
2021-08-28Support info markup spanning multiple linesMaxime Coste
Preserve the active face accross lines Fixes #4313