aboutsummaryrefslogtreecommitdiff
path: root/runtime/doc/vim_diff.txt
Commit message (Collapse)AuthorAge
* feat!: remove hardcopyLewis Russell2023-01-03
| | | Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
* feat(exrc): support .nvim.lua (#21436)Munif Tanjim2022-12-19
|
* docs: remove "How-to disable mouse" menu item #21394zeertzjq2022-12-12
|
* docs #20986Justin M. Keyes2022-12-11
| | | | | | - https://github.com/neovim/tree-sitter-vimdoc v1.2.4 eliminates most errors in pi_netrw.txt, so we can remove that workaround from ignore_parse_error(). - improved codeblock
* docs: add language annotation to Nvim manualChristian Clason2022-12-02
|
* refactor: deprecate 'secure' optionGregory Anders2022-11-17
| | | | | Now that 'exrc' files must be explicitly marked trusted there is no need to constrain what can be done in them.
* feat(exrc): use vim.secure.read() for 'exrc' optionGregory Anders2022-11-17
|
* docs(news): add linematch (#20927)Lewis Russell2022-11-07
|
* docs(news): mention 'splitkeep' #20744zeertzjq2022-10-20
|
* docs: fix/remove invalid URLs #20647Justin M. Keyes2022-10-14
|
* feat(cscope)!: removeLewis Russell2022-10-13
|
* docs: various #12823Justin M. Keyes2022-10-09
| | | | | | | | | | | | - increase python line-length limit from 88 => 100. - gen_help_html: fix bug in "tag" case (tbl_count => tbl_contains) ref #15632 fix #18215 fix #18479 fix #20527 fix #20532 Co-authored-by: Ben Weedon <ben@weedon.email>
* fix(docs-html): keycodes, taglinks, column_heading #20498Justin M. Keyes2022-10-06
| | | | | | | | | | | | | | | | | | Problem: - Docs HTML: "foo ~" headings (column_heading) are not aligned with their table columns/contents because the leading whitespace is not emitted. - taglinks starting with hyphen like |-x| were not recognized. - keycodes like `<foo>` and `CTRL-x` were not recognized. - ToC is not scrollable. Solution: - Add ws() to the column_heading case. - Update help parser to latest version - supports `keycode` - fixes for taglink, argument - Update .toc CSS. https://github.com/neovim/neovim.github.io/issues/297 fix https://github.com/neovim/neovim.github.io/issues/297
* feat(messages)!: graduate the 'msgsep' featurebfredl2022-10-05
| | | | | | | The old behaviour (e.g. via `set display-=msgsep`) will not be available. Assuming that messages always are being drawn on msg_grid (or not drawn at all, and forwarded to `ext_messages` enabled UI) will allows some simplifcations and enhancements moving forward.
* fix(docs): invalid :help links #20345Justin M. Keyes2022-09-25
| | | | | Fix those naughty single quotes. closes #20159
* feat: ":write!" skips "file changed" warning #18665Louis Sven Goulet2022-09-24
| | | | | | | | | | Problem: Cannot opt-out of "WARNING: The file has been changed since reading it!!!", even with ":write!". Solution: Change ":write!" to skip the warning. closes #7270
* feat(Man): port to Lua (#19912)Lewis Russell2022-09-02
| | | Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* feat(highlight)!: error on invalid names and allow '.' and '@'Lewis Russell2022-08-24
| | | | | | | | | | | | | | | | | Previously if a highlight group with a name outside the regexp [a-zA-Z0-9_] was defined, Nvim would emit an "invalid character" warning message. This was annoying for Lua scripts, as it was very hard to debug what line of code was triggering this message since it didn't produce a stack trace. This has now been promoted to an error with the code E5248. Additionally the ASCII character period ('.') and at-sign ('@') have been added to the allowed list of characters of a highlight group name to support the application of defining hierarchical highlight groups, e.g. 'TS.keyword'. Co-authored-by: Christian Clason <christian.clason@uni-due.de>
* vim-patch:8.2.4325: 'wildmenu' only shows few matches (#19876)zeertzjq2022-08-21
| | | | | | | | | | Problem: 'wildmenu' only shows few matches. Solution: Add the "pum" option: use a popup menu to show the matches. (Yegappan Lakshmanan et al., closes vim/vim#9707) https://github.com/vim/vim/commit/3908ef5017a6b4425727013588f72cc7343199b9 Omit p_wmnu check in cmdline_pum_active() as it can cause problems. Omit vim_strchr() flags as that isn't really better than bitmasks. Omit key translations and document it in vim_diff.txt.
* feat: allow :wincmd to accept a count (#19815)Famiu Haque2022-08-17
| | | | | | | | | | | | | | | Let :wincmd command accept a count like what its documentation suggests. Previously it could only accept a range, which led to some ambiguity on which attribute should be used when executing :wincmd using nvim_cmd. Closes #19662. Also fix a typo in a related Vim test: vim-patch:9.0.0223: typo in diffmode test Problem: Typo in diffmode test. Solution: Fix the typo. (closes vim/vim#10932) https://github.com/vim/vim/commit/5fd6ab820b4a0aaa5c6020852f39d118375fab49
* docs: update Vim differences (#19780)Yegappan Lakshmanan2022-08-15
| | | | | Patch 8.2.4594 (https://github.com/vim/vim/commit/36a5b6867bb6c0bd69c8da7d788000ab8a0b0ab0) added support for sourcing a buffer without a name. Patch 8.2.4325 (https://github.com/vim/vim/commit/3908ef5017a6b4425727013588f72cc7343199b9) added support for using a popup menu for wildmode completion.
* fix(input): do no reinterpret mouse keys with ALT modifierszeertzjq2022-07-25
| | | | | Remove check for MOD_MASK_META as it is for <T- which never appears in TUI. Make small changes to docs.
* feat(defaults): mouse=nvi #19290matveyt2022-07-17
| | | | | | | | | | Problem: Since right-click can now show a popup menu, we can provide messaging to guide users who expect 'mouse' to be disabled by default. So 'mouse' can now be enabled by default. Solution: Do it. Closes #15521
* feat(defaults): nnoremap & :&&<CR> #19365Gregory Anders2022-07-15
|
* feat(eval)!: input() support any type for "cancelreturn" in a dict (#19357)zeertzjq2022-07-14
|
* feat: add 'mousescroll' option (#12355)Jay2022-07-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add 'mousescroll' option to control how many lines to scroll by when a mouse wheel keycode is received. The mousescroll option controls both horizontal and vertical scrolling. The option is a string in the format: set mousescroll=direction:count,direction:count Where direction is either "ver" or "hor", and count is a non negative integer. If a direction is omitted, a default value is used. The default values remain unchanged, that is 3 for vertical scrolling, and 6 for horizontal scrolling. As such, the mousescroll default is "ver:3,hor:6". Add mousescroll documentation - Add option documentation in options.txt - Add brief summary in quickref.txt Update :help scroll-mouse-wheel - Mention mousescroll option as a means of controlling scrolling. - Remove obsolete suggestion to map scroll wheel keys to <C-U> to scroll by a single line -- users should prefer the mousescroll option. - Add some information about the consequences of remapping scroll wheel keys (they lose their magic ability to affect inactive windows). Update :help vim-differences - Add brief mousescroll summary under Options Add mousescroll tests - Test option validation - Test default mousescroll value and behavior - Test fallback to default values - Test mouse vertical and horizontal scrolling in normal mode - Test mouse vertical and horizontal scrolling in insert mode
* feat(marks): restore viewport on jump #15831Javier Lopez2022-06-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ** Refactor Previously most functions used to "get" a mark returned a position, changed the line number and sometimes changed even the current buffer. Now functions return a {x}fmark_T making calling context aware whether the mark is in another buffer without arcane casting. A new function is provided for switching to the mark buffer and returning a flag style Enum to convey what happen in the movement. If the cursor changed, line, columns, if it changed buffer, etc. The function to get named mark was split into multiple functions. - mark_get() -> fmark_T - mark_get_global() -> xfmark_T - mark_get_local() -> fmark_T - mark_get_motion() -> fmark_T - mark_get_visual() -> fmark_T Functions that manage the changelist and jumplist were also modified to return mark types. - get_jumplist -> fmark_T - get_changelist -> fmark_T The refactor is also seen mainly on normal.c, where all the mark movement has been siphoned through one function nv_gomark, while the other functions handle getting the mark and setting their movement flags. To handle whether context marks should be left, etc. ** Mark View While doing the refactor the concept of a mark view was also implemented: The view of a mark currently implemented as the number of lines between the mark position on creation and the window topline. This allows for moving not only back to the position of a mark but having the window look similar to when the mark was defined. This is done by carrying and extra element in the fmark_T struct, which can be extended later to also restore horizontal shift. *** User space features 1. There's a new option, jumpoptions+=view enables the mark view restoring automatically when using the jumplist, changelist, alternate-file and mark motions. <C-O> <C-I> g; g, <C-^> '[mark] `[mark] ** Limitations - The view information is not saved in shada. - Calls to get_mark should copy the value in the pointer since we are using pos_to_mark() to wrap and provide a homogeneous interfaces. This was also a limitation in the previous state of things.
* docs: improve 'insertmode' emulation #18962zeertzjq2022-06-16
| | | | | | The current emulation script enters Insert mode much too frequently. Using only BufWinEnter seems to be a closer simulation. Also add a few more mappings.
* feat: add preview functionality to user commandsFamiu Haque2022-05-31
| | | | Adds a Lua-only `preview` flag to user commands which allows the command to be incrementally previewed like `:substitute` when 'inccommand' is set.
* docs(options): move all removed options to vim_diff.txt (#18770)dundargoc2022-05-28
| | | | It's more consistent to gather all removed options in one spot rather than spreading it out.
* refactor!: delete insertmode (#18547)Gregory Anders2022-05-22
| | | | | | | Neovim already removed `evim` (or any similar flags). The 'insertmode' option is a weird remnant, so get rid of it. The 'insertmode' option is replaced with a script that closely emulates the option. This script is documented at :help 'insertmode'
* refactor!: remove 'terse' optionDundar Goc2022-05-19
| | | | | Having two methods of setting the same option is redundant and can be potentially confusing. Recommend adding 's' to 'shortmess' instead.
* refactor!: remove 'remap' optionDundar Goc2022-05-19
| | | | | An option that should always be kept on except for when working with old Vi scripts is of little use to us.
* revert: "feat(mappings): do not simplify the rhs of a mapping" (#18553)zeertzjq2022-05-13
| | | | This reverts commit 7ac5359143ef25c4c8c0c427d5533f8d5824ed17. This fix can cause more problems than it solves.
* feat(defaults): search selection by * and # in visual mode (#18538)yamatsum2022-05-13
|
* feat(defaults): session data in $XDG_STATE_HOME #15583Ivan2022-05-12
| | | | | | | | | | | | See: https://gitlab.freedesktop.org/xdg/xdg-specs/-/commit/4f2884e16db35f2962d9b64312917c81be5cb54b - Move session persistent data to $XDG_STATE_HOME Change 'directory', 'backupdir', 'undodir', 'viewdir' and 'shadafile' default location to $XDG_STATE_HOME/nvim. - Move logs to $XDG_STATE_HOME, too. - Add stdpath('log') support. Fixes: #14805
* docs: move "hl-VertSplit" to deprecated.txt #18328Famiu Haque2022-04-30
|
* feat(mappings): do not simplify the rhs of a mappingzeertzjq2022-04-29
|
* feat(mappings): do not replace existing mapping for simplified formzeertzjq2022-04-29
|
* fix: show autocmd output when F is in shortmess (#18251)Gregory Anders2022-04-25
| | | | | | | | | | | The default value of including F in 'shortmess' has the unfortunate side effect of hiding output from autocommands. This is a common source of confusion and often leads people to think their autocommands are not working when they are. There is a small snippet in the docs for 'shortmess' indicating that the F flag suppresses autocmd output, but it's not easy to find if you don't already know to look for it. This commit removes that behavior of the F flag to make it only suppress file info when opening a new file.
* feat(highlight): implement CurSearch highlightFamiu Haque2022-04-17
| | | | Adds a `CurSearch` highlight group to highlight the current search result under the cursor.
* feat(test): use nvim_exec in helpers.source() #16064Justin M. Keyes2022-03-27
| | | | | | | | helpers.source() was a hack to work around the lack of anonymous :source. Its "create tempfile" behavior is not a required part of most tests that use it. Some tests still need the old "create tempfile" behavior either because they test SID behavior, or because of missing nvim_exec features: #16071
* Merge pull request #17266 from famiu/feat/ui/global-statuslinebfredl2022-03-17
|\ | | | | feat(statusline): add global statusline
| * feat: add support for global statuslineFamiu Haque2022-03-18
| | | | | | | | | | | | | | | | | | | | Ref: #9342 Adds the option to have a single global statusline for the current window at the bottom of the screen instead of a statusline at the bottom of every window. Enabled by setting `laststatus = 3`. Due to the fact that statuslines at the bottom of windows are removed when global statusline is enabled, horizontal separators are used instead to separate horizontal splits. The horizontal separator character is configurable through the`horiz` item in `'fillchars'`. Separator connector characters are also used to connect the horizontal and vertical separators together, which are also configurable through the `horizup`, `horizdown`, `vertleft`, `vertright` and `verthoriz` items in `fillchars`. The window separators are highlighted using the `WinSeparator` highlight group, which supersedes `VertSplit` and is linked to `VertSplit` by default in order to maintain backwards compatibility.
* | fix: use normal! <C-L> in default <C-L> mapping (#17695)Gregory Anders2022-03-12
| |
* | vim-patch:8.2.4498: using <Plug> with "noremap" does not workzeertzjq2022-03-03
| | | | | | | | | | | | Problem: Using <Plug> with "noremap" does not work. Solution: Always remap <Plug>. (closes vim/vim#9879, closes vim/vim#9789) https://github.com/vim/vim/commit/1fc34225acbee5ddca2b9ec3f82b3014d385b7f8
* | docs: clarify actual behavior of <Plug>zeertzjq2022-03-01
| |
* | feat: ignore nore on <Plug> mapsshadmansaleh2022-02-27
| |
* | vim-patch:8.2.3573: cannot decide whether to skip test that fails with 64 bitSean Dewar2022-02-17
| | | | | | | | | | | | | | | | | | | | Problem: Cannot decide whether to skip test that fails with 64 bit ints. (closes vim/vim#9072) Solution: Add v:sizeofint, v:sizeoflong and v:sizeofpointer. Improve the check for multiply overflow. https://github.com/vim/vim/commit/69b3072d984480935ec412b32b97fea974d2b689 Omit v:sizeof{int,long,pointer} as they're only really used for tests.
* | feat(events): add DirChangedPrezeertzjq2022-02-11
|/ | | | | | | | | | | | | In Nvim, like DirChanged, this also triggers when switching windows. This marks Vim patch 8.2.4335 as ported. vim-patch:8.2.4335: no autocommand event triggered before changing directory Problem: No autocommand event triggered before changing directory. (Ronnie Magatti) Solution: Add DirChangedPre. (closes vim/vim#9721) https://github.com/vim/vim/commit/28e8f73ae2d90009fd62cd60f97c2643ba44de68