aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ops.c
Commit message (Collapse)AuthorAge
...
| * buffer: move BUFEMPTY to a functionThomas Vigouroux2021-07-06
| |
| * buffer: don't rely on curbuf in BUFEMPTYThomas Vigouroux2021-07-06
| |
* | chore: use codespell to spell check #15016dundargoc2021-07-07
|/
* vim-patch:8.2.3072: "zy" does not work well when "virtualedit' is "block"Jan Edmund Lazo2021-06-29
| | | | | | | | | | | | | | | | | Problem: The "zy" command does not work well when 'virtualedit' is set to "block". (Johann Höchtl) Solution: Make endspaces zero. (Christian Brabandt, closes vim/vim#8468, closes vim/vim#8448) https://github.com/vim/vim/commit/7d7bcc6ba01454c1cbb1dcbf5f11c3a4051535d6 N/A patches for version.c: vim-patch:8.2.3075: xxd always reports an old version string Problem: Xxd always reports an old version string. (Åsmund Ervik) Solution: Update the version string with the last known change date. (Jürgen Weigert, closes vim/vim#8475) https://github.com/vim/vim/commit/80b2ba3e9602e09ab523e78946fbb26da311b68b
* Merge pull request #14335 from chentau/extmark_delbytesBjörn Linse2021-06-29
|\ | | | | Extmarks: manually zero out `curbuf->deleted_bytes2` on substitute and join
| * Manually zero out deleted_bytes2 when substituting and joining lineschentau2021-06-29
| |
* | vim-patch:8.2.2971: cannot yank a block without trailing spacesJan Edmund Lazo2021-06-10
|/ | | | | | Problem: Cannot yank a block without trailing spaces. Solution: Add the "zy" command. (Christian Brabandt, closes vim/vim#8292) https://github.com/vim/vim/commit/544a38e44db0f25ec4fa7a2a4666cf28a2336f33
* vim-patch:8.2.2914: cannot paste a block without adding paddingJan Edmund Lazo2021-05-31
| | | | | | | | | Problem: Cannot paste a block without adding padding. Solution: Add "zp" and "zP" which paste without adding padding. (Christian Brabandt, closes vim/vim#8289) https://github.com/vim/vim/commit/2fa9384ca1b600b934bec81a72c5fb7ce757503a Cherry-pick Test_normal_z_error() from patch v8.2.0369.
* Apply patch from clasondisrupted2021-05-10
|
* make get_region_bytecount end-exclusivechentau2021-05-09
|
* refactor nvim_buf_set_lines to use extmark_splicechentau2021-05-09
|
* Merge pull request #14502 from chentau/extmark_pasteBjörn Linse2021-05-07
|\ | | | | Splice extmarks on every line for block visual paste
| * splice extmarks on every line for block visual pastechentau2021-05-06
| |
* | vim-patch:8.2.0860: cannot use CTRL-A and CTRL-X on unsigned numbersJan Edmund Lazo2021-04-28
|/ | | | | | Problem: Cannot use CTRL-A and CTRL-X on unsigned numbers. Solution: Add "unsigned" to 'nrformats'. (Naruhiko Nishino, closes vim/vim#6144) https://github.com/vim/vim/commit/aaad995f8384a77a64efba6846c9c4ac99de0953
* extmarks: remove curbuf->deleted_bytes2 from op_deletechentau2021-04-16
|
* clang/'Logic error': set vcol in do_put()Jan Edmund Lazo2021-04-02
|
* vim-patch:8.1.2380: using old C style commentsJan Edmund Lazo2021-03-29
| | | | | | Problem: Using old C style comments. Solution: Use // comments where appropriate. https://github.com/vim/vim/commit/306139005c31ea7e6f892dd119beba3c94dcb982
* vim-patch:8.1.0542: shiftwidth() does not take 'vartabstop' into accountVVKot2021-03-28
| | | | | | | | Problem: shiftwidth() does not take 'vartabstop' into account. Solution: Use the cursor position or a position explicitly passed. Also make >> and << work better with 'vartabstop'. (Christian Brabandt) https://github.com/vim/vim/commit/f951416a8396a54bbbe21de1a8b16716428549f2
* vim-patch:8.1.0105: all tab stops are the sameVVKot2021-03-28
| | | | | | | Problem: All tab stops are the same. Solution: Add the variable tabstop feature. (Christian Brabandt, closes vim/vim#2711) https://github.com/vim/vim/commit/04958cbaf25eea27eceedaa987adfb354ad5f7fd
* Extmarks: correct buffer events on blockwise pastechentau2021-03-23
|
* pos: define MAXCOL to INT_MAXJan Edmund Lazo2021-02-23
| | | | | Partial port of patch v8.1.0953. Remove useless casts on MAXCOL.
* fix(buf_updates): send updates when putting past last lineThomas Vigouroux2021-02-08
| | | | Fixes #13710
* Use abort() instead of assert(false) for things that should never happenJames McCoy2021-01-31
| | | | | | | | assert() is compiled out for release builds, but we don't want to continue running in these impossible situations. This also resolves the "implicit fallthrough" warnings for the asserts in switch cases.
* vim-patch:8.1.2212: cannot see the selection type in :reg outputJan Edmund Lazo2020-12-25
| | | | | | | | Problem: Cannot see the selection type in :reg output. (Ayberk Aydın) Solution: Add c/l/b. (Christian Brabandt, closes vim/vim#5110, closes vim/vim#4546) https://github.com/vim/vim/commit/3691f1ee72b68a47e6dcc75927bfa46565cf3614 Patch v8.1.0999 is not ported so ":registers" does not omit register 1.
* vim-patch:8.2.2189: cannot repeat a command that uses the small delete registerJan Edmund Lazo2020-12-22
| | | | | | | | | | | | | | | Problem: Cannot repeat a command that uses the small delete register. Solution: Store the register name instead of the contents. (Christian Brabandt, closes vim/vim#7527) https://github.com/vim/vim/commit/032a2d050b82b146d70d6ff714838ee62c07d8ad N/A patches for version.c: vim-patch:8.2.2192: Codecov on github actions fails Problem: Codecov on github actions fails. Solution: Revert to codecov script. (Ozaki Kiichi, closes vim/vim#7529) https://github.com/vim/vim/commit/e5492609b3a153c631f1d600ecdef1af1c913bef
* vim-patch:8.2.2166: auto format doesn't work when deleting textJan Edmund Lazo2020-12-20
| | | | | | Problem: Auto format doesn't work when deleting text. Solution: Make "x" trigger auto format. (closes vim/vim#7504) https://github.com/vim/vim/commit/d0a1dee3f197d41434df4cf0271066b6aeb690fc
* refactor: pass window to was_set_insecurelyMatthieu Coudron2020-11-23
| | | | | | working on get_foldtext and wanted to get rid of the curwin backup/restore. Turns out it's not possible else f_foldtext is run on the same window. Kept the cleanup anyway.
* 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.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
* Fix byte updates for blockwise paste at buffer endKillTheMule2020-09-30
|
* Fix buffer_updates on blockwise pasteKillTheMule2020-09-30
| | | | Fixes #12718.
* folds: pass column on fold creationMatthieu Coudron2020-09-28
| | | | | useful if we want to have inline folds later and/or let users create folds that remember their start/end columns.
* lint: is lintBjörn Linse2020-09-19
|
* buffer updates: fix issues with "change" operatorBjörn Linse2020-09-19
|
* buf_updates: fix wrong updates on linewise changeThomas Vigouroux2020-09-18
|
* api/buffer: add "on_bytes" callback to nvim_buf_attachBjörn Linse2020-09-09
| | | | | | This implements byte-resolution updates of buffer changes. Note: there is no promise that the buffer state is valid inside the callback!
* 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
* eval_call_provider(): free unused return value #12819Jacques Germishuys2020-09-01
| | | Caller can pass discard=true to free the unwanted return value.
* vim-patch:8.2.1511: putting a string in Visual block mode ignores multi-byteJan Edmund Lazo2020-08-22
| | | | | | | Problem: Putting a string in Visual block mode ignores multi-byte characters. Solution: Adjust the column for Visual block mode. (closes vim/vim#6767) https://github.com/vim/vim/commit/cd94277f72e29b740635da84bcd872c96e11bf67
* vim-patch:8.2.1170: cursor off by one with block paste while 'virtualedit' "all"Jan Edmund Lazo2020-07-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cursor off by one with block paste while 'virtualedit' is "all". Solution: Adjust condition. (Hugo Gualandi, closes vim/vim#6430) https://github.com/vim/vim/commit/ef85a9b2d9e992ab594e089af3883e381cfad426 N/A patches for version.c: vim-patch:8.2.1114: terminal test sometimes times out Problem: Terminal test sometimes times out. Solution: Split the test in two parts. https://github.com/vim/vim/commit/1112c0febb509d0cb219f3a2479fd36833507167 vim-patch:8.2.1171: possible crash when out of memory Problem: Possible crash when out of memory. Solution: Check for NULL pointer. (Dominique Pellé, closes vim/vim#6432) https://github.com/vim/vim/commit/58bb61cf5ee008254eb331bc3574eac87d2dcc4a vim-patch:8.2.1172: error messages when doing "make clean" in doc or tee Problem: Error messages when doing "make clean" in the runtime/doc or src/tee directories. Solution: Use "rm -f". https://github.com/vim/vim/commit/08fc48492acc07259d91293df12bf66447819443 vim-patch:8.2.1173: tee doesn't build on some systems Problem: Tee doesn't build on some systems. Solution: Include header files. (Dominique Pelle, closes vim/vim#6431) https://github.com/vim/vim/commit/40043152924827fa8c4064951065ff507c610164 vim-patch:8.2.1177: terminal2 test sometimes hangs in the GUI Problem: Terminal2 test sometimes hangs in the GUI. Solution: Move some tests to other files to further locate the problem. Set the GUI to a fixed screen size. https://github.com/vim/vim/commit/18aa13d13b69c090dbe186cd4939896488c433e3 vim-patch:8.2.1179: Test_termwinscroll() sometimes hangs in the GUI Problem: Test_termwinscroll() sometimes hangs in the GUI. Solution: Skip the test in the GUI. https://github.com/vim/vim/commit/f65927fc8d0102ef2d0fea776381caedf4c51e32 vim-patch:8.2.1180: build failure in small version Problem: Build failure in small version. Solution: Add #ifdef. https://github.com/vim/vim/commit/1e624c912dff19e889c9398b56fe537952c02fef vim-patch:8.2.1181: json code not fully tested Problem: Json code not fully tested. Solution: Add more test coverage. (Dominique Pellé, closes vim/vim#6433) https://github.com/vim/vim/commit/21e5bdd271fa4d0ff4511cf74b160315e1d17cff
* vim-patch:8.2.0963: number increment/decrement does not work with 'virtualedit'Jan Edmund Lazo2020-06-18
| | | | | | | Problem: Number increment/decrement does not work with 'virtualedit'. Solution: Handle coladd changing. (Christian Brabandt, closes vim/vim#6240, closes vim/vim#923) https://github.com/vim/vim/commit/6c6be9e88d72a60ee279ccad73d018c534b71d66
* vim-patch:8.2.0111: VAR_SPECIAL is also used for booleansBilly Su2020-06-06
| | | | | | Problem: VAR_SPECIAL is also used for booleans. Solution: Add VAR_BOOL for better type checking. https://github.com/vim/vim/commit/9b4a15d5dba354d2e1e02871470bad103f34769a
* Add v:event.visual during `TextYankPost` (#12382)Christian Clason2020-06-03
| | | | | | | | | * propagate visual selection to textyankpost event * adapt tests * add docs * also adapt oldtest
* vim-patch:8.2.0389: delayed redraw when shifting text from Insert modeJan Edmund Lazo2020-04-13
| | | | | | Problem: Delayed redraw when shifting text from Insert mode. Solution: Use msg_attr_keep() instead of msg(). (closes vim/vim#5782) https://github.com/vim/vim/commit/e4fc746d13f5b6a0b5c3a8efdff7de1454c3297d
* vim-patch:8.0.1587: inserting from the clipboard doesn't work literallyJan Edmund Lazo2020-03-01
| | | | | | Problem: inserting from the clipboard doesn't work literally Solution: When pasting from the * or + register always assume literally. https://github.com/vim/vim/commit/3324d0a86421a634572758dcfde917547f4d4c67
* pvs/v1048: variable was assigned same valueJan Edmund Lazo2020-03-01
|
* 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
* Fix shift change callbacks reading bad cursor (#11782)Axel Forsman2020-01-30
| | | | | | | | | | | | | | Sloppy code inherited from Vim caused user scripts to be able to observe the cursor line in an invalid intermediary state, due to Neovim change callbacks being unbuffered unlike Vim listeners. Manifested in Vimscript executed from the callback possibly erroring when `:call`:ing any function, due to the implicit range `curwin->w_cursor.lnum,curwin->w_cursor.lnum` failing validation. Fixed by deferring the call to `changed_lines()` until after `curwin->w_cursor.lnum` gets its correct value.
* Remove enc_utf8,has_mbyte dead codeJan Edmund Lazo2020-01-25
|
* vim-patch:8.2.0147: block Visual mode operators not correct when 'linebreak' setJan Edmund Lazo2020-01-24
| | | | | | Problem: Block Visual mode operators not correct when 'linebreak' set. Solution: Set w_p_lbr to lbr_saved more often. (Ken Takata, closes vim/vim#5524) https://github.com/vim/vim/commit/03c3bd9fd094c1aede2e8fe3ad8fd25b9f033053