vim9script # Vim runtime support library # # Maintainer: The Vim Project <https://github.com/vim/vim> # Last Change: 2025 Feb 01 import autoload 'dist/vim9.vim' command -complete=shellcmd -nargs=1 Launch vim9.Launch(trim(<q-args>)) command -complete=file -nargs=1 Open vim9.Open(trim(<q-args>)) const no_gx = get(g:, "nogx", get(g:, "netrw_nogx", false)) if !no_gx def GetWordUnderCursor(): string const url = matchstr(expand("<cWORD>"), '\%(\%(http\|ftp\|irc\)s\?\|file\)://\S\{-}\ze[^A-Za-z0-9/]*$') if !empty(url) return url endif const user_var = get(g:, 'gx_word', get(g:, 'netrw_gx', '<cfile>')) return expand(user_var) enddef if maparg('gx', 'n') == "" nnoremap <unique> gx <scriptcmd>vim9.Open(GetWordUnderCursor())<CR> endif if maparg('gx', 'x') == "" xnoremap <unique> gx <scriptcmd>vim9.Open(getregion(getpos('v'), getpos('.'), { type: mode() })->join())<CR> endif endif # vim: ts=8 sts=2 sw=2 et