1 " netrwSettings.vim: makes netrw settings simpler
3 " Maintainer: Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
5 " Copyright: Copyright (C) 1999-2007 Charles E. Campbell, Jr. {{{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
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.
19 if exists("g:loaded_netrwSettings") || &cp
22 let g:loaded_netrwSettings = "v11"
24 " ---------------------------------------------------------------------
26 fun! netrwSettings#NetrwSettings()
27 " this call is here largely just to insure that netrw has been loaded
28 call netrw#NetrwSavePosn()
29 if !exists("g:loaded_netrw")
30 echohl WarningMsg | echomsg "***sorry*** netrw needs to be loaded prior to using NetrwSettings" | echohl None
36 setlocal noswapfile bh=wipe
40 " these variables have the following default effects when they don't
41 " exist (ie. have not been set by the user in his/her .vimrc)
42 if !exists("g:netrw_liststyle")
43 let g:netrw_liststyle= 0
44 let g:netrw_list_cmd= "ssh HOSTNAME ls -FLa"
46 if !exists("g:netrw_silent")
49 if !exists("g:netrw_use_nt_rcp")
50 let g:netrw_use_nt_rcp= 0
52 if !exists("g:netrw_ftp")
55 if !exists("g:netrw_ignorenetrc")
56 let g:netrw_ignorenetrc= 0
59 put ='+ ---------------------------------------------'
60 put ='+ NetrwSettings: by Charles E. Campbell, Jr.'
61 put ='+ Press <F1> with cursor atop any line for help'
62 put ='+ ---------------------------------------------'
63 let s:netrw_settings_stop= line(".")
66 put ='+ Netrw Protocol Commands'
67 put = 'let g:netrw_dav_cmd = '.g:netrw_dav_cmd
68 put = 'let g:netrw_fetch_cmd = '.g:netrw_fetch_cmd
69 put = 'let g:netrw_ftp_cmd = '.g:netrw_ftp_cmd
70 put = 'let g:netrw_http_cmd = '.g:netrw_http_cmd
71 put = 'let g:netrw_rcp_cmd = '.g:netrw_rcp_cmd
72 put = 'let g:netrw_rsync_cmd = '.g:netrw_rsync_cmd
73 put = 'let g:netrw_scp_cmd = '.g:netrw_scp_cmd
74 put = 'let g:netrw_sftp_cmd = '.g:netrw_sftp_cmd
75 put = 'let g:netrw_ssh_cmd = '.g:netrw_ssh_cmd
76 let s:netrw_protocol_stop= line(".")
79 put ='+Netrw Transfer Control'
80 put = 'let g:netrw_cygwin = '.g:netrw_cygwin
81 put = 'let g:netrw_ftp = '.g:netrw_ftp
82 put = 'let g:netrw_ftpmode = '.g:netrw_ftpmode
83 put = 'let g:netrw_ignorenetrc = '.g:netrw_ignorenetrc
84 put = 'let g:netrw_sshport = '.g:netrw_sshport
85 let shqline= line("$")
86 put = 'let g:netrw_shq...'
87 put = 'let g:netrw_use_nt_rcp = '.g:netrw_use_nt_rcp
88 put = 'let g:netrw_win95ftp = '.g:netrw_win95ftp
89 let s:netrw_xfer_stop= line(".")
91 put ='+ Netrw Messages'
92 put ='let g:netrw_use_errorwindow = '.g:netrw_use_errorwindow
95 put ='+ Netrw Browser Control'
96 put = 'let g:netrw_alto = '.g:netrw_alto
97 put = 'let g:netrw_altv = '.g:netrw_altv
98 put = 'let g:netrw_browse_split = '.g:netrw_browse_split
99 if exists("g:netrw_browsex_viewer")
100 put = 'let g:netrw_browsex_viewer = '.g:netrw_browsex_viewer
102 put = 'let g:netrw_browsex_viewer = (not defined)'
104 let cdescline= line("$")
105 put ='let g:netrw_cd_escape...'
106 put = 'let g:netrw_compress = '.g:netrw_compress
107 let decompressline= line("$")
108 put ='let g:netrw_decompress...'
109 put = 'let g:netrw_dirhistmax = '.g:netrw_dirhistmax
110 put = 'let g:netrw_fastbrowse = '.g:netrw_fastbrowse
111 put = 'let g:netrw_ftp_browse_reject = '.g:netrw_ftp_browse_reject
112 put = 'let g:netrw_ftp_list_cmd = '.g:netrw_ftp_list_cmd
113 put = 'let g:netrw_ftp_sizelist_cmd = '.g:netrw_ftp_sizelist_cmd
114 put = 'let g:netrw_ftp_timelist_cmd = '.g:netrw_ftp_timelist_cmd
115 put = 'let g:netrw_hide = '.g:netrw_hide
116 put = 'let g:netrw_keepdir = '.g:netrw_keepdir
117 put = 'let g:netrw_list_cmd = '.g:netrw_list_cmd
118 put = 'let g:netrw_list_hide = '.g:netrw_list_hide
119 put = 'let g:netrw_liststyle = '.g:netrw_liststyle
120 put = 'let g:netrw_localcopycmd = '.g:netrw_localcopycmd
121 put = 'let g:netrw_local_mkdir = '.g:netrw_local_mkdir
122 put = 'let g:netrw_localmovecmd = '.g:netrw_localmovecmd
123 put = 'let g:netrw_local_rmdir = '.g:netrw_local_rmdir
124 put = 'let g:netrw_maxfilenamelen = '.g:netrw_maxfilenamelen
125 put = 'let g:netrw_menu = '.g:netrw_menu
126 put = 'let g:netrw_mkdir_cmd = '.g:netrw_mkdir_cmd
127 put = 'let g:netrw_preview = '.g:netrw_preview
128 put = 'let g:netrw_rename_cmd = '.g:netrw_rename_cmd
129 put = 'let g:netrw_retmap = '.g:netrw_retmap
130 put = 'let g:netrw_rm_cmd = '.g:netrw_rm_cmd
131 put = 'let g:netrw_rmdir_cmd = '.g:netrw_rmdir_cmd
132 put = 'let g:netrw_rmf_cmd = '.g:netrw_rmf_cmd
133 put = 'let g:netrw_silent = '.g:netrw_silent
134 put = 'let g:netrw_sort_by = '.g:netrw_sort_by
135 put = 'let g:netrw_sort_direction = '.g:netrw_sort_direction
136 put = 'let g:netrw_sort_sequence = '.g:netrw_sort_sequence
137 put = 'let g:netrw_special_syntax = '.g:netrw_special_syntax
138 put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject
139 put = 'let g:netrw_scpport = '.g:netrw_scpport
140 put = 'let g:netrw_sshport = '.g:netrw_sshport
141 put = 'let g:netrw_timefmt = '.g:netrw_timefmt
142 put = 'let g:netrw_use_noswf = '.g:netrw_use_noswf
143 put = 'let g:netrw_winsize = '.g:netrw_winsize
146 put ='+ For help, place cursor on line and press <F1>'
151 silent %s/= \([^0-9].*\)$/= '\1'/e
155 " Put in g:netrw_shq setting and g:netrw_cd_escape
156 " (deferred so as to avoid the quote manipulation just preceding)
157 if g:netrw_shq == "'"
158 call setline(shqline,'let g:netrw_shq = "'.g:netrw_shq.'"')
160 call setline(shqline,"let g:netrw_shq = '".g:netrw_shq."'")
162 call setline(cdescline,"let g:netrw_cd_escape = ".'"'.escape(g:netrw_cd_escape,'\"').'"')
163 call setline(decompressline,"let g:netrw_decompress = ".substitute(string(g:netrw_decompress),"^'\\(.*\\)'$",'\1',''))
167 nmap <buffer> <silent> <F1> :call NetrwSettingHelp()<cr>
168 nnoremap <buffer> <silent> <leftmouse> <leftmouse>:call NetrwSettingHelp()<cr>
169 let tmpfile= tempname()
170 exe 'au BufWriteCmd Netrw\ Settings silent w! '.tmpfile.'|so '.tmpfile.'|call delete("'.tmpfile.'")|set nomod'
173 " ---------------------------------------------------------------------
174 " NetrwSettingHelp: {{{2
175 fun! NetrwSettingHelp()
176 " call Dfunc("NetrwSettingHelp()")
177 let curline = getline(".")
179 let varhelp = substitute(curline,'^\s*let ','','e')
180 let varhelp = substitute(varhelp,'\s*=.*$','','e')
181 " call Decho("trying help ".varhelp)
184 catch /^Vim\%((\a\+)\)\=:E149/
185 echo "***sorry*** no help available for <".varhelp.">"
187 elseif line(".") < s:netrw_settings_stop
189 elseif line(".") < s:netrw_protocol_stop
191 elseif line(".") < s:netrw_xfer_stop
196 " call Dret("NetrwSettingHelp")
199 " ---------------------------------------------------------------------
201 " vim:ts=8 fdm=marker