aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* vim-patch:8.2.4724: current instance of last search pattern not easily spottedzeertzjq2024-06-19
| | | | | | | | | | | Problem: Current instance of last search pattern not easily spotted. Solution: Add CurSearch highlighting. (closes vim/vim#10133) https://github.com/vim/vim/commit/a43993897aa372159f682df37562f159994dc85c Some code is superseded by later patches that are already ported. Co-authored-by: LemonBoy <thatlemon@gmail.com>
* vim-patch:9.1.0499: MS-Windows: doesn't handle symlinks properly (#29400)zeertzjq2024-06-19
| | | | | | | | | | | | | | | | | | | Problem: MS-Windows: doesn't handle symlinks properly (Timothy Madden) Solution: Implement lstat() on MS-Windows (author) lstat() differs from stat() in how it handles symbolic links, the former doesn't resolve the symlink while the latter does so. Implement a simple yet effective fallback using Win32 APIs. fixes vim/vim#14933 closes: vim/vim#15014 https://github.com/vim/vim/commit/23c5ebeb95cb942df307946e3ced230a7c8312eb Co-authored-by: LemonBoy <thatlemon@gmail.com> Co-authored-by: K.Takata <kentkt@csc.jp>
* vim-patch:9718ed7: runtime(filetype): update htmldjango detectionChristian Clason2024-06-19
| | | | | | | | | | | | | | | | - update tags to detect djangohtml based on https://docs.djangoproject.com/en/5.0/ref/templates/builtins/#built-in-tag-reference - increase the lines to inspect to 40 lines 10 lines is too few and might result in high false negative. Increasing it to 40 lines should reduce the false negative. closes: vim/vim#15037 https://github.com/vim/vim/commit/9718ed7ab989c0a0be88a0d749f24321eb0e6af1 Co-authored-by: Afiq Nazrie <afnazrie@gmail.com>
* fix(mouse): early return when clicking in padded 'statuscolumn' (#29394)luukvbaal2024-06-19
| | | | | | Problem: Hit assert when clicking inside a padded 'statuscolumn' that is padded beyond the length of the allocated click_defs. Solution: Still consider this a "in_statuscol" click, but return early when about to execute the click func.
* vim-patch:26de90c: runtime(nohlsearch): include the the simple nohlsearch ↵Christian Clason2024-06-18
| | | | | | | | | | | package fixes: vim/vim#15039 closes: vim/vim#15042 https://github.com/vim/vim/commit/26de90c6312cf16d7a4f2b6942befb4e1f14b960 Co-authored-by: Maxim Kim <habamax@gmail.com>
* vim-patch:9.1.0498: getcmdcompltype() interferes with cmdline completion ↵zeertzjq2024-06-19
| | | | | | | | | | | (#29397) Problem: getcmdcompltype() interferes with cmdline completion. Solution: Don't set expand context when it's already set. (zeertzjq) closes: vim/vim#15036 https://github.com/vim/vim/commit/a821b609f9bb9daef032fe1cb8fb95995822e367
* refactor(lua): remove unnecessary strlen() in nlua_expand_pat() (#29388)zeertzjq2024-06-18
| | | | Also change the initial value of `status` to `FAIL`, as that'll avoid unnecessary assignments.
* refactor: Windows tilde expansion followup (#29380)Rafael Kitover2024-06-18
| | | | | | | | | | | | | | | | | | | | | | | Followup to #28515: Rename the static os_homedir() to os_uv_homedir() to emphasize that it is a wrapper around a libuv function. Add the function os_get_homedir() to os/env.c to return the cached homedir value as a const. Must be called after homedir is initialized or it fails. The difference between this function and the static os_uv_homedir() is that the latter gets the homedir from libuv and is used to initialize homedir in init_homedir(), while os_get_homedir() just returns homedir as a const if it's initialized and is public. Use the os_get_homedir() accessor for ~/ expansion on Windows to make the code more concise. Add a Windows section to main_spec.lua with tests for expanding ~/ and ~\ prefixes for files passed in on the command-line. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
* fix(lua): find length of completion prefix earlier (#29384)zeertzjq2024-06-18
| | | | | Do the expansion right after setting the expand context, so that the length of the completion prefix can be set, but don't do that directly in set_one_cmd_context(), as that's also called by getcmdcompltype().
* vim-patch:ca47114: runtime(doc): improve the vim-shebang example (#29382)zeertzjq2024-06-18
| | | | | https://github.com/vim/vim/commit/ca471145321fa8089071330b7637ad3950ac4f11 Co-authored-by: Christian Brabandt <cb@256bit.org>
* docs(lsp): format the handwritten part #29295Yi Ming2024-06-17
|
* docs(news): fix inconsistencies (#29381)zeertzjq2024-06-18
|
* Merge pull request #29379 from zeertzjq/vim-9.1.0495zeertzjq2024-06-18
|\ | | | | vim-patch:9.1.{0495,0496}
| * vim-patch:9.1.0496: matched text is highlighted case-sensitivelyzeertzjq2024-06-18
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: matched text is highlighted case-sensitively Solution: use MB_STRNICMP, update highlighting when the base changes (glepnir) fixes: vim/vim#15021 closes: vim/vim#15023 https://github.com/vim/vim/commit/f189138b39a11ed5cf3adea6610469b478841aba Co-authored-by: glepnir <glephunter@gmail.com>
| * vim-patch:9.1.0495: Matched text isn't highlighted in cmdline pumzeertzjq2024-06-18
|/ | | | | | | | | | | | Problem: Matched text isn't highlighted in cmdline pum. Solution: Use cmdline completion pattern in cmdline mode. (zeertzjq) closes: vim/vim#15029 https://github.com/vim/vim/commit/d8c9340fc67ca19f82ec3e77ec38296424e758cf Cherry-pick syntax.txt change from runtime update.
* Merge #28775 fix(man.vim): signcolumn causes broken wrapJustin M. Keyes2024-06-17
|\
| * fix(ftplugin/man.vim): hide signcolumn (auto)belkka2024-06-11
| | | | | | | | | | | | | | | | | | | | Problem: It's a common practice to set 'signcolumn=yes' (always show) instead of default 'signcolumn=auto' in order to prevent annoying horizontal shifting in editable buffers when using some popular plugins that add/remove signs on the fly. This makes signcolumn always visible and breaks the text flow of pre-formatted man pages, even when no signs are actually defined. Some other options are already tweaked in man.vim to address the issue (e.g. 'nonumber'), but not signcolumn. Solution: set 'signcolumn=auto' in ftplugin/man.vim. By default there is no |signs| in man pages anyway (and I am not aware of any plugins that could define them in man pages), so 'signcolumn=auto' should behave like 'signcolumn=no', i.e. hide the empty column in order to keep buffer width same as terminal width. In a (rare?) case when user does define some signs in man pages, signcolumn will appear (breaking the text flow).
| * refactor(ftplugin/man.vim): rearrange `setlocal` commandsbelkka2024-06-11
| | | | | | | | | | | | | | | | | | | | | | | | Problem: 1. multiple `setlocal` commands are spread across the script. 2. several options, apparently, serve the same purpose (hide UI columns) which may not be immediately clear. more options may be required to fullfill the same purpose or they could be removed all together as a group if better solution is found later 3. `setlocal nofoldenable` may be overriden by conditional block later in the script. Solution: 1. move 'colorcolumn' and 'nolist' to the group of other options at the beginning 2. add an explanatory comment about options that disable UI columns 3. move 'nofoldenable' to the if-else block to keep relevant commands coupled
* | vim-patch:9.1.0494: Wrong matched text highlighted in pum with 'rightleft' ↵zeertzjq2024-06-17
| | | | | | | | | | | | | | | | | | | | | | (#29371) Problem: Wrong matched text highlighted in pum with 'rightleft'. Solution: Match using the original text instead of the reversed text. (zeertzjq) closes: vim/vim#15020 https://github.com/vim/vim/commit/63901e89638d683ecbc8e3323170dd485657fd1d
* | Merge pull request #29357 from luukvbaal/statuscolzeertzjq2024-06-17
|\ \ | | | | | | feat(column)!: rework 'statuscolumn' %r/l items
| * | feat(column)!: rework 'statuscolumn' %r/l itemsLuuk van Baal2024-06-16
| | | | | | | | | | | | | | | | | | | | | Problem: A custom 'statuscolumn' needs to check a bunch of options and placed signs to replicate the default number column. Solution: Rework %l item to include the necessary logic to mimic the default number column. Remove now redundant %r item.
| * | refactor: remove redundant copy in statuscolumn itemsLuuk van Baal2024-06-16
| | | | | | | | | | | | | | | Immediately write to buf_tmp instead of to another temporary buffer that is later copied to buf_tmp. Misc cleanup.
* | | vim-patch:0ddab58: runtime(java): Add a config variable for commonly used ↵Christian Clason2024-06-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | compiler options The value of g:javac_makeprg_params, if set, is added to the value of 'makeprg' as an option string. closes: vim/vim#14999 https://github.com/vim/vim/commit/0ddab582fa13d1d653800494e45ecfba00974a18 Co-authored-by: Doug Kearns <dougkearns@gmail.com>
* | | vim-patch:917ff8a: runtime(html): bump length of character references in ↵Christian Clason2024-06-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | syntax script (vim/vim#15022) This allows handling longer references such as `&CounterClockwiseContourIntegral;`. https://github.com/vim/vim/commit/917ff8a19d2746dd922b7292dc61fb92e18b7ce2 Co-authored-by: Mohamed Akram <mohd.akram@outlook.com>
* | | vim-patch:79da22d: runtime(kdl): fix KdlIndent and kdlComment in indent ↵Christian Clason2024-06-16
| | | | | | | | | | | | | | | | | | | | | | | | script (vim/vim#15019) https://github.com/vim/vim/commit/79da22de755e28bd8d4f58fc4bf34cf94f45de63 Co-authored-by: Yinzuo Jiang <jiangyinzuo@foxmail.com>
* | | vim-patch:371bab0: runtime(java): Fold multi-line comments with the syntax ↵Christian Clason2024-06-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | kind of &fdm (vim/vim#15016) Also: - Restore the capability to mark as an error braces nested in parens with g:javaInParen. - Try not to fold top-level-type bodies. (Defining multiple package-private top level types in a single source file is not recommended as it can impose order among compilation units; so it is assumed that only one such top level type is usually defined.) - Compose ‘method header’ highlighting and block braces folding. - Do not highlight block braces whenever ‘method header’ highlighting is requested. This bundling of ‘method headers’ and block braces for highlighting can be traced back to Vim v5.0; however, no comment or documentation entry conveys any justification. For example, it is hard to discover the connection between block braces for "while", "if", etc., statements and method body block braces. The former behaviour can be attained in, e.g. ~/.vim/after/syntax/java.vim: ------------------------------------------------------------ if exists("g:java_highlight_functions") syn clear javaBlock javaInParen syn match javaBlockOther "[{}]" syn region javaBlock transparent matchgroup=javaBlockStart \ start="\%(^\|^\S[^:]\+\)\@120<!{" end="}" fold hi def link javaBlockStart javaFuncDef hi def link javaBlockOther javaBlockStart if exists("g:java_mark_braces_in_parens_as_errors") syn match javaInParen contained "[{}]" endif endif ------------------------------------------------------------ Note: Read ‘a method header omitting a _throws_ clause’ for every ‘method header’ appellation used above. https://github.com/vim/vim/commit/371bab05947b32f26d1b32922e5dc38343a875bc Co-authored-by: Aliaksei Budavei <32549825+zzzyxwvut@users.noreply.github.com>
* | | vim-patch:9.1.0492: filetype: Vim-script files not detected by shebang lineChristian Clason2024-06-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Vim-script files may not be recognised Solution: Add shebang line detection (Doug Kearns) closes: vim/vim#15012 https://github.com/vim/vim/commit/0d4d23dac0a5a77ccb0ebf1dcf646afe0c6886bf Co-authored-by: Doug Kearns <dougkearns@gmail.com>
* | | vim-patch:9.1.0493: Test for patch 9.1.0489 doesn't fail without the fix ↵zeertzjq2024-06-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#29366) Problem: Test for patch 9.1.0489 doesn't fail without the fix. Solution: Use "!" flag of feedkeys() so that ex_normal_busy is not set and ins_compl_check_keys() is not skipped (zeertzjq). closes: vim/vim#15018 https://github.com/vim/vim/commit/acc87469415ba10283e5a53a8a11424f4867bbcf
* | | vim-patch:9.1.0489: default completion may break with fuzzy (#29364)zeertzjq2024-06-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: default completion may break with fuzzy Solution: check that completion_match_array is not null (glepnir) closes: vim/vim#15010 https://github.com/vim/vim/commit/aced8c2f4fd1cf3f8ac7cdb0dd54d19ef4390ef8 Co-authored-by: glepnir <glephunter@gmail.com>
* | | docs: document 'list' behavior when 'listchars' excludes "tab" (#29360)zeertzjq2024-06-16
| | |
* | | Merge pull request #29361 from zeertzjq/vim-1c6734291295zeertzjq2024-06-16
|\ \ \ | | | | | | | | vim-patch:1c67342,52f2ff0
| * | | vim-patch:52f2ff0: runtime(zip): revert unintended change to zip#Write()zeertzjq2024-06-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was wrongly included as of patch 1c6734291295bf8aa39577840b40bb because apparently I messed up the use of git apply :/ https://github.com/vim/vim/commit/52f2ff03636fe120f3c9d00e9b3cdc1da251bd73 Co-authored-by: Christian Brabandt <cb@256bit.org>
| * | | vim-patch:1c67342: runtime(zip): MS-Windows: handle files with spaces properlyzeertzjq2024-06-16
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change does the following 3 things: 1) non need to quote the file to be extracted The zipfile plugin used to quote and fnameescape() the path to the file to be extracted. However testing with unzip showed, that while this works on Linux on Windows you shall not escape the blanks in filenames. As long as the pathname is properly quoted, this words on Linux and Windows. 2) reset shellslash (MS-Windows only) When shellslash is set, filenames to the zip archive will be forward quoted. However since the filename is eventually handed over to the unzip command, we need to make sure to use native paths so that the command will understand what file to open. Therefore, if shellslash is set (and the shell is cmd.exe), replace any forward slashes by the expected backslashes 3) style: Use tabs for the Header, remove a few comments in the s:Escape() and zip#read() functions fixes: vim/vim#14998 https://github.com/vim/vim/commit/1c6734291295bf8aa39577840b40bb21a7f27120 Co-authored-by: Christian Brabandt <cb@256bit.org>
* | | vim-patch:9.1.0491: Cmdline pum doesn't work properly with 'rightleft' (#29355)zeertzjq2024-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cmdline pum doesn't work properly with 'rightleft'. Solution: Don't use curwin->w_p_rl in cmdline mode in pum_redraw(). Use a static variable since pum_may_redraw() may be called in any mode. Also correct position of other popups with 'rightleft'. (zeertzjq) closes: vim/vim#15005 https://github.com/vim/vim/commit/883018feff43413813770dd1e13d4f950aa38524
* | | vim-patch:f4bc59c: runtime(doc): add another tag for vim-shebang feature ↵zeertzjq2024-06-15
|/ / | | | | | | | | | | | | | | | | (#29356) related: vim/vim#15011 https://github.com/vim/vim/commit/f4bc59c4f67786e967db48e944c2cce2c0da8dc1 Co-authored-by: Christian Brabandt <cb@256bit.org>
* | vim-patch:9.1.0490: minor style problems with patch 9.1.0487 (#29354)zeertzjq2024-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: minor style problems with patch 9.1.0487 Solution: use shown_compl instead of after_first_compl variable (glepnir) closes: vim/vim#15008 fix(completion): use exist shown_compl instead after_first_compl https://github.com/vim/vim/commit/105f741fac1b3242909c3c69384f00e4dcd9356e Co-authored-by: glepnir <glephunter@gmail.com>
* | vim-patch:9.1.0488: Wrong padding for pum "kind" with 'rightleft' (#29352)zeertzjq2024-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Wrong padding for pum "kind" with 'rightleft'. Solution: Fix off-by-one error (zeertzjq). The screen_fill() above is end-exclusive, and - With 'rightleft' it fills `pum_col - pum_base_width - n + 1` to `col`, so the next `col` should be `pum_col - pum_base_width - n`. - With 'norightleft' it fills `col` to `pum_col - pum_base_width + n - 1`, so the next `col` should be `pum_col - pum_base_width + n`. closes: vim/vim#15004 https://github.com/vim/vim/commit/a2324373eb1c3f1777bc40cb6dcd5e895a15fe10
* | vim-patch:ae321b5: runtime(vim): Update base-syntax, match shebang lines ↵zeertzjq2024-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | (vim/vim#15011) (#29351) Match shebang lines in Vim9 and legacy script. Mark these as an error if they appear anywhere other than the first line of a legacy-script file. In Vim9 script these match as normal line comments rather than an error. https://github.com/vim/vim/commit/ae321b51f7531b23545d64c3a98ed991a31dd5ee Co-authored-by: dkearns <dougkearns@gmail.com>
* | vim-patch:9.1.0486: filetype: Snakemake files are not recognizedChristian Clason2024-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: Snakemake files are not recognized Solution: Detect '*.smk' and Snakefile files as snakemake filetype (Riley Bruins) See: https://snakemake.readthedocs.io/en/stable/snakefiles/deployment.html#distribution-and-reproducibility closes: vim/vim#14992 https://github.com/vim/vim/commit/82a579e15ad78f4b99d2957300da3076ccc7d378 Co-authored-by: Riley Bruins <ribru17@hotmail.com> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* | fix(defaults): default @/Q broken when 'ignorecase' is set (#29343)Jerry2024-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: When 'ignorecase' is set, the default keymap Q and Q would exit visual mode. This issue was raised in #28287 and a fix was applied in #28289. However, `==` operator is subject to user `ignorecase` setting. Solution: Switching to `==#` operator would guarantee case sensitive comparison between visual mode and linewise visual mode. Co-authored-by: Kuanju Chen <kuanju.chen@mksinst.com>
* | vim-patch:9.1.0487: completed item not update on fuzzy completion (#29341)zeertzjq2024-06-15
| | | | | | | | | | | | | | | | | | | | | | Problem: completed item not update on fuzzy completion Solution: reset compl_shown_match when at original match position (glepnir) closes: vim/vim#14955 https://github.com/vim/vim/commit/f94c9c482a6dd488f0136ac99499eb6e2ab3ccca Co-authored-by: glepnir <glephunter@gmail.com>
* | docs: misc (#29229)dundargoc2024-06-15
| | | | | | | | | | | | Co-authored-by: Ilia Choly <ilia.choly@gmail.com> Co-authored-by: Jose Pedro Oliveira <jose.p.oliveira.oss@gmail.com> Co-authored-by: Maria José Solano <majosolano99@gmail.com> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* | Merge pull request #29339 from zeertzjq/vim-a3bddb759e77zeertzjq2024-06-15
|\ \ | | | | | | vim-patch:a3bddb7,d6d4e13,262e25e,c509c00
| * | vim-patch:c509c00: runtime(doc): fix wrong helptag for :deferzeertzjq2024-06-15
| | | | | | | | | | | | | | | | | | https://github.com/vim/vim/commit/c509c009bbc07eff678a9239a5813398e180f019 Co-authored-by: Christian Brabandt <cb@256bit.org>
| * | vim-patch:262e25e: runtime(vim): Update base-syntax, match :sleep argzeertzjq2024-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Match :sleep arg properly including a lone "m" with a leading count. closes: vim/vim#15003 https://github.com/vim/vim/commit/262e25e5a10438770dc9e23e0d5ffcb116f05d0f Co-authored-by: Doug Kearns <dougkearns@gmail.com>
| * | vim-patch:d6d4e13: runtime(doc): rewrite mkdir() doc and simplify {flags} ↵zeertzjq2024-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | meaning related: vim/vim#14991 https://github.com/vim/vim/commit/d6d4e1333659c0d2acee3133819498d014df47de Co-authored-by: Christian Brabandt <cb@256bit.org>
| * | vim-patch:a3bddb7: runtime(vim): Update base-syntax, match :catch and :throw ↵zeertzjq2024-06-15
|/ / | | | | | | | | | | | | | | | | | | args (vim/vim#14989) Match :catch /{pattern}/ and :throw {expr1}. https://github.com/vim/vim/commit/a3bddb759e77c52431a93a68674790dd02647cd1 Co-authored-by: dkearns <dougkearns@gmail.com>
* | vim-patch:79a14c0: runtime(keymap): include Georgian keymapChristian Clason2024-06-14
| | | | | | | | | | | | | | | | closes: vim/vim#15002 https://github.com/vim/vim/commit/79a14c061bb7c5caafba09b9244f87be37693cf6 Co-authored-by: Misho <nnamper@gmail.com>
* | Merge pull request #29311 from zeertzjq/vim-9.1.0476zeertzjq2024-06-15
|\ \ | | | | | | vim-patch:9.1.{0476,0478,0479,0480,0485}
| * | vim-patch:9.1.0485: Matched text shouldn't be highlighted in "kind" and "menu"zeertzjq2024-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Matched text shouldn't be highlighted in "kind" and "menu". Solution: Pass hlf_T instead of the attribute. Fix indent. (zeertzjq) closes: vim/vim#14996 https://github.com/vim/vim/commit/afbe5359e981e5d19ad23c394aefe60395c3648e