aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/edit.c
Commit message (Collapse)AuthorAge
...
* vim-patch:8.2.1673: complete_info() selected index has an invalid valueJan Edmund Lazo2020-12-03
| | | | | | | Problem: complete_info() selected index has an invalid value. (Ben Jackson) Solution: Set the index when there is only one match. (closes vim/vim#6945) Add test for complete_info(). https://github.com/vim/vim/commit/b806aa5bd910dba94fbde586f6019b4825813d28
* vim-patch:8.1.0805: too many #ifdefsJan Edmund Lazo2020-11-12
| | | | | | Problem: Too many #ifdefs. Solution: Graduate FEAT_MBYTE, part 1. https://github.com/vim/vim/commit/135059724f140ceac889c9f8136bd1bf5c41d49d
* fix: address issues for BufModifiedSetRom Grk2020-11-09
|
* fix: rename to BufModifiedSetRom Grk2020-11-07
|
* feat: implement BufModified autocmdRom Grk2020-11-07
|
* Merge branch 'master' into add-scroll-eventsRom Grk2020-11-03
|\
| * api: add API for themesBjörn Linse2020-11-01
| | | | | | | | | | | | | | | | | | | | co-author: hlpr98 <hlpr98@gmail.com> (dict2hlattrs function) orange is sus?? NOVEMBER DAWN erase the lie that is redraw_later()
| * vim-patch:8.1.1769: 'shellslash' is also used for completionskippi2020-10-26
| | | | | | | | | | | | Problem: 'shellslash' is also used for completion. Solution: Add the 'completeslash' option. (Yasuhiro Matsumoto, closes vim/vim#3612) https://github.com/vim/vim/commit/ac3150d385e6e3f3fe76642aac3cda954d30583f
| * vim-patch:8.2.0901: formatting CJK text isn't optimalJan Edmund Lazo2020-10-23
| | | | | | | | | | | | Problem: Formatting CJK text isn't optimal. Solution: Properly break CJK lines. (closes vim/vim#3875) https://github.com/vim/vim/commit/e52702f00322c8a8861efd0bd6a3775e685e5685
| * vim-patch:8.2.1874: can't do something just before leaving Insert modeJan Edmund Lazo2020-10-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Can't do something just before leaving Insert mode. Solution: Add the InsertLeavePre autocommand event. (closes vim/vim#7177) https://github.com/vim/vim/commit/b53e13a91ab2fc9d52bd044715daa84972f4ce47 N/A patches for version.c: vim-patch:8.1.1877: graduated features scattered Problem: Graduated features scattered. Solution: Put graduated and obsolete features together. https://github.com/vim/vim/commit/ffc0716af8e448ef8a2a3249edfd0260546933df vim-patch:8.2.1875: warning when building GTK gui Problem: Warning when building GTK gui. Solution: Add missing function parameter. https://github.com/vim/vim/commit/3da855c8e28140d9f02b1572e445f8d4f977cf64 vim-patch:8.2.1877: test for function list fails Problem: Test for function list fails. Solution: Move "obsolete" comments one line up. https://github.com/vim/vim/commit/b8f519e5382f9876ae7f8bc64d9814d07a8ef972 vim-patch:8.2.1878: GTK: error for redefining function Problem: GTK: error for redefining function. (Tony Mechelynck) Solution: Remove "gtk_" prefix from local functions and prepend "gui_" to global functions. https://github.com/vim/vim/commit/8a99e66b4f7616d9b0b9cefe742f82f9122087d5 vim-patch:8.2.1881: cannot build with GTK3 Problem: Cannot build with GTK3. Solution: Adjust form functions. https://github.com/vim/vim/commit/692d1a51e74fea2db3c7e9ae7c7c6c3a1a1945ee vim-patch:8.2.1883: compiler warnings when using Python Problem: Compiler warnings when using Python. Solution: Adjust PyCFunction to also have the second argument. Use "int" return type for some functions. Insert "(void *)" to get rid of the remaining warnings. https://github.com/vim/vim/commit/4ce5fe4c87820c7d22964d6e91d7b07e96640e6f
* | feat: implement a working WinScrolled autocmdRom Grk2020-10-28
| |
* | scroll: use win->w_viewport_invalidRom Grk2020-10-24
| |
* | scroll: cleanup unnecessary code & commentsRom Grk2020-10-24
| |
* | implement scroll autocommandRom Grk2020-10-21
|/
* Treat unmapped ALT/META as ESC+c in all modesMatt Wozniski2020-10-05
| | | | | | | | In #8226 <A-x> and <M-x> were changed to behave like <Esc>x in insert mode when no mapping exists. This commit backs out that change and replaces it with a more general one that makes unmapped ALT and META keypresses as <Esc>+char in all modes. This fixes an unnecessary and confusing inconsistency between modes.
* extmark: separate extmark_splice_cols for column-only changeBjörn Linse2020-09-09
| | | | as the byte logic will be the same for all of these
* vim-patch:8.2.0649: undo problem whn an InsertLeave autocommand resets undoJan Edmund Lazo2020-05-03
| | | | | | | Problem: Undo problem whn an InsertLeave autocommand resets undo. (Kutsan Kaplan) Solution: Do not create a new undo block when leaving Insert mode. https://github.com/vim/vim/commit/db93495d276642f63f80471fbcb900b9aa1e9e42
* vim-patch:8.2.0084: complete item "user_data" can only be a stringBlaž Hrastnik2020-04-29
| | | | | | Problem: Complete item "user_data" can only be a string. Solution: Accept any type of variable. (closes vim/vim#5412) https://github.com/vim/vim/commit/0892832bb6c7e322fcae8560eaad5a8140ee4a06
* vim-patch:8.1.2378: using old C style commentsJan Edmund Lazo2020-04-12
| | | | | | Problem: Using old C style comments. Solution: Use // comments where appropriate. https://github.com/vim/vim/commit/5d18efecfd6c45d69f55268948a22cd0465bb955
* vim-patch:8.1.0864 Make 'scrolloff' and 'sidescrolloff' options window local ↵Will Eccles2020-03-17
| | | | | | | | | | (#11854) Problem: cannot have a local value for 'scrolloff' and 'sidescrolloff' Author: Bram Moolenar https://github.com/vim/vim/commit/375e3390078e740d3c83b0c118c50d9a920036c7
* foldcolumn: allow auto:XMatthieu Coudron2020-02-29
| | | | | | | | Similar to signcolumn, allow foldcolumn to adapt itself to the number of folds. Regression: vim supports a maximum fdc of 12, this limits it to 9.
* PVS/V618: fix printf-style args #11888Justin M. Keyes2020-02-22
| | | | We intentionally do not translate API errors. ref: https://github.com/neovim/neovim/issues/6150
* clang/scan-build: fix dead stores #11900Hirokazu Hata2020-02-18
|
* vim-patch:8.1.0069: cannot handle pressing CTRL-C in a prompt buffererw72020-02-12
| | | | | | Problem: Cannot handle pressing CTRL-C in a prompt buffer. Solution: Add prompt_setinterrupt(). https://github.com/vim/vim/commit/0e5979a6d491f68c4a8c86fab489016919329a6b
* vim-patch:8.1.0036: not restoring Insert mode if leaving prompt buffer with ↵erw72020-02-12
| | | | | | | | | | mouse Problem: Not restoring Insert mode if leaving a prompt buffer by using a mouse click. Solution: Set b_prompt_insert appropriately. Also correct cursor position when moving cursor to last line. https://github.com/vim/vim/commit/891e1fd894720d0b99a9daefa41e8181844f819a
* vim-patch:8.1.0027: difficult to make a plugin that feeds a line to a joberw72020-02-12
| | | | | | Problem: Difficult to make a plugin that feeds a line to a job. Solution: Add the nitial code for the "prompt" buftype. https://github.com/vim/vim/commit/f273245f6433d5d43a5671306b520a3230c35787
* vim-patch:8.2.0158: triggering CompleteDone earlier is not backwards compatibleJan Edmund Lazo2020-01-26
| | | | | | | Problem: Triggering CompleteDone earlier is not backwards compatible. (Daniel Hahler) Solution: Add CompleteDonePre instead. https://github.com/vim/vim/commit/3f169ce17e8b779d105c96138a8b4246f2d270b9
* vim-patch:8.2.0152: restoring ctrl_x_mode is not neededJan Edmund Lazo2020-01-26
| | | | | | Problem: Restoring ctrl_x_mode is not needed. Solution: Remove restoring the old value, it's changed again soon. https://github.com/vim/vim/commit/da812e282a4e2d6d8c9604a3a2a38396437dfe20
* shed biking: it's always extmarks, never marks extendedBjörn Linse2020-01-20
|
* vim-patch:8.2.0123: complete_info() does not work when CompleteDone is triggeredJan Edmund Lazo2020-01-17
| | | | | | Problem: complete_info() does not work when CompleteDone is triggered. Solution: Trigger CompleteDone before clearing the info. https://github.com/vim/vim/commit/17e04781f26c24769e202351c194ee252927eee1
* vim-patch:8.1.0716: get warning message when 'completefunc' returns nothingJan Edmund Lazo2020-01-17
| | | | | | | Problem: Get warning message when 'completefunc' returns nothing. Solution: Allow for returning v:none to suppress the warning message. (Yasuhiro Matsumoto, closes vim/vim#3789) https://github.com/vim/vim/commit/cee9bc2e3dc5c16a9d2a8d0e23aa0d5fdefa3a4a
* extmarks/bufhl: reimplement using new marktree data structureBjörn Linse2020-01-16
| | | | | | | | | | | | | | | | | | | | Add new "splice" interface for tracking buffer changes at the byte level. This will later be reused for byte-resolution buffer updates. (Implementation has been started, but using undocumented "_on_bytes" option now as interface hasn't been finalized). Use this interface to improve many edge cases of extmark adjustment. Changed tests indicate previously incorrect behavior. Adding tests for more edge cases will be follow-up work (overlaps on_bytes tests) Don't consider creation/deletion of marks an undoable event by itself. This behavior was never documented, and imposes complexity for little gain. Add nvim__buf_add_decoration temporary API for direct access to the new implementation. This should be refactored into a proper API for decorations, probably involving a huge dict. fixes #11598
* edit.c: Ensure undo sync when emulating <Esc>x #11706Matthew Malcomson2020-01-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | After PR #8226 an unmapped META key in insert mode behaves like ESC-<key> (:help i_META). The behaviour does not fully match, since if <Esc>-<key> is pressed manually then since it were pressed manually `gotchars` would be called on the second <key> after insert-mode had already been left. This would mean that `may_sync_undo` (called from `gotchars`) would call `u_sync(FALSE)` on the second key (since we would be in normal mode). This overall means that <Meta-[something]> behaves differently with respect to undo than <Esc>[something] when the [something] makes a change. As an example, under `nvim -u NONE`: ihello<M-.>u leaves the buffer empty, while ihello<Esc>.u leaves the buffer with one instance of `hello`. - Fix by calling u_sync() manually in the new clause under `normalchar:` in `insert_handle_key`. - Update test in tui_spec.lua that accidentally relied on the old behaviour.
* vim-patch:8.0.1356: using simalt in a GUIEnter autocommand inserts charactersJan Edmund Lazo2019-12-30
| | | | | | | Problem: Using simalt in a GUIEnter autocommand inserts strange characters. (Chih-Long Chang) Solution: Ignore K_NOP in Insert mode. (closes vim/vim#2379) https://github.com/vim/vim/commit/c5aa55db7e5bc791f99fb15b0f4be0d5dd166f62
* refactor: use inserted_bytes pattern from vimBjörn Linse2019-11-23
| | | | | | | This covers all "small" inserts and deletes in insert mode, as well as a few more cases like small normal mode deletes vim-patch:8.1.0678: text properties as not adjusted for inserted text
* bufhl: use extmark column adjustment for bufhlBjörn Linse2019-11-23
| | | | | | | | NB: this is not the final implementation. Bufhl should be made a part of the extmark tree, so that "start" adjustment just works automatically. But "stop" will still need some ad-hoc trickery, until extended marks natively support ranges (hopefully sooner than forever).
* vim-patch:8.0.1449: slow redrawing with DirectXJan Edmund Lazo2019-11-19
| | | | | | | Problem: Slow redrawing with DirectX. Solution: Avoid calling gui_mch_flush() unnecessarily, especially when updating the cursor. (Ken Takata, closes vim/vim#2560) https://github.com/vim/vim/commit/a338adcf222b6a24e26ea5ae6a2ad27f914acb38
* nsmarks: initial committimeyyy2019-11-11
|
* vim-patch:8.1.2173: searchit() has too many argumentsJaehwang Jerry Jung2019-10-27
| | | | | | Problem: Searchit() has too many arguments. Solution: Move optional arguments to a struct. Add the "wrapped" argument. https://github.com/vim/vim/commit/92ea26b925a0835badb0af2d5887238a4198cabb
* Merge #11199 from bobrippling/vim-8.1.1228Justin M. Keyes2019-10-22
|\ | | | | vim-patch:8.1.{1099,1228,1962} add 'tagfunc'
| * vim-patch:8.1.1228: not possible to process tags with a functionRob Pilling2019-10-22
| | | | | | | | | | | | Problem: Not possible to process tags with a function. Solution: Add tagfunc() (Christian Brabandt, Andy Massimino, closes vim/vim#4010) https://github.com/vim/vim/commit/45e18cbdc40afd8144d20dcc07ad2d981636f4c9
* | vim-patch:8.1.2096: too many #ifdefs #11229Daniel Hahler2019-10-17
|/ | | | | | | Problem: Too many #ifdefs. Solution: Graduate FEAT_COMMENTS. https://github.com/vim/vim/commit/8c96af9c05bfcac2d5ae081e098d4863db561511 Fixes https://github.com/vim/vim/issues/4972.
* vim-patch:8.0.1806: InsertCharPre causes problems for autocompleteJan Edmund Lazo2019-09-02
| | | | | | | Problem: InsertCharPre causes problems for autocomplete. (Lifepillar) Solution: Check for InsertCharPre before calling vpeekc(). (Christian Brabandt, closes vim/vim#2876) https://github.com/vim/vim/commit/39de95257714b76ccd845d081cff57830a79b488
* vim-patch:8.1.0233: "safe" argument of call_vim_function() is always FALSEJan Edmund Lazo2019-08-30
| | | | | | Problem: "safe" argument of call_vim_function() is always FALSE. Solution: Remove the argument. https://github.com/vim/vim/commit/ded27a1febda3db7447958b60a7d791af514d124
* clang/"null pointer dereference" #10864Ihor Antonov2019-08-27
|
* clang/"dereference of null pointer" #10856Ihor Antonov2019-08-26
| | | In edit.c insert_execute calls ins_compl_addfrommatch
* Merge #10823 from janlazo/vim-8.1.1124Justin M. Keyes2019-08-21
|\
| * edit: add nonnull func attributeJan Edmund Lazo2019-08-21
| |
| * edit: compl_started,compl_used_match are boolJan Edmund Lazo2019-08-21
| |
| * vim-patch:8.1.1124: insert completion flags are mixed upJan Edmund Lazo2019-08-21
| | | | | | | | | | | | Problem: Insert completion flags are mixed up. Solution: Clean up flags use of ins_compl_add() and cp_flags. https://github.com/vim/vim/commit/d9eefe3155277cec71105f52d34a76f7a3237e7f