runtime(netrw): change indent size from 1 to 2 Commit: https://github.com/vim/vim/commit/c363ca1ecd1f8db03663ef98dcf41eeacc3c22c7 Author: Luca Saccarola <github.e4...@aleeas.com> Date: Thu Dec 19 20:16:18 2024 +0100
runtime(netrw): change indent size from 1 to 2 closes: https://github.com/vim/vim/issues/16248 Signed-off-by: Luca Saccarola <github.e4...@aleeas.com> Signed-off-by: Christian Brabandt <c...@256bit.org> diff --git a/runtime/autoload/netrw.vim b/runtime/autoload/netrw.vim index b0dfd823c..044b2da17 100644 --- a/runtime/autoload/netrw.vim +++ b/runtime/autoload/netrw.vim @@ -1,11 +1,11 @@ " netrw.vim: Handles file transfer and remote directory listing across " AUTOLOAD SECTION " Maintainer: This runtime file is looking for a new maintainer. -" Date: May 03, 2023 -" Version: 173a +" Date: May 03, 2023 +" Version: 173a " Last Change: {{{1 -" 2023 Nov 21 by Vim Project: ignore wildignore when expanding $COMSPEC (v173a) -" 2023 Nov 22 by Vim Project: fix handling of very long filename on longlist style (v173a) +" 2023 Nov 21 by Vim Project: ignore wildignore when expanding $COMSPEC (v173a) +" 2023 Nov 22 by Vim Project: fix handling of very long filename on longlist style (v173a) " 2024 Feb 19 by Vim Project: (announce adoption) " 2024 Feb 29 by Vim Project: handle symlinks in tree mode correctly " 2024 Apr 03 by Vim Project: detect filetypes for remote edited files @@ -41,8 +41,9 @@ " 2024 Dec 04 by Vim Project: do not detach for gvim (#16168) " 2024 Dec 08 by Vim Project: check the first arg of netrw_browsex_viewer for being executable (#16185) " 2024 Dec 12 by Vim Project: do not pollute the search history (#16206) +" 2024 Dec 19 by Vim Project: change style (#16248) " }}} -" Former Maintainer: Charles E Campbell +" Former Maintainer: Charles E Campbell " GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim " Copyright: Copyright (C) 2016 Charles E. Campbell {{{1 " Permission is hereby granted to use and distribute this code, @@ -72,15 +73,15 @@ endif " (netrw will benefit from vim's having patch#656, too) let s:needspatches=[1557,213] if exists("s:needspatches") - for ptch in s:needspatches - if v:version < 704 || (v:version == 704 && !has("patch".ptch)) - if !exists("s:needpatch{ptch}") - unsilent echomsg "***sorry*** this version of netrw requires vim v7.4 with patch#".ptch - endif - let s:needpatch{ptch}= 1 - finish - endif - endfor + for ptch in s:needspatches + if v:version < 704 || (v:version == 704 && !has("patch".ptch)) + if !exists("s:needpatch{ptch}") + unsilent echomsg "***sorry*** this version of netrw requires vim v7.4 with patch#".ptch + endif + let s:needpatch{ptch}= 1 + finish + endif + endfor endif let g:loaded_netrw = "v173" @@ -105,124 +106,124 @@ setl cpo&vim " (this function can optionally take a list of messages) " Dec 2, 2019 : max errnum currently is 106 fun! netrw#ErrorMsg(level,msg,errnum) -" call Dfunc("netrw#ErrorMsg(level=".a:level." msg<".a:msg."> errnum=".a:errnum.") g:netrw_use_errorwindow=".g:netrw_use_errorwindow) + " call Dfunc("netrw#ErrorMsg(level=".a:level." msg<".a:msg."> errnum=".a:errnum.") g:netrw_use_errorwindow=".g:netrw_use_errorwindow) if a:level < g:netrw_errorlvl -" call Dret("netrw#ErrorMsg : suppressing level=".a:level." since g:netrw_errorlvl=".g:netrw_errorlvl) - return + " call Dret("netrw#ErrorMsg : suppressing level=".a:level." since g:netrw_errorlvl=".g:netrw_errorlvl) + return endif if a:level == 1 - let level= "**warning** (netrw) " + let level= "**warning** (netrw) " elseif a:level == 2 - let level= "**error** (netrw) " + let level= "**error** (netrw) " else - let level= "**note** (netrw) " + let level= "**note** (netrw) " endif -" call Decho("level=".level,'~'.expand("<slnum>")) + " call Decho("level=".level,'~'.expand("<slnum>")) if g:netrw_use_errorwindow == 2 && exists("*popup_atcursor") - " use popup window - if type(a:msg) == 3 - let msg = [level]+a:msg - else - let msg= level.a:msg - endif - let s:popuperr_id = popup_atcursor(msg,{}) - let s:popuperr_text= "" - elseif g:netrw_use_errorwindow - " (default) netrw creates a one-line window to show error/warning - " messages (reliably displayed) - - " record current window number - let s:winBeforeErr= winnr() -" call Decho("s:winBeforeErr=".s:winBeforeErr,'~'.expand("<slnum>")) - - " getting messages out reliably is just plain difficult! - " This attempt splits the current window, creating a one line window. - if bufexists("NetrwMessage") && bufwinnr("NetrwMessage") > 0 -" call Decho("write to NetrwMessage buffer",'~'.expand("<slnum>")) - exe bufwinnr("NetrwMessage")."wincmd w" -" call Decho("setl ma noro",'~'.expand("<slnum>")) - setl ma noro + " use popup window if type(a:msg) == 3 - for msg in a:msg - NetrwKeepj call setline(line("$")+1,level.msg) - endfor + let msg = [level]+a:msg else - NetrwKeepj call setline(line("$")+1,level.a:msg) - endif - NetrwKeepj $ - else -" call Decho("create a NetrwMessage buffer window",'~'.expand("<slnum>")) - bo 1split - sil! call s:NetrwEnew() - sil! NetrwKeepj call s:NetrwOptionsSafe(1) - setl bt=nofile - NetrwKeepj file NetrwMessage -" call Decho("setl ma noro",'~'.expand("<slnum>")) - setl ma noro - if type(a:msg) == 3 - for msg in a:msg - NetrwKeepj call setline(line("$")+1,level.msg) - endfor + let msg= level.a:msg + endif + let s:popuperr_id = popup_atcursor(msg,{}) + let s:popuperr_text= "" + elseif g:netrw_use_errorwindow + " (default) netrw creates a one-line window to show error/warning + " messages (reliably displayed) + + " record current window number + let s:winBeforeErr= winnr() + " call Decho("s:winBeforeErr=".s:winBeforeErr,'~'.expand("<slnum>")) + + " getting messages out reliably is just plain difficult! + " This attempt splits the current window, creating a one line window. + if bufexists("NetrwMessage") && bufwinnr("NetrwMessage") > 0 + " call Decho("write to NetrwMessage buffer",'~'.expand("<slnum>")) + exe bufwinnr("NetrwMessage")."wincmd w" + " call Decho("setl ma noro",'~'.expand("<slnum>")) + setl ma noro + if type(a:msg) == 3 + for msg in a:msg + NetrwKeepj call setline(line("$")+1,level.msg) + endfor + else + NetrwKeepj call setline(line("$")+1,level.a:msg) + endif + NetrwKeepj $ else - NetrwKeepj call setline(line("$"),level.a:msg) - endif - NetrwKeepj $ - endif -" call Decho("wrote msg<".level.a:msg."> to NetrwMessage win#".winnr(),'~'.expand("<slnum>")) - if &fo !~ '[ta]' - syn clear - syn match netrwMesgNote "^\*\*note\*\*" - syn match netrwMesgWarning "^\*\*warning\*\*" - syn match netrwMesgError "^\*\*error\*\*" - hi link netrwMesgWarning WarningMsg - hi link netrwMesgError Error - endif -" call Decho("setl noma ro bh=wipe",'~'.expand("<slnum>")) - setl ro nomod noma bh=wipe + " call Decho("create a NetrwMessage buffer window",'~'.expand("<slnum>")) + bo 1split + sil! call s:NetrwEnew() + sil! NetrwKeepj call s:NetrwOptionsSafe(1) + setl bt=nofile + NetrwKeepj file NetrwMessage + " call Decho("setl ma noro",'~'.expand("<slnum>")) + setl ma noro + if type(a:msg) == 3 + for msg in a:msg + NetrwKeepj call setline(line("$")+1,level.msg) + endfor + else + NetrwKeepj call setline(line("$"),level.a:msg) + endif + NetrwKeepj $ + endif + " call Decho("wrote msg<".level.a:msg."> to NetrwMessage win#".winnr(),'~'.expand("<slnum>")) + if &fo !~ '[ta]' + syn clear + syn match netrwMesgNote "^\*\*note\*\*" + syn match netrwMesgWarning "^\*\*warning\*\*" + syn match netrwMesgError "^\*\*error\*\*" + hi link netrwMesgWarning WarningMsg + hi link netrwMesgError Error + endif + " call Decho("setl noma ro bh=wipe",'~'.expand("<slnum>")) + setl ro nomod noma bh=wipe else - " (optional) netrw will show messages using echomsg. Even if the - " message doesn't appear, at least it'll be recallable via :messages -" redraw! - if a:level == s:WARNING - echohl WarningMsg - elseif a:level == s:ERROR - echohl Error - endif - - if type(a:msg) == 3 - for msg in a:msg - unsilent echomsg level.msg - endfor - else - unsilent echomsg level.a:msg - endif - -" call Decho("echomsg ***netrw*** ".a:msg,'~'.expand("<slnum>")) - echohl None - endif - -" call Dret("netrw#ErrorMsg") + " (optional) netrw will show messages using echomsg. Even if the + " message doesn't appear, at least it'll be recallable via :messages + " redraw! + if a:level == s:WARNING + echohl WarningMsg + elseif a:level == s:ERROR + echohl Error + endif + + if type(a:msg) == 3 + for msg in a:msg + unsilent echomsg level.msg + endfor + else + unsilent echomsg level.a:msg + endif + + " call Decho("echomsg ***netrw*** ".a:msg,'~'.expand("<slnum>")) + echohl None + endif + + " call Dret("netrw#ErrorMsg") endfun " --------------------------------------------------------------------- " s:NetrwInit: initializes variables if they haven't been defined {{{2 " Loosely, varname = value. fun s:NetrwInit(varname,value) -" call Decho("varname<".a:varname."> value=".a:value,'~'.expand("<slnum>")) + " call Decho("varname<".a:varname."> value=".a:value,'~'.expand("<slnum>")) if !exists(a:varname) - if type(a:value) == 0 - exe "let ".a:varname."=".a:value - elseif type(a:value) == 1 && a:value =~ '^[{[]' - exe "let ".a:varname."=".a:value - elseif type(a:value) == 1 - exe "let ".a:varname."="."'".a:value."'" - else - exe "let ".a:varname."=".a:value - endif + if type(a:value) == 0 + exe "let ".a:varname."=".a:value + elseif type(a:value) == 1 && a:value =~ '^[{[]' + exe "let ".a:varname."=".a:value + elseif type(a:value) == 1 + exe "let ".a:varname."="."'".a:value."'" + else + exe "let ".a:varname."=".a:value + endif endif endfun @@ -230,11 +231,11 @@ endfun " Netrw Constants: {{{2 call s:NetrwInit("g:netrw_dirhistcnt",0) if !exists("s:LONGLIST") - call s:NetrwInit("s:THINLIST",0) - call s:NetrwInit("s:LONGLIST",1) - call s:NetrwInit("s:WIDELIST",2) - call s:NetrwInit("s:TREELIST",3) - call s:NetrwInit("s:MAXLIST" ,4) + call s:NetrwInit("s:THINLIST",0) + call s:NetrwInit("s:LONGLIST",1) + call s:NetrwInit("s:WIDELIST",2) + call s:NetrwInit("s:TREELIST",3) + call s:NetrwInit("s:MAXLIST" ,4) endif let s:NOTE = 0 @@ -252,63 +253,63 @@ let g:netrw_localmovecmdopt = "" " --------------------------------------------------------------------- " Default values for netrw's global protocol variables {{{2 if exists("*popup_atcursor") -\ && has("syntax") -\ && exists("g:syntax_on") -\ && has("mouse") + \ && has("syntax") + \ && exists("g:syntax_on") + \ && has("mouse") call s:NetrwInit("g:netrw_use_errorwindow",2) else call s:NetrwInit("g:netrw_use_errorwindow",1) endif if !exists("g:netrw_dav_cmd") - if executable("cadaver") - let g:netrw_dav_cmd = "cadaver" - elseif executable("curl") - let g:netrw_dav_cmd = "curl" - else - let g:netrw_dav_cmd = "" - endif + if executable("cadaver") + let g:netrw_dav_cmd = "cadaver" + elseif executable("curl") + let g:netrw_dav_cmd = "curl" + else + let g:netrw_dav_cmd = "" + endif endif if !exists("g:netrw_fetch_cmd") - if executable("fetch") - let g:netrw_fetch_cmd = "fetch -o" - else - let g:netrw_fetch_cmd = "" - endif + if executable("fetch") + let g:netrw_fetch_cmd = "fetch -o" + else + let g:netrw_fetch_cmd = "" + endif endif if !exists("g:netrw_file_cmd") - if executable("elinks") - call s:NetrwInit("g:netrw_file_cmd","elinks") - elseif executable("links") - call s:NetrwInit("g:netrw_file_cmd","links") - endif + if executable("elinks") + call s:NetrwInit("g:netrw_file_cmd","elinks") + elseif executable("links") + call s:NetrwInit("g:netrw_file_cmd","links") + endif endif if !exists("g:netrw_ftp_cmd") - let g:netrw_ftp_cmd = "ftp" + let g:netrw_ftp_cmd = "ftp" endif let s:netrw_ftp_cmd= g:netrw_ftp_cmd if !exists("g:netrw_ftp_options") - let g:netrw_ftp_options= "-i -n" + let g:netrw_ftp_options= "-i -n" endif if !exists("g:netrw_http_cmd") - if executable("wget") - let g:netrw_http_cmd = "wget" - call s:NetrwInit("g:netrw_http_xcmd","-q -O") - elseif executable("curl") - let g:netrw_http_cmd = "curl" - call s:NetrwInit("g:netrw_http_xcmd","-L -o") - elseif executable("elinks") - let g:netrw_http_cmd = "elinks" - call s:NetrwInit("g:netrw_http_xcmd","-source >") - elseif executable("fetch") - let g:netrw_http_cmd = "fetch" - call s:NetrwInit("g:netrw_http_xcmd","-o") - elseif executable("links") - let g:netrw_http_cmd = "links" - call s:NetrwInit("g:netrw_http_xcmd","-http.extra-header ".shellescape("Accept-Encoding: identity", 1)." -source >") - else - let g:netrw_http_cmd = "" - endif + if executable("wget") + let g:netrw_http_cmd = "wget" + call s:NetrwInit("g:netrw_http_xcmd","-q -O") + elseif executable("curl") + let g:netrw_http_cmd = "curl" + call s:NetrwInit("g:netrw_http_xcmd","-L -o") + elseif executable("elinks") + let g:netrw_http_cmd = "elinks" + call s:NetrwInit("g:netrw_http_xcmd","-source >") + elseif executable("fetch") + let g:netrw_http_cmd = "fetch" + call s:NetrwInit("g:netrw_http_xcmd","-o") + elseif executable("links") + let g:netrw_http_cmd = "links" + call s:NetrwInit("g:netrw_http_xcmd","-http.extra-header ".shellescape("Accept-Encoding: identity", 1)." -source >") + else + let g:netrw_http_cmd = "" + endif endif call s:NetrwInit("g:netrw_http_put_cmd","curl -T") call s:NetrwInit("g:netrw_keepj","keepj") @@ -316,37 +317,37 @@ call s:NetrwInit("g:netrw_rcp_cmd" , "rcp") call s:NetrwInit("g:netrw_rsync_cmd", "rsync") call s:NetrwInit("g:netrw_rsync_sep", "/") if !exists("g:netrw_scp_cmd") - if executable("scp") - call s:NetrwInit("g:netrw_scp_cmd" , "scp -q") - elseif executable("pscp") - call s:NetrwInit("g:netrw_scp_cmd", 'pscp -q') - else - call s:NetrwInit("g:netrw_scp_cmd" , "scp -q") - endif + if executable("scp") + call s:NetrwInit("g:netrw_scp_cmd" , "scp -q") + elseif executable("pscp") + call s:NetrwInit("g:netrw_scp_cmd", 'pscp -q') + else + call s:NetrwInit("g:netrw_scp_cmd" , "scp -q") + endif endif call s:NetrwInit("g:netrw_sftp_cmd" , "sftp") call s:NetrwInit("g:netrw_ssh_cmd" , "ssh") if has("win32") - \ && exists("g:netrw_use_nt_rcp") - \ && g:netrw_use_nt_rcp - \ && executable( $SystemRoot .'/system32/rcp.exe') - let s:netrw_has_nt_rcp = 1 - let s:netrw_rcpmode = '-b' + \ && exists("g:netrw_use_nt_rcp") + \ && g:netrw_use_nt_rcp + \ && executable( $SystemRoot .'/system32/rcp.exe') + let s:netrw_has_nt_rcp = 1 + let s:netrw_rcpmode = '-b' else - let s:netrw_has_nt_rcp = 0 - let s:netrw_rcpmode = '' + let s:netrw_has_nt_rcp = 0 + let s:netrw_rcpmode = '' endif " --------------------------------------------------------------------- " Default values for netrw's global variables {{{2 " Cygwin Detection ------- {{{3 if !exists("g:netrw_cygwin") - if has("win32unix") && &shell =~ '\%(\<bash\>\|\<zsh\>\)\%(\.exe\)\=$' - let g:netrw_cygwin= 1 - else - let g:netrw_cygwin= 0 - endif + if has("win32unix") && &shell =~ '\%(\<bash\>\|\<zsh\>\)\%(\.exe\)\=$' + let g:netrw_cygwin= 1 + else + let g:netrw_cygwin= 0 + endif endif " Default values - a-c ---------- {{{3 call s:NetrwInit("g:netrw_alto" , &sb) @@ -359,8 +360,8 @@ call s:NetrwInit("g:netrw_clipboard" , 1) call s:NetrwInit("g:netrw_compress" , "gzip") call s:NetrwInit("g:netrw_ctags" , "ctags") if exists("g:netrw_cursorline") && !exists("g:netrw_cursor") - call netrw#ErrorMsg(s:NOTE,'g:netrw_cursorline is deprecated; use g:netrw_cursor instead',77) - let g:netrw_cursor= g:netrw_cursorline + call netrw#ErrorMsg(s:NOTE,'g:netrw_cursorline is deprecated; use g:netrw_cursor instead',77) + let g:netrw_cursor= g:netrw_cursorline endif call s:NetrwInit("g:netrw_cursor" , 2) let s:netrw_usercul = &cursorline @@ -371,156 +372,156 @@ call s:NetrwInit("g:netrw_cygdrive","/cygdrive") call s:NetrwInit("s:didstarstar",0) call s:NetrwInit("g:netrw_dirhistcnt" , 0) let s:xz_opt = has('unix') ? "XZ_OPT=-T0" : - \ (has("win32") && &shell =~? ' cmd(\.exe)?$' ? - \ "setx XZ_OPT=-T0 &&" : "") + \ (has("win32") && &shell =~? ' cmd(\.exe)?$' ? + \ "setx XZ_OPT=-T0 &&" : "") call s:NetrwInit("g:netrw_decompress ", "{" - \ .."'.lz4': 'lz4 -d'," - \ .."'.lzo': 'lzop -d'," - \ .."'.lz': 'lzip -dk'," - \ .."'.7z': '7za x'," - \ .."'.001': '7za x'," - \ .."'.zip': 'unzip'," - \ .."'.bz': 'bunzip2 -k'," - \ .."'.bz2': 'bunzip2 -k'," - \ .."'.gz': 'gunzip -k'," - \ .."'.lzma': 'unlzma -T0 -k'," - \ .."'.xz': 'unxz -T0 -k'," - \ .."'.zst': 'zstd -T0 -d'," - \ .."'.Z': 'uncompress -k'," - \ .."'.tar': 'tar -xvf'," - \ .."'.tar.bz': 'tar -xvjf'," - \ .."'.tar.bz2': 'tar -xvjf'," - \ .."'.tbz': 'tar -xvjf'," - \ .."'.tbz2': 'tar -xvjf'," - \ .."'.tar.gz': 'tar -xvzf'," - \ .."'.tgz': 'tar -xvzf'," - \ .."'.tar.lzma': '"..s:xz_opt.." tar -xvf --lzma'," - \ .."'.tlz': '"..s:xz_opt.." tar -xvf --lzma'," - \ .."'.tar.xz': '"..s:xz_opt.." tar -xvfJ'," - \ .."'.txz': '"..s:xz_opt.." tar -xvfJ'," - \ .."'.tar.zst': '"..s:xz_opt.." tar -xvf --use-compress-program=unzstd'," - \ .."'.tzst': '"..s:xz_opt.." tar -xvf --use-compress-program=unzstd'," - \ .."'.rar': '"..(executable("unrar")?"unrar x -ad":"rar x -ad").."'" - \ .."}") + \ .."'.lz4': 'lz4 -d'," + \ .."'.lzo': 'lzop -d'," + \ .."'.lz': 'lzip -dk'," + \ .."'.7z': '7za x'," + \ .."'.001': '7za x'," + \ .."'.zip': 'unzip'," + \ .."'.bz': 'bunzip2 -k'," + \ .."'.bz2': 'bunzip2 -k'," + \ .."'.gz': 'gunzip -k'," + \ .."'.lzma': 'unlzma -T0 -k'," + \ .."'.xz': 'unxz -T0 -k'," + \ .."'.zst': 'zstd -T0 -d'," + \ .."'.Z': 'uncompress -k'," + \ .."'.tar': 'tar -xvf'," + \ .."'.tar.bz': 'tar -xvjf'," + \ .."'.tar.bz2': 'tar -xvjf'," + \ .."'.tbz': 'tar -xvjf'," + \ .."'.tbz2': 'tar -xvjf'," + \ .."'.tar.gz': 'tar -xvzf'," + \ .."'.tgz': 'tar -xvzf'," + \ .."'.tar.lzma': '"..s:xz_opt.." tar -xvf --lzma'," + \ .."'.tlz': '"..s:xz_opt.." tar -xvf --lzma'," + \ .."'.tar.xz': '"..s:xz_opt.." tar -xvfJ'," + \ .."'.txz': '"..s:xz_opt.." tar -xvfJ'," + \ .."'.tar.zst': '"..s:xz_opt.." tar -xvf --use-compress-program=unzstd'," + \ .."'.tzst': '"..s:xz_opt.." tar -xvf --use-compress-program=unzstd'," + \ .."'.rar': '"..(executable("unrar")?"unrar x -ad":"rar x -ad").."'" + \ .."}") unlet s:xz_opt call s:NetrwInit("g:netrw_dirhistmax" , 10) call s:NetrwInit("g:netrw_fastbrowse" , 1) call s:NetrwInit("g:netrw_ftp_browse_reject", '^total\s\+\d\+$\|^Trying\s\+\d\+.*$\|^KERBEROS_V\d rejected\|^Security extensions not\|No such file\|: connect to address [0-9a-fA-F:]*: No route to host$') if !exists("g:netrw_ftp_list_cmd") - if has("unix") || (exists("g:netrw_cygwin") && g:netrw_cygwin) - let g:netrw_ftp_list_cmd = "ls -lF" - let g:netrw_ftp_timelist_cmd = "ls -tlF" - let g:netrw_ftp_sizelist_cmd = "ls -slF" - else - let g:netrw_ftp_list_cmd = "dir" - let g:netrw_ftp_timelist_cmd = "dir" - let g:netrw_ftp_sizelist_cmd = "dir" - endif + if has("unix") || (exists("g:netrw_cygwin") && g:netrw_cygwin) + let g:netrw_ftp_list_cmd = "ls -lF" + let g:netrw_ftp_timelist_cmd = "ls -tlF" + let g:netrw_ftp_sizelist_cmd = "ls -slF" + else + let g:netrw_ftp_list_cmd = "dir" + let g:netrw_ftp_timelist_cmd = "dir" + let g:netrw_ftp_sizelist_cmd = "dir" + endif endif call s:NetrwInit("g:netrw_ftpmode",'binary') " Default values - h-lh ---------- {{{3 call s:NetrwInit("g:netrw_hide",1) if !exists("g:netrw_ignorenetrc") - if &shell =~ ' -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/vim_dev/E1tOMDj-007Z3L-Ip%40256bit.org.