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 = "v12"
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 put = 'let g:netrw_use_nt_rcp = '.g:netrw_use_nt_rcp
86 put = 'let g:netrw_win95ftp = '.g:netrw_win95ftp
87 let s:netrw_xfer_stop= line(".")
89 put ='+ Netrw Messages'
90 put ='let g:netrw_use_errorwindow = '.g:netrw_use_errorwindow
93 put ='+ Netrw Browser Control'
94 put = 'let g:netrw_alto = '.g:netrw_alto
95 put = 'let g:netrw_altv = '.g:netrw_altv
96 put = 'let g:netrw_browse_split = '.g:netrw_browse_split
97 if exists("g:netrw_browsex_viewer")
98 put = 'let g:netrw_browsex_viewer = '.g:netrw_browsex_viewer
100 put = 'let g:netrw_browsex_viewer = (not defined)'
102 put = 'let g:netrw_compress = '.g:netrw_compress
103 let decompressline= line("$")
104 put ='let g:netrw_decompress...'
105 put = 'let g:netrw_dirhistmax = '.g:netrw_dirhistmax
106 put = 'let g:netrw_fastbrowse = '.g:netrw_fastbrowse
107 let fnameescline= line("$")
108 put = 'let g:netrw_fname_escape...'
109 put = 'let g:netrw_ftp_browse_reject = '.g:netrw_ftp_browse_reject
110 put = 'let g:netrw_ftp_list_cmd = '.g:netrw_ftp_list_cmd
111 put = 'let g:netrw_ftp_sizelist_cmd = '.g:netrw_ftp_sizelist_cmd
112 put = 'let g:netrw_ftp_timelist_cmd = '.g:netrw_ftp_timelist_cmd
113 let globescline= line("$")
114 put ='let g:netrw_glob_escape...'
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_options = '.g:netrw_sort_options
137 put = 'let g:netrw_sort_sequence = '.g:netrw_sort_sequence
138 put = 'let g:netrw_special_syntax = '.g:netrw_special_syntax
139 put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject
140 put = 'let g:netrw_scpport = '.g:netrw_scpport
141 put = 'let g:netrw_sshport = '.g:netrw_sshport
142 put = 'let g:netrw_timefmt = '.g:netrw_timefmt
143 let tmpfileescline= line("$")
144 put ='let g:netrw_tmpfile_escape...'
145 put = 'let g:netrw_use_noswf = '.g:netrw_use_noswf
146 put = 'let g:netrw_xstrlen = '.g:netrw_xstrlen
147 put = 'let g:netrw_winsize = '.g:netrw_winsize
150 put ='+ For help, place cursor on line and press <F1>'
155 silent %s/= \([^0-9].*\)$/= '\1'/e
159 call setline(decompressline,"let g:netrw_decompress = ".substitute(string(g:netrw_decompress),"^'\\(.*\\)'$",'\1',''))
160 call setline(fnameescline, "let g:netrw_fname_escape = '".escape(g:netrw_fname_escape,"'")."'")
161 call setline(globescline, "let g:netrw_glob_escape = '".escape(g:netrw_glob_escape,"'")."'")
162 call setline(tmpfileescline,"let g:netrw_tmpfile_escape = '".escape(g:netrw_tmpfile_escape,"'")."'")
166 nmap <buffer> <silent> <F1> :call NetrwSettingHelp()<cr>
167 nnoremap <buffer> <silent> <leftmouse> <leftmouse>:call NetrwSettingHelp()<cr>
168 let tmpfile= tempname()
169 exe 'au BufWriteCmd Netrw\ Settings silent w! '.tmpfile.'|so '.tmpfile.'|call delete("'.tmpfile.'")|set nomod'
172 " ---------------------------------------------------------------------
173 " NetrwSettingHelp: {{{2
174 fun! NetrwSettingHelp()
175 " call Dfunc("NetrwSettingHelp()")
176 let curline = getline(".")
178 let varhelp = substitute(curline,'^\s*let ','','e')
179 let varhelp = substitute(varhelp,'\s*=.*$','','e')
180 " call Decho("trying help ".varhelp)
183 catch /^Vim\%((\a\+)\)\=:E149/
184 echo "***sorry*** no help available for <".varhelp.">"
186 elseif line(".") < s:netrw_settings_stop
188 elseif line(".") < s:netrw_protocol_stop
190 elseif line(".") < s:netrw_xfer_stop
195 " call Dret("NetrwSettingHelp")
198 " ---------------------------------------------------------------------
200 " vim:ts=8 fdm=marker