aboutsummaryrefslogtreecommitdiff
path: root/runtime/doc
Commit message (Collapse)AuthorAge
* docs(lua): clarify assumptions on luajit vs. puc luaChristian Clason2024-07-21
| | | | | | | | | Problem: Plugin authors and distribution packagers are confused about the role of LuaJIT vs. PUC Lua. Solution: Clarify that LuaJIT is preferred but not required (extensions should not be assumed but checked for) and that vanilla Lua 5.1 should be used without language extensions such as `goto`.
* vim-patch:eb6d733: runtime(doc): fix more inconsistencies in assert function ↵zeertzjq2024-07-19
| | | | | | | | | docs (#29796) related: https://github.com/vim/vim/pull/15280#issuecomment-2233771449 closes: vim/vim#15285 https://github.com/vim/vim/commit/eb6d733bef312a0634770e023e8a41f0347f1503
* perf(filetype): implement parent pattern pre-matching (#29660)Evgeni Chasnovski2024-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: calling `vim.filetype.match()` has performance bottleneck in that it has to match a lot of Lua patterns against several versions of input file name. This might be the problem if users need to call it synchronously a lot of times. Solution: add "parent pattern pre-matching" which can be used to quickly reject several potential pattern matches at (usually rare) cost of adding time for one extra Lua pattern match. "Parent pattern" is a manually added/tracked grouping of filetype patterns which should have two properties: - Match at least the same set of strings as its filetype patterns. But not too much more. - Be fast to match. For them to be effective, group should consist from at least three filetype patterns. Example: for a filetpye pattern ".*/etc/a2ps/.*%.cfg", both "/etc/" and "%.cfg" are good parent patterns (prefer the one which can group more filetype patterns). After this commit, `vim.filetype.match()` on most inputs runs ~3.4 times faster (while some inputs may see less impact if they match many parent patterns).
* vim-patch:c1b3984: runtime(doc): minor updates. (#29778)zeertzjq2024-07-18
| | | | | | | closes: vim/vim#15280 https://github.com/vim/vim/commit/c1b3984a7b3cd6adcd1f43e558cb04fad1af3182 Co-authored-by: Shane Harper <shane@shaneharper.net>
* vim-patch:9.1.0593: filetype: Asymptote files are not recognizedChristian Clason2024-07-17
| | | | | | | | | | | | | | Problem: filetype: Asymptote files are not recognized Solution: detect '*.asy' files as asy filetype, include ftplugin and syntax plugin (AvidSeeker). Reference: https://asymptote.sourceforge.io/ closes: vim/vim#15252 https://github.com/vim/vim/commit/3088ef094da721dac8c0363a6c9e14eaf9313929 Co-authored-by: AvidSeeker <avidseeker7@protonmail.com>
* vim-patch:3e07d5a: runtime(go): add recommended indent options to ftpluginChristian Clason2024-07-17
| | | | | | | | related: vim/vim#15264 https://github.com/vim/vim/commit/3e07d5aef19ac34a61b9d58c2e0698351d392f52 Co-authored-by: markmacode <code@mamo.aleeas.com>
* vim-patch:6a54dcb: runtime(gdscript): add recommended indent options to ftpluginChristian Clason2024-07-17
| | | | | | | | related: vim/vim#15264 https://github.com/vim/vim/commit/6a54dcbbd68e70ee067348d1d9c1898befc56972 Co-authored-by: markmacode <code@mamo.aleeas.com>
* vim-patch:9.1.0592: runtime: filetype: Mediawiki files are not recognizedChristian Clason2024-07-17
| | | | | | | | | | | | | Problem: filetype: Mediawiki files are not recognized Solution: detect "*.mw" and "*.wiki" as mediawiki filetype, include basic syntax and filetype plugins. (AvidSeeker) closes: vim/vim#15266 https://github.com/vim/vim/commit/b5844104ab1259e061e023ea6259e4eb002e7170 Co-authored-by: AvidSeeker <avidseeker7@protonmail.com>
* fix(tohtml): support ranges againaltermo2024-07-16
|
* vim-patch:1cc4cae: runtime(typst): Add typst runtime filesChristian Clason2024-07-16
| | | | | | | | closes: vim/vim#15234 https://github.com/vim/vim/commit/1cc4cae961a7b49608ef7bd56837cc723d49db4d Co-authored-by: Gregory Anders <greg@gpanders.com>
* vim-patch:df62c62: runtime(doc): grammar fixes in options.txt (#29729)zeertzjq2024-07-15
| | | | | | | closes: vim/vim#15265 https://github.com/vim/vim/commit/df62c62177bd4dffce880b7a5711594865090953 Co-authored-by: Dominique Pellé <dominique.pelle@gmail.com>
* docs(lpeg): merge upstream changesMaria José Solano2024-07-15
|
* docs: misc (#29622)dundargoc2024-07-15
| | | | Co-authored-by: Christian Clason <c.clason@uni-graz.at> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* vim-patch:27c5598: runtime(doc): Add hint how to load termdebug from vimrc ↵zeertzjq2024-07-14
| | | | | | | | | (#29704) fixes: vim/vim#15256 https://github.com/vim/vim/commit/27c55984def4c6ff7afc89958c90f6018c474b2c Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:9.1.0574: ex: wrong handling of commands after barzeertzjq2024-07-14
| | | | | | | | | | | | | | | | | Problem: ex: wrong handling of commands after bar Solution: for :append, :insert and :change use the text after the bar as input for those commands. This is what POSIX requests. (Mohamed Akram) See the POSIX Spec: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/ex.html#tag_20_40_13_03 Section 12.c closes: vim/vim#15229 https://github.com/vim/vim/commit/8c446da34998f6350911e07fbfd7932412c83185 Co-authored-by: Mohamed Akram <mohd.akram@outlook.com>
* vim-patch:9.1.0573: ex: no implicit print for single addresseszeertzjq2024-07-14
| | | | | | | | | | | | | | | | Problem: ex: no implicit print for single addresses Solution: explicitly print even during single addresses, as requested by POSIX (Mohamed Akram) See the POSIX behaviour here: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/ex.html#tag_20_40_13_03 Section 6b closes: vim/vim#15230 https://github.com/vim/vim/commit/c25a7084e9ae1f78c28ddcbe1fa23374cfdf1e03 Co-authored-by: Mohamed Akram <mohd.akram@outlook.com>
* fix(lua)!: do not use typed table for empty dictAmit Singh2024-07-13
| | | | | | | | | | | | | | | | | Problem: Empty dictionaries are converted into typed tables of the form `{ [true] = 6}` instead of an empty dictionary representation `{}`. This leads to incorrect table representation, along with failure in JSON encoding of such tables as currently tables with only string and number type keys can be encoded. Solution: The typed table logic has been removed from `nlua_push_Dictionary`. The typed table logic is required only for float value conversions which is already handled in `nlua_push_Float`. So, it is(was) no longer required here. Fixes neovim/neovim#29218
* vim-patch:9.1.0572: cannot specify tab page closing behaviour (#29682)zeertzjq2024-07-13
| | | | | | | | | | | | Problem: cannot specify tab page closing behaviour (Gianluca Pacchiella) Solution: Add the 'tabclose' option (LemonBoy). fixes: vim/vim#5967 closes: vim/vim#15204 https://github.com/vim/vim/commit/5247b0b92e191a046b034171a3b34031e317735f Co-authored-by: LemonBoy <thatlemon@gmail.com>
* vim-patch:74703f1: runtime(doc): remove obsolete Ex insert behavior (#29678)zeertzjq2024-07-13
| | | | | | | | | | related: vim/vim#15120 closes: vim/vim#15228 https://github.com/vim/vim/commit/74703f1086e7815f356123736666d9930db8683a Nvim only supports Vim Ex mode, so this is long obsolete in Nvim. Co-authored-by: Mohamed Akram <mohd.akram@outlook.com>
* vim-patch:9.1.0568: Cannot expand paths from 'cdpath' settingzeertzjq2024-07-12
| | | | | | | | | | | | | | Problem: Cannot expand paths from 'cdpath' setting (Daniel Hahler) Solution: Implement 'cdpath' completion, add the new 'dir_in_path' completion type (LemonBoy) fixes vim/vim#374 closes: vim/vim#15205 https://github.com/vim/vim/commit/a20bf69a3b32024cb7809be87af33bf9dc490a19 Co-authored-by: LemonBoy <thatlemon@gmail.com>
* vim-patch:9.1.0557: moving in the buffer list doesn't work as documented ↵zeertzjq2024-07-11
| | | | | | | | | | | | | | | | | | | (#29653) Problem: moving in the buffer list doesn't work as documented (SenileFelineS) Solution: Skip non-help buffers, when run from normal buffers, else only move from help buffers to the next help buffer (LemonBoy) As explained in the help section for :bnext and :bprev the commands should jump from help buffers to help buffers (and from regular ones to regular ones). fixes: vim/vim#4478 closes: vim/vim#15198 https://github.com/vim/vim/commit/893eeeb44583ca33276e263165b2a6e50fd297d0 Co-authored-by: LemonBoy <thatlemon@gmail.com>
* vim-patch:7a85e34: runtime(doc): fix inconsistencies in :h file-searching ↵zeertzjq2024-07-11
| | | | | | | (#29652) closes: vim/vim#15201 https://github.com/vim/vim/commit/7a85e343d29e502f66e2c3035808911e5a843e99
* vim-patch:9.1.0554: :bw leaves jumplist and tagstack data around (#29639)zeertzjq2024-07-10
| | | | | | | | | | | | | | | | | Problem: :bw leaves jumplist and tagstack data around (Paul "Joey" Clark) Solution: Wipe jumplist and tagstack references to the wiped buffer (LemonBoy) As documented the :bwipeout command brutally deletes all the references to the buffer, so let's make it delete all the entries in the jump list and tag stack referring to the wiped-out buffer. fixes: vim/vim#8201 closes: vim/vim#15185 https://github.com/vim/vim/commit/4ff3a9b1e3ba45f9dbd0ea8c721f27d9315c4d93 Co-authored-by: LemonBoy <thatlemon@gmail.com>
* vim-patch:9.1.0547: No way to get the arity of a Vim function (#29638)zeertzjq2024-07-10
| | | | | | | | | | | | | Problem: No way to get the arity of a Vim function (Austin Ziegler) Solution: Enhance get() Vim script function to return the function argument info using get(func, "arity") (LemonBoy) fixes: vim/vim#15097 closes: vim/vim#15109 https://github.com/vim/vim/commit/48b7d05a4f88c4326bd5d7a73a523f2d953b3e51 Co-authored-by: LemonBoy <thatlemon@gmail.com>
* fix(diagnostic): fix backwards compatibility for goto_next and goto_prev ↵Max Coplan2024-07-09
| | | | (#29593)
* build(deps): drop unused bundled bash, python parsers and queriesChristian Clason2024-07-09
| | | | | | | | | | Problem: Neovim bundles treesitter parsers for bash and python but does not use them by default. This dilutes the messaging about the bundled parsers being required for functionality or reasonable out-of-the-box experience. It also increases the risk of query incompatibilities for no gain. Solution: Stop bundling bash and python parser and queries.
* vim-patch:d1c3698: runtime(doc): fix typo in :h ft-csv-syntax (#29619)zeertzjq2024-07-09
| | | | | closes: vim/vim#15179 https://github.com/vim/vim/commit/d1c369892d49775e3da502981d0d896c98592528
* vim-patch:9.1.0543: Behavior of CursorMovedC is strange (#29608)zeertzjq2024-07-08
| | | | | | | | | | Problem: Behavior of CursorMovedC is strange. Solution: Also trigger when the cmdline has changed. (zeertzjq) fixes: vim/vim#15069 closes: vim/vim#15071 https://github.com/vim/vim/commit/8145620a958dbb5c82cf8f8a37556ee1ea501c6d
* vim-patch:9.1.0540: Unused assignment in sign_define_cmd()zeertzjq2024-07-08
| | | | | | | | | | Problem: Unused assignment in sign_define_cmd() Solution: Remove the assignment. Also document the "priority" flag of sign_define(). (zeertzjq) closes: vim/vim#15169 https://github.com/vim/vim/commit/fc3f5dba52099d82ccc8bfe309d58a6fac01373d
* vim-patch:fbbabbc: runtime(doc): add page-scrolling keys to index.txtzeertzjq2024-07-08
| | | | | | | | | | | Also add the newly documented keys from commit 6a4afb1efca1bac5fbc0281804591cf0a52b2d81 to index.txt which was forgotten. related: vim/vim#15107 https://github.com/vim/vim/commit/fbbabbca3319ea1b358c08f250b4582421c40600 Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:b9bbf1f: runtime(doc): clarify how to re-init csv syntax filezeertzjq2024-07-08
| | | | | | | | fixes: vim/vim#15161 https://github.com/vim/vim/commit/b9bbf1f04439a6cdb6d376c94852721e4ebf8300 Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:9.1.0538: not possible to assign priority when defining a sign ↵zeertzjq2024-07-07
| | | | | | | | | | | | | | | | | | (#29592) Problem: not possible to assign priority when defining a sign (Mathias Fußenegger) Solution: Add the priority argument for the :sign-define ex command and the sign_define() function (LemonBoy) Use the specified value instead of the default one (SIGN_DEF_PRIO) when no priority is explicitly specified in sign_place or :sign place. fixes: vim/vim#8334 closes: vim/vim#15124 https://github.com/vim/vim/commit/b975ddfdf96644b8df808415dee36f99abd48753 Co-authored-by: LemonBoy <thatlemon@gmail.com>
* vim-patch:9.1.0537: signed number detection for CTRL-X/A can be improved ↵zeertzjq2024-07-07
| | | | | | | | | | | | | | | | | (#29590) Problem: signed number detection for CTRL-X/A can be improved (Chris Patuzzo) Solution: Add the new "blank" value for the 'nrformat' setting. This will make Vim assume a signed number only if there is a blank in front of the sign. (distobs) fixes: vim/vim#15033 closes: vim/vim#15110 https://github.com/vim/vim/commit/25ac6d67d92e0adda53b8d44b81c15031643ca1e Co-authored-by: distobs <cuppotatocake@gmail.com>
* Merge pull request #29584 from zeertzjq/vim-6a4afb1efca1zeertzjq2024-07-06
|\ | | | | vim-patch:6a4afb1,aaaa21b
| * vim-patch:aaaa21b: runtime(doc): Remove wrong help tag CTRL-SHIFT-CRzeertzjq2024-07-06
| | | | | | | | | | | | https://github.com/vim/vim/commit/aaaa21b58f8af2fe923368116f94832df3d273bc Co-authored-by: Christian Brabandt <cb@256bit.org>
| * vim-patch:6a4afb1: runtime(doc): document further keys that scroll page up/downzeertzjq2024-07-06
| | | | | | | | | | | | | | | | fixes: vim/vim#15107 https://github.com/vim/vim/commit/6a4afb1efca1bac5fbc0281804591cf0a52b2d81 Co-authored-by: Christian Brabandt <cb@256bit.org>
* | feat(lsp): drop fswatch, use inotifywait (#29374)Andreas Schneider2024-07-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch replaces fswatch with inotifywait from inotify-toools: https://github.com/inotify-tools/inotify-tools fswatch takes ~1min to set up recursively for the Samba source code directory. inotifywait needs less than a second to do the same thing. https://github.com/emcrisostomo/fswatch/issues/321 Also it fswatch seems to be unmaintained in the meantime. Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
* | docs(lsp): add examples to lsp-quickstart for completion and autoformatting ↵Gregory Anders2024-07-06
|/ | | | | | | | (#29497) Auto-completion and auto-formatting are common (though certainly not universal) features that many users want. We can document how to accomplish this in lsp-quickstart so that users that do want these features can easily find examples of how to configure them.
* docs: misc (#29410)dundargoc2024-07-05
| | | | Co-authored-by: Michael Härtl <haertl.mike@gmail.com> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* fix(diagnostic): make docs agree with code (#29561)Peter Aronoff2024-07-04
| | | | | | | | | | | Problem: the code and docs for vim.diagnostic.JumpOpts.float send mixed signals about what the default should be. When the option is first set, in the global_diagnostic_options table, the comment clearly says that the default is false. Later in the code, in goto_diagnostic, there's a line that sets the default to true if no default is present. Finally, the docs say that the default is true. Solution: Change the docs to reflect the new default of false and fix the goto_diagnostic function.
* vim-patch:2606e77: runtime(doc): rename variable for pandoc markdown supportChristian Clason2024-07-04
| | | | | | | | fixes: vim/vim#15141 https://github.com/vim/vim/commit/2606e7718c49fc8221dfff21b36eff632ef668a0 Co-authored-by: Christian Brabandt <cb@256bit.org>
* feat(jumplist): allow opting out of removing unloaded buffers (#29347)zeertzjq2024-06-30
| | | | Problem: Cannot opt out of removing unloaded buffers from the jumplist. Solution: Only enable that with "unload" flag in 'jumpoptions'.
* refactor(typval)!: remove distinction of binary and nonbinary stringsbfredl2024-06-27
| | | | | | | | | | | | | | | | | | | | | This is a breaking change which will make refactor of typval and shada code a lot easier. In particular, code that would use or check for v:msgpack_types.binary in the wild would be broken. This appears to be rarely used in existing plugins. Also some cases where v:msgpack_type.string would be used to represent a binary string of "string" type, we use a BLOB instead, which is vimscripts native type for binary blobs, and already was used for BIN formats when necessary. msgpackdump(msgpackparse(data)) no longer preserves the distinction of BIN and STR strings. This is very common behavior for language-specific msgpack bindings. Nvim uses msgpack as a tool to serialize its data. Nvim is not a tool to bit-perfectly manipulate arbitrary msgpack data out in the wild. The changed tests should indicate how behavior changes in various edge cases.
* vim-patch:ecd642a: runtime(doc): clarify, that register 1-9 will always be ↵zeertzjq2024-06-25
| | | | | | | | | shifted (#29476) related: vim/vim#15077 https://github.com/vim/vim/commit/ecd642af43dc496e92020422fded717e095d4bc1 Co-authored-by: Christian Brabandt <cb@256bit.org>
* feat(lsp): vim.lsp.buf.format() supports textDocument/rangesFormatting #27323Tom Praschan2024-06-24
| | | | | | | | | | While this relies on a proposed LSP 3.18 feature, it's fully backwards compatible, so IMO there's no harm in adding this already. Looks like some servers already support for this e.g. - gopls: https://go-review.googlesource.com/c/tools/+/510235 - clangd: https://github.com/llvm/llvm-project/pull/80180 Fixes #27293
* vim-patch:01a4fb1: runtime(java): Compose "g:java_highlight_signature" and ↵Christian Clason2024-06-23
| | | | | | | | | | | | | | | | | "g:java_highlight_functions" With the variables defined, distinctly highlight parts of a method declaration header: its name and parameter list parens, from its type parameters, return type, and formal parameters; and distinctly highlight parts of a lambda expression: its parameter list parens and the arrow, from its formal parameters and identifiers. closes: vim/vim#15083 https://github.com/vim/vim/commit/01a4fb104dbee6a8b7ef20394a2a7c5b49cf49ca Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
* vim-patch:beb02ed: runtime(java): Optionally highlight parameterised typesChristian Clason2024-06-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the presence of parameterised types whose names begin with a capital letter and end with a less-than sign "<" that introduces a type argument or a list of comma-separated type arguments, followed by a greater-than sign ">", a variable "g:java_highlight_generics" can be defined to have some components of such types uniformly coloured (by picking highlight groups for javaGenericsC{1,2}, javaWildcardBound). For example, ------------------------------------------------------------ java.io.InputStream stream = java.io.InputStream.nullInputStream(); java.util.function.Function<String, java.util.function.BiFunction<String, String, String>> updater = property -> (oldValue, newValue) -> oldValue; java.util.logging.LogManager.getLogManager() .updateConfiguration(stream, updater); ------------------------------------------------------------ Note that the diamond form and explicit type arguments do not qualify for this kind of recognition. For example, ------------------------------------------------------------ new java.util.HashSet<>().<String>toArray(new String[0]); ------------------------------------------------------------ References: https://docs.oracle.com/javase/specs/jls/se21/html/jls-4.html#jls-4.5 https://docs.oracle.com/javase/specs/jls/se21/html/jls-15.html#jls-15.9 https://docs.oracle.com/javase/specs/jls/se21/html/jls-15.html#jls-15.12.2.1 closes: vim/vim#15050 https://github.com/vim/vim/commit/beb02ed674bc61f179c4ff71e93bdeeb44fe9c4e Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
* vim-patch:9.1.0511: CursorMovedC triggered wrongly with setcmdpos()zeertzjq2024-06-21
| | | | | | | | | | | Problem: CursorMovedC triggered wrongly with setcmdpos() (after v9.1.0507) Solution: Remove the premature triggering. Also don't trigger when cursor didn't move. (zeertzjq) closes: vim/vim#15064 https://github.com/vim/vim/commit/bc6f96708e3678dbb27ec4192d87cf94a15d4e9a
* vim-patch:9.1.0507: hard to detect cursor movement in the command linezeertzjq2024-06-21
| | | | | | | | | | | | Problem: hard to detect cursor movement in the command line Solution: Add the CursorMovedC autocommand (Shougo Matsushita) closes: vim/vim#15040 https://github.com/vim/vim/commit/d09521476f41dd8dbddb25b7acd0b299f9bf94d3 Co-authored-by: Shougo Matsushita <Shougo.Matsu@gmail.com>
* build(vim-patch.sh): don't ignore changes to version*.txt (#29425)zeertzjq2024-06-20
| | | | | | | Suggest adding them to news.txt instead. Also don't ignore changes to intro.txt and sponsor.txt, as they don't change much these days, and it's necessary to consider whether to include their changes in Nvim's intro.txt.