mirror of
https://github.com/neovim/neovim.git
synced 2024-12-22 04:05:09 -07:00
c5f001a46a
fixes #7527 fixes #7536
246 lines
10 KiB
VimL
246 lines
10 KiB
VimL
" netrwSettings.vim: makes netrw settings simpler
|
|
" Date: Dec 30, 2014
|
|
" Maintainer: Charles E Campbell <drchipNOSPAM at campbellfamily dot biz>
|
|
" Version: 15
|
|
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell {{{1
|
|
" Permission is hereby granted to use and distribute this code,
|
|
" with or without modifications, provided that this copyright
|
|
" notice is copied with it. Like anything else that's free,
|
|
" netrwSettings.vim is provided *as is* and comes with no
|
|
" warranty of any kind, either expressed or implied. By using
|
|
" this plugin, you agree that in no event will the copyright
|
|
" holder be liable for any damages resulting from the use
|
|
" of this software.
|
|
"
|
|
" Mat 4:23 (WEB) Jesus went about in all Galilee, teaching in their {{{1
|
|
" synagogues, preaching the gospel of the kingdom, and healing
|
|
" every disease and every sickness among the people.
|
|
" Load Once: {{{1
|
|
if exists("g:loaded_netrwSettings") || &cp
|
|
finish
|
|
endif
|
|
let g:loaded_netrwSettings = "v15"
|
|
if v:version < 700
|
|
echohl WarningMsg
|
|
echo "***warning*** this version of netrwSettings needs vim 7.0"
|
|
echohl Normal
|
|
finish
|
|
endif
|
|
|
|
" ---------------------------------------------------------------------
|
|
" NetrwSettings: {{{1
|
|
fun! netrwSettings#NetrwSettings()
|
|
" this call is here largely just to insure that netrw has been loaded
|
|
call netrw#SavePosn()
|
|
if !exists("g:loaded_netrw")
|
|
echohl WarningMsg | echomsg "***sorry*** netrw needs to be loaded prior to using NetrwSettings" | echohl None
|
|
return
|
|
endif
|
|
|
|
above wincmd s
|
|
enew
|
|
setlocal noswapfile bh=wipe
|
|
set ft=vim
|
|
file Netrw\ Settings
|
|
|
|
" these variables have the following default effects when they don't
|
|
" exist (ie. have not been set by the user in his/her .vimrc)
|
|
if !exists("g:netrw_liststyle")
|
|
let g:netrw_liststyle= 0
|
|
let g:netrw_list_cmd= "ssh HOSTNAME ls -FLa"
|
|
endif
|
|
if !exists("g:netrw_silent")
|
|
let g:netrw_silent= 0
|
|
endif
|
|
if !exists("g:netrw_use_nt_rcp")
|
|
let g:netrw_use_nt_rcp= 0
|
|
endif
|
|
if !exists("g:netrw_ftp")
|
|
let g:netrw_ftp= 0
|
|
endif
|
|
if !exists("g:netrw_ignorenetrc")
|
|
let g:netrw_ignorenetrc= 0
|
|
endif
|
|
|
|
put ='+ ---------------------------------------------'
|
|
put ='+ NetrwSettings: by Charles E. Campbell'
|
|
put ='+ Press <F1> with cursor atop any line for help'
|
|
put ='+ ---------------------------------------------'
|
|
let s:netrw_settings_stop= line(".")
|
|
|
|
put =''
|
|
put ='+ Netrw Protocol Commands'
|
|
put = 'let g:netrw_dav_cmd = '.g:netrw_dav_cmd
|
|
put = 'let g:netrw_fetch_cmd = '.g:netrw_fetch_cmd
|
|
put = 'let g:netrw_ftp_cmd = '.g:netrw_ftp_cmd
|
|
put = 'let g:netrw_http_cmd = '.g:netrw_http_cmd
|
|
put = 'let g:netrw_rcp_cmd = '.g:netrw_rcp_cmd
|
|
put = 'let g:netrw_rsync_cmd = '.g:netrw_rsync_cmd
|
|
put = 'let g:netrw_scp_cmd = '.g:netrw_scp_cmd
|
|
put = 'let g:netrw_sftp_cmd = '.g:netrw_sftp_cmd
|
|
put = 'let g:netrw_ssh_cmd = '.g:netrw_ssh_cmd
|
|
let s:netrw_protocol_stop= line(".")
|
|
put = ''
|
|
|
|
put ='+Netrw Transfer Control'
|
|
put = 'let g:netrw_cygwin = '.g:netrw_cygwin
|
|
put = 'let g:netrw_ftp = '.g:netrw_ftp
|
|
put = 'let g:netrw_ftpmode = '.g:netrw_ftpmode
|
|
put = 'let g:netrw_ignorenetrc = '.g:netrw_ignorenetrc
|
|
put = 'let g:netrw_sshport = '.g:netrw_sshport
|
|
put = 'let g:netrw_silent = '.g:netrw_silent
|
|
put = 'let g:netrw_use_nt_rcp = '.g:netrw_use_nt_rcp
|
|
put = 'let g:netrw_win95ftp = '.g:netrw_win95ftp
|
|
let s:netrw_xfer_stop= line(".")
|
|
put =''
|
|
put ='+ Netrw Messages'
|
|
put ='let g:netrw_use_errorwindow = '.g:netrw_use_errorwindow
|
|
|
|
put = ''
|
|
put ='+ Netrw Browser Control'
|
|
if exists("g:netrw_altfile")
|
|
put = 'let g:netrw_altfile = '.g:netrw_altfile
|
|
else
|
|
put = 'let g:netrw_altfile = 0'
|
|
endif
|
|
put = 'let g:netrw_alto = '.g:netrw_alto
|
|
put = 'let g:netrw_altv = '.g:netrw_altv
|
|
put = 'let g:netrw_banner = '.g:netrw_banner
|
|
if exists("g:netrw_bannerbackslash")
|
|
put = 'let g:netrw_bannerbackslash = '.g:netrw_bannerbackslash
|
|
else
|
|
put = '\" let g:netrw_bannerbackslash = (not defined)'
|
|
endif
|
|
put = 'let g:netrw_browse_split = '.g:netrw_browse_split
|
|
if exists("g:netrw_browsex_viewer")
|
|
put = 'let g:netrw_browsex_viewer = '.g:netrw_browsex_viewer
|
|
else
|
|
put = '\" let g:netrw_browsex_viewer = (not defined)'
|
|
endif
|
|
put = 'let g:netrw_compress = '.g:netrw_compress
|
|
if exists("g:Netrw_corehandler")
|
|
put = 'let g:Netrw_corehandler = '.g:Netrw_corehandler
|
|
else
|
|
put = '\" let g:Netrw_corehandler = (not defined)'
|
|
endif
|
|
put = 'let g:netrw_ctags = '.g:netrw_ctags
|
|
put = 'let g:netrw_cursor = '.g:netrw_cursor
|
|
let decompressline= line("$")
|
|
put = 'let g:netrw_decompress = '.string(g:netrw_decompress)
|
|
if exists("g:netrw_dynamic_maxfilenamelen")
|
|
put = 'let g:netrw_dynamic_maxfilenamelen='.g:netrw_dynamic_maxfilenamelen
|
|
else
|
|
put = '\" let g:netrw_dynamic_maxfilenamelen= (not defined)'
|
|
endif
|
|
put = 'let g:netrw_dirhistmax = '.g:netrw_dirhistmax
|
|
put = 'let g:netrw_errorlvl = '.g:netrw_errorlvl
|
|
put = 'let g:netrw_fastbrowse = '.g:netrw_fastbrowse
|
|
let fnameescline= line("$")
|
|
put = 'let g:netrw_fname_escape = '.string(g:netrw_fname_escape)
|
|
put = 'let g:netrw_ftp_browse_reject = '.g:netrw_ftp_browse_reject
|
|
put = 'let g:netrw_ftp_list_cmd = '.g:netrw_ftp_list_cmd
|
|
put = 'let g:netrw_ftp_sizelist_cmd = '.g:netrw_ftp_sizelist_cmd
|
|
put = 'let g:netrw_ftp_timelist_cmd = '.g:netrw_ftp_timelist_cmd
|
|
let globescline= line("$")
|
|
put = 'let g:netrw_glob_escape = '.string(g:netrw_glob_escape)
|
|
put = 'let g:netrw_hide = '.g:netrw_hide
|
|
if exists("g:netrw_home")
|
|
put = 'let g:netrw_home = '.g:netrw_home
|
|
else
|
|
put = '\" let g:netrw_home = (not defined)'
|
|
endif
|
|
put = 'let g:netrw_keepdir = '.g:netrw_keepdir
|
|
put = 'let g:netrw_list_cmd = '.g:netrw_list_cmd
|
|
put = 'let g:netrw_list_hide = '.g:netrw_list_hide
|
|
put = 'let g:netrw_liststyle = '.g:netrw_liststyle
|
|
put = 'let g:netrw_localcopycmd = '.g:netrw_localcopycmd
|
|
put = 'let g:netrw_localmkdir = '.g:netrw_localmkdir
|
|
put = 'let g:netrw_localmovecmd = '.g:netrw_localmovecmd
|
|
put = 'let g:netrw_localrmdir = '.g:netrw_localrmdir
|
|
put = 'let g:netrw_maxfilenamelen = '.g:netrw_maxfilenamelen
|
|
put = 'let g:netrw_menu = '.g:netrw_menu
|
|
put = 'let g:netrw_mousemaps = '.g:netrw_mousemaps
|
|
put = 'let g:netrw_mkdir_cmd = '.g:netrw_mkdir_cmd
|
|
if exists("g:netrw_nobeval")
|
|
put = 'let g:netrw_nobeval = '.g:netrw_nobeval
|
|
else
|
|
put = '\" let g:netrw_nobeval = (not defined)'
|
|
endif
|
|
put = 'let g:netrw_remote_mkdir = '.g:netrw_remote_mkdir
|
|
put = 'let g:netrw_preview = '.g:netrw_preview
|
|
put = 'let g:netrw_rename_cmd = '.g:netrw_rename_cmd
|
|
put = 'let g:netrw_retmap = '.g:netrw_retmap
|
|
put = 'let g:netrw_rm_cmd = '.g:netrw_rm_cmd
|
|
put = 'let g:netrw_rmdir_cmd = '.g:netrw_rmdir_cmd
|
|
put = 'let g:netrw_rmf_cmd = '.g:netrw_rmf_cmd
|
|
put = 'let g:netrw_sort_by = '.g:netrw_sort_by
|
|
put = 'let g:netrw_sort_direction = '.g:netrw_sort_direction
|
|
put = 'let g:netrw_sort_options = '.g:netrw_sort_options
|
|
put = 'let g:netrw_sort_sequence = '.g:netrw_sort_sequence
|
|
put = 'let g:netrw_servername = '.g:netrw_servername
|
|
put = 'let g:netrw_special_syntax = '.g:netrw_special_syntax
|
|
put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject
|
|
put = 'let g:netrw_ssh_cmd = '.g:netrw_ssh_cmd
|
|
put = 'let g:netrw_scpport = '.g:netrw_scpport
|
|
put = 'let g:netrw_sepchr = '.g:netrw_sepchr
|
|
put = 'let g:netrw_sshport = '.g:netrw_sshport
|
|
put = 'let g:netrw_timefmt = '.g:netrw_timefmt
|
|
let tmpfileescline= line("$")
|
|
put ='let g:netrw_tmpfile_escape...'
|
|
put = 'let g:netrw_use_noswf = '.g:netrw_use_noswf
|
|
put = 'let g:netrw_xstrlen = '.g:netrw_xstrlen
|
|
put = 'let g:netrw_winsize = '.g:netrw_winsize
|
|
|
|
put =''
|
|
put ='+ For help, place cursor on line and press <F1>'
|
|
|
|
1d
|
|
silent %s/^+/"/e
|
|
res 99
|
|
silent %s/= \([^0-9].*\)$/= '\1'/e
|
|
silent %s/= $/= ''/e
|
|
1
|
|
|
|
call setline(decompressline,"let g:netrw_decompress = ".substitute(string(g:netrw_decompress),"^'\\(.*\\)'$",'\1',''))
|
|
call setline(fnameescline, "let g:netrw_fname_escape = '".escape(g:netrw_fname_escape,"'")."'")
|
|
call setline(globescline, "let g:netrw_glob_escape = '".escape(g:netrw_glob_escape,"'")."'")
|
|
call setline(tmpfileescline,"let g:netrw_tmpfile_escape = '".escape(g:netrw_tmpfile_escape,"'")."'")
|
|
|
|
set nomod
|
|
|
|
nmap <buffer> <silent> <F1> :call NetrwSettingHelp()<cr>
|
|
nnoremap <buffer> <silent> <leftmouse> <leftmouse>:call NetrwSettingHelp()<cr>
|
|
let tmpfile= tempname()
|
|
exe 'au BufWriteCmd Netrw\ Settings silent w! '.tmpfile.'|so '.tmpfile.'|call delete("'.tmpfile.'")|set nomod'
|
|
endfun
|
|
|
|
" ---------------------------------------------------------------------
|
|
" NetrwSettingHelp: {{{2
|
|
fun! NetrwSettingHelp()
|
|
" call Dfunc("NetrwSettingHelp()")
|
|
let curline = getline(".")
|
|
if curline =~ '='
|
|
let varhelp = substitute(curline,'^\s*let ','','e')
|
|
let varhelp = substitute(varhelp,'\s*=.*$','','e')
|
|
" call Decho("trying help ".varhelp)
|
|
try
|
|
exe "he ".varhelp
|
|
catch /^Vim\%((\a\+)\)\=:E149/
|
|
echo "***sorry*** no help available for <".varhelp.">"
|
|
endtry
|
|
elseif line(".") < s:netrw_settings_stop
|
|
he netrw-settings
|
|
elseif line(".") < s:netrw_protocol_stop
|
|
he netrw-externapp
|
|
elseif line(".") < s:netrw_xfer_stop
|
|
he netrw-variables
|
|
else
|
|
he netrw-browse-var
|
|
endif
|
|
" call Dret("NetrwSettingHelp")
|
|
endfun
|
|
|
|
" ---------------------------------------------------------------------
|
|
" Modelines: {{{1
|
|
" vim:ts=8 fdm=marker
|