Update runtime files
[MacVim.git] / runtime / autoload / netrwSettings.vim
blobd6a93624791b9d42dc272de96b62cc00f80bb1b9
1 " netrwSettings.vim: makes netrw settings simpler
2 " Date:         Mar 11, 2008
3 " Maintainer:   Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
4 " Version:      11
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
13 "               of this software.
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
19 if exists("g:loaded_netrwSettings") || &cp
20   finish
21 endif
22 let g:loaded_netrwSettings  = "v11"
24 " ---------------------------------------------------------------------
25 " NetrwSettings: {{{1
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
31    return
32   endif
34   above wincmd s
35   enew
36   setlocal noswapfile bh=wipe
37   set ft=vim
38   file Netrw\ Settings
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"
45   endif
46   if !exists("g:netrw_silent")
47    let g:netrw_silent= 0
48   endif
49   if !exists("g:netrw_use_nt_rcp")
50    let g:netrw_use_nt_rcp= 0
51   endif
52   if !exists("g:netrw_ftp")
53    let g:netrw_ftp= 0
54   endif
55   if !exists("g:netrw_ignorenetrc")
56    let g:netrw_ignorenetrc= 0
57   endif
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(".")
65   put =''
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(".")
77   put = ''
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(".")
90   put =''
91   put ='+ Netrw Messages'
92   put ='let g:netrw_use_errorwindow    = '.g:netrw_use_errorwindow
94   put = ''
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
101   else
102    put = 'let g:netrw_browsex_viewer    = (not defined)'
103   endif
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   let fnameescline= line("$")
112   put = 'let g:netrw_fname_escape...'
113   put = 'let g:netrw_ftp_browse_reject = '.g:netrw_ftp_browse_reject
114   put = 'let g:netrw_ftp_list_cmd      = '.g:netrw_ftp_list_cmd
115   put = 'let g:netrw_ftp_sizelist_cmd  = '.g:netrw_ftp_sizelist_cmd
116   put = 'let g:netrw_ftp_timelist_cmd  = '.g:netrw_ftp_timelist_cmd
117   let globescline= line("$")
118   put ='let g:netrw_glob_escape...'
119   put = 'let g:netrw_hide              = '.g:netrw_hide
120   put = 'let g:netrw_keepdir           = '.g:netrw_keepdir
121   put = 'let g:netrw_list_cmd          = '.g:netrw_list_cmd
122   put = 'let g:netrw_list_hide         = '.g:netrw_list_hide
123   put = 'let g:netrw_liststyle         = '.g:netrw_liststyle
124   put = 'let g:netrw_localcopycmd      = '.g:netrw_localcopycmd
125   put = 'let g:netrw_local_mkdir       = '.g:netrw_local_mkdir
126   put = 'let g:netrw_localmovecmd      = '.g:netrw_localmovecmd
127   put = 'let g:netrw_local_rmdir       = '.g:netrw_local_rmdir
128   put = 'let g:netrw_maxfilenamelen    = '.g:netrw_maxfilenamelen
129   put = 'let g:netrw_menu              = '.g:netrw_menu
130   put = 'let g:netrw_mkdir_cmd         = '.g:netrw_mkdir_cmd
131   put = 'let g:netrw_preview           = '.g:netrw_preview
132   put = 'let g:netrw_rename_cmd        = '.g:netrw_rename_cmd
133   put = 'let g:netrw_retmap            = '.g:netrw_retmap
134   put = 'let g:netrw_rm_cmd            = '.g:netrw_rm_cmd
135   put = 'let g:netrw_rmdir_cmd         = '.g:netrw_rmdir_cmd
136   put = 'let g:netrw_rmf_cmd           = '.g:netrw_rmf_cmd
137   put = 'let g:netrw_silent            = '.g:netrw_silent
138   put = 'let g:netrw_sort_by           = '.g:netrw_sort_by
139   put = 'let g:netrw_sort_direction    = '.g:netrw_sort_direction
140   put = 'let g:netrw_sort_sequence     = '.g:netrw_sort_sequence
141   put = 'let g:netrw_special_syntax    = '.g:netrw_special_syntax
142   put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject
143   put = 'let g:netrw_scpport           = '.g:netrw_scpport
144   put = 'let g:netrw_sshport           = '.g:netrw_sshport
145   put = 'let g:netrw_timefmt           = '.g:netrw_timefmt
146   let tmpfileescline= line("$")
147   put ='let g:netrw_tmpfile_escape...'
148   put = 'let g:netrw_use_noswf         = '.g:netrw_use_noswf
149   put = 'let g:netrw_xstrlen           = '.g:netrw_xstrlen
150   put = 'let g:netrw_winsize           = '.g:netrw_winsize
152   put =''
153   put ='+ For help, place cursor on line and press <F1>'
155   1d
156   silent %s/^+/"/e
157   res 99
158   silent %s/= \([^0-9].*\)$/= '\1'/e
159   silent %s/= $/= ''/e
160   1
162   " Put in g:netrw_shq setting and g:netrw_cd_escape
163   " (deferred so as to avoid the quote manipulation just preceding)
164   if g:netrw_shq == "'"
165    call setline(shqline,      'let g:netrw_shq               = "'.g:netrw_shq.'"')
166   else
167    call setline(shqline,      "let g:netrw_shq               = '".g:netrw_shq."'")
168   endif
169   call setline(cdescline,     "let g:netrw_cd_escape         = ".'"'.escape(g:netrw_cd_escape,'\"').'"')
170   call setline(decompressline,"let g:netrw_decompress        = ".substitute(string(g:netrw_decompress),"^'\\(.*\\)'$",'\1',''))
171   call setline(fnameescline,  "let g:netrw_fname_escape      = '".escape(g:netrw_fname_escape,"'")."'")
172   call setline(globescline,   "let g:netrw_glob_escape       = '".escape(g:netrw_glob_escape,"'")."'")
173   call setline(tmpfileescline,"let g:netrw_tmpfile_escape    = '".escape(g:netrw_tmpfile_escape,"'")."'")
175   set nomod
177   nmap <buffer> <silent> <F1>                       :call NetrwSettingHelp()<cr>
178   nnoremap <buffer> <silent> <leftmouse> <leftmouse>:call NetrwSettingHelp()<cr>
179   let tmpfile= tempname()
180   exe 'au BufWriteCmd   Netrw\ Settings silent w! '.tmpfile.'|so '.tmpfile.'|call delete("'.tmpfile.'")|set nomod'
181 endfun
183 " ---------------------------------------------------------------------
184 " NetrwSettingHelp: {{{2
185 fun! NetrwSettingHelp()
186 "  call Dfunc("NetrwSettingHelp()")
187   let curline = getline(".")
188   if curline =~ '='
189    let varhelp = substitute(curline,'^\s*let ','','e')
190    let varhelp = substitute(varhelp,'\s*=.*$','','e')
191 "   call Decho("trying help ".varhelp)
192    try
193     exe "he ".varhelp
194    catch /^Vim\%((\a\+)\)\=:E149/
195         echo "***sorry*** no help available for <".varhelp.">"
196    endtry
197   elseif line(".") < s:netrw_settings_stop
198    he netrw-settings
199   elseif line(".") < s:netrw_protocol_stop
200    he netrw-externapp
201   elseif line(".") < s:netrw_xfer_stop
202    he netrw-variables
203   else
204    he netrw-browse-var
205   endif
206 "  call Dret("NetrwSettingHelp")
207 endfun
209 " ---------------------------------------------------------------------
210 " Modelines: {{{1
211 " vim:ts=8 fdm=marker