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 = "v13"
25 echo "***warning*** this version of netrwSettings needs vim 7.0"
30 " ---------------------------------------------------------------------
32 fun! netrwSettings#NetrwSettings()
33 " this call is here largely just to insure that netrw has been loaded
34 call netrw#NetrwSavePosn()
35 if !exists("g:loaded_netrw")
36 echohl WarningMsg | echomsg "***sorry*** netrw needs to be loaded prior to using NetrwSettings" | echohl None
42 setlocal noswapfile bh=wipe
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"
52 if !exists("g:netrw_silent")
55 if !exists("g:netrw_use_nt_rcp")
56 let g:netrw_use_nt_rcp= 0
58 if !exists("g:netrw_ftp")
61 if !exists("g:netrw_ignorenetrc")
62 let g:netrw_ignorenetrc= 0
65 put ='+ ---------------------------------------------'
66 put ='+ NetrwSettings: by Charles E. Campbell, Jr.'
67 put ='+ Press <F1> with cursor atop any line for help'
68 put ='+ ---------------------------------------------'
69 let s:netrw_settings_stop= line(".")
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(".")
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_use_nt_rcp = '.g:netrw_use_nt_rcp
92 put = 'let g:netrw_win95ftp = '.g:netrw_win95ftp
93 let s:netrw_xfer_stop= line(".")
95 put ='+ Netrw Messages'
96 put ='let g:netrw_use_errorwindow = '.g:netrw_use_errorwindow
99 put ='+ Netrw Browser Control'
100 put = 'let g:netrw_alto = '.g:netrw_alto
101 put = 'let g:netrw_altv = '.g:netrw_altv
102 put = 'let g:netrw_browse_split = '.g:netrw_browse_split
103 if exists("g:netrw_browsex_viewer")
104 put = 'let g:netrw_browsex_viewer = '.g:netrw_browsex_viewer
106 put = 'let g:netrw_browsex_viewer = (not defined)'
108 put = 'let g:netrw_compress = '.g:netrw_compress
109 put = 'let g:netrw_cursorline = '.g:netrw_cursorline
110 let decompressline= line("$")
111 put ='let g:netrw_decompress...'
112 put = 'let g:netrw_dirhistmax = '.g:netrw_dirhistmax
113 put = 'let g:netrw_fastbrowse = '.g:netrw_fastbrowse
114 let fnameescline= line("$")
115 put = 'let g:netrw_fname_escape...'
116 put = 'let g:netrw_ftp_browse_reject = '.g:netrw_ftp_browse_reject
117 put = 'let g:netrw_ftp_list_cmd = '.g:netrw_ftp_list_cmd
118 put = 'let g:netrw_ftp_sizelist_cmd = '.g:netrw_ftp_sizelist_cmd
119 put = 'let g:netrw_ftp_timelist_cmd = '.g:netrw_ftp_timelist_cmd
120 let globescline= line("$")
121 put ='let g:netrw_glob_escape...'
122 put = 'let g:netrw_hide = '.g:netrw_hide
123 put = 'let g:netrw_keepdir = '.g:netrw_keepdir
124 put = 'let g:netrw_list_cmd = '.g:netrw_list_cmd
125 put = 'let g:netrw_list_hide = '.g:netrw_list_hide
126 put = 'let g:netrw_liststyle = '.g:netrw_liststyle
127 put = 'let g:netrw_localcopycmd = '.g:netrw_localcopycmd
128 put = 'let g:netrw_local_mkdir = '.g:netrw_local_mkdir
129 put = 'let g:netrw_localmovecmd = '.g:netrw_localmovecmd
130 put = 'let g:netrw_local_rmdir = '.g:netrw_local_rmdir
131 put = 'let g:netrw_maxfilenamelen = '.g:netrw_maxfilenamelen
132 put = 'let g:netrw_menu = '.g:netrw_menu
133 put = 'let g:netrw_mkdir_cmd = '.g:netrw_mkdir_cmd
134 put = 'let g:netrw_preview = '.g:netrw_preview
135 put = 'let g:netrw_rename_cmd = '.g:netrw_rename_cmd
136 put = 'let g:netrw_retmap = '.g:netrw_retmap
137 put = 'let g:netrw_rm_cmd = '.g:netrw_rm_cmd
138 put = 'let g:netrw_rmdir_cmd = '.g:netrw_rmdir_cmd
139 put = 'let g:netrw_rmf_cmd = '.g:netrw_rmf_cmd
140 put = 'let g:netrw_silent = '.g:netrw_silent
141 put = 'let g:netrw_sort_by = '.g:netrw_sort_by
142 put = 'let g:netrw_sort_direction = '.g:netrw_sort_direction
143 put = 'let g:netrw_sort_options = '.g:netrw_sort_options
144 put = 'let g:netrw_sort_sequence = '.g:netrw_sort_sequence
145 put = 'let g:netrw_special_syntax = '.g:netrw_special_syntax
146 put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject
147 put = 'let g:netrw_scpport = '.g:netrw_scpport
148 put = 'let g:netrw_sepchr = '.g:netrw_sepchr
149 put = 'let g:netrw_sshport = '.g:netrw_sshport
150 put = 'let g:netrw_timefmt = '.g:netrw_timefmt
151 let tmpfileescline= line("$")
152 put ='let g:netrw_tmpfile_escape...'
153 put = 'let g:netrw_use_noswf = '.g:netrw_use_noswf
154 put = 'let g:netrw_xstrlen = '.g:netrw_xstrlen
155 put = 'let g:netrw_winsize = '.g:netrw_winsize
158 put ='+ For help, place cursor on line and press <F1>'
163 silent %s/= \([^0-9].*\)$/= '\1'/e
167 call setline(decompressline,"let g:netrw_decompress = ".substitute(string(g:netrw_decompress),"^'\\(.*\\)'$",'\1',''))
168 call setline(fnameescline, "let g:netrw_fname_escape = '".escape(g:netrw_fname_escape,"'")."'")
169 call setline(globescline, "let g:netrw_glob_escape = '".escape(g:netrw_glob_escape,"'")."'")
170 call setline(tmpfileescline,"let g:netrw_tmpfile_escape = '".escape(g:netrw_tmpfile_escape,"'")."'")
174 nmap <buffer> <silent> <F1> :call NetrwSettingHelp()<cr>
175 nnoremap <buffer> <silent> <leftmouse> <leftmouse>:call NetrwSettingHelp()<cr>
176 let tmpfile= tempname()
177 exe 'au BufWriteCmd Netrw\ Settings silent w! '.tmpfile.'|so '.tmpfile.'|call delete("'.tmpfile.'")|set nomod'
180 " ---------------------------------------------------------------------
181 " NetrwSettingHelp: {{{2
182 fun! NetrwSettingHelp()
183 " call Dfunc("NetrwSettingHelp()")
184 let curline = getline(".")
186 let varhelp = substitute(curline,'^\s*let ','','e')
187 let varhelp = substitute(varhelp,'\s*=.*$','','e')
188 " call Decho("trying help ".varhelp)
191 catch /^Vim\%((\a\+)\)\=:E149/
192 echo "***sorry*** no help available for <".varhelp.">"
194 elseif line(".") < s:netrw_settings_stop
196 elseif line(".") < s:netrw_protocol_stop
198 elseif line(".") < s:netrw_xfer_stop
203 " call Dret("NetrwSettingHelp")
206 " ---------------------------------------------------------------------
208 " vim:ts=8 fdm=marker