| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2017-11-04 | src: Don't save whitespace-led commands in the `:` register | Frank LENORMAND | |
| 2017-11-04 | Remote: stricter validation of the session names | Maxime Coste | |
| Creating a session will not accept any slashes in the session path, connecting to an existing session will accept at most one slash to allow for specifying the session of a different user. Fixes #1635 | |||
| 2017-11-04 | Code style tweak | Maxime Coste | |
| 2017-11-03 | Merge remote-tracking branch 'lenormf/fix-rc-aliases' | Maxime Coste | |
| 2017-11-03 | Wrap: rework logic to avoid infinite loop with multiple wrap highlighters | Maxime Coste | |
| The display is still going to be wrong, as wrapping is going to take place multiple times, but Kakoune should not freeze anymore. | |||
| 2017-11-03 | Remove uneeded forward declaration | Maxime Coste | |
| 2017-11-03 | src rc: Rename `exec`/`eval` into `execute-keys`/`evaluate-commands` | Frank LENORMAND | |
| 2017-11-02 | Append '/' to highlighter group completion candidates | Maxime Coste | |
| 2017-11-02 | Wrap: change indent atom to be a replaced empty buffer range | Maxime Coste | |
| Avoid confusing the column highlighters. | |||
| 2017-11-02 | Add informations on -indent in wrap highlighter docstring | Maxime Coste | |
| 2017-11-02 | doc.kak: Render documentation internally instead of relying on man | Maxime Coste | |
| doc.kak now behaves as a basic asciidoc renderer. Asciidoc is unfortunately still a dependency to generate the manpage of the `kak` command. | |||
| 2017-11-02 | Ensure line-specs and range-specs options are sorted internally | Maxime Coste | |
| 2017-11-02 | Fix trailing spaces in highlighters.cc | Maxime Coste | |
| 2017-11-02 | Wrap: Add -indent switch support that wraps preserving line indent | Maxime Coste | |
| 2017-11-01 | Rename doc/manpages to doc/pages | Maxime Coste | |
| That fact we use man for these is an implementation detail. | |||
| 2017-11-01 | Document the regex impl switch in the startup message | Maxime Coste | |
| 2017-11-01 | Regex: Remove boost related code | Maxime Coste | |
| 2017-11-01 | Regex: fix RegexCompileFlags not being an enum class | Maxime Coste | |
| 2017-11-01 | Regex: slight readability improvement and workaround a potential gcc bug | Maxime Coste | |
| 2017-11-01 | Regex: remove dead code | Maxime Coste | |
| 2017-11-01 | Regex: Tweak struct layouts of ParsedRegex data | Maxime Coste | |
| 2017-11-01 | Regex: Remove "Ast" from names in the ParsedRegex | Maxime Coste | |
| It does not add much value, and makes names longer. | |||
| 2017-11-01 | Regex: Optimize parsing and compilation | Maxime Coste | |
| AstNodes are now POD, stored in a single vector, accessed through their index. The children list is implicit, with nodes storing only the node index at which their child graph ends. That makes reverse iteration slower, but that is only used for reverse matching regex, which are uncommon. In the general case compilation is now faster. | |||
| 2017-11-01 | Regex: minor cleanup of the regex parsing code | Maxime Coste | |
| 2017-11-01 | Regex: small code cleanup in the Save compilation code | Maxime Coste | |
| 2017-11-01 | Regex: put the other char boolean inside the general start char map | Maxime Coste | |
| 2017-11-01 | Fix ConstexprVector::resize | Maxime Coste | |
| 2017-11-01 | Regex: Fix handling of all unicode codepoint as start chars | Maxime Coste | |
| 2017-11-01 | Regex: fix wrong fallthough in dump_regex | Maxime Coste | |
| 2017-11-01 | Regex: refactor handling of Saves slightly, do not create them until really ↵ | Maxime Coste | |
| needed | |||
| 2017-11-01 | Regex: Go back to instruction based search of next start | Maxime Coste | |
| The previous method, which was a bit faster in the general use case, can hit some cases where we get quadratic behaviour and very slow matching. By using an instruction, we can guarantee our complexity of O(N*M) as we will never have more than N threads (N being the instruction count) and we run the threads once per codepoint in the subject string. That slows down the general case slightly, but ensure we dont have pathological cases. This new version is much faster than the previous instruction based search because it does not use a plain `.*` searcher, but a specific, smarter instruction specialized for finding the next start if we are in the correct conditions. | |||
| 2017-11-01 | Regex: add support for \0, \cX, \xXX and \uXXXX escapes | Maxime Coste | |
| 2017-11-01 | Regex: compute if codepoints outside of the start chars map can start | Maxime Coste | |
| 2017-11-01 | Regex: abort compilation as soon as we hit the instruction count limit | Maxime Coste | |
| 2017-11-01 | Regex: add a unit test for why lookaheads dont count for start chars anymore | Maxime Coste | |
| 2017-11-01 | Regex: comment the mutables in CompiledRegex::Instruction and fix their init | Maxime Coste | |
| 2017-11-01 | Regex: Introduce a Regex memory domain to track usage separately | Maxime Coste | |
| 2017-11-01 | Regex: use binary search to for character class ranges check | Maxime Coste | |
| 2017-11-01 | Regex: compute start chars from matchers, do not compute it from lookarounds | Maxime Coste | |
| Computing potential start characters from lookarounds is more complex than expected, and not worth the complexity. | |||
| 2017-11-01 | Regex: remove the need to a processed inst vector | Maxime Coste | |
| Identify each step with a counter, and check if the instruction was already processed this step. This makes the matching faster, by removing the need to maintain a vector of instructions executed this step. | |||
| 2017-11-01 | Regex: use intrusive linked list for the free saves instead of a Vector | Maxime Coste | |
| 2017-11-01 | Regex: rename "flags" with the more common "modifiers" | Maxime Coste | |
| 2017-11-01 | Regex: Correctly handle ignore case mode for start chars computation | Maxime Coste | |
| 2017-11-01 | Regex: Rework parsing, treat lookarounds as assertions, and flags separately | Maxime Coste | |
| 2017-11-01 | Regex: Limit programs to std::numeric_limits<uint16_t>::max() instructions | Maxime Coste | |
| 2017-11-01 | Regex: Fix reverse searching behaviour, again | Maxime Coste | |
| 2017-11-01 | Regex: limit explicit quantifiers value (too 1000 for now) | Maxime Coste | |
| Fixes #1628 | |||
| 2017-11-01 | Regex: Fix handling of ^ and $ in backward matching mode | Maxime Coste | |
| 2017-11-01 | Regex: Only reset processed and scheduled flags on relevant instructions | Maxime Coste | |
| On big regex, reseting all those flags on all instructions for each character can become the dominant operation. Track that actual instructions index processed (the scheduled are already tracked in the next_threads vector), and only reset these. | |||
| 2017-11-01 | Regex: Fix support for ignore case in lookarounds | Maxime Coste | |
