runtime(openPlugin): Add URLOpen to not expand special chars

closes: #17424

Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Christian Brabandt
2025-06-04 21:59:01 +02:00
parent dfed077e06
commit a2dd40c057
2 changed files with 12 additions and 5 deletions

View File

@ -1,4 +1,4 @@
*eval.txt* For Vim version 9.1. Last change: 2025 Apr 02
*eval.txt* For Vim version 9.1. Last change: 2025 Jun 04
VIM REFERENCE MANUAL by Bram Moolenaar
@ -5149,6 +5149,10 @@ executable. It takes the following arguments:
filetype string
executable string
*package-open*
The |:Open| and |:Launch| command are provided by the included plugin
$VIMRUNTIME/plugin/openPlugin.vim
*dist#vim9#Open()* *:Open* *:URLOpen*
*g:Openprg* *gx*
dist#vim9#Open(file: string) ~
@ -5159,6 +5163,9 @@ string specified in the variable is used instead.
The |:Open| user command uses file completion for its argument.
The |:URLOpen| user command works the same but does not perform file
completion and therefore does not expand special characters |cmdline-special|.
This function is by default called using the gx mapping. In visual mode
tries to open the visually selected text.
@ -5176,11 +5183,8 @@ NOTE: Escaping of the path is automatically applied.
Usage: >vim
:call dist#vim9#Open(<path>)
:Open <path>
:URLOpen <path>
<
*package-open*
The |:Open| and |:Launch| command are provided by the included plugin
$VIMRUNTIME/plugin/openPlugin.vim
*dist#vim9#Launch()* *:Launch*
dist#vim9#Launch(file: string) ~

View File

@ -17,6 +17,9 @@ command -complete=shellcmd -nargs=1 Launch vim9.Launch(trim(<q-args>))
# technically, -nargs=1 is correct, but this throws E480: No match
# when the argument contains a wildchar on Windows
command -complete=file -nargs=* Open vim9.Open(trim(<q-args>))
# Use URLOpen when you don't want completion to happen
# (or because you want to avoid cmdline-special)
command -nargs=1 URLOpen vim9.Open(trim(<q-args>))
const no_gx = get(g:, "nogx", get(g:, "netrw_nogx", false))
if !no_gx