| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2024-10-22 | Remove now unused CompletionFlags | Maxime Coste | |
| Since shell-script-completions now runs the script asynchronously and unconditionally, there is no use for the CompletionFlags::Fast anymore which means we can remove that type altogether. | |||
| 2024-08-16 | include headers cleanup | Adrià Arrufat | |
| 2023-11-14 | Use a separate copy of the command completer for each completion | Maxime Coste | |
| This make the completer lifetime tied to the Prompt mode and removes the need for the Start flag. It also makes it possible to cleanup on completer destruction. | |||
| 2023-05-04 | Add support for recursive expansions with %exp{...} | Maxime Coste | |
| %exp{...} just expands its content the same way double quoted strings do, but using a named expansion type makes it possible to use the more quoting mechanism to avoid quoting hell. | |||
| 2023-02-14 | Immediately execute ModuleLoaded hooks for already loaded modules | Maxime Coste | |
| This is trickier than expected because ModuleLoaded hooks can (as any other hooks) use arbitrary regular expressions for their filter. Fixes #4841 | |||
| 2022-03-06 | Add a complete-command command to configure command completion | Maxime Coste | |
| This makes it possible to change command completion in hooks and paves the way to more flexibility in how custom commands can be completed | |||
| 2021-07-09 | Remove command parsing Reader and just track a ParserState | Maxime Coste | |
| The Reader abstraction was leading to suboptimal code by encouraging decoding utf8 separately from advancing to next codepoint. | |||
| 2021-06-24 | Only compute command coordinates when necessary | Maxime Coste | |
| Tracking the line/column of each token takes a surprising big part of the command parsing logic runtime and is only necessary when we hit an error. | |||
| 2021-05-18 | Fix completion past explicitely closed tokens | Maxime Coste | |
| This fixes an issue where completion would still be provided after the closing character of a token, which could then get frustrating combined with auto-insertion of completions. For example, inserting `%{<newline>}` for a command-completed token (such as the commands for a hook) would still trigger completion right after the `}` and that completion would get auto-inserted **replacing** that closing `}`. | |||
| 2020-07-19 | Code style tweaks | Maxime Coste | |
| 2020-06-16 | A module is not loaded after failing during load | Maxime Coste | |
| distinguish the loading from loaded state, detect recursive loading. | |||
| 2020-03-13 | Handle invalid utf8 in command line a bit better | Maxime Coste | |
| Reduce the amount of decoding by working directly on bytes. Fixes #3388 | |||
| 2019-12-24 | Fix command error line/column reporting | Maxime Coste | |
| 2019-10-23 | Add a -verbatim switch to evaluate-commands for perfect forwarding | Maxime Coste | |
| -verbatim will disable argument parsing in evaluate-commands, making it possible to forward a single command to a different context without triggering a reparsing of the arguments. Fixes -try-client support in grep.kak Closes #3153 | |||
| 2019-09-01 | Introduce FunctionRef to replace std::function when not storing | Maxime Coste | |
| std::function is not necessary when we just want to pass a type erased callback that does not need to own its target. FunctionRef provides that functionality for a much lower compile time cost. | |||
| 2019-05-13 | Add completion support to load-module | Maxime Coste | |
| 2019-04-08 | Added 'provide-module' and 'require-module' commands | Justin Frank | |
| 2019-04-07 | Add support for %file{...} expansions | Maxime Coste | |
| This should make the use case exposed in #2836 implementable. | |||
| 2018-07-05 | Make expansion of strings support quoting of % by doubling up | Maxime Coste | |
| 2018-02-15 | CommandManager: refactor parsing of commands to iterate through tokens | Maxime Coste | |
| Avoid storing a big vector of tokens, read them one by one, and store only the current command. | |||
| 2018-02-09 | CommandManager: Use byte rather than columns for token positions | Maxime Coste | |
| Not only are display columns rarely used to give error positions, but they make the parsing much slower as for each token we need to compute the column in the line. | |||
| 2017-11-04 | CommandManager: tweak naming | Maxime Coste | |
| 2017-09-01 | Make Token a simple aggregate | Maxime Coste | |
| 2017-06-29 | Remove some dead code | Maxime Coste | |
| 2017-04-10 | Remove some now unneeded uses of const String& params | Maxime Coste | |
| HashMap supports finding String from StringView. | |||
| 2017-03-16 | Fixes some clang-tidy warning and add a few missing meta.hh include | Maxime Coste | |
| 2017-03-15 | Small code tweaks regarding flags handling | Maxime Coste | |
| 2017-03-15 | Migrate WithBitOps template specialization to with_bit_ops function | Maxime Coste | |
| This way we dont depend on knowing the base template to enable bit ops on an enum type. | |||
| 2017-03-07 | Replace uses of UnorderedMap with HashMap | Maxime Coste | |
| 2017-01-29 | Detect too deep command call stack | Maxime Coste | |
| Fixes #1163 | |||
| 2016-12-23 | Display the command prompt in error face when the command is not found | Maxime Coste | |
| Fixes #1021 | |||
| 2016-12-07 | Ensure content of expanded strings in modelinefmt is not interpreted as markup | Maxime Coste | |
| 2016-10-01 | Support codepoints of variable width | Maxime Coste | |
| Add a ColumnCount type and use it in place of CharCount whenever more appropriate, take column size of codepoints into account for vertical movements and docstring wrapping. Fixes #811 | |||
| 2016-09-18 | Rewrite PerArgumentCommandCompleter to use compile time dispatching | Maxime Coste | |
| No need to store these vectors of std::functions around anymore. | |||
| 2016-08-05 | Regenerate shell-candidates for each completion sessions | Maxime Coste | |
| That should allow fixing the #665 issue while still avoiding to run a potentially long shell command on each keystroke. | |||
| 2016-03-24 | Add completion support for alias/unalias commands | Maxime Coste | |
| 2016-03-08 | Use ranked match based completion for command names | Maxime Coste | |
| 2015-12-12 | Optimize the dynregex case where the expression refers directly to a regex ↵ | Maxime Coste | |
| option | |||
| 2015-10-23 | Fix optimized linkage | Maxime Coste | |
| 2015-10-22 | Pass ShellContext to commands | Maxime Coste | |
| Fix #427 | |||
| 2015-10-22 | Wrap the shell params en env vars in a ShellContext struct | Maxime Coste | |
| 2015-09-19 | Initial support for user configurable modeline with the modelinefmt option | Maxime Coste | |
| modelinefmt is first sent through a command line expander (so %sh{...}, %val{...} et al. are expanded), then through markup expand (so that {face} are interpreted as well) | |||
| 2015-06-26 | Add support for command completion on commands, use it for :new | Maxime Coste | |
| That means commands can be completed using other commands and their completers. Yes that does makes sense. Closes #296 | |||
| 2015-05-04 | Make expand function (that expand %...{} tokens) public | Maxime Coste | |
| 2015-03-09 | ArrayView content is not const anymore | Maxime Coste | |
| As in upcoming std c++ array_view, ArrayView<T> points to mutable data, use ArrayView<const T> or alias ConstArrayView<T> for const data. | |||
| 2015-02-08 | Add optional helper for commands, to get parameter dependent help | Maxime Coste | |
| Use for the set command to document options. | |||
| 2015-01-12 | Yet more tracking | Maxime Coste | |
| 2015-01-06 | Rename memoryview to ArrayView | Maxime Coste | |
| 2014-12-16 | Rework hashing, use a more extensible framework similar to n3876 proposal | Maxime Coste | |
| std::hash specialization is a pain to work with, stop using that, and just specialize a 'size_t hash_value(const T&)' free function. | |||
| 2014-10-30 | Add scoped aliases | Maxime Coste | |
| aliases are now stored in window, buffer, or globally. | |||
