aboutsummaryrefslogtreecommitdiff
path: root/runtime/doc/motion.txt
Commit message (Collapse)AuthorAge
* vim-patch:e1f3fd1d02e3 (#19796)Christian Clason2022-08-16
| | | | Update runtime files https://github.com/vim/vim/commit/e1f3fd1d02e3f5fe6d2b6d82687c6846b8e500f8
* 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.
* vim-patch:75ab590f8504 (#18170)Christian Clason2022-04-19
| | | | | | Update runtime files https://github.com/vim/vim/commit/75ab590f8504a8912ca0b8c58f6b897bb7a34f07 omit builtin.txt change to `expand()` (depends on 8.2.4726)
* vim-patch:8.2.4719: ">" marker sometimes not displayed in the jumplist (#18056)zeertzjq2022-04-10
| | | | | | | | Problem: ">" marker sometimes not displayed in the jumplist. Solution: If the buffer no longer exists show "-invalid-". (Christian Brabandt, closes vim/vim#10131, closes vim/vim#10100) https://github.com/vim/vim/commit/a0f659c76e22108880f857b8961422afc5ed8f5d Add a modeline to test_jumplist.vim
* vim-patch:c51cf0329809 (#17530)Christian Clason2022-02-27
| | | | Update runtime files. https://github.com/vim/vim/commit/c51cf0329809c7ae946c59d6f56699227efc9d1b
* vim-patch:4d8f476176ea (#15612)Christian Clason2021-09-10
| | | | | | | | | | * vim-patch:4d8f476176ea Update runtime files https://github.com/vim/vim/commit/4d8f476176eadfc745bcb8e143460029048f858d skip nsis/README.txt skip doc/vim9.txt skip src/nvim/po/it.po
* vim-patch:partial 2346a6378483 (#15599)Christian Clason2021-09-09
| | | | | | | | | | | | Update runtime files https://github.com/vim/vim/commit/2346a6378483c9871016f9fc821ec5cbea638f13 omit doc/vim.man omit doc/vim9.txt omit doc/vimdiff.txt omit doc/vimdiff.man skip doc/eval.txt (missing patch 8.2.2324) skip doc/help.txt (missing patch 8.2.2344)
* vim-patch:dad4473f02e1Jan Edmund Lazo2021-05-02
| | | | | | | Update runtime files. https://github.com/vim/vim/commit/dad4473f02e1fec86d43a2fc094536a4b27d3b25 Omit :echoconsole. Patch v8.2.2638 is not ported.
* vim-patch:cb80aa2d53e5Jan Edmund Lazo2021-05-01
| | | | | | | | | | | Update runtime files. https://github.com/vim/vim/commit/cb80aa2d53e56d3aba3b3c439fb467f29a750c5e Omit runtime/doc/tabpage.txt. Patch v8.2.1401 is not ported yet. Port optwin.vim changes without gettext(). Patch v8.2.1544 is not ported yet.
* vim-patch:207f009326c8Jan Edmund Lazo2021-04-29
| | | | | | | Update runtime files. https://github.com/vim/vim/commit/207f009326c8f878defde0e594d7d9ed9860106e Omit nl.po.
* vim-patch:09c6f265b210Jan Edmund Lazo2021-04-27
| | | | | | | | Update runtime files. https://github.com/vim/vim/commit/09c6f265b21065ffa9437837b1d0955137175e45 Omit getmousepos(). Patch v8.1.2304 is not ported yet.
* doc [ci skip]Justin M. Keyes2019-12-31
|
* jumplist: browser-style (or 'tagstack') navigation #11530butwerenotthereyet2019-12-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Traditionally, when navigating to a specific location from the middle of the jumplist results in shifting the current location to the bottom of the list and adding the new location after it. This behavior is not desireable to all users--see, for example https://vi.stackexchange.com/questions/18344/how-to-change-jumplist-behavior. Here, another jumplist behavior is introduced. When jumpoptions (a new option set added here) includes stack, the jumplist behaves like the tagstack or like history in a web browser. That is, when navigating to a location from the middle of the jumplist 2 first 1 second 0 third <-- current location 1 fourth 2 fifth to a new location the locations after the current location in the jump list are discarded 2 first 1 second 0 third <-- current location The result is that when moving forward from that location, the new location will be appended to the jumplist: 3 first 2 second 1 third 0 new If the new location is the same new == second as some previous (but not immediately prior) entry in the jumplist, 2 first 1 second 0 third <-- current location 1 fourth 2 fifth both occurrences preserved 3 first 2 second 1 third 0 second (new) when moving forward from that location. It would be desireable to go farther and, when the new location is the same as the location that is currently next in the jumplist, new == fourth make the result of navigating to the new location by jumping (e.g. 50gg) be the same as moving forward in the jumplist 2 first 1 second 0 third 1 new <-- current location 2 fifth and simply increment the jumplist index. That change is NOT part of this patch because it would require passing the new cursor location to the function (setpcmark) from all of its callees. That in turn would require those callees to know *before* calling what the new cursor location is, which do they do not currently.
* doc + extmarks tweaks #11421Justin M. Keyes2019-11-25
| | | | - nvim_buf_get_extmarks: rename "amount" => "limit" - rename `set_extmark_index_from_obj`
* doc: vim.fn, vim.call(), vim.api [ci skip]Justin M. Keyes2019-11-06
|
* vim-patch:8.1.2231: introduce gM command #11321Jan Edmund Lazo2019-11-01
| | | | | Problem: Not easy to move to the middle of a text line. Solution: Add the gM command. (Yasuhiro Matsumoto, closes vim/vim#2070) https://github.com/vim/vim/commit/8b530c1ff91f07cf6b0289a536992b7dfbc86598
* vim-patch:61da1bfa6c6bJustin M. Keyes2019-08-02
| | | | | Update runtime files. https://github.com/vim/vim/commit/61da1bfa6c6b19dd670671a318ce9f9e2acc784c
* vim-patch:68e6560b84f1Justin M. Keyes2019-08-02
| | | | | Update runtime files. https://github.com/vim/vim/commit/68e6560b84f196c82e27a72669684d5506a3a837
* vim-patch:26967617a30eJustin M. Keyes2019-08-01
| | | | | | | Update runtime files. https://github.com/vim/vim/commit/26967617a30e55aedc98b8f14b841d88469abd0e NA: vim-patch:55d81cd2a15d
* vim-patch:c8c884926750Justin M. Keyes2019-07-29
| | | | | Update runtime files. https://github.com/vim/vim/commit/c8c8849267503b2d2d6d821047ee8619c7821728
* vim-patch:f0d58efc9dc4Justin M. Keyes2019-07-29
| | | | | Update runtime files. https://github.com/vim/vim/commit/f0d58efc9dc46be37c629cbc99b4125448ca39fd
* TextYankPost: add v:event["inclusive"] #9717Justin M. Keyes2019-03-13
|
* vim-patch:91f84f6e11cdJustin M. Keyes2018-10-29
| | | | | Update runtime files. https://github.com/vim/vim/commit/91f84f6e11cd879d43d651c0903d85bff95f0716
* vim-patch:a9604e614517Justin M. Keyes2018-10-29
| | | | | Update runtime files. https://github.com/vim/vim/commit/a9604e61451707b38fdcb088fbfaeea2b922fef6
* vim-patch:b477af2260d9Justin M. Keyes2018-10-29
| | | | | Update runtime files. https://github.com/vim/vim/commit/b477af2260d9bc7ae7f743f0a14265d7ee12ee09
* vim-patch:8.0.1201: "yL" is affected by 'scrolloff' (#8997)Jan Edmund Lazo2018-09-14
| | | | | Problem: "yL" is affected by 'scrolloff'. (Eli the Bearded) Solution: Don't use 'scrolloff' when an operator is pending. https://github.com/vim/vim/commit/44cc4cf72fdd12cd9a779031d443aac4254d51ae
* doc: remove mentions of vimrc_exampleJustin M. Keyes2018-05-22
| | | | closes #8426
* vim-patch:036986f1507dJustin M. Keyes2017-11-06
| | | | | | Update runtime files. https://github.com/vim/vim/commit/036986f1507d223549d110af300144468bd3a1f7
* help, man.vim: change "outline" map to gO (#7405)Justin M. Keyes2017-10-21
|
* vim-patch:8.0.0118James McCoy2017-10-17
| | | | | | | | | Runtime updates that were bundled into the otherwise NA commit: Problem: "make proto" adds extra function prototype. Solution: Add vim/vim#ifdef. https://github.com/vim/vim/commit/5162822914372fc916a93f85848c0c82209e7cec
* doc: Replace hardcoded TOCs with <M-]> advice.Justin M. Keyes2017-05-01
|
* doc: Replace "For Vim ... Last change ..." headers (#6328)Justin M. Keyes2017-03-21
|
* 'cpoptions': "_" flag to toggle `cw` behaviour #6235raichoo2017-03-10
| | | | | | | | | | | | | | | `cw` and `cW` behave like `ce` and `cE` respectively. This is inconsistent compared to `dw` and `dW`. Introduce a new cpoptions flag "_" to toggle the Vi behavior. Closes #6234 Patch-by: Christian Brabandt <cblists@256bit.org> References: https://github.com/chrisbra/vim-mq-patches/blob/master/cpo_changeword https://groups.google.com/d/msg/vim_use/aaBqT6ECkA4/ALf4odKzEDgJ https://groups.google.com/d/msg/vim_dev/Dpn3xtUF16I/T6JcOPKN6usJ http://www.reddit.com/r/vim/comments/26nut8/why_does_cw_work_like_ce/
* vim-patch:c95a302James McCoy2017-01-09
| | | | | | Updated runtime files. https://github.com/vim/vim/commit/c95a302a4c42ec8230473cd4a5e0064d0a143aa8
* vim-patch:269f595Shougo Matsushita2016-10-15
| | | | | | Updated runtime files. https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
* vim-patch:f2571c6Marco Hinz2015-11-08
| | | | | | Update runtime files. References #3625.
* documentation: Fix :delmarks! documentationZyX2015-10-23
| | | | | :delmarks! clears the change list, but this fact is not mentioned. Also true for Vim.
* shada: Run set_last_cursor before writing shada fileZyX2015-10-23
|
* Deprecate &viminfo and :[rw]v, add &shada and :[rw]shZyX2015-10-08
|
* Replace references to viminfo in various placesZyX2015-10-08
|
* documentation: Update documentationZyX2015-10-08
|
* Remove POSIX 'cpoptions': cleanupMichael Reed2015-07-19
| | | | | | - CPO_ALL and CPO_VI are identical, so merge them - No longer check for the environment variable 'VIM_POSIX' - In vim_diff.txt, mention the removal of 'cpoptions' flags
* plugin: enable the matchit plugin by default #2723Felipe Morales2015-06-04
| | | | | Reviewed-by: Scott Prager <splinterofchaos@gmail.com> Reviewed-by: Michael Reed <m.reed@mykolab.com>
* 'cpoptions': Remove "-" flag #2655David Bürgin2015-05-21
|
* doc: Remove Vi annotationsMichael Reed2015-05-03
| | | | | | | | | | | | | | | This removes all instances of '{not in Vi}', '{Vi: ... }', etc. We don't care about Vi compatibility, so all of these annotations are useless in nvim. This also removed the syntax definitions for these items. In addition, remove instances of '{only when compiled with +feature}' adjacent to instances of '{not in Vi}' and friends. Helped-by: David Bürgin <676c7473@gmail.com> Helped-by: Felipe Morales <hel.sheep@gmail.com> closes #2535
* 'cpoptions': Remove "w" flag #2507David Bürgin2015-04-27
|
* doc: remove :fixdelJustin M. Keyes2015-04-25
| | | | | | :fixdel was removed in 3baba1e7bc6698e6bc9f1d37fce88b30d6274bc9 Helped-by: Michael Reed <m.reed@mykolab.com>
* "halfway a line" is a very confusing phraseJack Danger Canty2015-01-22
| | | | | | | | | If you Google for this phrase found in the Vim documentation you'll find almost exclusively hits from the Vim documentation. I think changing "halfway a line" to "halfway through a line" makes more sense. There seems to be an pervasive odd use of the word 'halfway' in the original docs which I'm updating everywhere.
* re-integrate runtime/ vim-patch:0 #938Justin M. Keyes2014-07-29
Vim runtime files based on 7.4.384 / hg changeset 7090d7f160f7 Excluding: Amiga icons (*.info, icons/) doc/hangulin.txt tutor/ spell/ lang/ (only used for menu translations) macros/maze/, macros/hanoi/, macros/life/, macros/urm/ These were used to test vi compatibility. termcap "Demonstration of a termcap file (for the Amiga and Archimedes)" Helped-by: Rich Wareham <rjw57@cam.ac.uk> Helped-by: John <john.schmidt.h@gmail.com> Helped-by: Yann <yann@yann-salaun.com> Helped-by: Christophe Badoit <c.badoit@lesiteimmo.com> Helped-by: drasill <github@tof2k.com> Helped-by: Tae Sandoval Murgan <taecilla@gmail.com> Helped-by: Lowe Thiderman <lowe.thiderman@gmail.com>