1" netrwSettings.vim: makes netrw settings simpler 2" Date: Dec 30, 2014 3" Maintainer: Charles E Campbell <drchipNOSPAM at campbellfamily dot biz> 4" Version: 15 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 = "v15" 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#SavePosn() 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_localmkdir = '.g:netrw_localmkdir 158 put = 'let g:netrw_localmovecmd = '.g:netrw_localmovecmd 159 put = 'let g:netrw_localrmdir = '.g:netrw_localrmdir 160 put = 'let g:netrw_maxfilenamelen = '.g:netrw_maxfilenamelen 161 put = 'let g:netrw_menu = '.g:netrw_menu 162 put = 'let g:netrw_mousemaps = '.g:netrw_mousemaps 163 put = 'let g:netrw_mkdir_cmd = '.g:netrw_mkdir_cmd 164 if exists("g:netrw_nobeval") 165 put = 'let g:netrw_nobeval = '.g:netrw_nobeval 166 else 167 put = '\" let g:netrw_nobeval = (not defined)' 168 endif 169 put = 'let g:netrw_remote_mkdir = '.g:netrw_remote_mkdir 170 put = 'let g:netrw_preview = '.g:netrw_preview 171 put = 'let g:netrw_rename_cmd = '.g:netrw_rename_cmd 172 put = 'let g:netrw_retmap = '.g:netrw_retmap 173 put = 'let g:netrw_rm_cmd = '.g:netrw_rm_cmd 174 put = 'let g:netrw_rmdir_cmd = '.g:netrw_rmdir_cmd 175 put = 'let g:netrw_rmf_cmd = '.g:netrw_rmf_cmd 176 put = 'let g:netrw_sort_by = '.g:netrw_sort_by 177 put = 'let g:netrw_sort_direction = '.g:netrw_sort_direction 178 put = 'let g:netrw_sort_options = '.g:netrw_sort_options 179 put = 'let g:netrw_sort_sequence = '.g:netrw_sort_sequence 180 put = 'let g:netrw_servername = '.g:netrw_servername 181 put = 'let g:netrw_special_syntax = '.g:netrw_special_syntax 182 put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject 183 put = 'let g:netrw_ssh_cmd = '.g:netrw_ssh_cmd 184 put = 'let g:netrw_scpport = '.g:netrw_scpport 185 put = 'let g:netrw_sepchr = '.g:netrw_sepchr 186 put = 'let g:netrw_sshport = '.g:netrw_sshport 187 put = 'let g:netrw_timefmt = '.g:netrw_timefmt 188 let tmpfileescline= line("$") 189 put ='let g:netrw_tmpfile_escape...' 190 put = 'let g:netrw_use_noswf = '.g:netrw_use_noswf 191 put = 'let g:netrw_xstrlen = '.g:netrw_xstrlen 192 put = 'let g:netrw_winsize = '.g:netrw_winsize 193 194 put ='' 195 put ='+ For help, place cursor on line and press <F1>' 196 197 1d 198 silent %s/^+/"/e 199 res 99 200 silent %s/= \([^0-9].*\)$/= '\1'/e 201 silent %s/= $/= ''/e 202 1 203 204 call setline(decompressline,"let g:netrw_decompress = ".substitute(string(g:netrw_decompress),"^'\\(.*\\)'$",'\1','')) 205 call setline(fnameescline, "let g:netrw_fname_escape = '".escape(g:netrw_fname_escape,"'")."'") 206 call setline(globescline, "let g:netrw_glob_escape = '".escape(g:netrw_glob_escape,"'")."'") 207 call setline(tmpfileescline,"let g:netrw_tmpfile_escape = '".escape(g:netrw_tmpfile_escape,"'")."'") 208 209 set nomod 210 211 nmap <buffer> <silent> <F1> :call NetrwSettingHelp()<cr> 212 nnoremap <buffer> <silent> <leftmouse> <leftmouse>:call NetrwSettingHelp()<cr> 213 let tmpfile= tempname() 214 exe 'au BufWriteCmd Netrw\ Settings silent w! '.tmpfile.'|so '.tmpfile.'|call delete("'.tmpfile.'")|set nomod' 215endfun 216 217" --------------------------------------------------------------------- 218" NetrwSettingHelp: {{{2 219fun! NetrwSettingHelp() 220" call Dfunc("NetrwSettingHelp()") 221 let curline = getline(".") 222 if curline =~ '=' 223 let varhelp = substitute(curline,'^\s*let ','','e') 224 let varhelp = substitute(varhelp,'\s*=.*$','','e') 225" call Decho("trying help ".varhelp) 226 try 227 exe "he ".varhelp 228 catch /^Vim\%((\a\+)\)\=:E149/ 229 echo "***sorry*** no help available for <".varhelp.">" 230 endtry 231 elseif line(".") < s:netrw_settings_stop 232 he netrw-settings 233 elseif line(".") < s:netrw_protocol_stop 234 he netrw-externapp 235 elseif line(".") < s:netrw_xfer_stop 236 he netrw-variables 237 else 238 he netrw-browse-var 239 endif 240" call Dret("NetrwSettingHelp") 241endfun 242 243" --------------------------------------------------------------------- 244" Modelines: {{{1 245" vim:ts=8 fdm=marker 246