aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/diff.c
Commit message (Collapse)AuthorAge
...
* Merge pull request #12971 from vigoux/decurbufBjörn Linse2021-07-09
|\ | | | | Decrease reliance on curbuf in BUFEMPTY and `undo.c`
| * buffer: move BUFEMPTY to a functionThomas Vigouroux2021-07-06
| |
| * undo: reduce reliance on curbufThomas 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.2880: unified diff fails if actually usedJan Edmund Lazo2021-05-24
| | | | | | | Problem: Unified diff fails if actually used. Solution: Invoke :diffupdate in the test. Fix the check for working external diff. (Ghjuvan Lacambre, Christian Brabandt, closes vim/vim#8197) https://github.com/vim/vim/commit/ad5c178a191cf2cf37a27c2a789d7afda3879831
* vim-patch:8.2.2490: 'wrap' option is always reset when starting diff modeJan Edmund Lazo2021-02-10
| | | | | | Problem: 'wrap' option is always reset when starting diff mode. Solution: Add the "followwrap" item in 'diffopt'. (Rick Howe, closes vim/vim#7797) https://github.com/vim/vim/commit/4223d43c0fb6ead1e611e4469a1680a9228b6015
* option: use char* for set_string_option_direct()Jan Edmund Lazo2021-02-07
| | | | | | | "name" param was cast to (const char *). All calls to set_string_option_direct() cast 1st arg from (char *) to (char_u *). Remove these useless casts.
* vim-patch:8.2.2231: when "--remote file" is used "file" is not reloadedJan Edmund Lazo2020-12-27
| | | | | | | | | | | Problem: When "--remote file" is used "file" is not reloaded. Solution: When a :drop command is used for a file that is already displayed in a window and it has not been changed, check if it needs to be reloaded. (closes vim/vim#7560) https://github.com/vim/vim/commit/e4862a0fe62261754daf476866ef2aa8586b716c Remove unused "focus" parameter from "buf_check_timestamp()". It was meant for removed GUI code.
* vim-patch:8.2.0928: many type casts are used for vim_strnsave()Jan Edmund Lazo2020-12-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Many type casts are used for vim_strnsave(). Solution: Make the length argument size_t instead of int. (Ken Takata, closes vim/vim#5633) Remove some type casts. https://github.com/vim/vim/commit/df44a27b53586fccfc6a3aedc89061fdd9a515ff N/A patches for version.c: vim-patch:8.2.0315: build failure on HP-UX system Problem: Build failure on HP-UX system. Solution: Use LONG_LONG_MIN instead of LLONG_MIN. Add type casts for switch statement. (John Marriott) https://github.com/vim/vim/commit/c593bec4120f122e8a9129ec461968f1bd214435 vim-patch:8.2.1052: build failure with older compilers Problem: Build failure with older compilers. Solution: Move declaration to start of block. https://github.com/vim/vim/commit/7acde51832f383f9a6d2e740cd0420b433ea841a vim-patch:8.2.2229: build failure without the +eval feature Problem: build failure without the +eval feature. Solution: Add #ifdef. https://github.com/vim/vim/commit/39cb2dab18e85fc60f116a4543e433616872b690 vim-patch:8.2.2232: compiler error for falling through into next case Problem: Compiler error for falling through into next case. Solution: Move FALLTHROUGH below the #endif https://github.com/vim/vim/commit/9618a25b9c054f0ee4e267d2db96b6e7c113ed7a
* 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
* 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.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
* diff.c: fix sprintf callJustin M. Keyes2020-03-03
| | | | fix #11975
* 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.
* 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
* 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
* vim-patch:8.1.2289: after :diffsplit closing the window does not disable diffJan Edmund Lazo2019-11-16
| | | | | | Problem: After :diffsplit closing the window does not disable diff. Solution: Add "closeoff" to 'diffopt' and add it to the default. https://github.com/vim/vim/commit/c8234779790dd873acb88331c50988adf94cc383
* vim-patch:8.1.1922: in diff mode global operations can be very slowJan Edmund Lazo2019-11-16
| | | | | | | Problem: In diff mode global operations can be very slow. Solution: Do not call diff_redraw() many times, call it once when redrawing. And also don't update folds multiple times. https://github.com/vim/vim/commit/4f57eefe1e84b5a90e08474092ea6fc8825ad5c9
* nsmarks: initial committimeyyy2019-11-11
|
* Remove dead codeJan Edmund Lazo2019-10-06
|
* vim-patch:8.1.2120: some MB_ macros are more complicated than necessaryJan Edmund Lazo2019-10-06
| | | | | | | Problem: Some MB_ macros are more complicated than necessary. (Dominique Pelle) Solution: Simplify the macros. Expand inline. https://github.com/vim/vim/commit/1614a14901558ca091329315d14a7d5e1b53aa47
* getdigits: introduce `strict`, `def` parametersJustin M. Keyes2019-09-13
| | | | | | | | | | | | Problem: During a refactor long ago, we changed the `getdigits_*` familiy of functions to abort on overflow. But this is often wrong, because many of these codepaths are handling user input. Solution: Decide at each call-site whether to use "strict" mode. fix #5555
* includesDaniel Hahler2019-08-07
|
* vim-patch:8.1.0956: context:0 in 'diffopt' #10622Jan Edmund Lazo2019-07-27
| | | | | Problem: Using context:0 in 'diffopt' does not work well. Solution: Make zero context do the same as one line context. (closes vim/vim#4005) https://github.com/vim/vim/commit/b9ddda6c2d98d99c09d58145c1b5b4042a8fd92c
* cleanup: remove mch_fopen in favor of os_fopenJustin M. Keyes2019-07-25
|
* vim-patch:8.0.1496: VIM_CLEAR()Justin M. Keyes2019-05-25
| | | | | | | | Problem: Clearing a pointer takes two lines. Solution: Add VIM_CLEAR() and replace vim_clear(). (Hirohito Higashi, closes #2629) vim-patch:8.0.1481
* PVS/V501: diff.c: silence warningJustin M. Keyes2019-01-18
| | | | | | False positive: vim_fgets has side effects. ref 8586770e1fd8
* PVS/V501: diff.c: silence warningJustin M. Keyes2019-01-05
| | | | | | False positive: vim_fgets has side effects. ref 8586770e1fd8
* PVS/V547: diff.c: xmalloc() never returns NULLJustin M. Keyes2019-01-04
| | | | | | Normally we consider OOM to be fatal, but the diff module has extra functionality to handle OOM in case huge files are compared. Use try_malloc instead of xmalloc in that case.
* PVS/V547: diff.c: Expression is always trueJustin M. Keyes2019-01-04
|
* PVS/V501: diff.c: silence warningJustin M. Keyes2019-01-04
| | | | False positive: vim_fgets has side effects.
* vim-patch:8.1.0562: parsing of 'diffopt' is slightly wrongAnatolii Sakhnik2018-12-09
| | | | | | | | Problem: Parsing of 'diffopt' is slightly wrong. Solution: Fix the parsing and add a test. (Jason Franklin, Christian Brabandt) https://github.com/vim/vim/commit/b6fc72851c45a36a370f9516c68508e47b41c4c1
* vim-patch:8.1.0513: no error for set diffopt+=algorithm:Anatolii Sakhnik2018-12-09
| | | | | | | Problem: No error for set diffopt+=algorithm:. Solution: Check for missing argument. (Hirohito Higashi, closes #3598) https://github.com/vim/vim/commit/d0721058f494143186f66a60151c9634031a8c96
* vim-patch:8.1.0502: internal diff fails when diffing a context diffAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Internal diff fails when diffing a context diff. (Hirohito Higashi) Solution: Only use callback calls with one line. (closes #3581) https://github.com/vim/vim/commit/f080d70a82f3a4477f346d9efcdfaec1bc1e1d58
* vim-patch:8.1.0497: :%diffput changes order of linesAnatolii Sakhnik2018-12-09
| | | | | | | Problem: :%diffput changes order of lines. (Markus Braun) Solution: Do adjust marks when using internal diff. https://github.com/vim/vim/commit/5f57bdcab77bc417ae0357fe8ad6c7259b6d25df
* vim-patch:8.1.0458: ml_get error and crash when using "do"Anatolii Sakhnik2018-12-09
| | | | | | | | Problem: Ml_get error and crash when using "do". Solution: Adjust cursor position also when diffupdate is not needed. (Hirohito Higashi) https://github.com/vim/vim/commit/df77cef92ec034796723ffa3adb12e8b46daa98e
* vim-patch:8.1.0402: the DiffUpdate event isn't triggered for :diffputAnatolii Sakhnik2018-12-09
| | | | | | | Problem: The DiffUpdate event isn't triggered for :diffput. Solution: Also trigger DiffUpdate for :diffget and :diffput. https://github.com/vim/vim/commit/198fa066b2ec011e91012c1a3d85a73df7b93f31
* vim-patch:8.1.0400: using freed memory with :diffgetAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Using freed memory with :diffget. Solution: Skip ex_diffupdate() while updating diffs. (closes #3442) https://github.com/vim/vim/commit/d2b58c0a2c665075a8cfef57db6e1b37d4523e02
* vim-patch:8.1.0397: no event triggered after updating diffsAnatolii Sakhnik2018-12-09
| | | | | | | Problem: No event triggered after updating diffs. Solution: Add the DiffUpdated event. https://github.com/vim/vim/commit/e8fa05b5bc2d6d76bf5af50176a63655d00d1110
* vim-patch:8.1.0395: compiler warning on 64-bit MS-WindowsAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Compiler warning on 64-bit MS-Windows. Solution: Add type cast. (Mike Williams) https://github.com/vim/vim/commit/6e272acc82af900318017061f923e7f66dc7ee7a
* vim-patch:8.1.0394: diffs are not always updated correctlyAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Diffs are not always updated correctly. Solution: When using internal diff update for any changes properly. https://github.com/vim/vim/commit/e3521d9cbb786806eaff106707851d37d2c0ecef
* vim-patch:8.1.0393: not all white space difference options availableAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Not all white space difference options available. Solution: Add "iblank", "iwhiteall" and "iwhiteeol" to 'diffopt'. https://github.com/vim/vim/commit/785fc6567f572b8caefbc89ec29bbd8b801464ae
* vim-patch:8.1.0375: cannot use diff mode with Cygwin diff.exeAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Cannot use diff mode with Cygwin diff.exe. (Igor Forca) Solution: Skip over unrecognized lines in the diff output. https://github.com/vim/vim/commit/3b8defd0a52fc1276816608e7bb24b628ab14c2e
* vim-patch:8.1.0360: using an external diff program is slow and inflexibleAnatolii Sakhnik2018-12-09
| | | | | | | | | | | | | | | | | | Problem: Using an external diff program is slow and inflexible. Solution: Include the xdiff library. (Christian Brabandt) Use it by default. https://github.com/vim/vim/commit/e828b7621cf9065a3582be0c4dd1e0e846e335bf vim-patch:8.1.0360 vim-patch:8.1.0364 vim-patch:8.1.0366 vim-patch:8.1.0370 vim-patch:8.1.0377 vim-patch:8.1.0378 vim-patch:8.1.0381 vim-patch:8.1.0396 vim-patch:8.1.0432
* Remove has_mbyte from lines near changes in parent commitZviRackover2018-08-16
|
* Remove occurences of mb_head_offZviRackover2018-08-15
|
* vim-patch:8.0.1361: some users don't want to diff with hidden buffersJan Edmund Lazo2018-08-11
| | | | | | Problem: Some users don't want to diff with hidden buffers. Solution: Add the "hiddenoff" item to 'diffopt'. (Alisue, closes vim/vim#2394) https://github.com/vim/vim/commit/97ce419201421f65f4764549ed80307a7ef9c7a6
* diff: drop enc_utf8 check in diff_equal_char()Jan Edmund Lazo2018-08-11
| | | | enc_utf8 is always true for nvim.
* vim-patch:8.0.1046: code duplication in diff modeJan Edmund Lazo2018-08-11
| | | | | | Problem: Code duplication in diff mode. Solution: Use diff_equal_char() also in diff_cmp(). (Rick Howe) https://github.com/vim/vim/commit/ae96b8d058cffd9d07b78cb7a9ccd382185b9dd6