blob: 5f4445fb004a3e66ed7937b4cbe7b1337191c01b [file] [log] [blame]
Bram Moolenaara5792f52005-11-23 21:25:05 +00001" netrwSettings.vim: makes netrw settings simpler
Bram Moolenaarccc18222007-05-10 18:25:20 +00002" Date: Mar 26, 2007
Bram Moolenaara5792f52005-11-23 21:25:05 +00003" Maintainer: Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
Bram Moolenaarccc18222007-05-10 18:25:20 +00004" Version: 9
Bram Moolenaar313b7232007-05-05 17:56:55 +00005" Copyright: Copyright (C) 1999-2007 Charles E. Campbell, Jr. {{{1
Bram Moolenaara5792f52005-11-23 21:25:05 +00006" 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
Bram Moolenaarccc18222007-05-10 18:25:20 +000022let g:loaded_netrwSettings = "v9"
Bram Moolenaara5792f52005-11-23 21:25:05 +000023
24" ---------------------------------------------------------------------
25" NetrwSettings: {{{1
26fun! netrwSettings#NetrwSettings()
27 " this call is here largely just to insure that netrw has been loaded
28 call netrw#NetSavePosn()
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
33
34 above wincmd s
35 enew
36 setlocal noswapfile bh=wipe
37 set ft=vim
38 file Netrw\ Settings
39
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)
Bram Moolenaar313b7232007-05-05 17:56:55 +000042 if !exists("g:netrw_liststyle")
43 let g:netrw_liststyle= 0
Bram Moolenaara5792f52005-11-23 21:25:05 +000044 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
58
Bram Moolenaardb552d602006-03-23 22:59:57 +000059 put ='+ ---------------------------------------------'
60 put ='+ NetrwSettings: by Charles E. Campbell, Jr.'
61 put ='+ Press <F1> with cursor atop any line for help'
62 put ='+ ---------------------------------------------'
Bram Moolenaara5792f52005-11-23 21:25:05 +000063 let s:netrw_settings_stop= line(".")
64
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 = ''
78
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
Bram Moolenaarccc18222007-05-10 18:25:20 +000084 put = 'let g:netrw_sshport = '.g:netrw_sshport
Bram Moolenaar313b7232007-05-05 17:56:55 +000085 let shqline= line("$")
86 put = 'let g:netrw_shq...'
Bram Moolenaara5792f52005-11-23 21:25:05 +000087 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(".")
Bram Moolenaarccc18222007-05-10 18:25:20 +000090 put =''
91 put ='+ Netrw Messages'
92 put ='let g:netrw_use_errorwindow = '.g:netrw_use_errorwindow
Bram Moolenaara5792f52005-11-23 21:25:05 +000093
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
Bram Moolenaarafeb4fa2006-02-01 21:51:12 +000098 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
Bram Moolenaara5792f52005-11-23 21:25:05 +0000104 put = 'let g:netrw_dirhistmax = '.g:netrw_dirhistmax
Bram Moolenaar4ea8fe12006-03-09 22:32:39 +0000105 put = 'let g:netrw_fastbrowse = '.g:netrw_fastbrowse
Bram Moolenaara5792f52005-11-23 21:25:05 +0000106 put = 'let g:netrw_ftp_browse_reject = '.g:netrw_ftp_browse_reject
107 put = 'let g:netrw_ftp_list_cmd = '.g:netrw_ftp_list_cmd
Bram Moolenaar313b7232007-05-05 17:56:55 +0000108 put = 'let g:netrw_ftp_sizelist_cmd = '.g:netrw_ftp_sizelist_cmd
109 put = 'let g:netrw_ftp_timelist_cmd = '.g:netrw_ftp_timelist_cmd
Bram Moolenaara5792f52005-11-23 21:25:05 +0000110 put = 'let g:netrw_hide = '.g:netrw_hide
111 put = 'let g:netrw_keepdir = '.g:netrw_keepdir
112 put = 'let g:netrw_list_cmd = '.g:netrw_list_cmd
113 put = 'let g:netrw_list_hide = '.g:netrw_list_hide
114 put = 'let g:netrw_local_mkdir = '.g:netrw_local_mkdir
115 put = 'let g:netrw_local_rmdir = '.g:netrw_local_rmdir
Bram Moolenaar313b7232007-05-05 17:56:55 +0000116 put = 'let g:netrw_liststyle = '.g:netrw_liststyle
Bram Moolenaara5792f52005-11-23 21:25:05 +0000117 put = 'let g:netrw_maxfilenamelen = '.g:netrw_maxfilenamelen
Bram Moolenaar313b7232007-05-05 17:56:55 +0000118 put = 'let g:netrw_menu = '.g:netrw_menu
Bram Moolenaara5792f52005-11-23 21:25:05 +0000119 put = 'let g:netrw_mkdir_cmd = '.g:netrw_mkdir_cmd
120 put = 'let g:netrw_rename_cmd = '.g:netrw_rename_cmd
121 put = 'let g:netrw_rm_cmd = '.g:netrw_rm_cmd
122 put = 'let g:netrw_rmdir_cmd = '.g:netrw_rmdir_cmd
123 put = 'let g:netrw_rmf_cmd = '.g:netrw_rmf_cmd
124 put = 'let g:netrw_silent = '.g:netrw_silent
125 put = 'let g:netrw_sort_by = '.g:netrw_sort_by
126 put = 'let g:netrw_sort_direction = '.g:netrw_sort_direction
127 put = 'let g:netrw_sort_sequence = '.g:netrw_sort_sequence
128 put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject
Bram Moolenaarccc18222007-05-10 18:25:20 +0000129 put = 'let g:netrw_scpport = '.g:netrw_scpport
130 put = 'let g:netrw_sshport = '.g:netrw_sshport
Bram Moolenaara5792f52005-11-23 21:25:05 +0000131 put = 'let g:netrw_timefmt = '.g:netrw_timefmt
Bram Moolenaar313b7232007-05-05 17:56:55 +0000132 put = 'let g:netrw_use_noswf = '.g:netrw_use_noswf
Bram Moolenaara5792f52005-11-23 21:25:05 +0000133 put = 'let g:netrw_winsize = '.g:netrw_winsize
134
135 put =''
Bram Moolenaarccc18222007-05-10 18:25:20 +0000136 put ='+ For help, place cursor on line and press <F1>'
Bram Moolenaara5792f52005-11-23 21:25:05 +0000137
138 1d
139 silent %s/^+/"/e
140 res 99
141 silent %s/= \([^0-9].*\)$/= '\1'/e
142 silent %s/= $/= ''/e
143 1
144
Bram Moolenaar313b7232007-05-05 17:56:55 +0000145 " Put in shq setting.
146 " (deferred so as to avoid the quote manipulation just preceding)
147 if g:netrw_shq == "'"
148 call setline(shqline,'let g:netrw_shq = "'.g:netrw_shq.'"')
149 else
150 call setline(shqline,"let g:netrw_shq = '".g:netrw_shq."'")
151 endif
152
Bram Moolenaara5792f52005-11-23 21:25:05 +0000153 set nomod
154
Bram Moolenaar313b7232007-05-05 17:56:55 +0000155 nmap <buffer> <silent> <F1> :call NetrwSettingHelp()<cr>
156 nnoremap <buffer> <silent> <leftmouse> <leftmouse>:call NetrwSettingHelp()<cr>
Bram Moolenaara5792f52005-11-23 21:25:05 +0000157 let tmpfile= tempname()
158 exe 'au BufWriteCmd Netrw\ Settings silent w! '.tmpfile.'|so '.tmpfile.'|call delete("'.tmpfile.'")|set nomod'
159endfun
160
161" ---------------------------------------------------------------------
162" NetrwSettingHelp: {{{2
163fun! NetrwSettingHelp()
164" call Dfunc("NetrwSettingHelp()")
165 let curline = getline(".")
166 if curline =~ '='
167 let varhelp = substitute(curline,'^\s*let ','','e')
168 let varhelp = substitute(varhelp,'\s*=.*$','','e')
169" call Decho("trying help ".varhelp)
170 try
171 exe "he ".varhelp
172 catch /^Vim\%((\a\+)\)\=:E149/
173 echo "***sorry*** no help available for <".varhelp.">"
174 endtry
175 elseif line(".") < s:netrw_settings_stop
176 he netrw-settings
177 elseif line(".") < s:netrw_protocol_stop
178 he netrw-externapp
179 elseif line(".") < s:netrw_xfer_stop
180 he netrw-variables
181 else
182 he netrw-browse-var
183 endif
184" call Dret("NetrwSettingHelp")
185endfun
186
187" ---------------------------------------------------------------------
188" Modelines: {{{1
189" vim:ts=8 fdm=marker