Mercurial > vim
annotate runtime/doc/pi_netrw.txt @ 4307:166b3df562ea v7.3.903
updated for version 7.3.903
Problem: Crash on exit writing viminfo. (Ron Aaron)
Solution: Check for the history to be empty.
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Mon, 15 Apr 2013 16:14:22 +0200 |
parents | c53344bacabf |
children | 22fa3049e934 |
rev | line source |
---|---|
3920 | 1 *pi_netrw.txt* For Vim version 7.3. Last change: 2012 Oct 25 |
7 | 2 |
1121 | 3 ----------------------------------------------------- |
4 NETRW REFERENCE MANUAL by Charles E. Campbell, Jr. | |
5 ----------------------------------------------------- | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
6 Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM> |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
7 (remove NOSPAM from Campbell's email first) |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
8 |
3456 | 9 Copyright: Copyright (C) 1999-2012 Charles E Campbell, Jr *netrw-copyright* |
10 The VIM LICENSE applies to the files in this package, including | |
11 netrw.vim, pi_netrw.txt, netrwFileHandlers.vim, netrwSettings.vim, and | |
12 syntax/netrw.vim. Like anything else that's free, netrw.vim and its | |
13 associated files are provided *as is* and comes with no warranty of | |
14 any kind, either expressed or implied. No guarantees of | |
15 merchantability. No guarantees of suitability for any purpose. By | |
16 using this plugin, you agree that in no event will the copyright | |
17 holder be liable for any damages resulting from the use of this | |
18 software. Use at your own risk! | |
7 | 19 |
559 | 20 |
2152 | 21 *dav* *ftp* *netrw-file* *rcp* *scp* |
22 *davs* *http* *netrw.vim* *rsync* *sftp* | |
23 *fetch* *netrw* *network* | |
7 | 24 |
25 ============================================================================== | |
1621 | 26 1. Contents *netrw-contents* {{{1 |
7 | 27 |
1121 | 28 1. Contents.............................................|netrw-contents| |
29 2. Starting With Netrw..................................|netrw-start| | |
30 3. Netrw Reference......................................|netrw-ref| | |
1621 | 31 EXTERNAL APPLICATIONS AND PROTOCOLS................|netrw-externapp| |
482 | 32 READING............................................|netrw-read| |
33 WRITING............................................|netrw-write| | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
34 SOURCING...........................................|netrw-source| |
482 | 35 DIRECTORY LISTING..................................|netrw-dirlist| |
36 CHANGING THE USERID AND PASSWORD...................|netrw-chgup| | |
1621 | 37 VARIABLES AND SETTINGS.............................|netrw-variables| |
482 | 38 PATHS..............................................|netrw-path| |
1121 | 39 4. Network-Oriented File Transfer.......................|netrw-xfer| |
459 | 40 NETRC..............................................|netrw-netrc| |
41 PASSWORD...........................................|netrw-passwd| | |
1121 | 42 5. Activation...........................................|netrw-activate| |
2751 | 43 6. Transparent Remote File Editing......................|netrw-transparent| |
1121 | 44 7. Ex Commands..........................................|netrw-ex| |
3456 | 45 8. Variables and Options................................|netrw-variables| |
1621 | 46 9. Browsing.............................................|netrw-browse| |
47 Introduction To Browsing...........................|netrw-intro-browse| | |
48 Quick Reference: Maps..............................|netrw-browse-maps| | |
49 Quick Reference: Commands..........................|netrw-browse-cmds| | |
50 Bookmarking A Directory............................|netrw-mb| | |
459 | 51 Browsing...........................................|netrw-cr| |
1621 | 52 Browsing With A Horizontally Split Window..........|netrw-o| |
53 Browsing With A New Tab............................|netrw-t| | |
54 Browsing With A Vertically Split Window............|netrw-v| | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
55 Change Listing Style.(thin wide long tree).........|netrw-i| |
1621 | 56 Changing To A Bookmarked Directory.................|netrw-gb| |
459 | 57 Changing To A Predecessor Directory................|netrw-u| |
58 Changing To A Successor Directory..................|netrw-U| | |
59 Customizing Browsing With A User Function..........|netrw-x| | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
60 Deleting Bookmarks.................................|netrw-mB| |
1621 | 61 Deleting Files Or Directories......................|netrw-D| |
62 Directory Exploring Commands.......................|netrw-explore| | |
63 Exploring With Stars and Patterns..................|netrw-star| | |
64 Displaying Information About File..................|netrw-qf| | |
65 Edit File Or Directory Hiding List.................|netrw-ctrl-h| | |
66 Editing The Sorting Sequence.......................|netrw-S| | |
2751 | 67 Forcing treatment as a file or directory...........|netrw-gd| |netrw-gf| |
1621 | 68 Going Up...........................................|netrw--| |
69 Hiding Files Or Directories........................|netrw-a| | |
70 Improving Browsing.................................|netrw-ssh-hack| | |
71 Listing Bookmarks And History......................|netrw-qb| | |
72 Making A New Directory.............................|netrw-d| | |
459 | 73 Making The Browsing Directory The Current Directory|netrw-c| |
1621 | 74 Marking Files......................................|netrw-mf| |
75 Marking Files By Regular Expression................|netrw-mr| | |
76 Marked Files: Arbitrary Command....................|netrw-mx| | |
77 Marked Files: Compression And Decompression........|netrw-mz| | |
78 Marked Files: Copying..............................|netrw-mc| | |
79 Marked Files: Diff.................................|netrw-md| | |
80 Marked Files: Editing..............................|netrw-me| | |
81 Marked Files: Grep.................................|netrw-mg| | |
82 Marked Files: Hiding and Unhiding by Suffix........|netrw-mh| | |
83 Marked Files: Moving...............................|netrw-mm| | |
84 Marked Files: Printing.............................|netrw-mp| | |
85 Marked Files: Sourcing.............................|netrw-ms| | |
86 Marked Files: Tagging..............................|netrw-mT| | |
87 Marked Files: Setting the Target Directory.........|netrw-mt| | |
88 Marked Files: Unmarking............................|netrw-mu| | |
89 Netrw Browser Variables............................|netrw-browser-var| | |
90 Netrw Browsing And Option Incompatibilities........|netrw-incompatible| | |
3153 | 91 Netrw Settings Window..............................|netrw-settings-window| |
1621 | 92 Obtaining A File...................................|netrw-O| |
93 Preview Window.....................................|netrw-p| | |
94 Previous Window....................................|netrw-P| | |
95 Refreshing The Listing.............................|netrw-ctrl-l| | |
96 Renaming Files Or Directories......................|netrw-move| | |
97 Reversing Sorting Order............................|netrw-r| | |
98 Selecting Sorting Style............................|netrw-s| | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
99 Setting Editing Window.............................|netrw-C| |
1121 | 100 10. Problems and Fixes...................................|netrw-problems| |
1621 | 101 11. Debugging Netrw Itself...............................|netrw-debug| |
1121 | 102 12. History..............................................|netrw-history| |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
103 13. Todo.................................................|netrw-todo| |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
104 14. Credits..............................................|netrw-credits| |
7 | 105 |
106 {Vi does not have any of this} | |
107 | |
108 ============================================================================== | |
1621 | 109 2. Starting With Netrw *netrw-start* {{{1 |
110 | |
111 Netrw makes reading files, writing files, browsing over a network, and | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
112 local browsing easy! First, make sure that you have plugins enabled, so |
1621 | 113 you'll need to have at least the following in your <.vimrc>: |
114 (or see |netrw-activate|) > | |
650 | 115 |
1121 | 116 set nocp " 'compatible' is not set |
117 filetype plugin on " plugins are enabled | |
650 | 118 < |
119 (see |'cp'| and |:filetype-plugin-on|) | |
120 | |
121 Netrw supports "transparent" editing of files on other machines using urls | |
122 (see |netrw-transparent|). As an example of this, let's assume you have an | |
1621 | 123 account on some other machine; if you can use scp, try: > |
650 | 124 |
125 vim scp://hostname/path/to/file | |
126 < | |
1621 | 127 Want to make ssh/scp easier to use? Check out |netrw-ssh-hack|! |
128 | |
129 So, what if you have ftp, not ssh/scp? That's easy, too; try > | |
650 | 130 |
131 vim ftp://hostname/path/to/file | |
132 < | |
133 Want to make ftp simpler to use? See if your ftp supports a file called | |
134 <.netrc> -- typically it goes in your home directory, has read/write | |
135 permissions for only the user to read (ie. not group, world, other, etc), | |
136 and has lines resembling > | |
137 | |
138 machine HOSTNAME login USERID password "PASSWORD" | |
139 machine HOSTNAME login USERID password "PASSWORD" | |
140 ... | |
1121 | 141 default login USERID password "PASSWORD" |
650 | 142 < |
3456 | 143 Windows' ftp doesn't support .netrc; however, one may have in one's .vimrc: > |
144 | |
145 let g:netrw_ftp_cmd= 'c:\Windows\System32\ftp -s:C:\Users\Myself\MACHINE' | |
3920 | 146 < |
3456 | 147 Netrw will substitute the host's machine name for MACHINE from the url it is |
148 attempting to open, and so one may specify > | |
149 userid | |
150 password | |
151 for each site in a separate file in c:\Users\Myself\. | |
152 | |
1621 | 153 Now about browsing -- when you just want to look around before editing a |
650 | 154 file. For browsing on your current host, just "edit" a directory: > |
155 | |
156 vim . | |
157 vim /home/userid/path | |
158 < | |
159 For browsing on a remote host, "edit" a directory (but make sure that | |
160 the directory name is followed by a "/"): > | |
161 | |
162 vim scp://hostname/ | |
163 vim ftp://hostname/path/to/dir/ | |
164 < | |
165 See |netrw-browse| for more! | |
166 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
167 There are more protocols supported by netrw than just scp and ftp, too: see the |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
168 next section, |netrw-externapp|, on how to use these external applications with |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
169 netrw and vim. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
170 |
2152 | 171 PREVENTING LOADING *netrw-noload* |
1621 | 172 |
173 If you want to use plugins, but for some reason don't wish to use netrw, then | |
174 you need to avoid loading both the plugin and the autoload portions of netrw. | |
175 You may do so by placing the following two lines in your <.vimrc>: > | |
176 | |
177 :let g:loaded_netrw = 1 | |
178 :let g:loaded_netrwPlugin = 1 | |
179 < | |
650 | 180 |
181 ============================================================================== | |
2152 | 182 3. Netrw Reference *netrw-ref* {{{1 |
1621 | 183 |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
184 Netrw supports several protocols in addition to scp and ftp as mentioned |
1621 | 185 in |netrw-start|. These include dav, fetch, http,... well, just look |
186 at the list in |netrw-externapp|. Each protocol is associated with a | |
187 variable which holds the default command supporting that protocol. | |
188 | |
189 EXTERNAL APPLICATIONS AND PROTOCOLS *netrw-externapp* {{{2 | |
7 | 190 |
482 | 191 Protocol Variable Default Value |
192 -------- ---------------- ------------- | |
2751 | 193 dav: *g:netrw_dav_cmd* = "cadaver" if cadaver is executable |
194 dav: g:netrw_dav_cmd = "curl -o" elseif curl is available | |
195 fetch: *g:netrw_fetch_cmd* = "fetch -o" if fetch is available | |
196 ftp: *g:netrw_ftp_cmd* = "ftp" | |
197 http: *g:netrw_http_cmd* = "elinks" if elinks is available | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
198 http: g:netrw_http_cmd = "links" elseif links is available |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
199 http: g:netrw_http_cmd = "curl" elseif curl is available |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
200 http: g:netrw_http_cmd = "wget" elseif wget is available |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
201 http: g:netrw_http_cmd = "fetch" elseif fetch is available |
2751 | 202 rcp: *g:netrw_rcp_cmd* = "rcp" |
203 rsync: *g:netrw_rsync_cmd* = "rsync -a" | |
204 scp: *g:netrw_scp_cmd* = "scp -q" | |
205 sftp: *g:netrw_sftp_cmd* = "sftp" | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
206 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
207 *g:netrw_http_xcmd* : the option string for http://... protocols are |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
208 specified via this variable and may be independently overridden. By |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
209 default, the option arguments for the http-handling commands are: > |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
210 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
211 elinks : "-source >" |
3920 | 212 links : "-dump >" |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
213 curl : "-o" |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
214 wget : "-q -O" |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
215 fetch : "-o" |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
216 < |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
217 For example, if your system has elinks, and you'd rather see the |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
218 page using an attempt at rendering the text, you may wish to have > |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
219 let g:netrw_http_xcmd= "-dump >" |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
220 < in your .vimrc. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
221 |
7 | 222 |
1621 | 223 READING *netrw-read* *netrw-nread* {{{2 |
224 | |
225 Generally, one may just use the url notation with a normal editing | |
226 command, such as > | |
227 | |
228 :e ftp://[user@]machine/path | |
229 < | |
230 Netrw also provides the Nread command: | |
231 | |
7 | 232 :Nread ? give help |
22 | 233 :Nread "machine:path" uses rcp |
482 | 234 :Nread "machine path" uses ftp w/ <.netrc> |
22 | 235 :Nread "machine id password path" uses ftp |
236 :Nread "dav://machine[:port]/path" uses cadaver | |
237 :Nread "fetch://[user@]machine/path" uses fetch | |
482 | 238 :Nread "ftp://[user@]machine[[:#]port]/path" uses ftp w/ <.netrc> |
22 | 239 :Nread "http://[user@]machine/path" uses http uses wget |
240 :Nread "rcp://[user@]machine/path" uses rcp | |
241 :Nread "rsync://[user@]machine[:port]/path" uses rsync | |
242 :Nread "scp://[user@]machine[[:#]port]/path" uses scp | |
243 :Nread "sftp://[user@]machine/path" uses sftp | |
7 | 244 |
1621 | 245 WRITING *netrw-write* *netrw-nwrite* {{{2 |
246 | |
247 One may just use the url notation with a normal file writing | |
248 command, such as > | |
249 | |
250 :w ftp://[user@]machine/path | |
251 < | |
252 Netrw also provides the Nwrite command: | |
253 | |
794 | 254 :Nwrite ? give help |
22 | 255 :Nwrite "machine:path" uses rcp |
482 | 256 :Nwrite "machine path" uses ftp w/ <.netrc> |
22 | 257 :Nwrite "machine id password path" uses ftp |
258 :Nwrite "dav://machine[:port]/path" uses cadaver | |
482 | 259 :Nwrite "ftp://[user@]machine[[:#]port]/path" uses ftp w/ <.netrc> |
22 | 260 :Nwrite "rcp://[user@]machine/path" uses rcp |
261 :Nwrite "rsync://[user@]machine[:port]/path" uses rsync | |
262 :Nwrite "scp://[user@]machine[[:#]port]/path" uses scp | |
263 :Nwrite "sftp://[user@]machine/path" uses sftp | |
7 | 264 http: not supported! |
265 | |
1621 | 266 SOURCING *netrw-source* {{{2 |
267 | |
268 One may just use the url notation with the normal file sourcing | |
269 command, such as > | |
270 | |
271 :so ftp://[user@]machine/path | |
272 < | |
273 Netrw also provides the Nsource command: | |
274 | |
1121 | 275 :Nsource ? give help |
276 :Nsource "dav://machine[:port]/path" uses cadaver | |
277 :Nsource "fetch://[user@]machine/path" uses fetch | |
278 :Nsource "ftp://[user@]machine[[:#]port]/path" uses ftp w/ <.netrc> | |
279 :Nsource "http://[user@]machine/path" uses http uses wget | |
280 :Nsource "rcp://[user@]machine/path" uses rcp | |
281 :Nsource "rsync://[user@]machine[:port]/path" uses rsync | |
282 :Nsource "scp://[user@]machine[[:#]port]/path" uses scp | |
283 :Nsource "sftp://[user@]machine/path" uses sftp | |
284 | |
2908 | 285 DIRECTORY LISTING *netrw-trailingslash* *netrw-dirlist* {{{2 |
1621 | 286 |
287 One may browse a directory to get a listing by simply attempting to | |
288 edit the directory: > | |
289 | |
290 :e scp://[user]@hostname/path/ | |
291 :e ftp://[user]@hostname/path/ | |
292 < | |
2908 | 293 For remote directory listings (ie. those using scp or ftp), that |
294 trailing "/" is necessary (the slash tells netrw to treat the argument | |
295 as a directory to browse instead of as a file to download). | |
296 | |
297 The Nread command may also be used to accomplish this (again, that | |
298 trailing slash is necessary): > | |
299 | |
300 :Nread [protocol]://[user]@hostname/path/ | |
301 < | |
1621 | 302 *netrw-login* *netrw-password* |
303 CHANGING USERID AND PASSWORD *netrw-chgup* *netrw-userpass* {{{2 | |
1209 | 304 |
7 | 305 Attempts to use ftp will prompt you for a user-id and a password. |
3153 | 306 These will be saved in global variables |g:netrw_uid| and |
307 |s:netrw_passwd|; subsequent use of ftp will re-use those two strings, | |
308 thereby simplifying use of ftp. However, if you need to use a | |
309 different user id and/or password, you'll want to call |NetUserPass()| | |
1209 | 310 first. To work around the need to enter passwords, check if your ftp |
311 supports a <.netrc> file in your home directory. Also see | |
312 |netrw-passwd| (and if you're using ssh/scp hoping to figure out how | |
3153 | 313 to not need to use passwords for scp, look at |netrw-ssh-hack|). |
7 | 314 |
315 :NetUserPass [uid [password]] -- prompts as needed | |
316 :call NetUserPass() -- prompts for uid and password | |
317 :call NetUserPass("uid") -- prompts for password | |
318 :call NetUserPass("uid","password") -- sets global uid and password | |
319 | |
1621 | 320 NETRW VARIABLES AND SETTINGS *netrw-variables* {{{2 |
3456 | 321 (Also see: |
322 |netrw-browser-var| : netrw browser option variables | |
323 |netrw-protocol| : file transfer protocol option variables | |
324 |netrw-settings| : additional file transfer options | |
325 |netrw-browser-options| : these options affect browsing directories | |
326 ) | |
1621 | 327 |
328 Netrw provides a lot of variables which allow you to customize netrw to your | |
329 preferences. One way to look at them is via the command :NetrwSettings (see | |
330 |netrw-settings|) which will display your current netrw settings. Most such | |
331 settings are described below, in |netrw-browser-options|, and in | |
332 |netrw-externapp|: | |
1121 | 333 |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
334 *b:netrw_lastfile* last file Network-read/written retained on a |
3456 | 335 per-buffer basis (supports plain :Nw ) |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
336 |
2420
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
337 *g:netrw_bufsettings* the settings that netrw buffers have |
3456 | 338 (default) noma nomod nonu nowrap ro nobl |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
339 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
340 *g:netrw_chgwin* specifies a window number where file edits will take |
3456 | 341 place. (also see |netrw-C|) |
342 (default) not defined | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
343 |
2420
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
344 *g:Netrw_funcref* specifies a function (or functions) to be called when |
3456 | 345 netrw edits a file. The file is first edited, and |
346 then the function reference (|Funcref|) is called. | |
347 This variable may also hold a |List| of Funcrefs. | |
348 (default) not defined. (the capital in g:Netrw... | |
349 is required by its holding a function reference) | |
2420
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
350 > |
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
351 Example: place in .vimrc; affects all file opening |
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
352 fun! MyFuncRef() |
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
353 endfun |
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
354 let g:Netrw_funcref= function("MyFuncRef") |
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
355 < |
3456 | 356 *g:netrw_ftp* if it doesn't exist, use default ftp |
357 =0 use default ftp (uid password) | |
358 =1 use alternate ftp method (user uid password) | |
359 If you're having trouble with ftp, try changing the | |
360 value of this variable to see if the alternate ftp | |
361 method works for your setup. | |
362 | |
363 *g:netrw_ftp_options* Chosen by default, these options are supposed to turn | |
364 interactive prompting off and to restrain ftp from | |
365 attempting auto-login upon initial connection. | |
366 However, it appears that not all ftp implementations | |
367 support this (ex. ncftp). | |
368 ="-i -n" | |
482 | 369 |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
370 *g:netrw_ftpextracmd* default: doesn't exist |
3456 | 371 If this variable exists, then any string it contains |
372 will be placed into the commands set to your ftp | |
373 client. As an example: | |
374 ="passive" | |
1121 | 375 |
482 | 376 *g:netrw_ftpmode* ="binary" (default) |
3456 | 377 ="ascii" |
482 | 378 |
1121 | 379 *g:netrw_ignorenetrc* =0 (default for linux, cygwin) |
3456 | 380 =1 If you have a <.netrc> file but it doesn't work and |
381 you want it ignored, then set this variable as | |
382 shown. (default for Windows + cmd.exe) | |
1121 | 383 |
384 *g:netrw_menu* =0 disable netrw's menu | |
3456 | 385 =1 (default) netrw's menu enabled |
1121 | 386 |
387 *g:netrw_nogx* if this variable exists, then the "gx" map will not | |
3456 | 388 be available (see |netrw-gx|) |
482 | 389 |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
390 *g:netrw_uid* (ftp) user-id, retained on a per-vim-session basis |
3456 | 391 *s:netrw_passwd* (ftp) password, retained on a per-vim-session basis |
1621 | 392 |
393 *g:netrw_preview* =0 (default) preview window shown in a horizontally | |
3456 | 394 split window |
395 =1 preview window shown in a vertically split window. | |
396 Also affects the "previous window" (see |netrw-P|) in | |
397 the same way. | |
398 | |
399 *g:netrw_scpport* = "-P" : option to use to set port for scp | |
400 *g:netrw_sshport* = "-p" : option to use to set port for ssh | |
401 | |
402 *g:netrw_sepchr* =\0xff | |
403 =\0x01 for enc == euc-jp (and perhaps it should be for | |
404 others, too, please let me know) | |
405 Separates priority codes from filenames internally. | |
406 See |netrw-p12|. | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
407 |
1621 | 408 *g:netrw_silent* =0 : transfers done normally |
3456 | 409 =1 : transfers done silently |
1621 | 410 |
1209 | 411 *g:netrw_use_errorwindow* =1 : messages from netrw will use a separate one |
3456 | 412 line window. This window provides reliable |
2432
80229a724a11
Updated runtime files. :TOhtml improvements by Benjamin Fritz.
Bram Moolenaar <bram@vim.org>
parents:
2426
diff
changeset
|
413 delivery of messages. (default) |
80229a724a11
Updated runtime files. :TOhtml improvements by Benjamin Fritz.
Bram Moolenaar <bram@vim.org>
parents:
2426
diff
changeset
|
414 =0 : messages from netrw will use echoerr ; |
80229a724a11
Updated runtime files. :TOhtml improvements by Benjamin Fritz.
Bram Moolenaar <bram@vim.org>
parents:
2426
diff
changeset
|
415 messages don't always seem to show up this |
80229a724a11
Updated runtime files. :TOhtml improvements by Benjamin Fritz.
Bram Moolenaar <bram@vim.org>
parents:
2426
diff
changeset
|
416 way, but one doesn't have to quit the window. |
1209 | 417 |
482 | 418 *g:netrw_win95ftp* =1 if using Win95, will remove four trailing blank |
3456 | 419 lines that o/s's ftp "provides" on transfers |
420 =0 force normal ftp behavior (no trailing line removal) | |
421 | |
422 *g:netrw_cygwin* =1 assume scp under windows is from cygwin. Also | |
423 permits network browsing to use ls with time and | |
424 size sorting (default if windows) | |
425 =0 assume Windows' scp accepts windows-style paths | |
426 Network browsing uses dir instead of ls | |
427 This option is ignored if you're using unix | |
482 | 428 |
429 *g:netrw_use_nt_rcp* =0 don't use the rcp of WinNT, Win2000 and WinXP | |
3456 | 430 =1 use WinNT's rcp in binary mode (default) |
22 | 431 |
1621 | 432 PATHS *netrw-path* {{{2 |
466 | 433 |
482 | 434 Paths to files are generally user-directory relative for most protocols. |
435 It is possible that some protocol will make paths relative to some | |
436 associated directory, however. | |
437 > | |
438 example: vim scp://user@host/somefile | |
439 example: vim scp://user@host/subdir1/subdir2/somefile | |
440 < | |
1621 | 441 where "somefile" is in the "user"'s home directory. If you wish to get a |
482 | 442 file using root-relative paths, use the full path: |
443 > | |
444 example: vim scp://user@host//somefile | |
445 example: vim scp://user@host//subdir1/subdir2/somefile | |
446 < | |
7 | 447 |
448 ============================================================================== | |
1621 | 449 4. Network-Oriented File Transfer *netrw-xfer* {{{1 |
7 | 450 |
451 Network-oriented file transfer under Vim is implemented by a VimL-based script | |
559 | 452 (<netrw.vim>) using plugin techniques. It currently supports both reading and |
453 writing across networks using rcp, scp, ftp or ftp+<.netrc>, scp, fetch, | |
7 | 454 dav/cadaver, rsync, or sftp. |
455 | |
456 http is currently supported read-only via use of wget or fetch. | |
457 | |
458 <netrw.vim> is a standard plugin which acts as glue between Vim and the | |
459 various file transfer programs. It uses autocommand events (BufReadCmd, | |
460 FileReadCmd, BufWriteCmd) to intercept reads/writes with url-like filenames. > | |
461 | |
462 ex. vim ftp://hostname/path/to/file | |
463 < | |
559 | 464 The characters preceding the colon specify the protocol to use; in the |
1621 | 465 example, it's ftp. The <netrw.vim> script then formulates a command or a |
559 | 466 series of commands (typically ftp) which it issues to an external program |
467 (ftp, scp, etc) which does the actual file transfer/protocol. Files are read | |
468 from/written to a temporary file (under Unix/Linux, /tmp/...) which the | |
469 <netrw.vim> script will clean up. | |
7 | 470 |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
471 Now, a word about Jan Minář's "FTP User Name and Password Disclosure"; first, |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
472 ftp is not a secure protocol. User names and passwords are transmitted "in |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
473 the clear" over the internet; any snooper tool can pick these up; this is not |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
474 a netrw thing, this is a ftp thing. If you're concerned about this, please |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
475 try to use scp or sftp instead. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
476 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
477 Netrw re-uses the user id and password during the same vim session and so long |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
478 as the remote hostname remains the same. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
479 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
480 Jan seems to be a bit confused about how netrw handles ftp; normally multiple |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
481 commands are performed in a "ftp session", and he seems to feel that the |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
482 uid/password should only be retained over one ftp session. However, netrw |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
483 does every ftp operation in a separate "ftp session"; so remembering the |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
484 uid/password for just one "ftp session" would be the same as not remembering |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
485 the uid/password at all. IMHO this would rapidly grow tiresome as one |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
486 browsed remote directories, for example. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
487 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
488 On the other hand, thanks go to Jan M. for pointing out the many |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
489 vulnerabilities that netrw (and vim itself) had had in handling "crafted" |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
490 filenames. The |shellescape()| and |fnameescape()| functions were written in |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
491 response by Bram Moolenaar to handle these sort of problems, and netrw has |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
492 been modified to use them. Still, my advice is, if the "filename" looks like |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
493 a vim command that you aren't comfortable with having executed, don't open it. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
494 |
1121 | 495 *netrw-putty* *netrw-pscp* *netrw-psftp* |
559 | 496 One may modify any protocol's implementing external application by setting a |
497 variable (ex. scp uses the variable g:netrw_scp_cmd, which is defaulted to | |
794 | 498 "scp -q"). As an example, consider using PuTTY: > |
1121 | 499 |
500 let g:netrw_scp_cmd = '"c:\Program Files\PuTTY\pscp.exe" -q -batch' | |
501 let g:netrw_sftp_cmd= '"c:\Program Files\PuTTY\psftp.exe"' | |
794 | 502 < |
3153 | 503 (note: it has been reported that windows 7 with putty v0.6's "-batch" option |
504 doesn't work, so its best to leave it off for that system) | |
505 | |
1121 | 506 See |netrw-p8| for more about putty, pscp, psftp, etc. |
507 | |
7 | 508 Ftp, an old protocol, seems to be blessed by numerous implementations. |
559 | 509 Unfortunately, some implementations are noisy (ie., add junk to the end of the |
510 file). Thus, concerned users may decide to write a NetReadFixup() function | |
511 that will clean up after reading with their ftp. Some Unix systems (ie., | |
512 FreeBSD) provide a utility called "fetch" which uses the ftp protocol but is | |
513 not noisy and more convenient, actually, for <netrw.vim> to use. | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
514 Consequently, if "fetch" is available (ie. executable), it may be preferable |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
515 to use it for ftp://... based transfers. |
7 | 516 |
517 For rcp, scp, sftp, and http, one may use network-oriented file transfers | |
459 | 518 transparently; ie. |
7 | 519 > |
520 vim rcp://[user@]machine/path | |
521 vim scp://[user@]machine/path | |
522 < | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
523 If your ftp supports <.netrc>, then it too can be transparently used |
7 | 524 if the needed triad of machine name, user id, and password are present in |
525 that file. Your ftp must be able to use the <.netrc> file on its own, however. | |
526 > | |
527 vim ftp://[user@]machine[[:#]portnumber]/path | |
528 < | |
2751 | 529 Windows provides an ftp (typically c:\Windows\System32\ftp.exe) which uses |
530 an option, -s:filename (filename can and probably should be a full path) | |
531 which contains ftp commands which will be automatically run whenever ftp | |
532 starts. You may use this feature to enter a user and password for one site: > | |
533 userid | |
534 password | |
3456 | 535 < *netrw-windows-netrc* *netrw-windows-s* |
2751 | 536 If |g:netrw_ftp_cmd| contains -s:[path/]MACHINE, then (on Windows machines only) |
3456 | 537 netrw will substitute the current machine name requested for ftp connections |
2751 | 538 for MACHINE. Hence one can have multiple machine.ftp files containing login |
539 and password for ftp. Example: > | |
540 | |
3456 | 541 let g:netrw_ftp_cmd= 'c:\Windows\System32\ftp -s:C:\Users\Myself\MACHINE' |
2751 | 542 vim ftp://myhost.somewhere.net/ |
543 will use a file > | |
544 C:\Users\Myself\myhost.ftp | |
545 < | |
546 Often, ftp will need to query the user for the userid and password. | |
459 | 547 The latter will be done "silently"; ie. asterisks will show up instead of |
7 | 548 the actually-typed-in password. Netrw will retain the userid and password |
549 for subsequent read/writes from the most recent transfer so subsequent | |
550 transfers (read/write) to or from that machine will take place without | |
551 additional prompting. | |
552 | |
553 *netrw-urls* | |
554 +=================================+============================+============+ | |
1121 | 555 | Reading | Writing | Uses | |
7 | 556 +=================================+============================+============+ |
1121 | 557 | DAV: | | | |
558 | dav://host/path | | cadaver | | |
559 | :Nread dav://host/path | :Nwrite dav://host/path | cadaver | | |
7 | 560 +---------------------------------+----------------------------+------------+ |
1621 | 561 | DAV + SSL: | | | |
562 | davs://host/path | | cadaver | | |
563 | :Nread davs://host/path | :Nwrite davs://host/path | cadaver | | |
564 +---------------------------------+----------------------------+------------+ | |
1121 | 565 | FETCH: | | | |
566 | fetch://[user@]host/path | | | | |
567 | fetch://[user@]host:http/path | Not Available | fetch | | |
568 | :Nread fetch://[user@]host/path| | | | |
7 | 569 +---------------------------------+----------------------------+------------+ |
1121 | 570 | FILE: | | | |
571 | file:///* | file:///* | | | |
572 | file://localhost/* | file://localhost/* | | | |
7 | 573 +---------------------------------+----------------------------+------------+ |
1121 | 574 | FTP: (*3) | (*3) | | |
575 | ftp://[user@]host/path | ftp://[user@]host/path | ftp (*2) | | |
576 | :Nread ftp://host/path | :Nwrite ftp://host/path | ftp+.netrc | | |
577 | :Nread host path | :Nwrite host path | ftp+.netrc | | |
578 | :Nread host uid pass path | :Nwrite host uid pass path | ftp | | |
7 | 579 +---------------------------------+----------------------------+------------+ |
1121 | 580 | HTTP: wget is executable: (*4) | | | |
581 | http://[user@]host/path | Not Available | wget | | |
7 | 582 +---------------------------------+----------------------------+------------+ |
1121 | 583 | HTTP: fetch is executable (*4) | | | |
584 | http://[user@]host/path | Not Available | fetch | | |
7 | 585 +---------------------------------+----------------------------+------------+ |
1121 | 586 | RCP: | | | |
587 | rcp://[user@]host/path | rcp://[user@]host/path | rcp | | |
7 | 588 +---------------------------------+----------------------------+------------+ |
1121 | 589 | RSYNC: | | | |
590 | rsync://[user@]host/path | rsync://[user@]host/path | rsync | | |
591 | :Nread rsync://host/path | :Nwrite rsync://host/path | rsync | | |
592 | :Nread rcp://host/path | :Nwrite rcp://host/path | rcp | | |
7 | 593 +---------------------------------+----------------------------+------------+ |
1121 | 594 | SCP: | | | |
595 | scp://[user@]host/path | scp://[user@]host/path | scp | | |
596 | :Nread scp://host/path | :Nwrite scp://host/path | scp (*1) | | |
7 | 597 +---------------------------------+----------------------------+------------+ |
1121 | 598 | SFTP: | | | |
599 | sftp://[user@]host/path | sftp://[user@]host/path | sftp | | |
600 | :Nread sftp://host/path | :Nwrite sftp://host/path | sftp (*1) | | |
7 | 601 +=================================+============================+============+ |
602 | |
603 (*1) For an absolute path use scp://machine//path. | |
604 | |
605 (*2) if <.netrc> is present, it is assumed that it will | |
606 work with your ftp client. Otherwise the script will | |
1121 | 607 prompt for user-id and password. |
7 | 608 |
1121 | 609 (*3) for ftp, "machine" may be machine#port or machine:port |
7 | 610 if a different port is needed than the standard ftp port |
611 | |
612 (*4) for http:..., if wget is available it will be used. Otherwise, | |
613 if fetch is available it will be used. | |
614 | |
615 Both the :Nread and the :Nwrite ex-commands can accept multiple filenames. | |
616 | |
617 | |
618 NETRC *netrw-netrc* | |
619 | |
1621 | 620 The <.netrc> file, typically located in your home directory, contains lines |
621 therein which map a hostname (machine name) to the user id and password you | |
622 prefer to use with it. | |
623 | |
7 | 624 The typical syntax for lines in a <.netrc> file is given as shown below. |
799 | 625 Ftp under Unix usually supports <.netrc>; ftp under Windows usually doesn't. |
7 | 626 > |
627 machine {full machine name} login {user-id} password "{password}" | |
628 default login {user-id} password "{password}" | |
629 | |
630 Your ftp client must handle the use of <.netrc> on its own, but if the | |
631 <.netrc> file exists, an ftp transfer will not ask for the user-id or | |
632 password. | |
633 | |
634 Note: | |
635 Since this file contains passwords, make very sure nobody else can | |
636 read this file! Most programs will refuse to use a .netrc that is | |
637 readable for others. Don't forget that the system administrator can | |
1621 | 638 still read the file! Ie. for Linux/Unix: chmod 600 .netrc |
7 | 639 |
3456 | 640 Even though Windows' ftp clients typically do not support .netrc, netrw has |
641 a work-around: see |netrw-windows-s|. | |
642 | |
7 | 643 |
644 PASSWORD *netrw-passwd* | |
645 | |
646 The script attempts to get passwords for ftp invisibly using |inputsecret()|, | |
2432
80229a724a11
Updated runtime files. :TOhtml improvements by Benjamin Fritz.
Bram Moolenaar <bram@vim.org>
parents:
2426
diff
changeset
|
647 a built-in Vim function. See |netrw-userpass| for how to change the password |
7 | 648 after one has set it. |
649 | |
559 | 650 Unfortunately there doesn't appear to be a way for netrw to feed a password to |
651 scp. Thus every transfer via scp will require re-entry of the password. | |
1621 | 652 However, |netrw-ssh-hack| can help with this problem. |
7 | 653 |
654 | |
655 ============================================================================== | |
1621 | 656 5. Activation *netrw-activate* {{{1 |
7 | 657 |
799 | 658 Network-oriented file transfers are available by default whenever Vim's |
1621 | 659 |'nocompatible'| mode is enabled. Netrw's script files reside in your |
660 system's plugin, autoload, and syntax directories; just the | |
661 plugin/netrwPlugin.vim script is sourced automatically whenever you bring up | |
662 vim. The main script in autoload/netrw.vim is only loaded when you actually | |
663 use netrw. I suggest that, at a minimum, you have at least the following in | |
664 your <.vimrc> customization file: > | |
799 | 665 |
559 | 666 set nocp |
667 if version >= 600 | |
668 filetype plugin indent on | |
669 endif | |
670 < | |
7 | 671 |
672 ============================================================================== | |
2751 | 673 6. Transparent Remote File Editing *netrw-transparent* {{{1 |
7 | 674 |
675 Transparent file transfers occur whenever a regular file read or write | |
1621 | 676 (invoked via an |:autocmd| for |BufReadCmd|, |BufWriteCmd|, or |SourceCmd| |
677 events) is made. Thus one may read, write, or source files across networks | |
678 just as easily as if they were local files! > | |
7 | 679 |
680 vim ftp://[user@]machine/path | |
681 ... | |
682 :wq | |
683 | |
559 | 684 See |netrw-activate| for more on how to encourage your vim to use plugins |
685 such as netrw. | |
7 | 686 |
799 | 687 |
7 | 688 ============================================================================== |
1621 | 689 7. Ex Commands *netrw-ex* {{{1 |
7 | 690 |
799 | 691 The usual read/write commands are supported. There are also a few |
1621 | 692 additional commands available. Often you won't need to use Nwrite or |
1121 | 693 Nread as shown in |netrw-transparent| (ie. simply use > |
694 :e url | |
695 :r url | |
696 :w url | |
697 instead, as appropriate) -- see |netrw-urls|. In the explanations | |
698 below, a {netfile} is an url to a remote file. | |
7 | 699 |
2152 | 700 *:Nwrite* *:Nw* |
1621 | 701 :[range]Nw[rite] Write the specified lines to the current |
7 | 702 file as specified in b:netrw_lastfile. |
2152 | 703 (related: |netrw-nwrite|) |
7 | 704 |
1621 | 705 :[range]Nw[rite] {netfile} [{netfile}]... |
7 | 706 Write the specified lines to the {netfile}. |
707 | |
2152 | 708 *:Nread* *:Nr* |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
709 :Nr[ead] Read the lines from the file specified in b:netrw_lastfile |
2152 | 710 into the current buffer. (related: |netrw-nread|) |
7 | 711 |
1621 | 712 :Nr[ead] {netfile} {netfile}... |
7 | 713 Read the {netfile} after the current line. |
714 | |
2152 | 715 *:Nsource* *:Ns* |
1621 | 716 :Ns[ource] {netfile} |
1121 | 717 Source the {netfile}. |
718 To start up vim using a remote .vimrc, one may use | |
719 the following (all on one line) (tnx to Antoine Mechelynck) > | |
720 vim -u NORC -N | |
721 --cmd "runtime plugin/netrwPlugin.vim" | |
722 --cmd "source scp://HOSTNAME/.vimrc" | |
2152 | 723 < (related: |netrw-source|) |
724 | |
725 :call NetUserPass() *NetUserPass()* | |
1621 | 726 If g:netrw_uid and s:netrw_passwd don't exist, |
727 this function will query the user for them. | |
2152 | 728 (related: |netrw-userpass|) |
7 | 729 |
730 :call NetUserPass("userid") | |
1621 | 731 This call will set the g:netrw_uid and, if |
7 | 732 the password doesn't exist, will query the user for it. |
2152 | 733 (related: |netrw-userpass|) |
7 | 734 |
735 :call NetUserPass("userid","passwd") | |
1621 | 736 This call will set both the g:netrw_uid and s:netrw_passwd. |
7 | 737 The user-id and password are used by ftp transfers. One may |
1621 | 738 effectively remove the user-id and password by using empty |
739 strings (ie. ""). | |
2152 | 740 (related: |netrw-userpass|) |
7 | 741 |
1121 | 742 :NetrwSettings This command is described in |netrw-settings| -- used to |
743 display netrw settings and change netrw behavior. | |
482 | 744 |
7 | 745 |
746 ============================================================================== | |
3456 | 747 8. Variables and Options *netrw-var* *netrw-settings* {{{1 |
3153 | 748 |
749 (also see: |netrw-options| |netrw-variables| |netrw-protocol| | |
3456 | 750 |netrw-browser-settings| |netrw-browser-options| ) |
7 | 751 |
1121 | 752 The <netrw.vim> script provides several variables which act as options to |
1621 | 753 affect <netrw.vim>'s file transfer behavior. These variables typically may be |
754 set in the user's <.vimrc> file: (see also |netrw-settings| |netrw-protocol|) | |
3153 | 755 *netrw-options* |
1621 | 756 > |
1121 | 757 ------------- |
758 Netrw Options | |
759 ------------- | |
9 | 760 Option Meaning |
761 -------------- ----------------------------------------------- | |
762 < | |
1121 | 763 b:netrw_col Holds current cursor position (during NetWrite) |
764 g:netrw_cygwin =1 assume scp under windows is from cygwin | |
765 (default/windows) | |
766 =0 assume scp under windows accepts windows | |
767 style paths (default/else) | |
768 g:netrw_ftp =0 use default ftp (uid password) | |
769 g:netrw_ftpmode ="binary" (default) | |
770 ="ascii" (your choice) | |
771 g:netrw_ignorenetrc =1 (default) | |
772 if you have a <.netrc> file but you don't | |
7 | 773 want it used, then set this variable. Its |
774 mere existence is enough to cause <.netrc> | |
775 to be ignored. | |
1121 | 776 b:netrw_lastfile Holds latest method/machine/path. |
777 b:netrw_line Holds current line number (during NetWrite) | |
778 g:netrw_silent =0 transfers done normally | |
779 =1 transfers done silently | |
780 g:netrw_uid Holds current user-id for ftp. | |
781 g:netrw_use_nt_rcp =0 don't use WinNT/2K/XP's rcp (default) | |
782 =1 use WinNT/2K/XP's rcp, binary mode | |
783 g:netrw_win95ftp =0 use unix-style ftp even if win95/98/ME/etc | |
784 =1 use default method to do ftp > | |
9 | 785 ----------------------------------------------------------------------- |
786 < | |
3153 | 787 *netrw-internal-variables* |
7 | 788 The script will also make use of the following variables internally, albeit |
789 temporarily. | |
9 | 790 > |
791 ------------------- | |
792 Temporary Variables | |
793 ------------------- | |
794 Variable Meaning | |
795 -------- ------------------------------------ | |
796 < | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
797 b:netrw_method Index indicating rcp/ftp+.netrc/ftp |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
798 w:netrw_method (same as b:netrw_method) |
7 | 799 g:netrw_machine Holds machine name parsed from input |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
800 b:netrw_fname Holds filename being accessed > |
9 | 801 ------------------------------------------------------------ |
802 < | |
1621 | 803 *netrw-protocol* |
7 | 804 |
9 | 805 Netrw supports a number of protocols. These protocols are invoked using the |
806 variables listed below, and may be modified by the user. | |
7 | 807 > |
808 ------------------------ | |
1121 | 809 Protocol Control Options |
7 | 810 ------------------------ |
1121 | 811 Option Type Setting Meaning |
812 --------- -------- -------------- --------------------------- | |
9 | 813 < |
1121 | 814 netrw_ftp variable =doesn't exist userid set by "user userid" |
815 =0 userid set by "user userid" | |
816 =1 userid set by "userid" | |
817 NetReadFixup function =doesn't exist no change | |
818 =exists Allows user to have files | |
819 read via ftp automatically | |
820 transformed however they wish | |
821 by NetReadFixup() | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
822 g:netrw_dav_cmd variable ="cadaver" if cadaver is executable |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
823 g:netrw_dav_cmd variable ="curl -o" elseif curl is executable |
1121 | 824 g:netrw_fetch_cmd variable ="fetch -o" if fetch is available |
7 | 825 g:netrw_ftp_cmd variable ="ftp" |
650 | 826 g:netrw_http_cmd variable ="fetch -o" if fetch is available |
827 g:netrw_http_cmd variable ="wget -O" else if wget is available | |
1121 | 828 g:netrw_list_cmd variable ="ssh USEPORT HOSTNAME ls -Fa" |
7 | 829 g:netrw_rcp_cmd variable ="rcp" |
830 g:netrw_rsync_cmd variable ="rsync -a" | |
831 g:netrw_scp_cmd variable ="scp -q" | |
9 | 832 g:netrw_sftp_cmd variable ="sftp" > |
833 ------------------------------------------------------------------------- | |
7 | 834 < |
12 | 835 *netrw-ftp* |
1121 | 836 |
837 The g:netrw_..._cmd options (|g:netrw_ftp_cmd| and |g:netrw_sftp_cmd|) | |
838 specify the external program to use handle the ftp protocol. They may | |
2420
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
839 include command line options (such as -p for passive mode). Example: > |
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
840 |
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
841 let g:netrw_ftp_cmd= "ftp -p" |
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
842 < |
1121 | 843 Browsing is supported by using the |g:netrw_list_cmd|; the substring |
844 "HOSTNAME" will be changed via substitution with whatever the current request | |
845 is for a hostname. | |
7 | 846 |
1121 | 847 Two options (|g:netrw_ftp| and |netrw-fixup|) both help with certain ftp's |
848 that give trouble . In order to best understand how to use these options if | |
849 ftp is giving you troubles, a bit of discussion is provided on how netrw does | |
850 ftp reads. | |
9 | 851 |
852 For ftp, netrw typically builds up lines of one of the following formats in a | |
7 | 853 temporary file: |
854 > | |
855 IF g:netrw_ftp !exists or is not 1 IF g:netrw_ftp exists and is 1 | |
856 ---------------------------------- ------------------------------ | |
9 | 857 < |
1121 | 858 open machine [port] open machine [port] |
859 user userid password userid password | |
860 [g:netrw_ftpmode] password | |
2432
80229a724a11
Updated runtime files. :TOhtml improvements by Benjamin Fritz.
Bram Moolenaar <bram@vim.org>
parents:
2426
diff
changeset
|
861 [g:netrw_ftpextracmd] [g:netrw_ftpmode] |
1121 | 862 get filename tempfile [g:netrw_extracmd] |
863 get filename tempfile > | |
9 | 864 --------------------------------------------------------------------- |
7 | 865 < |
2432
80229a724a11
Updated runtime files. :TOhtml improvements by Benjamin Fritz.
Bram Moolenaar <bram@vim.org>
parents:
2426
diff
changeset
|
866 The |g:netrw_ftpmode| and |g:netrw_ftpextracmd| are optional. |
1121 | 867 |
7 | 868 Netrw then executes the lines above by use of a filter: |
869 > | |
870 :%! {g:netrw_ftp_cmd} -i [-n] | |
871 < | |
872 where | |
873 g:netrw_ftp_cmd is usually "ftp", | |
874 -i tells ftp not to be interactive | |
875 -n means don't use netrc and is used for Method #3 (ftp w/o <.netrc>) | |
876 | |
877 If <.netrc> exists it will be used to avoid having to query the user for | |
9 | 878 userid and password. The transferred file is put into a temporary file. |
7 | 879 The temporary file is then read into the main editing session window that |
880 requested it and the temporary file deleted. | |
881 | |
559 | 882 If your ftp doesn't accept the "user" command and immediately just demands a |
883 userid, then try putting "let netrw_ftp=1" in your <.vimrc>. | |
7 | 884 |
12 | 885 *netrw-cadaver* |
886 To handle the SSL certificate dialog for untrusted servers, one may pull | |
887 down the certificate and place it into /usr/ssl/cert.pem. This operation | |
888 renders the server treatment as "trusted". | |
889 | |
794 | 890 *netrw-fixup* *netreadfixup* |
7 | 891 If your ftp for whatever reason generates unwanted lines (such as AUTH |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
892 messages) you may write a NetReadFixup() function: |
7 | 893 > |
894 function! NetReadFixup(method,line1,line2) | |
895 " a:line1: first new line in current file | |
896 " a:line2: last new line in current file | |
897 if a:method == 1 "rcp | |
898 elseif a:method == 2 "ftp + <.netrc> | |
899 elseif a:method == 3 "ftp + machine,uid,password,filename | |
900 elseif a:method == 4 "scp | |
901 elseif a:method == 5 "http/wget | |
902 elseif a:method == 6 "dav/cadaver | |
903 elseif a:method == 7 "rsync | |
904 elseif a:method == 8 "fetch | |
905 elseif a:method == 9 "sftp | |
1121 | 906 else " complain |
7 | 907 endif |
908 endfunction | |
909 > | |
559 | 910 The NetReadFixup() function will be called if it exists and thus allows you to |
911 customize your reading process. As a further example, <netrw.vim> contains | |
912 just such a function to handle Windows 95 ftp. For whatever reason, Windows | |
913 95's ftp dumps four blank lines at the end of a transfer, and so it is | |
914 desirable to automate their removal. Here's some code taken from <netrw.vim> | |
915 itself: | |
7 | 916 > |
917 if has("win95") && g:netrw_win95ftp | |
9 | 918 fun! NetReadFixup(method, line1, line2) |
7 | 919 if method == 3 " ftp (no <.netrc>) |
1121 | 920 let fourblanklines= line2 - 3 |
921 silent fourblanklines.",".line2."g/^\s*/d" | |
7 | 922 endif |
923 endfunction | |
924 endif | |
925 > | |
926 | |
927 ============================================================================== | |
1621 | 928 9. Browsing *netrw-browsing* *netrw-browse* *netrw-help* {{{1 |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
929 *netrw-browser* *netrw-dir* *netrw-list* |
1621 | 930 |
931 INTRODUCTION TO BROWSING *netrw-intro-browse* {{{2 | |
932 (Quick References: |netrw-quickmaps| |netrw-quickcoms|) | |
933 | |
934 Netrw supports the browsing of directories on your local system and on remote | |
935 hosts; browsing includes listing files and directories, entering directories, | |
936 editing files therein, deleting files/directories, making new directories, | |
937 moving (renaming) files and directories, copying files and directories, etc. | |
938 One may mark files and execute any system command on them! The Netrw browser | |
939 generally implements the previous explorer's maps and commands for remote | |
940 directories, although details (such as pertinent global variable names) | |
941 necessarily differ. To browse a directory, simply "edit" it! > | |
942 | |
943 vim /your/directory/ | |
944 vim . | |
945 vim c:\your\directory\ | |
946 < | |
947 (Related topics: |netrw-cr| |netrw-o| |netrw-p| |netrw-P| |netrw-t| | |
948 |netrw-mf| |netrw-mx| |netrw-D| |netrw-R| |netrw-v| ) | |
22 | 949 |
950 The Netrw remote file and directory browser handles two protocols: ssh and | |
1621 | 951 ftp. The protocol in the url, if it is ftp, will cause netrw also to use ftp |
952 in its remote browsing. Specifying any other protocol will cause it to be | |
953 used for file transfers; but the ssh protocol will be used to do remote | |
954 browsing. | |
955 | |
956 To use Netrw's remote directory browser, simply attempt to read a "file" with | |
957 a trailing slash and it will be interpreted as a request to list a directory: | |
958 > | |
9 | 959 vim [protocol]://[user@]hostname/path/ |
1621 | 960 < |
961 where [protocol] is typically scp or ftp. As an example, try: > | |
962 | |
963 vim ftp://ftp.home.vim.org/pub/vim/ | |
719 | 964 < |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
965 For local directories, the trailing slash is not required. Again, because it's |
1621 | 966 easy to miss: to browse remote directories, the url must terminate with a |
967 slash! | |
968 | |
969 If you'd like to avoid entering the password repeatedly for remote directory | |
970 listings with ssh or scp, see |netrw-ssh-hack|. To avoid password entry with | |
971 ftp, see |netrw-netrc| (if your ftp supports it). | |
972 | |
973 There are several things you can do to affect the browser's display of files: | |
974 | |
975 * To change the listing style, press the "i" key (|netrw-i|). | |
976 Currently there are four styles: thin, long, wide, and tree. | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
977 To make that change "permanent", see |g:netrw_liststyle|. |
1621 | 978 |
979 * To hide files (don't want to see those xyz~ files anymore?) see | |
980 |netrw-ctrl-h|. | |
981 | |
982 * Press s to sort files by name, time, or size. | |
983 | |
984 See |netrw-browse-cmds| for all the things you can do with netrw! | |
985 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
986 *netrw-getftype* *netrw-filigree* *netrw-ftype* |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
987 The |getftype()| function is used to append a bit of filigree to indicate |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
988 filetype to locally listed files: |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
989 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
990 directory : / |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
991 executable : * |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
992 fifo : | |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
993 links : @ |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
994 sockets : = |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
995 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
996 The filigree also affects the |g:netrw_sort_sequence|. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
997 |
1621 | 998 |
999 QUICK HELP *netrw-quickhelp* {{{2 | |
1000 (Use ctrl-] to select a topic)~ | |
1001 Intro to Browsing...............................|netrw-intro-browse| | |
1002 Quick Reference: Maps.........................|netrw-quickmap| | |
1003 Quick Reference: Commands.....................|netrw-browse-cmds| | |
1004 Hiding | |
1005 Edit hiding list..............................|netrw-ctrl-h| | |
1006 Hiding Files or Directories...................|netrw-a| | |
1007 Hiding/Unhiding by suffix.....................|netrw-mh| | |
1008 Hiding dot-files.............................|netrw-gh| | |
1009 Listing Style | |
1010 Select listing style (thin/long/wide/tree)....|netrw-i| | |
1011 Associated setting variable...................|g:netrw_liststyle| | |
1012 Shell command used to perform listing.........|g:netrw_list_cmd| | |
1013 Quick file info...............................|netrw-qf| | |
1014 Sorted by | |
1015 Select sorting style (name/time/size).........|netrw-s| | |
1016 Editing the sorting sequence..................|netrw-S| | |
1668 | 1017 Sorting options...............................|g:netrw_sort_options| |
1621 | 1018 Associated setting variable...................|g:netrw_sort_sequence| |
1019 Reverse sorting order.........................|netrw-r| | |
1020 | |
1021 | |
1022 *netrw-quickmap* *netrw-quickmaps* | |
1023 QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2 | |
466 | 1024 > |
1621 | 1025 --- ----------------- ---- |
1026 Map Quick Explanation Link | |
1027 --- ----------------- ---- | |
1028 < <F1> Causes Netrw to issue help | |
1029 <cr> Netrw will enter the directory or read the file |netrw-cr| | |
1030 <del> Netrw will attempt to remove the file/directory |netrw-del| | |
1031 - Makes Netrw go up one directory |netrw--| | |
1032 a Toggles between normal display, |netrw-a| | |
1033 hiding (suppress display of files matching g:netrw_list_hide) | |
1034 showing (display only files which match g:netrw_list_hide) | |
1035 c Make browsing directory the current directory |netrw-c| | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1036 C Setting the editing window |netrw-C| |
1621 | 1037 d Make a directory |netrw-d| |
1038 D Attempt to remove the file(s)/directory(ies) |netrw-D| | |
1039 gb Go to previous bookmarked directory |netrw-gb| | |
1040 gh Quick hide/unhide of dot-files |netrw-gh| | |
1041 <c-h> Edit file hiding list |netrw-ctrl-h| | |
1042 i Cycle between thin, long, wide, and tree listings |netrw-i| | |
1043 <c-l> Causes Netrw to refresh the directory listing |netrw-ctrl-l| | |
1044 mb Bookmark current directory |netrw-mb| | |
1045 mc Copy marked files to marked-file target directory |netrw-mc| | |
1046 md Apply diff to marked files (up to 3) |netrw-md| | |
1047 me Place marked files on arg list and edit them |netrw-me| | |
1048 mf Mark a file |netrw-mf| | |
1049 mh Toggle marked file suffices' presence on hiding list |netrw-mh| | |
1050 mm Move marked files to marked-file target directory |netrw-mm| | |
1051 mp Print marked files |netrw-mp| | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1052 mr Mark files satisfying a shell-style |regexp| |netrw-mr| |
1621 | 1053 mt Current browsing directory becomes markfile target |netrw-mt| |
1054 mT Apply ctags to marked files |netrw-mT| | |
1055 mu Unmark all marked files |netrw-mu| | |
1056 mx Apply arbitrary shell command to marked files |netrw-mx| | |
1057 mz Compress/decompress marked files |netrw-mz| | |
1058 o Enter the file/directory under the cursor in a new |netrw-o| | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1059 browser window. A horizontal split is used. |
1621 | 1060 O Obtain a file specified by cursor |netrw-O| |
1061 p Preview the file |netrw-p| | |
1062 P Browse in the previously used window |netrw-P| | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1063 qb List bookmarked directories and history |netrw-qb| |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1064 qf Display information on file |netrw-qf| |
1621 | 1065 r Reverse sorting order |netrw-r| |
1066 R Rename the designed file(s)/directory(ies) |netrw-R| | |
1067 s Select sorting style: by name, time, or file size |netrw-s| | |
1068 S Specify suffix priority for name-sorting |netrw-S| | |
1069 t Enter the file/directory under the cursor in a new tab|netrw-t| | |
1070 u Change to recently-visited directory |netrw-u| | |
1071 U Change to subsequently-visited directory |netrw-U| | |
1072 v Enter the file/directory under the cursor in a new |netrw-v| | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1073 browser window. A vertical split is used. |
1621 | 1074 x View file with an associated program |netrw-x| |
3920 | 1075 X Execute filename under cursor via |system()| |netrw-X| |
1621 | 1076 |
1668 | 1077 % Open a new file in netrw's current directory |netrw-%| |
1078 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1079 *netrw-mouse* *netrw-leftmouse* *netrw-middlemouse* *netrw-rightmouse* |
1621 | 1080 <leftmouse> (gvim only) selects word under mouse as if a <cr> |
1081 had been pressed (ie. edit file, change directory) | |
1082 <middlemouse> (gvim only) same as P selecting word under mouse; | |
1083 see |netrw-P| | |
1084 <rightmouse> (gvim only) delete file/directory using word under | |
1085 mouse | |
1086 <2-leftmouse> (gvim only) when: | |
1087 * in a netrw-selected file, AND | |
1088 * |g:netrw_retmap| == 1 AND | |
1089 * the user doesn't already have a <2-leftmouse> mapping | |
1090 defined before netrw is autoloaded, | |
1091 then a double clicked leftmouse button will return | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1092 to the netrw browser window. See |g:netrw_retmap|. |
1621 | 1093 <s-leftmouse> (gvim only) like mf, will mark files |
1094 | |
2152 | 1095 (to disable mouse buttons while browsing: |g:netrw_mousemaps|) |
1096 | |
1621 | 1097 *netrw-quickcom* *netrw-quickcoms* |
1098 QUICK REFERENCE: COMMANDS *netrw-explore-cmds* *netrw-browse-cmds* {{{2 | |
1099 :NetrwClean[!] ...........................................|netrw-clean| | |
1100 :NetrwSettings ...........................................|netrw-settings| | |
1101 :Explore[!] [dir] Explore directory of current file......|netrw-explore| | |
1102 :Hexplore[!] [dir] Horizontal Split & Explore.............|netrw-explore| | |
1103 :Nexplore[!] [dir] Vertical Split & Explore...............|netrw-explore| | |
1104 :Pexplore[!] [dir] Vertical Split & Explore...............|netrw-explore| | |
1105 :Rexplore Return to Explorer.....................|netrw-explore| | |
1106 :Sexplore[!] [dir] Split & Explore directory .............|netrw-explore| | |
1107 :Texplore[!] [dir] Tab & Explore..........................|netrw-explore| | |
1108 :Vexplore[!] [dir] Vertical Split & Explore...............|netrw-explore| | |
1109 | |
1110 BOOKMARKING A DIRECTORY *netrw-mb* *netrw-bookmark* *netrw-bookmarks* {{{2 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1111 |
1621 | 1112 One may easily "bookmark" a directory by using > |
1113 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1114 mb |
839 | 1115 < |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1116 Bookmarks are retained in between sessions in a $HOME/.netrwbook file, and are |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1117 kept in sorted order. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1118 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1119 Related Topics: |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1120 |netrw-gb| how to return (go) to a bookmark |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1121 |netrw-mB| how to delete bookmarks |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1122 |netrw-qb| how to list bookmarks |
1621 | 1123 |
1124 | |
1125 BROWSING *netrw-cr* {{{2 | |
12 | 1126 |
9 | 1127 Browsing is simple: move the cursor onto a file or directory of interest. |
11 | 1128 Hitting the <cr> (the return key) will select the file or directory. |
1129 Directories will themselves be listed, and files will be opened using the | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1130 protocol given in the original read request. |
559 | 1131 |
1621 | 1132 CAVEAT: There are four forms of listing (see |netrw-i|). Netrw assumes that |
1133 two or more spaces delimit filenames and directory names for the long and | |
1134 wide listing formats. Thus, if your filename or directory name has two or | |
1135 more sequential spaces embedded in it, or any trailing spaces, then you'll | |
1136 need to use the "thin" format to select it. | |
519 | 1137 |
650 | 1138 The |g:netrw_browse_split| option, which is zero by default, may be used to |
1621 | 1139 cause the opening of files to be done in a new window or tab instead of the |
1140 default. When the option is one or two, the splitting will be taken | |
1141 horizontally or vertically, respectively. When the option is set to three, a | |
1142 <cr> will cause the file to appear in a new tab. | |
1143 | |
1144 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1145 When using the gui (gvim), one may select a file by pressing the <leftmouse> |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1146 button. In addition, if |
1621 | 1147 |
1148 *|g:netrw_retmap| == 1 AND (its default value is 0) | |
1149 * in a netrw-selected file, AND | |
1150 * the user doesn't already have a <2-leftmouse> mapping defined before | |
1151 netrw is loaded | |
1152 | |
1153 then a doubly-clicked leftmouse button will return to the netrw browser | |
1154 window. | |
1155 | |
1156 Netrw attempts to speed up browsing, especially for remote browsing where one | |
1157 may have to enter passwords, by keeping and re-using previously obtained | |
1158 directory listing buffers. The |g:netrw_fastbrowse| variable is used to | |
1159 control this behavior; one may have slow browsing (no buffer re-use), medium | |
1160 speed browsing (re-use directory buffer listings only for remote directories), | |
1161 and fast browsing (re-use directory buffer listings as often as possible). | |
1162 The price for such re-use is that when changes are made (such as new files | |
1163 are introduced into a directory), the listing may become out-of-date. One may | |
1164 always refresh directory listing buffers by pressing ctrl-L (see | |
1165 |netrw-ctrl-l|). | |
1166 | |
1167 | |
1168 Related topics: |netrw-o| |netrw-p| |netrw-P| |netrw-t| |netrw-v| | |
1169 Associated setting variables: |g:netrw_browse_split| |g:netrw_fastbrowse| | |
1170 |g:netrw_ftp_list_cmd| |g:netrw_ftp_sizelist_cmd| | |
1171 |g:netrw_ftp_timelist_cmd| |g:netrw_ssh_cmd| | |
1172 |g:netrw_ssh_browse_reject| |g:netrw_use_noswf| | |
1173 | |
1174 | |
1175 BROWSING WITH A HORIZONTALLY SPLIT WINDOW *netrw-o* *netrw-horiz* {{{2 | |
1176 | |
1177 Normally one enters a file or directory using the <cr>. However, the "o" map | |
1178 allows one to open a new window to hold the new directory listing or file. A | |
1179 horizontal split is used. (for vertical splitting, see |netrw-v|) | |
1180 | |
1181 Normally, the o key splits the window horizontally with the new window and | |
3153 | 1182 cursor at the top. |
1621 | 1183 |
1184 Associated setting variables: |g:netrw_alto| |g:netrw_winsize| | |
1185 | |
3153 | 1186 Related Actions |netrw-cr| |netrw-p| |netrw-t| |netrw-T| |netrw-v| |
1187 Associated setting variables: | |
1188 |g:netrw_alto| control above/below splitting | |
1189 |g:netrw_winsize| control initial sizing | |
1621 | 1190 |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1191 BROWSING WITH A NEW TAB *netrw-t* *netrw-T* {{{2 |
1621 | 1192 |
1193 Normally one enters a file or directory using the <cr>. The "t" map | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1194 allows one to open a new window holding the new directory listing or file in |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1195 a new tab. The "T" version puts the file or directory into a background tab |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1196 (see |gT|) |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1197 |
3153 | 1198 Related Actions |netrw-cr| |netrw-o| |netrw-p| |netrw-v| |
1199 Associated setting variables: | |
1200 |g:netrw_winsize| control initial sizing | |
1621 | 1201 |
1202 BROWSING WITH A VERTICALLY SPLIT WINDOW *netrw-v* {{{2 | |
1203 | |
1204 Normally one enters a file or directory using the <cr>. However, the "v" map | |
1205 allows one to open a new window to hold the new directory listing or file. A | |
1206 vertical split is used. (for horizontal splitting, see |netrw-o|) | |
1207 | |
1208 Normally, the v key splits the window vertically with the new window and | |
3153 | 1209 cursor at the left. |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1210 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1211 There is only one tree listing buffer; using "v" on a displayed subdirectory |
1621 | 1212 will split the screen, but the same buffer will be shown twice. |
1213 | |
1214 Associated setting variable: |g:netrw_altv| |g:netrw_winsize| | |
1215 | |
3153 | 1216 Related Actions |netrw-cr| |netrw-o| |netrw-t| |netrw-T| |netrw-v| |
1217 Associated setting variables: | |
1218 |g:netrw_altv| control right/left splitting | |
1219 |g:netrw_winsize| control initial sizing | |
1220 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1221 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1222 CHANGE LISTING STYLE (THIN LONG WIDE TREE) *netrw-i* {{{2 |
519 | 1223 |
1121 | 1224 The "i" map cycles between the thin, long, wide, and tree listing formats. |
12 | 1225 |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1226 The thin listing format gives just the files' and directories' names. |
519 | 1227 |
15 | 1228 The long listing is either based on the "ls" command via ssh for remote |
559 | 1229 directories or displays the filename, file size (in bytes), and the time and |
1230 date of last modification for local directories. With the long listing | |
1231 format, netrw is not able to recognize filenames which have trailing spaces. | |
1232 Use the thin listing format for such files. | |
519 | 1233 |
1121 | 1234 The wide listing format uses two or more contiguous spaces to delineate |
1235 filenames; when using that format, netrw won't be able to recognize or use | |
1236 filenames which have two or more contiguous spaces embedded in the name or any | |
1237 trailing spaces. The thin listing format will, however, work with such files. | |
1238 This listing format is the most compact. | |
1239 | |
1240 The tree listing format has a top directory followed by files and directories | |
1241 preceded by a "|". One may open and close directories by pressing the <cr> | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1242 key while atop the directory name. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1243 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1244 One may make a preferred listing style your default; see |g:netrw_liststyle|. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1245 As an example, by putting the following line in your .vimrc, > |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1246 let g:netrw_liststyle= 4 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1247 the tree style will become your default listing style. |
15 | 1248 |
3456 | 1249 One typical way to use the netrw tree display is to: > |
1250 | |
1251 vim . | |
1252 (use i until a tree display shows) | |
1253 navigate to a file | |
1254 v (edit as desired in vertically split window) | |
1255 ctrl-w h (to return to the netrw listing) | |
1256 P (edit newly selected file in the previous window) | |
1257 ctrl-w h (to return to the netrw listing) | |
1258 P (edit newly selected file in the previous window) | |
1259 ...etc... | |
1260 < | |
1621 | 1261 Associated setting variables: |g:netrw_liststyle| |g:netrw_maxfilenamelen| |
1262 |g:netrw_timefmt| |g:netrw_list_cmd| | |
1263 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1264 CHANGE FILE PERMISSION *netrw-gp* {{{2 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1265 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1266 "gp" will ask you for a new permission for the file named under the cursor. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1267 Currently, this only works for local files. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1268 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1269 Associated setting variables: |g:netrw_chgperm| |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1270 |
1621 | 1271 |
1272 CHANGING TO A BOOKMARKED DIRECTORY *netrw-gb* {{{2 | |
1273 | |
1274 To change directory back to a bookmarked directory, use | |
1275 | |
1276 {cnt}gb | |
1277 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1278 Any count may be used to reference any of the bookmarks. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1279 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1280 Related Topics: |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1281 |netrw-mB| how to delete bookmarks |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1282 |netrw-mb| how to make a bookmark |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1283 |netrw-qb| how to list bookmarks |
1621 | 1284 |
1285 | |
2152 | 1286 CHANGING TO A PREDECESSOR DIRECTORY *netrw-u* *netrw-updir* {{{2 |
36 | 1287 |
1288 Every time you change to a new directory (new for the current session), | |
1289 netrw will save the directory in a recently-visited directory history | |
2751 | 1290 list (unless |g:netrw_dirhistmax| is zero; by default, it's ten). With the |
36 | 1291 "u" map, one can change to an earlier directory (predecessor). To do |
1292 the opposite, see |netrw-U|. | |
1293 | |
1294 | |
1621 | 1295 CHANGING TO A SUCCESSOR DIRECTORY *netrw-U* *netrw-downdir* {{{2 |
36 | 1296 |
1297 With the "U" map, one can change to a later directory (successor). | |
1298 This map is the opposite of the "u" map. (see |netrw-u|) Use the | |
1621 | 1299 q map to list both the bookmarks and history. (see |netrw-qb|) |
1300 | |
1301 | |
1302 NETRW CLEAN *netrw-clean* *:NetrwClean* | |
1303 | |
1304 With :NetrwClean one may easily remove netrw from one's home directory; | |
1305 more precisely, from the first directory on your |'runtimepath'|. | |
1306 | |
1307 With :NetrwClean!, netrw will remove netrw from all directories on your | |
1308 |'runtimepath'|. | |
1309 | |
1310 With either form of the command, netrw will first ask for confirmation | |
1311 that the removal is in fact what you want to do. If netrw doesn't have | |
1312 permission to remove a file, it will issue an error message. | |
36 | 1313 |
1121 | 1314 *netrw-gx* |
1621 | 1315 CUSTOMIZING BROWSING WITH A USER FUNCTION *netrw-x* *netrw-handler* {{{2 |
1121 | 1316 (also see |netrw_filehandler|) |
650 | 1317 |
1318 Certain files, such as html, gif, jpeg, (word/office) doc, etc, files, are | |
1319 best seen with a special handler (ie. a tool provided with your computer). | |
1320 Netrw allows one to invoke such special handlers by: > | |
12 | 1321 |
650 | 1322 * when Exploring, hit the "x" key |
1323 * when editing, hit gx with the cursor atop the special filename | |
1121 | 1324 < (not available if the |g:netrw_nogx| variable exists) |
1325 | |
650 | 1326 Netrw determines which special handler by the following method: |
1327 | |
1328 * if |g:netrw_browsex_viewer| exists, then it will be used to attempt to | |
1329 view files. Examples of useful settings (place into your <.vimrc>): > | |
1330 | |
1331 :let g:netrw_browsex_viewer= "kfmclient exec" | |
1332 < or > | |
1333 :let g:netrw_browsex_viewer= "gnome-open" | |
1334 < | |
1335 If g:netrw_browsex_viewer == '-', then netrwFileHandler() will be | |
1336 invoked first (see |netrw_filehandler|). | |
12 | 1337 |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1338 * for Windows 32 or 64, the url and FileProtocolHandler dlls are used. |
650 | 1339 * for Gnome (with gnome-open): gnome-open is used. |
1621 | 1340 * for KDE (with kfmclient) : kfmclient is used. |
1341 * for Mac OS X : open is used. | |
559 | 1342 * otherwise the netrwFileHandler plugin is used. |
482 | 1343 |
1344 The file's suffix is used by these various approaches to determine an | |
559 | 1345 appropriate application to use to "handle" these files. Such things as |
1346 OpenOffice (*.sfx), visualization (*.jpg, *.gif, etc), and PostScript (*.ps, | |
1347 *.eps) can be handled. | |
482 | 1348 |
650 | 1349 *netrw_filehandler* |
1121 | 1350 |
1351 The "x" map applies a function to a file, based on its extension. Of course, | |
1352 the handler function must exist for it to be called! | |
12 | 1353 > |
1354 Ex. mypgm.html x -> | |
1121 | 1355 NFH_html("scp://user@host/some/path/mypgm.html") |
12 | 1356 < |
1121 | 1357 Users may write their own netrw File Handler functions to support more |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1358 suffixes with special handling. See <autoload/netrwFileHandlers.vim> for |
1121 | 1359 examples on how to make file handler functions. As an example: > |
12 | 1360 |
1121 | 1361 " NFH_suffix(filename) |
1362 fun! NFH_suffix(filename) | |
1363 ..do something special with filename.. | |
1364 endfun | |
1365 < | |
1366 These functions need to be defined in some file in your .vim/plugin | |
1367 (vimfiles\plugin) directory. Vim's function names may not have punctuation | |
1368 characters (except for the underscore) in them. To support suffices that | |
1369 contain such characters, netrw will first convert the suffix using the | |
1370 following table: > | |
650 | 1371 |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1372 @ -> AT ! -> EXCLAMATION % -> PERCENT |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1373 : -> COLON = -> EQUAL ? -> QUESTION |
1121 | 1374 , -> COMMA - -> MINUS ; -> SEMICOLON |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1375 $ -> DOLLAR + -> PLUS ~ -> TILDE |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1376 < |
1121 | 1377 So, for example: > |
650 | 1378 |
1121 | 1379 file.rcs,v -> NFH_rcsCOMMAv() |
1380 < | |
1381 If more such translations are necessary, please send me email: > | |
1382 NdrOchip at ScampbellPfamily.AbizM - NOSPAM | |
1383 with a request. | |
482 | 1384 |
1621 | 1385 Associated setting variable: |g:netrw_browsex_viewer| |
1386 | |
1387 *netrw-curdir* | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1388 DELETING BOOKMARKS *netrw-mB* {{{2 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1389 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1390 To delete a bookmark, use > |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1391 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1392 {cnt}mB |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1393 < |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1394 Related Topics: |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1395 |netrw-gb| how to return (go) to a bookmark |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1396 |netrw-mb| how to make a bookmark |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1397 |netrw-qb| how to list bookmarks |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1398 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1399 |
1621 | 1400 DELETING FILES OR DIRECTORIES *netrw-delete* *netrw-D* *netrw-del* {{{2 |
1401 | |
1402 If files have not been marked with |netrw-mf|: (local marked file list) | |
1403 | |
1404 Deleting/removing files and directories involves moving the cursor to the | |
1405 file/directory to be deleted and pressing "D". Directories must be empty | |
1406 first before they can be successfully removed. If the directory is a | |
1407 softlink to a directory, then netrw will make two requests to remove the | |
1408 directory before succeeding. Netrw will ask for confirmation before doing | |
1409 the removal(s). You may select a range of lines with the "V" command | |
1410 (visual selection), and then pressing "D". | |
1411 | |
1412 If files have been marked with |netrw-mf|: (local marked file list) | |
1413 | |
1414 Marked files (and empty directories) will be deleted; again, you'll be | |
1415 asked to confirm the deletion before it actually takes place. | |
1416 | |
1417 The |g:netrw_rm_cmd|, |g:netrw_rmf_cmd|, and |g:netrw_rmdir_cmd| variables are | |
1418 used to control the attempts to remove files and directories. The | |
1419 g:netrw_rm_cmd is used with files, and its default value is: | |
1420 | |
1421 g:netrw_rm_cmd: ssh HOSTNAME rm | |
1422 | |
1423 The g:netrw_rmdir_cmd variable is used to support the removal of directories. | |
1424 Its default value is: | |
1425 | |
1426 g:netrw_rmdir_cmd: ssh HOSTNAME rmdir | |
1427 | |
1428 If removing a directory fails with g:netrw_rmdir_cmd, netrw then will attempt | |
1429 to remove it again using the g:netrw_rmf_cmd variable. Its default value is: | |
1430 | |
1431 g:netrw_rmf_cmd: ssh HOSTNAME rm -f | |
1432 | |
3153 | 1433 Related topics: |netrw-d| |
3456 | 1434 Associated setting variable: |g:netrw_localrmdir| |g:netrw_rm_cmd| |
1621 | 1435 |g:netrw_rmdir_cmd| |g:netrw_ssh_cmd| |
1436 | |
1437 | |
1438 *netrw-explore* *netrw-hexplore* *netrw-nexplore* *netrw-pexplore* | |
1439 *netrw-rexplore* *netrw-sexplore* *netrw-texplore* *netrw-vexplore* | |
1440 DIRECTORY EXPLORATION COMMANDS {{{2 | |
1441 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1442 :[N]Explore[!] [dir]... Explore directory of current file *:Explore* |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1443 :[N]Hexplore[!] [dir]... Horizontal Split & Explore *:Hexplore* |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1444 :Rexplore ... Return to Explorer *:Rexplore* |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1445 :[N]Sexplore[!] [dir]... Split&Explore current file's directory *:Sexplore* |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1446 :Texplore [dir]... Tab & Explore *:Texplore* |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1447 :[N]Vexplore[!] [dir]... Vertical Split & Explore *:Vexplore* |
1621 | 1448 |
1449 Used with :Explore **/pattern : (also see |netrw-starstar|) | |
1450 :Nexplore............. go to next matching file *:Nexplore* | |
1451 :Pexplore............. go to previous matching file *:Pexplore* | |
1452 | |
1453 :Explore will open the local-directory browser on the current file's | |
1454 directory (or on directory [dir] if specified). The window will be | |
1455 split only if the file has been modified, otherwise the browsing | |
1456 window will take over that window. Normally the splitting is taken | |
1457 horizontally. | |
1458 :Explore! is like :Explore, but will use vertical splitting. | |
1459 :Sexplore will always split the window before invoking the local-directory | |
1460 browser. As with Explore, the splitting is normally done | |
1461 horizontally. | |
1462 :Sexplore! [dir] is like :Sexplore, but the splitting will be done vertically. | |
1463 :Hexplore [dir] does an :Explore with |:belowright| horizontal splitting. | |
1464 :Hexplore! [dir] does an :Explore with |:aboveleft| horizontal splitting. | |
1465 :Vexplore [dir] does an :Explore with |:leftabove| vertical splitting. | |
1466 :Vexplore! [dir] does an :Explore with |:rightbelow| vertical splitting. | |
1467 :Texplore [dir] does a tabnew before generating the browser window | |
1468 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1469 By default, these commands use the current file's directory. However, one may |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1470 explicitly provide a directory (path) to use. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1471 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1472 The [N] will override |g:netrw_winsize| to specify the quantity of rows and/or |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1473 columns the new explorer window should have. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1474 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1475 Otherwise, the |g:netrw_winsize| variable, if it has been specified by the |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1476 user, is used to control the quantity of rows and/or columns new explorer |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1477 windows should have. |
1621 | 1478 |
1479 :Rexplore This command is a little different from the others. When one | |
1480 edits a file, for example by pressing <cr> when atop a file in | |
1481 a netrw browser window, :Rexplore will return the display to | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1482 that of the last netrw browser window. It is a command version |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1483 of the <2-leftmouse> map (which is only available under gvim and |
1621 | 1484 cooperative terms). |
1485 | |
1486 | |
1487 *netrw-star* *netrw-starpat* *netrw-starstar* *netrw-starstarpat* | |
1488 EXPLORING WITH STARS AND PATTERNS | |
1489 | |
1490 When Explore, Sexplore, Hexplore, or Vexplore are used with one of the | |
1491 following four styles, Explore generates a list of files which satisfy | |
1492 the request. > | |
1493 | |
1494 */filepat files in current directory which satisfy filepat | |
1495 **/filepat files in current directory or below which satisfy the | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1496 file pattern |
1621 | 1497 *//pattern files in the current directory which contain the |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1498 pattern (vimgrep is used) |
1621 | 1499 **//pattern files in the current directory or below which contain |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1500 the pattern (vimgrep is used) |
464 | 1501 < |
1621 | 1502 The cursor will be placed on the first file in the list. One may then |
1503 continue to go to subsequent files on that list via |:Nexplore| or to | |
1504 preceding files on that list with |:Pexplore|. Explore will update the | |
1505 directory and place the cursor appropriately. | |
1506 | |
1507 A plain > | |
1508 :Explore | |
1509 will clear the explore list. | |
1510 | |
1511 If your console or gui produces recognizable shift-up or shift-down sequences, | |
1512 then you'll likely find using shift-downarrow and shift-uparrow convenient. | |
1513 They're mapped by netrw: | |
1514 | |
1515 <s-down> == Nexplore, and | |
1516 <s-up> == Pexplore. | |
1517 | |
1518 As an example, consider | |
1519 > | |
1520 :Explore */*.c | |
1521 :Nexplore | |
1522 :Nexplore | |
1523 :Pexplore | |
1524 < | |
1525 The status line will show, on the right hand side of the status line, a | |
1526 message like "Match 3 of 20". | |
1527 | |
1528 Associated setting variables: |g:netrw_keepdir| |g:netrw_browse_split| | |
1529 |g:netrw_fastbrowse| |g:netrw_ftp_browse_reject| | |
1530 |g:netrw_ftp_list_cmd| |g:netrw_ftp_sizelist_cmd| | |
1531 |g:netrw_ftp_timelist_cmd| |g:netrw_list_cmd| | |
1532 |g:netrw_liststyle| | |
1533 | |
1534 | |
1535 DISPLAYING INFORMATION ABOUT FILE *netrw-qf* {{{2 | |
1536 | |
1537 With the cursor atop a filename, pressing "qf" will reveal the file's size | |
1538 and last modification timestamp. Currently this capability is only available | |
1539 for local files. | |
1540 | |
1541 | |
1542 EDIT FILE OR DIRECTORY HIDING LIST *netrw-ctrl-h* *netrw-edithide* {{{2 | |
1543 | |
1544 The "<ctrl-h>" map brings up a requestor allowing the user to change the | |
1545 file/directory hiding list contained in |g:netrw_list_hide|. The hiding list | |
1546 consists of one or more patterns delimited by commas. Files and/or | |
1547 directories satisfying these patterns will either be hidden (ie. not shown) or | |
1548 be the only ones displayed (see |netrw-a|). | |
1549 | |
1550 The "gh" mapping (see |netrw-gh|) quickly alternates between the usual | |
1551 hiding list and the hiding of files or directories that begin with ".". | |
1552 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1553 As an example, > |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1554 let g:netrw_list_hide= '\(^\|\s\s\)\zs\.\S\+' |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1555 Effectively, this makes the effect of a |netrw-gh| command the initial setting. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1556 What it means: |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1557 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1558 \(^\|\s\s\) : if the line begins with the following, -or- |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1559 two consecutive spaces are encountered |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1560 \zs : start the hiding match now |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1561 \. : if it now begins with a dot |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1562 \S\+ : and is followed by one or more non-whitespace |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1563 characters |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1564 |
1621 | 1565 Associated setting variables: |g:netrw_hide| |g:netrw_list_hide| |
1566 Associated topics: |netrw-a| |netrw-gh| |netrw-mh| | |
1567 | |
3153 | 1568 *netrw-sort-sequence* |
1621 | 1569 EDITING THE SORTING SEQUENCE *netrw-S* *netrw-sortsequence* {{{2 |
1570 | |
1571 When "Sorted by" is name, one may specify priority via the sorting sequence | |
1572 (g:netrw_sort_sequence). The sorting sequence typically prioritizes the | |
1573 name-listing by suffix, although any pattern will do. Patterns are delimited | |
1574 by commas. The default sorting sequence is (all one line): | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1575 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1576 For Unix: > |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1577 '[\/]$,\<core\%(\.\d\+\)\=,\.[a-np-z]$,\.h$,\.c$,\.cpp$,*,\.o$,\.obj$, |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1578 \.info$,\.swp$,\.bak$,\~$' |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1579 < |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1580 Otherwise: > |
1621 | 1581 '[\/]$,\.[a-np-z]$,\.h$,\.c$,\.cpp$,*,\.o$,\.obj$,\.info$, |
1582 \.swp$,\.bak$,\~$' | |
1583 < | |
1584 The lone * is where all filenames not covered by one of the other patterns | |
1585 will end up. One may change the sorting sequence by modifying the | |
1586 g:netrw_sort_sequence variable (either manually or in your <.vimrc>) or by | |
1587 using the "S" map. | |
1588 | |
1668 | 1589 Related topics: |netrw-s| |netrw-S| |
1590 Associated setting variables: |g:netrw_sort_sequence| |g:netrw_sort_options| | |
1621 | 1591 |
1592 | |
3920 | 1593 EXECUTING FILE UNDER CURSOR VIA SYSTEM() *netrw-X* |
1594 | |
1595 Pressing X while the cursor is atop an executable file will yield a prompt | |
1596 using the filename asking for any arguments. Upon pressing a [return], netrw | |
1597 will then call |system()| with that command and arguments. The result will | |
1598 be displayed by |:echomsg|, and so |:messages| will repeat display of the | |
1599 result. Ansi escape sequences will be stripped out. | |
1600 | |
1601 | |
2751 | 1602 FORCING TREATMENT AS A FILE OR DIRECTORY *netrw-gd* *netrw-gf* {{{2 |
1603 | |
1604 Remote symbolic links (ie. those listed via ssh or ftp) are problematic | |
1605 in that it is difficult to tell whether they link to a file or to a | |
1606 directory. | |
1607 | |
1608 To force treatment as a file: use > | |
3920 | 1609 gf |
2751 | 1610 < |
1611 To force treatment as a directory: use > | |
3920 | 1612 gd |
2751 | 1613 < |
1614 | |
1621 | 1615 GOING UP *netrw--* {{{2 |
1616 | |
1617 To go up a directory, press "-" or press the <cr> when atop the ../ directory | |
1618 entry in the listing. | |
1619 | |
1620 Netrw will use the command in |g:netrw_list_cmd| to perform the directory | |
1621 listing operation after changing HOSTNAME to the host specified by the | |
1622 user-provided url. By default netrw provides the command as: | |
1623 | |
1624 ssh HOSTNAME ls -FLa | |
1625 | |
1626 where the HOSTNAME becomes the [user@]hostname as requested by the attempt to | |
1627 read. Naturally, the user may override this command with whatever is | |
1628 preferred. The NetList function which implements remote browsing | |
1629 expects that directories will be flagged by a trailing slash. | |
1630 | |
1631 | |
1632 HIDING FILES OR DIRECTORIES *netrw-a* *netrw-hiding* {{{2 | |
1633 | |
1634 Netrw's browsing facility allows one to use the hiding list in one of three | |
1635 ways: ignore it, hide files which match, and show only those files which | |
1636 match. | |
1637 | |
1638 If no files have been marked via |netrw-mf|: | |
1639 | |
1640 The "a" map allows the user to cycle through the three hiding modes. | |
1641 | |
1642 The |g:netrw_list_hide| variable holds a comma delimited list of patterns | |
1643 based on regular expressions (ex. ^.*\.obj$,^\.) which specify the hiding list. | |
1644 (also see |netrw-ctrl-h|) To set the hiding list, use the <c-h> map. As an | |
1645 example, to hide files which begin with a ".", one may use the <c-h> map to | |
1646 set the hiding list to '^\..*' (or one may put let g:netrw_list_hide= '^\..*' | |
1647 in one's <.vimrc>). One may then use the "a" key to show all files, hide | |
1648 matching files, or to show only the matching files. | |
1649 | |
1650 Example: \.[ch]$ | |
1651 This hiding list command will hide/show all *.c and *.h files. | |
1652 | |
1653 Example: \.c$,\.h$ | |
1654 This hiding list command will also hide/show all *.c and *.h | |
1655 files. | |
1656 | |
1657 Don't forget to use the "a" map to select the mode (normal/hiding/show) you | |
1658 want! | |
1659 | |
1660 If files have been marked using |netrw-mf|, then this command will: | |
1661 | |
1662 if showing all files or non-hidden files: | |
1663 modify the g:netrw_list_hide list by appending the marked files to it | |
1664 and showing only non-hidden files. | |
1665 | |
1666 else if showing hidden files only: | |
1667 modify the g:netrw_list_hide list by removing the marked files from it | |
1668 and showing only non-hidden files. | |
1669 endif | |
1670 | |
1671 *netrw-gh* *netrw-hide* | |
1672 As a quick shortcut, one may press > | |
1673 gh | |
1674 to toggle between hiding files which begin with a period (dot) and not hiding | |
1675 them. | |
1676 | |
1677 Associated setting variable: |g:netrw_list_hide| | |
1678 Associated topics: |netrw-a| |netrw-ctrl-h| |netrw-mh| | |
1679 | |
1680 IMPROVING BROWSING *netrw-listhack* *netrw-ssh-hack* {{{2 | |
12 | 1681 |
1682 Especially with the remote directory browser, constantly entering the password | |
1683 is tedious. | |
1684 | |
1121 | 1685 For Linux/Unix systems, the book "Linux Server Hacks - 100 industrial strength |
1209 | 1686 tips & tools" by Rob Flickenger (O'Reilly, ISBN 0-596-00461-3) gives a tip |
1687 for setting up no-password ssh and scp and discusses associated security | |
1121 | 1688 issues. It used to be available at http://hacks.oreilly.com/pub/h/66 , |
1689 but apparently that address is now being redirected to some "hackzine". | |
1698 | 1690 I'll attempt a summary based on that article and on a communication from |
1691 Ben Schmidt: | |
1692 | |
1693 1. Generate a public/private key pair on the local machine | |
1694 (ssh client): > | |
1695 ssh-keygen -t rsa | |
1696 (saving the file in ~/.ssh/id_rsa as prompted) | |
1697 < | |
1698 2. Just hit the <CR> when asked for passphrase (twice) for no | |
1699 passphrase. If you do use a passphrase, you will also need to use | |
1700 ssh-agent so you only have to type the passphrase once per session. | |
1701 If you don't use a passphrase, simply logging onto your local | |
1702 computer or getting access to the keyfile in any way will suffice | |
1703 to access any ssh servers which have that key authorized for login. | |
1704 | |
1705 3. This creates two files: > | |
1706 ~/.ssh/id_rsa | |
1707 ~/.ssh/id_rsa.pub | |
1708 < | |
1709 4. On the target machine (ssh server): > | |
1710 cd | |
1711 mkdir -p .ssh | |
1712 chmod 0700 .ssh | |
1713 < | |
1714 5. On your local machine (ssh client): (one line) > | |
1715 ssh {serverhostname} | |
1716 cat '>>' '~/.ssh/authorized_keys2' < ~/.ssh/id_rsa.pub | |
1717 < | |
1718 or, for OpenSSH, (one line) > | |
1719 ssh {serverhostname} | |
1720 cat '>>' '~/.ssh/authorized_keys' < ~/.ssh/id_rsa.pub | |
1721 < | |
1722 You can test it out with > | |
1723 ssh {serverhostname} | |
1724 and you should be log onto the server machine without further need to type | |
1725 anything. | |
1726 | |
1727 If you decided to use a passphrase, do: > | |
1728 ssh-agent $SHELL | |
1729 ssh-add | |
1730 ssh {serverhostname} | |
1731 You will be prompted for your key passphrase when you use ssh-add, but not | |
1732 subsequently when you use ssh. For use with vim, you can use > | |
1733 ssh-agent vim | |
1734 and, when next within vim, use > | |
1735 :!ssh-add | |
1736 Alternatively, you can apply ssh-agent to the terminal you're planning on | |
1737 running vim in: > | |
1738 ssh-agent xterm & | |
1739 and do ssh-add whenever you need. | |
9 | 1740 |
1121 | 1741 For Windows, folks on the vim mailing list have mentioned that Pageant helps |
1742 with avoiding the constant need to enter the password. | |
794 | 1743 |
1621 | 1744 Kingston Fung wrote about another way to avoid constantly needing to enter |
1745 passwords: | |
1746 | |
1747 In order to avoid the need to type in the password for scp each time, you | |
1748 provide a hack in the docs to set up a non password ssh account. I found a | |
1749 better way to do that: I can use a regular ssh account which uses a | |
1750 password to access the material without the need to key-in the password | |
1751 each time. It's good for security and convenience. I tried ssh public key | |
1752 authorization + ssh-agent, implementing this, and it works! Here are two | |
1753 links with instructions: | |
1754 | |
1755 http://www.ibm.com/developerworks/library/l-keyc2/ | |
1756 http://sial.org/howto/openssh/publickey-auth/ | |
1757 | |
1758 | |
1759 LISTING BOOKMARKS AND HISTORY *netrw-qb* *netrw-listbookmark* {{{2 | |
1760 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1761 Pressing "qb" (query bookmarks) will list both the bookmarked directories and |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1762 directory traversal history. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1763 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1764 Related Topics: |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1765 |netrw-gb| how to return (go) to a bookmark |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1766 |netrw-mb| how to make a bookmark |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1767 |netrw-mB| how to delete bookmarks |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1768 |netrw-u| change to a predecessor directory via the history stack |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1769 |netrw-U| change to a successor directory via the history stack |
1621 | 1770 |
1771 MAKING A NEW DIRECTORY *netrw-d* {{{2 | |
1772 | |
1773 With the "d" map one may make a new directory either remotely (which depends | |
1774 on the global variable g:netrw_mkdir_cmd) or locally (which depends on the | |
3456 | 1775 global variable g:netrw_localmkdir). Netrw will issue a request for the new |
1621 | 1776 directory's name. A bare <CR> at that point will abort the making of the |
1777 directory. Attempts to make a local directory that already exists (as either | |
1778 a file or a directory) will be detected, reported on, and ignored. | |
1779 | |
3153 | 1780 Related topics: |netrw-D| |
3456 | 1781 Associated setting variables: |g:netrw_localmkdir| |g:netrw_mkdir_cmd| |
3153 | 1782 |g:netrw_remote_mkdir| |
1621 | 1783 |
1784 | |
1785 MAKING THE BROWSING DIRECTORY THE CURRENT DIRECTORY *netrw-c* {{{2 | |
1786 | |
1787 By default, |g:netrw_keepdir| is 1. This setting means that the current | |
1788 directory will not track the browsing directory. | |
1789 | |
1790 Setting g:netrw_keepdir to 0 tells netrw to make vim's current directory to | |
1791 track netrw's browsing directory. | |
1792 | |
1793 However, given the default setting for g:netrw_keepdir of 1 where netrw | |
1794 maintains its own separate notion of the current directory, in order to make | |
1795 the two directories the same, use the "c" map (just type c). That map will | |
1796 set Vim's notion of the current directory to netrw's current browsing | |
1797 directory. | |
1798 | |
1799 Associated setting variable: |g:netrw_keepdir| | |
1800 | |
1801 MARKING FILES *netrw-mf* {{{2 | |
1802 (also see |netrw-mr|) | |
1803 | |
1804 One may mark files with the cursor atop a filename and then pressing "mf". | |
1805 With gvim, one may also mark files with <s-leftmouse>. The following netrw | |
1806 maps make use of marked files: | |
1807 | |
1808 |netrw-a| Hide marked files/directories | |
1809 |netrw-D| Delete marked files/directories | |
1810 |netrw-mc| Copy marked files to target | |
1811 |netrw-md| Apply vimdiff to marked files | |
1812 |netrw-me| Edit marked files | |
1813 |netrw-mg| Apply vimgrep to marked files | |
1814 |netrw-mm| Move marked files | |
1815 |netrw-mp| Print marked files | |
1816 |netrw-mt| Set target for |netrw-mm| and |netrw-mc| | |
1817 |netrw-mT| Generate tags using marked files | |
1818 |netrw-mx| Apply shell command to marked files | |
1819 |netrw-mz| Compress/Decompress marked files | |
1820 |netrw-O| Obtain marked files | |
1821 |netrw-R| Rename marked files | |
1822 | |
1823 One may unmark files one at a time the same way one marks them; ie. place | |
1824 the cursor atop a marked file and press "mf". This process also works | |
1825 with <s-leftmouse> using gvim. One may unmark all files by pressing | |
1826 "mu" (see |netrw-mu|). | |
1827 | |
2751 | 1828 Marked files are highlighted using the "netrwMarkFile" highlighting group, |
1829 which by default is linked to "Identifier" (see Identifier under | |
1830 |group-name|). You may change the highlighting group by putting something | |
1831 like > | |
1832 | |
1833 highlight clear netrwMarkFile | |
1834 hi link netrwMarkFile ..whatever.. | |
1835 < | |
1836 into $HOME/.vim/after/syntax/netrw.vim . | |
1837 | |
1621 | 1838 *markfilelist* *global_markfilelist* *local_markfilelist* |
1839 All marked files are entered onto the global marked file list; there is only | |
1840 one such list. In addition, every netrw buffer also has its own local marked | |
1841 file list; since netrw buffers are associated with specific directories, this | |
1842 means that each directory has its own local marked file list. The various | |
1843 commands which operate on marked files use one or the other of the marked file | |
1844 lists. | |
1845 | |
1846 | |
1847 MARKING FILES BY REGULAR EXPRESSION *netrw-mr* {{{2 | |
1848 (also see |netrw-mf|) | |
1849 | |
1850 One may also mark files by pressing "mr"; netrw will then issue a prompt, | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1851 "Enter regexp: ". You may then enter a shell-style regular expression such |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1852 as *.c$ (see |glob()|). For remote systems, glob() doesn't work -- so netrw |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1853 converts "*" into ".*" (see |regexp|) and marks files based on that. In the |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1854 future I may make it possible to use |regexp|s instead of glob()-style |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1855 expressions (yet-another-option). |
1621 | 1856 |
1857 | |
1858 MARKED FILES: ARBITRARY COMMAND *netrw-mx* {{{2 | |
1859 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
1860 (uses the local marked-file list) | |
1861 | |
1862 Upon activation of the "mx" map, netrw will query the user for some (external) | |
1863 command to be applied to all marked files. All "%"s in the command will be | |
1864 substituted with the name of each marked file in turn. If no "%"s are in the | |
1865 command, then the command will be followed by a space and a marked filename. | |
1866 | |
1867 | |
1868 MARKED FILES: COMPRESSION AND DECOMPRESSION *netrw-mz* {{{2 | |
1869 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
1870 (uses the local marked file list) | |
1871 | |
1872 If any marked files are compressed, then "mz" will decompress them. | |
1873 If any marked files are decompressed, then "mz" will compress them | |
1874 using the command specified by |g:netrw_compress|; by default, | |
1875 that's "gzip". | |
1876 | |
1877 For decompression, netrw provides a |Dictionary| of suffices and their | |
1878 associated decompressing utilities; see |g:netrw_decompress|. | |
1879 | |
1880 Associated setting variables: |g:netrw_compress| |g:netrw_decompress| | |
1881 | |
1882 MARKED FILES: COPYING *netrw-mc* {{{2 | |
1883 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
1884 (Uses the global marked file list) | |
1885 | |
1886 Select a target directory with mt (|netrw-mt|). Then change directory, | |
2751 | 1887 select file(s) (see |netrw-mf|), and press "mc". The copy is done |
1888 from the current window (where one does the mf) to the target. | |
1621 | 1889 |
1890 Associated setting variable: |g:netrw_localcopycmd| |g:netrw_ssh_cmd| | |
1891 | |
1892 MARKED FILES: DIFF *netrw-md* {{{2 | |
1893 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
1894 (uses the global marked file list) | |
1895 | |
1896 Use |vimdiff| to visualize difference between selected files (two or | |
1897 three may be selected for this). Uses the global marked file list. | |
1898 | |
1899 MARKED FILES: EDITING *netrw-me* {{{2 | |
1900 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
1901 (uses the global marked file list) | |
1902 | |
1903 This command will place the marked files on the |arglist| and commence | |
1904 editing them. One may return the to explorer window with |:Rexplore|. | |
1905 | |
1906 MARKED FILES: GREP *netrw-mg* {{{2 | |
1907 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
1908 (uses the global marked file list) | |
1909 | |
1910 This command will apply |:vimgrep| to the marked files. The command will ask | |
1911 for the requested pattern; one may enter: > | |
1912 /pattern/[g][j] | |
1913 ! /pattern/[g][j] | |
1914 pattern | |
1915 < | |
1916 MARKED FILES: HIDING AND UNHIDING BY SUFFIX *netrw-mh* {{{2 | |
1917 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
1918 (uses the local marked file list) | |
1919 | |
1920 This command extracts the suffices of the marked files and toggles their | |
1921 presence on the hiding list. Please note that marking the same suffix | |
1922 this way multiple times will result in the suffix's presence being toggled | |
1923 for each file (so an even quantity of marked files having the same suffix | |
1924 is the same as not having bothered to select them at all). | |
1925 | |
1926 Related topics: |netrw-a| |g:netrw_list_hide| | |
1927 | |
1928 MARKED FILES: MOVING *netrw-mm* {{{2 | |
1929 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
1930 (uses the global marked file list) | |
1931 | |
1698 | 1932 WARNING: moving files is more dangerous than copying them. |
1933 A file being moved is first copied and then deleted; if the | |
1934 copy operation fails and the delete succeeds, you will lose | |
1935 the file. Either try things out with unimportant files | |
1936 first or do the copy and then delete yourself using mc and D. | |
1937 Use at your own risk! | |
1938 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1939 Select a target directory with mt (|netrw-mt|). Then change directory, |
2751 | 1940 select file(s) (see |netrw-mf|), and press "mm". The move is done |
1941 from the current window (where one does the mf) to the target. | |
1621 | 1942 |
1943 Associated setting variable: |g:netrw_localmovecmd| |g:netrw_ssh_cmd| | |
1944 | |
1945 MARKED FILES: PRINTING *netrw-mp* {{{2 | |
1946 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
1947 (uses the local marked file list) | |
1948 | |
1949 Netrw will apply the |:hardcopy| command to marked files. What it does | |
1950 is open each file in a one-line window, execute hardcopy, then close the | |
1951 one-line window. | |
1952 | |
1953 | |
1954 MARKED FILES: SOURCING *netrw-ms* {{{2 | |
1955 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
1956 (uses the local marked file list) | |
1957 | |
1958 Netrw will source the marked files (using vim's |:source| command) | |
1959 | |
1960 | |
1961 MARKED FILES: TAGGING *netrw-mT* {{{2 | |
1962 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
1963 (uses the global marked file list) | |
1964 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
1965 The "mT" mapping will apply the command in |g:netrw_ctags| (by default, it is |
1621 | 1966 "ctags") to marked files. For remote browsing, in order to create a tags file |
1967 netrw will use ssh (see |g:netrw_ssh_cmd|), and so ssh must be available for | |
1968 this to work on remote systems. For your local system, see |ctags| on how to | |
1969 get a version. I myself use hdrtags, currently available at | |
3920 | 1970 http://www.drchip.org/astronaut/src/index.html , and have > |
1621 | 1971 |
1972 let g:netrw_ctags= "hdrtag" | |
1973 < | |
1974 in my <.vimrc>. | |
1975 | |
1976 When a remote set of files are tagged, the resulting tags file is "obtained"; | |
1977 ie. a copy is transferred to the local system's directory. The local tags | |
1978 file is then modified so that one may use it through the network. The | |
1979 modification is concerns the names of the files in the tags; each filename is | |
1980 preceded by the netrw-compatible url used to obtain it. When one subsequently | |
1981 uses one of the go to tag actions (|tags|), the url will be used by netrw to | |
1982 edit the desired file and go to the tag. | |
1983 | |
1668 | 1984 Associated setting variables: |g:netrw_ctags| |g:netrw_ssh_cmd| |
1621 | 1985 |
1986 | |
1987 MARKED FILES: SETTING THE TARGET DIRECTORY *netrw-mt* {{{2 | |
1988 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
1989 | |
1990 Set the marked file copy/move-to target (see |netrw-mc| and |netrw-mm|): | |
1991 | |
1992 * if the cursor is atop a file name, then the netrw window's currently | |
1993 displayed directory is used for the copy/move-to target. | |
1994 | |
1995 * also, if the cursor is in the banner, then the netrw window's currently | |
1996 displayed directory is used for the copy/move-to target. | |
1997 | |
1998 * however, if the cursor is atop a directory name, then that directory is | |
1999 used for the copy/move-to target | |
2000 | |
2001 There is only one copy/move-to target per vim session; ie. the target is a | |
2002 script variable (see |s:var|) and is shared between all netrw windows (in an | |
2003 instance of vim). | |
2004 | |
2005 MARKED FILES: UNMARKING *netrw-mu* {{{2 | |
2006 (See |netrw-mf| and |netrw-mr| for how to mark files) | |
2007 | |
2008 The "mu" mapping will unmark all currently marked files. | |
2009 | |
3153 | 2010 *netrw-browser-settings* |
1621 | 2011 NETRW BROWSER VARIABLES *netrw-browser-options* *netrw-browser-var* {{{2 |
2012 | |
3153 | 2013 (if you're interested in the netrw file transfer settings, see |netrw-options| |
2014 and |netrw-protocol|) | |
1621 | 2015 |
2016 The <netrw.vim> browser provides settings in the form of variables which | |
2017 you may modify; by placing these settings in your <.vimrc>, you may customize | |
2018 your browsing preferences. (see also: |netrw-settings|) | |
2019 > | |
2020 --- ----------- | |
2021 Var Explanation | |
2022 --- ----------- | |
2751 | 2023 < *g:netrw_alto* change from above splitting to below splitting |
1621 | 2024 by setting this variable (see |netrw-o|) |
2025 default: =&sb (see |'sb'|) | |
2026 | |
2751 | 2027 *g:netrw_altv* change from left splitting to right splitting |
1621 | 2028 by setting this variable (see |netrw-v|) |
2029 default: =&spr (see |'spr'|) | |
2030 | |
2751 | 2031 *g:netrw_banner* enable/suppress the banner |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2032 =0: suppress the banner |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2033 =1: banner is enabled (default) |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2034 NOTE: suppressing the banner is a new feature |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2035 which may cause problems. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2036 |
2751 | 2037 *g:netrw_browse_split* when browsing, <cr> will open the file by: |
1621 | 2038 =0: re-using the same window |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2039 =1: horizontally splitting the window first |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2040 =2: vertically splitting the window first |
1621 | 2041 =3: open file in new tab |
2042 =4: act like "P" (ie. open previous window) | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2043 Note that |g:netrw_preview| may be used |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2044 to get vertical splitting instead of |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2045 horizontal splitting. |
1621 | 2046 |
2751 | 2047 *g:netrw_browsex_viewer* specify user's preference for a viewer: > |
1621 | 2048 "kfmclient exec" |
2049 "gnome-open" | |
2050 < If > | |
2051 "-" | |
2052 < is used, then netrwFileHandler() will look for | |
2053 a script/function to handle the given | |
2054 extension. (see |netrw_filehandler|). | |
2055 | |
2751 | 2056 *g:netrw_chgperm* Unix/Linux: "chmod PERM FILENAME" |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2057 Windows: "cacls FILENAME /e /p PERM" |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2058 Used to change access permission for a file. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2059 |
2751 | 2060 *g:netrw_compress* ="gzip" |
1621 | 2061 Will compress marked files with this |
2062 command | |
2063 | |
3153 | 2064 *g:Netrw_corehandler* Allows one to specify something additional |
2065 to do when handling <core> files via netrw's | |
2066 browser's "x" command (see |netrw-x|). If | |
2067 present, g:Netrw_corehandler specifies | |
2068 either one or more function references | |
2069 (see |Funcref|). (the capital g:Netrw... | |
2070 is required its holding a function reference) | |
2071 | |
2072 | |
2751 | 2073 *g:netrw_ctags* ="ctags" |
1668 | 2074 The default external program used to create tags |
2075 | |
2751 | 2076 *g:netrw_cursor* = 2 (default) |
2077 This option controls the use of the | |
2078 |'cursorline'| (cul) and |'cursorcolumn'| | |
2079 (cuc) settings by netrw: | |
2080 | |
2081 Value Thin-Long-Tree Wide | |
2082 =0 u-cul u-cuc u-cul u-cuc | |
2083 =1 u-cul u-cuc cul u-cuc | |
2084 =2 cul u-cuc cul u-cuc | |
2085 =3 cul u-cuc cul cuc | |
2086 =4 cul cuc cul cuc | |
2087 | |
2088 Where | |
2089 u-cul : user's |'cursorline'| setting used | |
2090 u-cuc : user's |'cursorcolumn'| setting used | |
2091 cul : |'cursorline'| locally set | |
2092 cuc : |'cursorcolumn'| locally set | |
2093 | |
2094 *g:netrw_decompress* = { ".gz" : "gunzip" , | |
1621 | 2095 ".bz2" : "bunzip2" , |
2096 ".zip" : "unzip" , | |
2097 ".tar" : "tar -xf"} | |
2098 A dictionary mapping suffices to | |
2099 decompression programs. | |
2100 | |
2751 | 2101 *g:netrw_dirhistmax* =10: controls maximum quantity of past |
2102 history. May be zero to supppress | |
2103 history. | |
2104 (related: |netrw-qb| |netrw-u| |netrw-U|) | |
2105 | |
3920 | 2106 *g:netrw_dynamic_maxfilenamelen* =32: enables dynamic determination of |
2107 |g:netrw_maxfilenamelen|, which affects | |
2108 local file long listing. | |
3456 | 2109 *g:netrw_errorlvl* =0: error levels greater than or equal to |
2110 this are permitted to be displayed | |
2111 0: notes | |
2112 1: warnings | |
2113 2: errors | |
2114 | |
2751 | 2115 *g:netrw_fastbrowse* =0: slow speed directory browsing; |
1621 | 2116 never re-uses directory listings, |
2117 always obtains directory listings. | |
2118 =1: medium speed directory browsing; | |
2119 re-use directory listings only | |
2120 when remote directory browsing. | |
2121 (default value) | |
2122 =2: fast directory browsing; | |
2123 only obtains directory listings when the | |
2124 directory hasn't been seen before | |
2125 (or |netrw-ctrl-l| is used). | |
2126 | |
2127 Fast browsing retains old directory listing | |
2128 buffers so that they don't need to be | |
2129 re-acquired. This feature is especially | |
2130 important for remote browsing. However, if | |
2131 a file is introduced or deleted into or from | |
2132 such directories, the old directory buffer | |
2133 becomes out-of-date. One may always refresh | |
2134 such a directory listing with |netrw-ctrl-l|. | |
2135 This option gives the user the choice of | |
2136 trading off accuracy (ie. up-to-date listing) | |
2137 versus speed. | |
2138 | |
2751 | 2139 *g:netrw_fname_escape* =' ?&;%' |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2140 Used on filenames before remote reading/writing |
1621 | 2141 |
2751 | 2142 *g:netrw_ftp_browse_reject* ftp can produce a number of errors and warnings |
1621 | 2143 that can show up as "directories" and "files" |
2144 in the listing. This pattern is used to | |
2145 remove such embedded messages. By default its | |
2146 value is: | |
2147 '^total\s\+\d\+$\| | |
2148 ^Trying\s\+\d\+.*$\| | |
2149 ^KERBEROS_V\d rejected\| | |
2150 ^Security extensions not\| | |
2151 No such file\| | |
2152 : connect to address [0-9a-fA-F:]* | |
2153 : No route to host$' | |
2154 | |
2751 | 2155 *g:netrw_ftp_list_cmd* options for passing along to ftp for directory |
1621 | 2156 listing. Defaults: |
2157 unix or g:netrw_cygwin set: : "ls -lF" | |
2158 otherwise "dir" | |
2159 | |
2160 | |
2751 | 2161 *g:netrw_ftp_sizelist_cmd* options for passing along to ftp for directory |
1621 | 2162 listing, sorted by size of file. |
2163 Defaults: | |
2164 unix or g:netrw_cygwin set: : "ls -slF" | |
2165 otherwise "dir" | |
2166 | |
2751 | 2167 *g:netrw_ftp_timelist_cmd* options for passing along to ftp for directory |
1621 | 2168 listing, sorted by time of last modification. |
2169 Defaults: | |
2170 unix or g:netrw_cygwin set: : "ls -tlF" | |
2171 otherwise "dir" | |
2172 | |
3456 | 2173 *g:netrw_glob_escape* ='[]*?`{~$' (unix) |
2152 | 2174 ='[]*?`{$' (windows |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2175 These characters in directory names are |
1621 | 2176 escaped before applying glob() |
2177 | |
2751 | 2178 *g:netrw_hide* if true, the hiding list is used |
1621 | 2179 default: =0 |
2180 | |
2751 | 2181 *g:netrw_home* The home directory for where bookmarks and |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2182 history are saved (as .netrwbook and |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2183 .netrwhist). |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2184 default: the first directory on the |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2185 |'runtimepath'| |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2186 |
2751 | 2187 *g:netrw_keepdir* =1 (default) keep current directory immune from |
1621 | 2188 the browsing directory. |
2189 =0 keep the current directory the same as the | |
2190 browsing directory. | |
2191 The current browsing directory is contained in | |
2192 b:netrw_curdir (also see |netrw-c|) | |
2193 | |
2751 | 2194 *g:netrw_list_cmd* command for listing remote directories |
1621 | 2195 default: (if ssh is executable) |
2196 "ssh HOSTNAME ls -FLa" | |
2197 | |
2751 | 2198 *g:netrw_liststyle* Set the default listing style: |
1621 | 2199 = 0: thin listing (one file per line) |
2200 = 1: long listing (one file per line with time | |
2201 stamp information and file size) | |
2202 = 2: wide listing (multiple files in columns) | |
2203 = 3: tree style listing | |
2751 | 2204 *g:netrw_list_hide* comma separated pattern list for hiding files |
1621 | 2205 Patterns are regular expressions (see |regexp|) |
2206 Example: let g:netrw_list_hide= '.*\.swp$' | |
2207 default: "" | |
2208 | |
2751 | 2209 *g:netrw_localcopycmd* ="cp" Linux/Unix/MacOS/Cygwin |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2210 ="copy" Windows |
1621 | 2211 Copies marked files (|netrw-mf|) to target |
2212 directory (|netrw-mt|, |netrw-mc|) | |
2213 | |
2751 | 2214 *g:netrw_localmovecmd* ="mv" Linux/Unix/MacOS/Cygwin |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2215 ="move" Windows |
1621 | 2216 Moves marked files (|netrw-mf|) to target |
2217 directory (|netrw-mt|, |netrw-mm|) | |
2218 | |
3456 | 2219 *g:netrw_localmkdir* command for making a local directory |
1621 | 2220 default: "mkdir" |
2221 | |
3456 | 2222 *g:netrw_localrmdir* remove directory command (rmdir) |
1621 | 2223 default: "rmdir" |
2224 | |
2751 | 2225 *g:netrw_maxfilenamelen* =32 by default, selected so as to make long |
1621 | 2226 listings fit on 80 column displays. |
2227 If your screen is wider, and you have file | |
2228 or directory names longer than 32 bytes, | |
2229 you may set this option to keep listings | |
2230 columnar. | |
2231 | |
2751 | 2232 *g:netrw_mkdir_cmd* command for making a remote directory |
3153 | 2233 via ssh (also see |g:netrw_remote_mkdir|) |
1621 | 2234 default: "ssh USEPORT HOSTNAME mkdir" |
2235 | |
2908 | 2236 *g:netrw_mousemaps* =1 (default) enables mouse buttons while |
2237 browsing to: | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2238 leftmouse : open file/directory |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2239 shift-leftmouse : mark file |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2240 middlemouse : same as P |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2241 rightmouse : remove file/directory |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2242 =0: disables mouse maps |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2243 |
3153 | 2244 *g:netrw_nobeval* doesn't exist (default) |
2245 If this variable exists, then balloon | |
2246 evaluation will be suppressed | |
2247 (see |'ballooneval'|) | |
2248 | |
2249 *g:netrw_remote_mkdir* command for making a local directory | |
2250 via ftp (also see |g:netrw_mkdir_cmd|) | |
2251 default: "mkdir" | |
2252 | |
2751 | 2253 *g:netrw_retmap* if it exists and is set to one, then: |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2254 * if in a netrw-selected file, AND |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2255 * no normal-mode <2-leftmouse> mapping exists, |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2256 then the <2-leftmouse> will be mapped for easy |
1621 | 2257 return to the netrw browser window. |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2258 example: click once to select and open a file, |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2259 double-click to return. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2260 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2261 Note that one may instead choose to: |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2262 * let g:netrw_retmap= 1, AND |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2263 * nmap <silent> YourChoice <Plug>NetrwReturn |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2264 and have another mapping instead of |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2265 <2-leftmouse> to invoke the return. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2266 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2267 You may also use the |:Rexplore| command to do |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2268 the same thing. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2269 |
1621 | 2270 default: =0 |
2271 | |
2751 | 2272 *g:netrw_rm_cmd* command for removing files |
1621 | 2273 default: "ssh USEPORT HOSTNAME rm" |
2274 | |
2751 | 2275 *g:netrw_rmdir_cmd* command for removing directories |
1621 | 2276 default: "ssh USEPORT HOSTNAME rmdir" |
2277 | |
2751 | 2278 *g:netrw_rmf_cmd* command for removing softlinks |
1621 | 2279 default: "ssh USEPORT HOSTNAME rm -f" |
2280 | |
2751 | 2281 *g:netrw_sort_by* sort by "name", "time", or "size" |
1621 | 2282 default: "name" |
2283 | |
2751 | 2284 *g:netrw_sort_direction* sorting direction: "normal" or "reverse" |
1621 | 2285 default: "normal" |
2286 | |
2751 | 2287 *g:netrw_sort_options* sorting is done using |:sort|; this |
1668 | 2288 variable's value is appended to the |
2289 sort command. Thus one may ignore case, | |
2290 for example, with the following in your | |
2291 .vimrc: > | |
2292 let g:netrw_sort_options="i" | |
2293 < default: "" | |
2294 | |
2751 | 2295 *g:netrw_sort_sequence* when sorting by name, first sort by the |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2296 comma-separated pattern sequence. Note that |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2297 the filigree added to indicate filetypes |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2298 should be accounted for in your pattern. |
1621 | 2299 default: '[\/]$,*,\.bak$,\.o$,\.h$, |
2300 \.info$,\.swp$,\.obj$' | |
2301 | |
2751 | 2302 *g:netrw_special_syntax* If true, then certain files will be shown |
3456 | 2303 using special syntax in the browser: |
1621 | 2304 |
2305 netrwBak : *.bak | |
2306 netrwCompress: *.gz *.bz2 *.Z *.zip | |
2307 netrwData : *.dat | |
2308 netrwHdr : *.h | |
2309 netrwLib : *.a *.so *.lib *.dll | |
2310 netrwMakefile: [mM]akefile *.mak | |
2311 netrwObj : *.o *.obj | |
2312 netrwTags : tags ANmenu ANtags | |
2751 | 2313 netrwTilde : *~ |
1621 | 2314 netrwTmp : tmp* *tmp |
2315 | |
2316 These syntax highlighting groups are linked | |
2317 to Folded or DiffChange by default | |
2318 (see |hl-Folded| and |hl-DiffChange|), but | |
2319 one may put lines like > | |
2320 hi link netrwCompress Visual | |
2321 < into one's <.vimrc> to use one's own | |
2322 preferences. | |
2323 | |
2751 | 2324 *g:netrw_ssh_cmd* One may specify an executable command |
1621 | 2325 to use instead of ssh for remote actions |
2326 such as listing, file removal, etc. | |
2327 default: ssh | |
2328 | |
2751 | 2329 *g:netrw_ssh_browse_reject* ssh can sometimes produce unwanted lines, |
1621 | 2330 messages, banners, and whatnot that one doesn't |
2331 want masquerading as "directories" and "files". | |
2332 Use this pattern to remove such embedded | |
2333 messages. By default its value is: | |
2334 '^total\s\+\d\+$' | |
2335 | |
2336 | |
2751 | 2337 *g:netrw_tmpfile_escape* =' &;' |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2338 escape() is applied to all temporary files |
1621 | 2339 to escape these characters. |
2340 | |
2751 | 2341 *g:netrw_timefmt* specify format string to vim's strftime(). |
1621 | 2342 The default, "%c", is "the preferred date |
2343 and time representation for the current | |
2344 locale" according to my manpage entry for | |
2345 strftime(); however, not all are satisfied | |
2346 with it. Some alternatives: | |
2347 "%a %d %b %Y %T", | |
2348 " %a %Y-%m-%d %I-%M-%S %p" | |
2349 default: "%c" | |
2350 | |
2751 | 2351 *g:netrw_use_noswf* netrw normally avoids writing swapfiles |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2352 for browser buffers. However, under some |
1621 | 2353 systems this apparently is causing nasty |
2354 ml_get errors to appear; if you're getting | |
2355 ml_get errors, try putting | |
2356 let g:netrw_use_noswf= 0 | |
2357 in your .vimrc. | |
2358 | |
2751 | 2359 *g:netrw_winsize* specify initial size of new windows made with |
1621 | 2360 "o" (see |netrw-o|), "v" (see |netrw-v|), |
2908 | 2361 |:Hexplore| or |:Vexplore|. The g:netrw_winsize |
2362 is an integer describing the percentage of the | |
2363 current netrw buffer's window to be used for | |
2364 the new window. | |
3153 | 2365 If g:netrw_winsize is less than zero, then |
2366 the absolute value of g:netrw_winsize lines | |
2367 or columns will be used for the new window. | |
2908 | 2368 default: 50 (for 50%) |
1621 | 2369 |
2751 | 2370 *g:netrw_xstrlen* Controls how netrw computes string lengths, |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2371 including multi-byte characters' string |
1621 | 2372 length. (thanks to N Weibull, T Mechelynck) |
2373 =0: uses Vim's built-in strlen() | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2374 =1: number of codepoints (Latin a + combining |
1621 | 2375 circumflex is two codepoints) (DEFAULT) |
2376 =2: number of spacing codepoints (Latin a + | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2377 combining circumflex is one spacing |
1621 | 2378 codepoint; a hard tab is one; wide and |
2379 narrow CJK are one each; etc.) | |
2380 =3: virtual length (counting tabs as anything | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2381 between 1 and |'tabstop'|, wide CJK as 2 |
1621 | 2382 rather than 1, Arabic alif as zero when |
2383 immediately preceded by lam, one | |
2384 otherwise, etc) | |
2385 | |
2751 | 2386 *g:NetrwTopLvlMenu* This variable specifies the top level |
1621 | 2387 menu name; by default, it's "Netrw.". If |
2388 you wish to change this, do so in your | |
2389 .vimrc. | |
2390 | |
2391 NETRW BROWSING AND OPTION INCOMPATIBILITIES *netrw-incompatible* {{{2 | |
2392 | |
2393 Netrw has been designed to handle user options by saving them, setting the | |
2394 options to something that's compatible with netrw's needs, and then restoring | |
2395 them. However, the autochdir option: > | |
2396 :set acd | |
2397 is problematical. Autochdir sets the current directory to that containing the | |
2398 file you edit; this apparently also applies to directories. In other words, | |
2399 autochdir sets the current directory to that containing the "file" (even if | |
2400 that "file" is itself a directory). | |
2401 | |
3153 | 2402 NETRW SETTINGS WINDOW *netrw-settings-window* {{{2 |
482 | 2403 |
2404 With the NetrwSettings.vim plugin, > | |
2405 :NetrwSettings | |
2406 will bring up a window with the many variables that netrw uses for its | |
559 | 2407 settings. You may change any of their values; when you save the file, the |
2408 settings therein will be used. One may also press "?" on any of the lines for | |
2409 help on what each of the variables do. | |
482 | 2410 |
3456 | 2411 (also see: |netrw-browser-var| |netrw-protocol| |netrw-variables|) |
1121 | 2412 |
482 | 2413 |
9 | 2414 ============================================================================== |
1621 | 2415 OBTAINING A FILE *netrw-O* {{{2 |
2416 | |
2417 If there are no marked files: | |
2418 | |
2419 When browsing a remote directory, one may obtain a file under the cursor | |
2420 (ie. get a copy on your local machine, but not edit it) by pressing the O | |
2421 key. | |
2422 | |
2423 If there are marked files: | |
2424 | |
2425 The marked files will be obtained (ie. a copy will be transferred to your | |
2426 local machine, but not set up for editing). | |
2427 | |
2428 Only ftp and scp are supported for this operation (but since these two are | |
2429 available for browsing, that shouldn't be a problem). The status bar will | |
2430 then show, on its right hand side, a message like "Obtaining filename". The | |
2431 statusline will be restored after the transfer is complete. | |
2432 | |
2433 Netrw can also "obtain" a file using the local browser. Netrw's display | |
2434 of a directory is not necessarily the same as Vim's "current directory", | |
2435 unless |g:netrw_keepdir| is set to 0 in the user's <.vimrc>. One may select | |
2436 a file using the local browser (by putting the cursor on it) and pressing | |
2437 "O" will then "obtain" the file; ie. copy it to Vim's current directory. | |
2438 | |
2439 Related topics: | |
2440 * To see what the current directory is, use |:pwd| | |
2441 * To make the currently browsed directory the current directory, see |netrw-c| | |
2442 * To automatically make the currently browsed directory the current | |
2443 directory, see |g:netrw_keepdir|. | |
2444 | |
2751 | 2445 *netrw-createfile* |
1668 | 2446 OPEN A NEW FILE IN NETRW'S CURRENT DIRECTORY *netrw-%* |
2447 | |
2448 To open a file in netrw's current directory, press "%". This map will | |
2449 query the user for a new filename; an empty file by that name will be | |
2450 placed in the netrw's current directory (ie. b:netrw_curdir). | |
2451 | |
2452 | |
1621 | 2453 PREVIEW WINDOW *netrw-p* *netrw-preview* {{{2 |
2454 | |
2455 One may use a preview window by using the "p" key when the cursor is atop the | |
2456 desired filename to be previewed. The display will then split to show both | |
2457 the browser (where the cursor will remain) and the file (see |:pedit|). | |
2458 By default, the split will be taken horizontally; one may use vertical | |
2459 splitting if one has set |g:netrw_preview| first. | |
2460 | |
2152 | 2461 An interesting set of netrw settings is: > |
2462 | |
2463 let g:netrw_preview = 1 | |
2464 let g:netrw_liststyle = 3 | |
2465 let g:netrw_winsize = 30 | |
2466 | |
2467 These will: | |
2468 1. Make vertical splitting the default for previewing files | |
2469 2. Make the default listing style "tree" | |
2470 3. When a vertical preview window is opened, the directory listing | |
3456 | 2471 will use only 30% of the columns available; the rest of the window |
2472 is used for the preview window. | |
1621 | 2473 |
2474 PREVIOUS WINDOW *netrw-P* *netrw-prvwin* {{{2 | |
2475 | |
2476 To edit a file or directory in the previously used (last accessed) window (see | |
2477 :he |CTRL-W_p|), press a "P". If there's only one window, then the one window | |
3153 | 2478 will be horizontally split (by default). |
1621 | 2479 |
2480 If there's more than one window, the previous window will be re-used on | |
2481 the selected file/directory. If the previous window's associated buffer | |
2482 has been modified, and there's only one window with that buffer, then | |
2483 the user will be asked if s/he wishes to save the buffer first (yes, | |
2484 no, or cancel). | |
2485 | |
3153 | 2486 Related Actions |netrw-cr| |netrw-o| |netrw-t| |netrw-T| |netrw-v| |
2487 Associated setting variables: | |
2488 |g:netrw_alto| control above/below splitting | |
2489 |g:netrw_altv| control right/left splitting | |
2490 |g:netrw_preview| control horizontal vs vertical splitting | |
2491 |g:netrw_winsize| control initial sizing | |
2492 | |
1621 | 2493 |
2494 REFRESHING THE LISTING *netrw-ctrl-l* *netrw-ctrl_l* {{{2 | |
2495 | |
2496 To refresh either a local or remote directory listing, press ctrl-l (<c-l>) or | |
2497 hit the <cr> when atop the ./ directory entry in the listing. One may also | |
2498 refresh a local directory by using ":e .". | |
2499 | |
2500 | |
2501 RENAMING FILES OR DIRECTORIES *netrw-move* *netrw-rename* *netrw-R* {{{2 | |
2502 | |
2503 If there are no marked files: (see |netrw-mf|) | |
2504 | |
2505 Renaming/moving files and directories involves moving the cursor to the | |
2506 file/directory to be moved (renamed) and pressing "R". You will then be | |
2507 queried for where you want the file/directory to be moved. You may select | |
2508 a range of lines with the "V" command (visual selection), and then | |
2509 pressing "R". | |
2510 | |
2511 If there are marked files: (see |netrw-mf|) | |
2512 | |
2513 Marked files will be renamed (moved). You will be queried as above in | |
2514 order to specify where you want the file/directory to be moved. | |
2515 | |
2516 WARNING:~ | |
2517 | |
2518 Note that moving files is a dangerous operation; copies are safer. That's | |
2519 because a "move" for remote files is actually a copy + delete -- and if | |
2520 the copy fails and the delete does not, you may lose the file. | |
2521 | |
2522 The g:netrw_rename_cmd variable is used to implement renaming. By default its | |
2523 value is: | |
2524 | |
2525 ssh HOSTNAME mv | |
2526 | |
2527 One may rename a block of files and directories by selecting them with | |
2528 the V (|linewise-visual|). | |
2529 | |
2530 | |
2531 REVERSING SORTING ORDER *netrw-r* *netrw-reverse* {{{2 | |
2532 | |
2533 One may toggle between normal and reverse sorting order by pressing the | |
2534 "r" key. | |
2535 | |
2536 Related topics: |netrw-s| | |
2537 Associated setting variable: |g:netrw_sort_direction| | |
2538 | |
2539 | |
2540 SELECTING SORTING STYLE *netrw-s* *netrw-sort* {{{2 | |
2541 | |
2542 One may select the sorting style by name, time, or (file) size. The "s" map | |
2543 allows one to circulate amongst the three choices; the directory listing will | |
2544 automatically be refreshed to reflect the selected style. | |
2545 | |
2546 Related topics: |netrw-r| |netrw-S| | |
2547 Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence| | |
2548 | |
2549 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2550 SETTING EDITING WINDOW *netrw-C* {{{2 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2551 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2552 One may select a netrw window for editing with the "C" mapping, or by setting |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2553 g:netrw_chgwin to the selected window number. Subsequent selection of a file |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2554 to edit (|netrw-cr|) will use that window. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2555 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2556 Related topics: |netrw-cr| |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2557 Associated setting variables: |g:netrw_chgwin| |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2558 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2559 |
1621 | 2560 10. Problems and Fixes *netrw-problems* {{{1 |
24 | 2561 |
2562 (This section is likely to grow as I get feedback) | |
2563 (also see |netrw-debug|) | |
477 | 2564 *netrw-p1* |
24 | 2565 P1. I use windows 95, and my ftp dumps four blank lines at the |
2566 end of every read. | |
2567 | |
2568 See |netrw-fixup|, and put the following into your | |
2569 <.vimrc> file: | |
2570 | |
2571 let g:netrw_win95ftp= 1 | |
466 | 2572 |
477 | 2573 *netrw-p2* |
1121 | 2574 P2. I use Windows, and my network browsing with ftp doesn't sort by |
2575 time or size! -or- The remote system is a Windows server; why | |
2576 don't I get sorts by time or size? | |
24 | 2577 |
2578 Windows' ftp has a minimal support for ls (ie. it doesn't | |
2579 accept sorting options). It doesn't support the -F which | |
2580 gives an explanatory character (ABC/ for "ABC is a directory"). | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2581 Netrw then uses "dir" to get both its thin and long listings. |
1121 | 2582 If you think your ftp does support a full-up ls, put the |
2583 following into your <.vimrc>: > | |
24 | 2584 |
1121 | 2585 let g:netrw_ftp_list_cmd = "ls -lF" |
2586 let g:netrw_ftp_timelist_cmd= "ls -tlF" | |
2587 let g:netrw_ftp_sizelist_cmd= "ls -slF" | |
2588 < | |
24 | 2589 Alternatively, if you have cygwin on your Windows box, put |
1121 | 2590 into your <.vimrc>: > |
24 | 2591 |
2592 let g:netrw_cygwin= 1 | |
1121 | 2593 < |
2594 This problem also occurs when the remote system is Windows. | |
2595 In this situation, the various g:netrw_ftp_[time|size]list_cmds | |
2596 are as shown above, but the remote system will not correctly | |
2597 modify its listing behavior. | |
2598 | |
24 | 2599 |
477 | 2600 *netrw-p3* |
24 | 2601 P3. I tried rcp://user@host/ (or protocol other than ftp) and netrw |
2602 used ssh! That wasn't what I asked for... | |
2603 | |
2604 Netrw has two methods for browsing remote directories: ssh | |
2605 and ftp. Unless you specify ftp specifically, ssh is used. | |
2606 When it comes time to do download a file (not just a directory | |
2607 listing), netrw will use the given protocol to do so. | |
2608 | |
477 | 2609 *netrw-p4* |
24 | 2610 P4. I would like long listings to be the default. |
2611 | |
1621 | 2612 Put the following statement into your |.vimrc|: > |
2613 | |
1121 | 2614 let g:netrw_liststyle= 1 |
1621 | 2615 < |
2616 Check out |netrw-browser-var| for more customizations that | |
26 | 2617 you can set. |
24 | 2618 |
477 | 2619 *netrw-p5* |
24 | 2620 P5. My times come up oddly in local browsing |
2621 | |
2622 Does your system's strftime() accept the "%c" to yield dates | |
2623 such as "Sun Apr 27 11:49:23 1997"? If not, do a "man strftime" | |
2624 and find out what option should be used. Then put it into | |
1621 | 2625 your |.vimrc|: > |
2626 | |
24 | 2627 let g:netrw_timefmt= "%X" (where X is the option) |
1621 | 2628 < |
477 | 2629 *netrw-p6* |
26 | 2630 P6. I want my current directory to track my browsing. |
2631 How do I do that? | |
24 | 2632 |
1621 | 2633 Put the following line in your |.vimrc|: |
2634 > | |
794 | 2635 let g:netrw_keepdir= 0 |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2636 < |
1121 | 2637 *netrw-p7* |
2638 P7. I use Chinese (or other non-ascii) characters in my filenames, and | |
2639 netrw (Explore, Sexplore, Hexplore, etc) doesn't display them! | |
466 | 2640 |
1121 | 2641 (taken from an answer provided by Wu Yongwei on the vim |
2642 mailing list) | |
2643 I now see the problem. You code page is not 936, right? Vim | |
2644 seems only able to open files with names that are valid in the | |
2645 current code page, as are many other applications that do not | |
2646 use the Unicode version of Windows APIs. This is an OS-related | |
2647 issue. You should not have such problems when the system | |
2648 locale uses UTF-8, such as modern Linux distros. | |
2649 | |
2650 (...it is one more reason to recommend that people use utf-8!) | |
2651 | |
2652 *netrw-p8* | |
2653 P8. I'm getting "ssh is not executable on your system" -- what do I | |
2654 do? | |
2655 | |
2656 (Dudley Fox) Most people I know use putty for windows ssh. It | |
2657 is a free ssh/telnet application. You can read more about it | |
2658 here: | |
2659 | |
2660 http://www.chiark.greenend.org.uk/~sgtatham/putty/ Also: | |
2661 | |
2662 (Marlin Unruh) This program also works for me. It's a single | |
2663 executable, so he/she can copy it into the Windows\System32 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2664 folder and create a shortcut to it. |
1121 | 2665 |
2666 (Dudley Fox) You might also wish to consider plink, as it | |
2667 sounds most similar to what you are looking for. plink is an | |
2668 application in the putty suite. | |
2669 | |
2670 http://the.earth.li/~sgtatham/putty/0.58/htmldoc/Chapter7.html#plink | |
2671 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2672 (Vissale Neang) Maybe you can try OpenSSH for windows, which |
1121 | 2673 can be obtained from: |
2674 | |
2675 http://sshwindows.sourceforge.net/ | |
2676 | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2677 It doesn't need the full Cygwin package. |
1121 | 2678 |
2679 (Antoine Mechelynck) For individual Unix-like programs needed | |
2680 for work in a native-Windows environment, I recommend getting | |
2681 them from the GnuWin32 project on sourceforge if it has them: | |
2682 | |
2683 http://gnuwin32.sourceforge.net/ | |
2684 | |
2685 Unlike Cygwin, which sets up a Unix-like virtual machine on | |
2686 top of Windows, GnuWin32 is a rewrite of Unix utilities with | |
2687 Windows system calls, and its programs works quite well in the | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2688 cmd.exe "Dos box". |
1121 | 2689 |
2690 (dave) Download WinSCP and use that to connect to the server. | |
2691 In Preferences > Editors, set gvim as your editor: | |
2692 | |
2693 - Click "Add..." | |
2694 - Set External Editor (adjust path as needed, include | |
2695 the quotes and !.! at the end): | |
2696 "c:\Program Files\Vim\vim70\gvim.exe" !.! | |
2697 - Check that the filetype in the box below is | |
2698 {asterisk}.{asterisk} (all files), or whatever types | |
2699 you want (cec: change {asterisk} to * ; I had to | |
2700 write it that way because otherwise the helptags | |
1621 | 2701 system thinks it's a tag) |
2702 - Make sure it's at the top of the listbox (click it, | |
2703 then click "Up" if it's not) | |
1121 | 2704 If using the Norton Commander style, you just have to hit <F4> |
2705 to edit a file in a local copy of gvim. | |
2706 | |
2707 (Vit Gottwald) How to generate public/private key and save | |
2708 public key it on server: > | |
2420
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
2709 http://www.chiark.greenend.org.uk/~sgtatham/putty/0.60/htmldoc/Chapter8.html#pubkey-gettingready |
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
2710 (8.3 Getting ready for public key authentication) |
1121 | 2711 < |
1621 | 2712 How to use a private key with 'pscp': > |
2713 | |
2420
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
2714 http://www.chiark.greenend.org.uk/~sgtatham/putty/0.60/htmldoc/Chapter5.html |
6de9efd58dc0
Updated runtime files. New netrw plugin version.
Bram Moolenaar <bram@vim.org>
parents:
2413
diff
changeset
|
2715 (5.2.4 Using public key authentication with PSCP) |
1121 | 2716 < |
1621 | 2717 (Ben Schmidt) I find the ssh included with cwRsync is |
2718 brilliant, and install cwRsync or cwRsyncServer on most | |
2719 Windows systems I come across these days. I guess COPSSH, | |
2720 packed by the same person, is probably even better for use as | |
2721 just ssh on Windows, and probably includes sftp, etc. which I | |
2722 suspect the cwRsync doesn't, though it might | |
2723 | |
1121 | 2724 (cec) To make proper use of these suggestions above, you will |
2725 need to modify the following user-settable variables in your | |
2726 .vimrc: | |
2727 | |
1621 | 2728 |g:netrw_ssh_cmd| |g:netrw_list_cmd| |g:netrw_mkdir_cmd| |
2729 |g:netrw_rm_cmd| |g:netrw_rmdir_cmd| |g:netrw_rmf_cmd| | |
1121 | 2730 |
2731 The first one (|g:netrw_ssh_cmd|) is the most important; most | |
2732 of the others will use the string in g:netrw_ssh_cmd by | |
2733 default. | |
2734 *netrw-p9* *netrw-ml_get* | |
2735 P9. I'm browsing, changing directory, and bang! ml_get errors | |
2736 appear and I have to kill vim. Any way around this? | |
2737 | |
2738 Normally netrw attempts to avoid writing swapfiles for | |
2739 its temporary directory buffers. However, on some systems | |
2740 this attempt appears to be causing ml_get errors to | |
2741 appear. Please try setting |g:netrw_use_noswf| to 0 | |
2742 in your <.vimrc>: > | |
2743 let g:netrw_use_noswf= 0 | |
2744 < | |
1621 | 2745 *netrw-p10* |
2746 P10. I'm being pestered with "[something] is a directory" and | |
2747 "Press ENTER or type command to continue" prompts... | |
2748 | |
2749 The "[something] is a directory" prompt is issued by Vim, | |
2750 not by netrw, and there appears to be no way to work around | |
2751 it. Coupled with the default cmdheight of 1, this message | |
2752 causes the "Press ENTER..." prompt. So: read |hit-enter|; | |
2753 I also suggest that you set your |'cmdheight'| to 2 (or more) in | |
2754 your <.vimrc> file. | |
2755 | |
2756 *netrw-p11* | |
2757 P11. I want to have two windows; a thin one on the left and my editing | |
2908 | 2758 window on the right. How may I accomplish this? |
1621 | 2759 |
2760 * Put the following line in your <.vimrc>: | |
2761 let g:netrw_altv = 1 | |
2762 * Edit the current directory: :e . | |
2763 * Select some file, press v | |
2764 * Resize the windows as you wish (see |CTRL-W_<| and | |
2765 |CTRL-W_>|). If you're using gvim, you can drag | |
2766 the separating bar with your mouse. | |
2767 * When you want a new file, use ctrl-w h to go back to the | |
2768 netrw browser, select a file, then press P (see |CTRL-W_h| | |
2769 and |netrw-P|). If you're using gvim, you can press | |
2770 <leftmouse> in the browser window and then press the | |
2771 <middlemouse> to select the file. | |
24 | 2772 |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2773 *netrw-p12* |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2774 P12. My directory isn't sorting correctly, or unwanted letters are |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2775 appearing in the listed filenames, or things aren't lining |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2776 up properly in the wide listing, ... |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2777 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2778 This may be due to an encoding problem. I myself usually use |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2779 utf-8, but really only use ascii (ie. bytes from 32-126). |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2780 Multibyte encodings use two (or more) bytes per character. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2781 You may need to change |g:netrw_sepchr| and/or |g:netrw_xstrlen|. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2782 |
2152 | 2783 *netrw-p13* |
2784 P13. I'm a Windows + putty + ssh user, and when I attempt to browse, | |
2785 the directories are missing trailing "/"s so netrw treats them | |
2786 as file transfers instead of as attempts to browse | |
2787 subdirectories. How may I fix this? | |
2788 | |
2789 (mikeyao) If you want to use vim via ssh and putty under Windows, | |
2790 try combining the use of pscp/psftp with plink. pscp/psftp will | |
2791 be used to connect and plink will be used to execute commands on | |
2792 the server, for example: list files and directory using 'ls'. | |
2793 | |
2794 These are the settings I use to do this: | |
2795 > | |
2796 " list files, it's the key setting, if you haven't set, | |
2797 " you will get a blank buffer | |
2798 let g:netrw_list_cmd = "plink HOSTNAME ls -Fa" | |
2799 " if you haven't add putty directory in system path, you should | |
2800 " specify scp/sftp command. For examples: | |
2801 "let g:netrw_sftp_cmd = "d:\\dev\\putty\\PSFTP.exe" | |
2802 "let g:netrw_scp_cmd = "d:\\dev\\putty\\PSCP.exe" | |
2803 < | |
2908 | 2804 *netrw-p14* |
2805 P14. I'd would like to speed up writes using Nwrite and scp/ssh | |
2806 style connections. How? (Thomer M. Gil) | |
2807 | |
2808 Try using ssh's ControlMaster and ControlPath (see the ssh_config | |
2809 man page) to share multiple ssh connections over a single network | |
2810 connection. That cuts out the cryptographic handshake on each | |
2811 file write, sometimes speeding it up by an order of magnitude. | |
2812 (see http://thomer.com/howtos/netrw_ssh.html) | |
2813 (included by permission) | |
2814 | |
2815 Add the following to your ~/.ssh/config: > | |
2816 | |
2817 # you change "*" to the hostname you care about | |
2818 Host * | |
2819 ControlMaster auto | |
2820 ControlPath /tmp/%r@%h:%p | |
2821 | |
2822 < Then create an ssh connection to the host and leave it running: > | |
2823 | |
2824 ssh -N host.domain.com | |
2825 | |
2826 < Now remotely open a file with Vim's Netrw and enjoy the | |
2827 zippiness: > | |
2828 | |
2829 vim scp://host.domain.com//home/user/.bashrc | |
2830 < | |
2831 *netrw-p15* | |
2832 P15. How may I use a double-click instead of netrw's usual single click | |
2833 to open a file or directory? (Ben Fritz) | |
2834 | |
2835 First, disable netrw's mapping with > | |
2836 let g:netrw_mousemaps= 0 | |
2837 < and then create a netrw buffer only mapping in | |
2838 $HOME/.vim/after/ftplugin/netrw.vim: > | |
2839 nmap <buffer> <2-leftmouse> <CR> | |
2840 < Note that setting g:netrw_mousemaps to zero will turn off | |
2841 all netrw's mouse mappings, not just the <leftmouse> one. | |
2842 (see |g:netrw_mousemaps|) | |
2152 | 2843 |
24 | 2844 ============================================================================== |
1621 | 2845 11. Debugging Netrw Itself *netrw-debug* {{{1 |
7 | 2846 |
2751 | 2847 The <netrw.vim> script is typically available as something like: |
477 | 2848 > |
2751 | 2849 /usr/local/share/vim/vim7x/plugin/netrwPlugin.vim |
2850 /usr/local/share/vim/vim7x/autoload/netrw.vim | |
2851 < -or- > | |
1621 | 2852 /usr/local/share/vim/vim6x/plugin/netrwPlugin.vim |
2853 /usr/local/share/vim/vim6x/autoload/netrw.vim | |
477 | 2854 < |
7 | 2855 which is loaded automatically at startup (assuming :set nocp). |
2856 | |
2857 1. Get the <Decho.vim> script, available as: | |
2858 | |
3920 | 2859 http://www.drchip.org/astronaut/vim/index.html#DECHO |
7 | 2860 or |
534 | 2861 http://vim.sourceforge.net/scripts/script.php?script_id=120 |
7 | 2862 |
1621 | 2863 It now comes as a "vimball"; if you're using vim 7.0 or earlier, |
2864 you'll need to update vimball, too. See | |
3920 | 2865 http://www.drchip.org/astronaut/vim/index.html#VIMBALL |
1621 | 2866 |
2867 2. Edit the <netrw.vim> file by typing: > | |
22 | 2868 |
2869 vim netrw.vim | |
7 | 2870 :DechoOn |
22 | 2871 :wq |
1621 | 2872 < |
2873 To restore to normal non-debugging behavior, re-edit <netrw.vim> | |
2874 and type > | |
7 | 2875 |
22 | 2876 vim netrw.vim |
2877 :DechoOff | |
2878 :wq | |
1621 | 2879 < |
22 | 2880 This command, provided by <Decho.vim>, will comment out all |
2881 Decho-debugging statements (Dfunc(), Dret(), Decho(), Dredir()). | |
2882 | |
1621 | 2883 3. Then bring up vim and attempt to evoke the problem by doing a |
2884 transfer or doing some browsing. A set of messages should appear | |
2885 concerning the steps that <netrw.vim> took in attempting to | |
2886 read/write your file over the network in a separate tab. | |
7 | 2887 |
1121 | 2888 To save the file, use > |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2889 :tabnext |
1121 | 2890 :set bt= |
2891 :w! DBG | |
2892 < Please send that information to <netrw.vim>'s maintainer, > | |
36 | 2893 NdrOchip at ScampbellPfamily.AbizM - NOSPAM |
1121 | 2894 < |
7 | 2895 ============================================================================== |
1121 | 2896 12. History *netrw-history* {{{1 |
7 | 2897 |
3920 | 2898 v146: Oct 20, 2012 * (David Kotchan) reported that under Windows, |
2899 directories named with unusual characters | |
2900 such as "#" or "$" were not being listed | |
2901 properly. | |
2902 * (Kenny Lee) reported that the buffer list | |
2903 was being populated by netrw buffers. | |
2904 Netrw will now |:bwipe| netrw buffers | |
2905 upon editing a file if g:netrw_fastbrowse | |
2906 is zero and its not in tree listing style. | |
2907 v145: Apr 05, 2012 * moved some command from a g:netrw_local_... | |
2908 format to g:netwr_local... format | |
2909 * included some NOTE level messages about | |
2910 commands that aren't executable | |
2911 * |g:netrw_errorlvl| (default: NOTE=0) | |
2912 option introduced | |
2913 May 18, 2012 * (Ilya Dogolazky) a scenario where a | |
2914 |g:netrw_fastbrowse| of zero did not | |
2915 have a local directory refreshed fixed. | |
2916 Jul 10, 2012 * (Donatas) |netrw-gb| wasn't working due | |
2917 to an incorrectly used variable. | |
2918 Aug 09, 2012 * (Bart Baker) netrw was doubling | |
2919 of entries after a split. | |
2920 * (code by Takahiro Yoshihara) implemented | |
2921 |g:netrw_dynamic_maxfilenamelen| | |
2922 Aug 31, 2012 * (Andrew Wong) netrw refresh overwriting | |
2923 the yank buffer. | |
2924 v144: Mar 12, 2012 * when |CTRL-W_s| or |CTRL-W_v| are used, | |
2925 or their wincmd equivalents, on a netrw | |
2926 buffer, the netrw's w: variables were | |
2927 not copied over. Fixed. | |
2928 Mar 13, 2012 * nbcd_curpos_{bufnr('%')} was commented | |
2929 out, and was mistakenly used during | |
2930 RestorePosn. Unfortunately, I'm not | |
2931 sure why it was commented out, so this | |
2932 "fix" may re-introduce an earlier problem. | |
2933 Mar 21, 2012 * included s:rexposn internally to make | |
2934 :Rex return the cursor to the same pos'n | |
2935 upon restoration of netrw buffer | |
2936 Mar 27, 2012 * (sjbesse) s:NetrwGetFile() needs to remove | |
2937 "/" from the netrw buffer's usual |'isk'| | |
2938 in order to allow "filetype detect" to work | |
2939 properly for scripts. | |
2940 v143: Jun 01, 2011 * |g:netrw_winsize| will accept a negative | |
2941 number; the absolute value of it will then | |
2942 be used to specify lines/columns instead of | |
2943 a percentage. | |
2944 Jul 05, 2011 * the "d" map now supports mkdir via ftp | |
2945 See |netrw-d| and |g:netrw_remote_mkdir| | |
2946 Jul 11, 2011 * Changed Explore!, Sexplore!, and Vexplore | |
2947 to use a percentage of |winwidth()| instead | |
2948 of a percentage of |winheight()|. | |
2949 Jul 11, 2011 * included support for https://... I'm just | |
2950 beginning to test this, however. | |
2951 Aug 01, 2011 * changed RestoreOptions to also restore | |
2952 cursor position in netrw buffers. | |
2953 Aug 12, 2011 * added a note about "%" to the balloon | |
2954 Aug 30, 2011 * if |g:netrw_nobeval| exists, then balloon | |
2955 evaluation is suppressed. | |
2956 Aug 31, 2011 * (Benjamin R Haskell) provided a patch that | |
2957 implements non-standard port handling for | |
2958 files opened via the remote browser. | |
2959 Aug 31, 2011 * Fixed a **//pattern Explorer bug | |
2960 Sep 15, 2011 * (reported by Francesco Campana) netrw | |
2961 now permits the "@" to be part of the | |
2962 user id (if there's an @ that appears | |
2963 to the right). | |
2964 Nov 21, 2011 * New option: |g:netrw_ftp_options| | |
2965 Dec 07, 2011 * (James Sinclair) provided a fix handling | |
2966 attempts to use a uid and password when | |
2967 they weren't defined. This affected | |
2968 NetWrite (NetRead already had that fix). | |
7 | 2969 |
2970 | |
2971 ============================================================================== | |
2033
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2972 13. Todo *netrw-todo* {{{1 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2973 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2974 07/29/09 : banner :|g:netrw_banner| can be used to suppress the |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2975 suppression banner. This feature is new and experimental, |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2976 so its in the process of being debugged. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2977 09/04/09 : "gp" : See if it can be made to work for remote systems. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2978 : See if it can be made to work with marked files. |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2979 |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2980 ============================================================================== |
de5a43c5eedc
Update documentation files.
Bram Moolenaar <bram@zimbu.org>
parents:
1702
diff
changeset
|
2981 14. Credits *netrw-credits* {{{1 |
7 | 2982 |
2983 Vim editor by Bram Moolenaar (Thanks, Bram!) | |
2984 dav support by C Campbell | |
2985 fetch support by Bram Moolenaar and C Campbell | |
534 | 2986 ftp support by C Campbell <NdrOchip@ScampbellPfamily.AbizM> |
7 | 2987 http support by Bram Moolenaar <bram@moolenaar.net> |
2988 rcp | |
2989 rsync support by C Campbell (suggested by Erik Warendorph) | |
2990 scp support by raf <raf@comdyn.com.au> | |
2991 sftp support by C Campbell | |
2992 | |
2993 inputsecret(), BufReadCmd, BufWriteCmd contributed by C Campbell | |
2994 | |
2995 Jérôme Augé -- also using new buffer method with ftp+.netrc | |
534 | 2996 Bram Moolenaar -- obviously vim itself, :e and v:cmdarg use, |
1209 | 2997 fetch,... |
7 | 2998 Yasuhiro Matsumoto -- pointing out undo+0r problem and a solution |
2999 Erik Warendorph -- for several suggestions (g:netrw_..._cmd | |
3000 variables, rsync etc) | |
534 | 3001 Doug Claar -- modifications to test for success with ftp |
1209 | 3002 operation |
7 | 3003 |
3004 ============================================================================== | |
1621 | 3005 Modelines: {{{1 |
459 | 3006 vim:tw=78:ts=8:ft=help:norl:fdm=marker |