summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2017-05-07Introduce highlighting phases and display setup computationMaxime Coste
Highlighters now run in 3 phases: Wrap, Move, and Colorize. That way we guarantee the wrap highlighter runs first, then eventual line numbers/flags, and finally the colorizers. We also run a `compute_display_setup` method thats responsible for computing the lines that will be displayed, eventually scrolling the view to ensure the cursor is visible.
2017-05-07Add a wrap highlighterMaxime Coste
2017-05-07Do not use any display information to determine where the cursor movesMaxime Coste
2017-05-07Fix use of invalidated iterator in the command map on exceptionMaxime Coste
The command map can get mutated by command execution, so the iterators can get invalidated (now that we use our curstom HashMap implementation, all iterators are potentially invalidated by insert/removal)
2017-04-25Support appending selections to empty registerMaxime Coste
Fixes #1332
2017-04-24Style tweak in highglighters.ccMaxime Coste
2017-04-23Add noexcept specifiers to unicode and utf8 functionsMaxime Coste
2017-04-22Set stdin to /dev/null instead of closing it when we dont have data to pipe ↵Maxime Coste
to child Fixes #1330 Fixes #1331
2017-04-20Fix generation of empty erase changesMaxime Coste
Fixes #1308
2017-04-20Merge remote-tracking branch 'lenormf/command-force-write'Maxime Coste
2017-04-20Change utf8::to_next/to_previous so that they are more symetricalMaxime Coste
The previous implementation could yield different positions when iterating forward and backward, leading to confusion in boost regex. This makes an existing problem a bit more visible: iterating with to_next and with read_codepoint wont behave the same way, as read_codepoint will put the iterator onto the byte following the utf8 codepoint, whereas to_next will put it on the next utf8 character start byte, which might be different if the buffer content is not valid utf8. Fixes #1195
2017-04-20src: Implement a `write!` commandFrank LENORMAND
This commit allows "forced" writes to a write-protected file, by attempting to temporarily grant the current user write permissions on it. After the buffer has been written, the previous permissions are restored if the file existed, or set to 0644 otherwise.
2017-04-20Assume filename passed to write_buffer_to_file is already parsedMaxime Coste
2017-04-19Safer code for parsing commandsMaxime Coste
Fix some possible past the end of target string reads Fixes #1310 (maybe, probably, who knows)
2017-04-19Fix uninitialised value for cursor modeMaxime Coste
2017-04-19Do not try to split non range atoms in column highlighterMaxime Coste
That means we wont have a very nice interaction between show_whitespaces and column highlighters, but thats the simplest fix for now, if we want a better behaviour we need to introduce a way to know that a replaced range is splittable (meaning it means to have the same amount of columns as the range it replaces) Fixes #1275
2017-04-17When not sending data to a subprocess, close its stdinMaxime Coste
We were letting stdin untouched, which meant child processes had access to our terminal input. That meant `!fmt` was trying to read from our terminal input and catching keystrokes. Fixes #1281
2017-04-12Place hardware terminal cursor at the current main cursor/prompt cursor positionMaxime Coste
Fixes #1318 Also fixes https://gitlab.com/gnachman/iterm2/issues/5408
2017-04-11Name key '+' as plus and '-' as minusMaxime Coste
2017-04-11Change multi modifier key syntax to be <c-a-space> instead of <ca-space>Maxime Coste
Better fix for #1311
2017-04-10Merge remote-tracking branch 'lenormf/fix-filter-backup-suffix'Maxime Coste
2017-04-10Remove some now unneeded uses of const String& paramsMaxime Coste
HashMap supports finding String from StringView.
2017-04-10Add support for parsing multiple modifiers in keysMaxime Coste
<ca-key> means control+alt key, <ac-key> works as well. Fixes #1311
2017-04-10src: Support the `-help` flagFrank LENORMAND
This commit allows a help message to be printed when a `-help` flag is passed to the editor, which will subsequently quit after a summary and a description of all the flags available have been displayed. The GNU convention (passing a single `--help` argument to the program) is also supported, although undocumented. The man page also now documents the `+:` argument, although unrelated to the original changeset.
2017-04-04ncurses: When hiding the menu, recompute the info positionMaxime Coste
2017-04-03Do not disable autoinfo and autoshowcompl in non interactive contextMaxime Coste
Fixes #1303 Fixes #1152
2017-04-03Change prompt completion to only update when idleMaxime Coste
2017-03-30Expose hook params regex captures in hook_param_capture_NMaxime Coste
2017-03-30Add an InsertDelete hookMaxime Coste
2017-03-27Merge remote-tracking branch 'lenormf/fix-makefile-distclean'Maxime Coste
2017-03-26src: Fix the `distclean` Makefile targetFrank LENORMAND
Have the Makefile remove the actual binaries and generated documentation when called with the `distclean` target
2017-03-24Remove some unneeded type declarations in AliasRegistryMaxime Coste
2017-03-23src: Introduce a `-i` suffix flag for filter backupsFrank LENORMAND
This commit allows the user to chose to backup the files on which a filter has been run, by specifying a suffix for the backup file. The former implementation always backed up the files with a hardcoded ".kak-bak" suffix. When no suffix is specified on the command line, the files are not saved. Fixes #1288
2017-03-22Try to fix clang 3.5 compilationMaxime Coste
2017-03-21Merge faces in show_whitespaces highlighter instead of replacing itMaxime Coste
2017-03-16Use a HashMap to store the normal mode keymapMaxime Coste
2017-03-16Fixes some clang-tidy warning and add a few missing meta.hh includeMaxime Coste
2017-03-16Try to clean up option include a bitMaxime Coste
2017-03-15Move enum/flags option functions to option_types.hhMaxime Coste
2017-03-15Small code tweaks regarding flags handlingMaxime Coste
2017-03-15Remove unneeded 'valid' helper templateMaxime Coste
2017-03-15Migrate WithBitOps template specialization to with_bit_ops functionMaxime Coste
This way we dont depend on knowing the base template to enable bit ops on an enum type.
2017-03-15Migrate to a more value based meta programming modelMaxime Coste
Introduce Meta::Type<T> to store a type as value, and pass it around, migrate enum_desc and option_type_name to this.
2017-03-15Move SelectionList::set implementation out of the headerMaxime Coste
2017-03-15The canonical name for the documentation command is :doc, not :helpMaxime Coste
2017-03-15src: Make the cursor character an opening delimiterFrank LENORMAND
This commit allows the editor to consider the character under the cursor as an opening delimiter when using an object selector, instead of ignoring it and looking for one before the cursor.
2017-03-14src: Align the assistant in the middle of the popupFrank LENORMAND
2017-03-11Increase modelinefmt configuration powerDan Rosén
2017-03-10Add dilbert in the ui_options doctringMaxime Coste
2017-03-10Merge remote-tracking branch 'lenormf/assistant-dilbert'Maxime Coste