1" netrwSettings.vim: makes netrw settings simpler 2" Date: Aug 12, 2021 3" Maintainer: Charles E Campbell <[email protected]> 4" Version: 17 ASTRO-ONLY 5" Copyright: Copyright (C) 1999-2007 Charles E. Campbell {{{1 6" Permission is hereby granted to use and distribute this code, 7" with or without modifications, provided that this copyright 8" notice is copied with it. Like anything else that's free, 9" netrwSettings.vim is provided *as is* and comes with no 10" warranty of any kind, either expressed or implied. By using 11" this plugin, you agree that in no event will the copyright 12" holder be liable for any damages resulting from the use 13" of this software. 14" 15" Mat 4:23 (WEB) Jesus went about in all Galilee, teaching in their {{{1 16" synagogues, preaching the gospel of the kingdom, and healing 17" every disease and every sickness among the people. 18" Load Once: {{{1 19if exists("g:loaded_netrwSettings") || &cp 20 finish 21endif 22let g:loaded_netrwSettings = "v17" 23if v:version < 700 24 echohl WarningMsg 25 echo "***warning*** this version of netrwSettings needs vim 7.0" 26 echohl Normal 27 finish 28endif 29 30" --------------------------------------------------------------------- 31" NetrwSettings: {{{1 32fun! netrwSettings#NetrwSettings() 33 " this call is here largely just to insure that netrw has been loaded 34 call netrw#WinPath("") 35 if !exists("g:loaded_netrw") 36 echohl WarningMsg | echomsg "***sorry*** netrw needs to be loaded prior to using NetrwSettings" | echohl None 37 return 38 endif 39 40 above wincmd s 41 enew 42 setlocal noswapfile bh=wipe 43 set ft=vim 44 file Netrw\ Settings 45 46 " these variables have the following default effects when they don't 47 " exist (ie. have not been set by the user in his/her .vimrc) 48 if !exists("g:netrw_liststyle") 49 let g:netrw_liststyle= 0 50 let g:netrw_list_cmd= "ssh HOSTNAME ls -FLa" 51 endif 52 if !exists("g:netrw_silent") 53 let g:netrw_silent= 0 54 endif 55 if !exists("g:netrw_use_nt_rcp") 56 let g:netrw_use_nt_rcp= 0 57 endif 58 if !exists("g:netrw_ftp") 59 let g:netrw_ftp= 0 60 endif 61 if !exists("g:netrw_ignorenetrc") 62 let g:netrw_ignorenetrc= 0 63 endif 64 65 put ='+ ---------------------------------------------' 66 put ='+ NetrwSettings: by Charles E. Campbell' 67 put ='+ Press <F1> with cursor atop any line for help' 68 put ='+ ---------------------------------------------' 69 let s:netrw_settings_stop= line(".") 70 71 put ='' 72 put ='+ Netrw Protocol Commands' 73 put = 'let g:netrw_dav_cmd = '.g:netrw_dav_cmd 74 put = 'let g:netrw_fetch_cmd = '.g:netrw_fetch_cmd 75 put = 'let g:netrw_ftp_cmd = '.g:netrw_ftp_cmd 76 put = 'let g:netrw_http_cmd = '.g:netrw_http_cmd 77 put = 'let g:netrw_rcp_cmd = '.g:netrw_rcp_cmd 78 put = 'let g:netrw_rsync_cmd = '.g:netrw_rsync_cmd 79 put = 'let g:netrw_scp_cmd = '.g:netrw_scp_cmd 80 put = 'let g:netrw_sftp_cmd = '.g:netrw_sftp_cmd 81 put = 'let g:netrw_ssh_cmd = '.g:netrw_ssh_cmd 82 let s:netrw_protocol_stop= line(".") 83 put = '' 84 85 put ='+Netrw Transfer Control' 86 put = 'let g:netrw_cygwin = '.g:netrw_cygwin 87 put = 'let g:netrw_ftp = '.g:netrw_ftp 88 put = 'let g:netrw_ftpmode = '.g:netrw_ftpmode 89 put = 'let g:netrw_ignorenetrc = '.g:netrw_ignorenetrc 90 put = 'let g:netrw_sshport = '.g:netrw_sshport 91 put = 'let g:netrw_silent = '.g:netrw_silent 92 put = 'let g:netrw_use_nt_rcp = '.g:netrw_use_nt_rcp 93 put = 'let g:netrw_win95ftp = '.g:netrw_win95ftp 94 let s:netrw_xfer_stop= line(".") 95 put ='' 96 put ='+ Netrw Messages' 97 put ='let g:netrw_use_errorwindow = '.g:netrw_use_errorwindow 98 99 put = '' 100 put ='+ Netrw Browser Control' 101 if exists("g:netrw_altfile") 102 put = 'let g:netrw_altfile = '.g:netrw_altfile 103 else 104 put = 'let g:netrw_altfile = 0' 105 endif 106 put = 'let g:netrw_alto = '.g:netrw_alto 107 put = 'let g:netrw_altv = '.g:netrw_altv 108 put = 'let g:netrw_banner = '.g:netrw_banner 109 if exists("g:netrw_bannerbackslash") 110 put = 'let g:netrw_bannerbackslash = '.g:netrw_bannerbackslash 111 else 112 put = '\" let g:netrw_bannerbackslash = (not defined)' 113 endif 114 put = 'let g:netrw_browse_split = '.g:netrw_browse_split 115 if exists("g:netrw_browsex_viewer") 116 put = 'let g:netrw_browsex_viewer = '.g:netrw_browsex_viewer 117 else 118 put = '\" let g:netrw_browsex_viewer = (not defined)' 119 endif 120 put = 'let g:netrw_compress = '.g:netrw_compress 121 if exists("g:Netrw_corehandler") 122 put = 'let g:Netrw_corehandler = '.g:Netrw_corehandler 123 else 124 put = '\" let g:Netrw_corehandler = (not defined)' 125 endif 126 put = 'let g:netrw_ctags = '.g:netrw_ctags 127 put = 'let g:netrw_cursor = '.g:netrw_cursor 128 let decompressline= line("$") 129 put = 'let g:netrw_decompress = '.string(g:netrw_decompress) 130 if exists("g:netrw_dynamic_maxfilenamelen") 131 put = 'let g:netrw_dynamic_maxfilenamelen='.g:netrw_dynamic_maxfilenamelen 132 else 133 put = '\" let g:netrw_dynamic_maxfilenamelen= (not defined)' 134 endif 135 put = 'let g:netrw_dirhistmax = '.g:netrw_dirhistmax 136 put = 'let g:netrw_errorlvl = '.g:netrw_errorlvl 137 put = 'let g:netrw_fastbrowse = '.g:netrw_fastbrowse 138 let fnameescline= line("$") 139 put = 'let g:netrw_fname_escape = '.string(g:netrw_fname_escape) 140 put = 'let g:netrw_ftp_browse_reject = '.g:netrw_ftp_browse_reject 141 put = 'let g:netrw_ftp_list_cmd = '.g:netrw_ftp_list_cmd 142 put = 'let g:netrw_ftp_sizelist_cmd = '.g:netrw_ftp_sizelist_cmd 143 put = 'let g:netrw_ftp_timelist_cmd = '.g:netrw_ftp_timelist_cmd 144 let globescline= line("$") 145 put = 'let g:netrw_glob_escape = '.string(g:netrw_glob_escape) 146 put = 'let g:netrw_hide = '.g:netrw_hide 147 if exists("g:netrw_home") 148 put = 'let g:netrw_home = '.g:netrw_home 149 else 150 put = '\" let g:netrw_home = (not defined)' 151 endif 152 put = 'let g:netrw_keepdir = '.g:netrw_keepdir 153 put = 'let g:netrw_list_cmd = '.g:netrw_list_cmd 154 put = 'let g:netrw_list_hide = '.g:netrw_list_hide 155 put = 'let g:netrw_liststyle = '.g:netrw_liststyle 156 put = 'let g:netrw_localcopycmd = '.g:netrw_localcopycmd 157 put = 'let g:netrw_localcopycmdopt = '.g:netrw_localcopycmdopt 158 put = 'let g:netrw_localmkdir = '.g:netrw_localmkdir 159 put = 'let g:netrw_localmkdiropt = '.g:netrw_localmkdiropt 160 put = 'let g:netrw_localmovecmd = '.g:netrw_localmovecmd 161 put = 'let g:netrw_localmovecmdopt = '.g:netrw_localmovecmdopt 162 put = 'let g:netrw_localrmdir = '.g:netrw_localrmdir 163 put = 'let g:netrw_localrmdiropt = '.g:netrw_localrmdiropt 164 put = 'let g:netrw_maxfilenamelen = '.g:netrw_maxfilenamelen 165 put = 'let g:netrw_menu = '.g:netrw_menu 166 put = 'let g:netrw_mousemaps = '.g:netrw_mousemaps 167 put = 'let g:netrw_mkdir_cmd = '.g:netrw_mkdir_cmd 168 if exists("g:netrw_nobeval") 169 put = 'let g:netrw_nobeval = '.g:netrw_nobeval 170 else 171 put = '\" let g:netrw_nobeval = (not defined)' 172 endif 173 put = 'let g:netrw_remote_mkdir = '.g:netrw_remote_mkdir 174 put = 'let g:netrw_preview = '.g:netrw_preview 175 put = 'let g:netrw_rename_cmd = '.g:netrw_rename_cmd 176 put = 'let g:netrw_retmap = '.g:netrw_retmap 177 put = 'let g:netrw_rm_cmd = '.g:netrw_rm_cmd 178 put = 'let g:netrw_rmdir_cmd = '.g:netrw_rmdir_cmd 179 put = 'let g:netrw_rmf_cmd = '.g:netrw_rmf_cmd 180 put = 'let g:netrw_sort_by = '.g:netrw_sort_by 181 put = 'let g:netrw_sort_direction = '.g:netrw_sort_direction 182 put = 'let g:netrw_sort_options = '.g:netrw_sort_options 183 put = 'let g:netrw_sort_sequence = '.g:netrw_sort_sequence 184 put = 'let g:netrw_servername = '.g:netrw_servername 185 put = 'let g:netrw_special_syntax = '.g:netrw_special_syntax 186 put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject 187 put = 'let g:netrw_ssh_cmd = '.g:netrw_ssh_cmd 188 put = 'let g:netrw_scpport = '.g:netrw_scpport 189 put = 'let g:netrw_sepchr = '.g:netrw_sepchr 190 put = 'let g:netrw_sshport = '.g:netrw_sshport 191 put = 'let g:netrw_timefmt = '.g:netrw_timefmt 192 let tmpfileescline= line("$") 193 put ='let g:netrw_tmpfile_escape...' 194 put = 'let g:netrw_use_noswf = '.g:netrw_use_noswf 195 put = 'let g:netrw_xstrlen = '.g:netrw_xstrlen 196 put = 'let g:netrw_winsize = '.g:netrw_winsize 197 198 put ='' 199 put ='+ For help, place cursor on line and press <F1>' 200 201 1d 202 silent %s/^+/"/e 203 res 99 204 silent %s/= \([^0-9].*\)$/= '\1'/e 205 silent %s/= $/= ''/e 206 1 207 208 call setline(decompressline,"let g:netrw_decompress = ".substitute(string(g:netrw_decompress),"^'\\(.*\\)'$",'\1','')) 209 call setline(fnameescline, "let g:netrw_fname_escape = '".escape(g:netrw_fname_escape,"'")."'") 210 call setline(globescline, "let g:netrw_glob_escape = '".escape(g:netrw_glob_escape,"'")."'") 211 call setline(tmpfileescline,"let g:netrw_tmpfile_escape = '".escape(g:netrw_tmpfile_escape,"'")."'") 212 213 set nomod 214 215 nmap <buffer> <silent> <F1> :call NetrwSettingHelp()<cr> 216 nnoremap <buffer> <silent> <leftmouse> <leftmouse>:call NetrwSettingHelp()<cr> 217 let tmpfile= tempname() 218 exe 'au BufWriteCmd Netrw\ Settings silent w! '.tmpfile.'|so '.tmpfile.'|call delete("'.tmpfile.'")|set nomod' 219endfun 220 221" --------------------------------------------------------------------- 222" NetrwSettingHelp: {{{2 223fun! NetrwSettingHelp() 224" call Dfunc("NetrwSettingHelp()") 225 let curline = getline(".") 226 if curline =~ '=' 227 let varhelp = substitute(curline,'^\s*let ','','e') 228 let varhelp = substitute(varhelp,'\s*=.*$','','e') 229" call Decho("trying help ".varhelp) 230 try 231 exe "he ".varhelp 232 catch /^Vim\%((\a\+)\)\=:E149/ 233 echo "***sorry*** no help available for <".varhelp.">" 234 endtry 235 elseif line(".") < s:netrw_settings_stop 236 he netrw-settings 237 elseif line(".") < s:netrw_protocol_stop 238 he netrw-externapp 239 elseif line(".") < s:netrw_xfer_stop 240 he netrw-variables 241 else 242 he netrw-browse-var 243 endif 244" call Dret("NetrwSettingHelp") 245endfun 246 247" --------------------------------------------------------------------- 248" Modelines: {{{1 249" vim:ts=8 fdm=marker 250