annotate runtime/doc/usr_05.txt @ 235:23d380e32c95

updated for version 7.0066
author vimboss
date Fri, 15 Apr 2005 20:41:38 +0000
parents 8b0ee9d57d7f
children 3e19ea54eb07
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
164
8b0ee9d57d7f updated for version 7.0050
vimboss
parents: 43
diff changeset
1 *usr_05.txt* For Vim version 7.0aa. Last change: 2005 Feb 08
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3 VIM USER MANUAL - by Bram Moolenaar
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
4
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5 Set your settings
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
6
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
8 Vim can be tuned to work like you want it to. This chapter shows you how to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
9 make Vim start with options set to different values. Add plugins to extend
164
8b0ee9d57d7f updated for version 7.0050
vimboss
parents: 43
diff changeset
10 Vim's capabilities. Or define your own macros.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
11
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12 |05.1| The vimrc file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13 |05.2| The example vimrc file explained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14 |05.3| Simple mappings
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15 |05.4| Adding a plugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16 |05.5| Adding a help file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17 |05.6| The option window
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18 |05.7| Often used options
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20 Next chapter: |usr_06.txt| Using syntax highlighting
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21 Previous chapter: |usr_04.txt| Making small changes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
22 Table of contents: |usr_toc.txt|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
23
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25 *05.1* The vimrc file *vimrc-intro*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27 You probably got tired of typing commands that you use very often. To start
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
28 with all your favorite option settings and mappings, you write them in what is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
29 called the vimrc file. Vim reads this file when it starts up.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31 If you have trouble finding your vimrc file, use this command: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
33 :scriptnames
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
35 One of the first files in the list should be called ".vimrc" or "_vimrc" and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
36 is located in your home directory.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
37 If you don't have a vimrc file yet, see |vimrc| to find out where you can
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
38 create a vimrc file. Also, the ":version" command mentions the name of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
39 "user vimrc file" Vim looks for.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
40
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
41 For Unix this file is always used: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
42
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
43 ~/.vimrc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
44
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
45 For MS-DOS and MS-Windows it is mostly one of these: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
46
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
47 $HOME/_vimrc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
48 $VIM/_vimrc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
49
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
50 The vimrc file can contain all the commands that you type after a colon. The
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
51 most simple ones are for setting options. For example, if you want Vim to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
52 always start with the 'incsearch' option on, add this line you your vimrc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
53 file: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
54
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
55 set incsearch
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
56
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
57 For this new line to take effect you need to exit Vim and start it again.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
58 Later you will learn how to do this without exiting Vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
59
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
60 This chapter only explains the most basic items. For more information on how
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
61 to write a Vim script file: |usr_41.txt|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
62
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
63 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
64 *05.2* The example vimrc file explained *vimrc_example.vim*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
65
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
66 In the first chapter was explained how the example vimrc (included in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
67 Vim distribution) file can be used to make Vim startup in not-compatible mode
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
68 (see |not-compatible|). The file can be found here:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
69
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
70 $VIMRUNTIME/vimrc_example.vim ~
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
71
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
72 In this section we will explain the various commands used in this file. This
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73 will give you hints about how to set up your own preferences. Not everything
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
74 will be explained though. Use the ":help" command to find out more.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
75
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
76 >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
77 set nocompatible
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
78
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
79 As mentioned in the first chapter, these manuals explain Vim working in an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
80 improved way, thus not completely Vi compatible. Setting the 'compatible'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
81 option off, thus 'nocompatible' takes care of this.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
82
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
83 >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
84 set backspace=indent,eol,start
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
85
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
86 This specifies where in Insert mode the <BS> is allowed to delete the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
87 character in front of the cursor. The three items, separated by commas, tell
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
88 Vim to delete the white space at the start of the line, a line break and the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
89 character before where Insert mode started.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
90 >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
91
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
92 set autoindent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
93
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
94 This makes Vim use the indent of the previous line for a newly created line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
95 Thus there is the same amount of white space before the new line. For example
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
96 when pressing <Enter> in Insert mode, and when using the "o" command to open a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
97 new line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
98 >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
99
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
100 if has("vms")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
101 set nobackup
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
102 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
103 set backup
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
104 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
105
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
106 This tells Vim to keep a backup copy of a file when overwriting it. But not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
107 on the VMS system, since it keeps old versions of files already. The backup
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
108 file will have the same name as the original file with "~" added. See |07.4|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
109 >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
110
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
111 set history=50
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
112
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
113 Keep 50 commands and 50 search patterns in the history. Use another number if
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
114 you want to remember fewer or more lines.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
115 >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
116
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
117 set ruler
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
118
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
119 Always display the current cursor position in the lower right corner of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
120 Vim window.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
121
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
122 >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
123 set showcmd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
124
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
125 Display an incomplete command in the lower right corner of the Vim window,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
126 left of the ruler. For example, when you type "2f", Vim is waiting for you to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
127 type the character to find and "2f" is displayed. When you press "w" next,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
128 the "2fw" command is executed and the displayed "2f" is removed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
129
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
130 +-------------------------------------------------+
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
131 |text in the Vim window |
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
132 |~ |
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
133 |~ |
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
134 |-- VISUAL -- 2f 43,8 17% |
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
135 +-------------------------------------------------+
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
136 ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
137 'showmode' 'showcmd' 'ruler'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
138
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
139 >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
140 set incsearch
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
141
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
142 Display the match for a search pattern when halfway typing it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
143
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
144 >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
145 map Q gq
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
146
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
147 This defines a key mapping. More about that in the next section. This
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
148 defines the "Q" command to do formatting with the "gq" operator. This is how
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
149 it worked before Vim 5.0. Otherwise the "Q" command starts Ex mode, but you
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
150 will not need it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
151
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
152 >
43
f55897d6921d updated for version 7.0026
vimboss
parents: 22
diff changeset
153 vnoremap _g y:exe "grep /" . escape(@", '\\/') . "/ *.c *.h"<CR>
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
154
43
f55897d6921d updated for version 7.0026
vimboss
parents: 22
diff changeset
155 This mapping yanks the visually selected text and searches for it in C files.
f55897d6921d updated for version 7.0026
vimboss
parents: 22
diff changeset
156 This is a complicated mapping. You can see that mappings can be used to do
f55897d6921d updated for version 7.0026
vimboss
parents: 22
diff changeset
157 quite complicated things. Still, it is just a sequence of commands that are
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
158 executed like you typed them.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
159
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
160 >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
161 if &t_Co > 2 || has("gui_running")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
162 syntax on
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
163 set hlsearch
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
164 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
165
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
166 This switches on syntax highlighting, but only if colors are available. And
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
167 the 'hlsearch' option tells Vim to highlight matches with the last used search
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
168 pattern. The "if" command is very useful to set options only when some
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
169 condition is met. More about that in |usr_41.txt|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
170
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
171 *vimrc-filetype* >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
172 filetype plugin indent on
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
173
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
174 This switches on three very clever mechanisms:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
175 1. Filetype detection.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
176 Whenever you start editing a file, Vim will try to figure out what kind of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
177 file this is. When you edit "main.c", Vim will see the ".c" extension and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
178 recognize this as a "c" filetype. When you edit a file that starts with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
179 "#!/bin/sh", Vim will recognize it as a "sh" filetype.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
180 The filetype detection is used for syntax highlighting and the other two
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
181 items below.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
182 See |filetypes|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
183
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
184 2. Using filetype plugin files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
185 Many different filetypes are edited with different options. For example,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
186 when you edit a "c" file, it's very useful to set the 'cindent' option to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
187 automatically indent the lines. These commonly useful option settings are
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
188 included with Vim in filetype plugins. You can also add your own, see
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
189 |write-filetype-plugin|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
190
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
191 3. Using indent files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
192 When editing programs, the indent of a line can often be computed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
193 automatically. Vim comes with these indent rules for a number of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
194 filetypes. See |:filetype-indent-on| and 'indentexpr'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
195
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
196 >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
197 autocmd FileType text setlocal textwidth=78
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
198
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
199 This makes Vim break text to avoid lines getting longer than 78 characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
200 But only for files that have been detected to be plain text. There are
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
201 actually two parts here. "autocmd FileType text" is an autocommand. This
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
202 defines that when the file type is set to "text" the following command is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
203 automatically executed. "setlocal textwidth=78" sets the 'textwidth' option
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
204 to 78, but only locally in one file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
205 >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
206
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
207 autocmd BufReadPost *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
208 \ if line("'\"") > 0 && line("'\"") <= line("$") |
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
209 \ exe "normal g`\"" |
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
210 \ endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
211
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
212 Another autocommand. This time it is used after reading any file. The
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
213 complicated stuff after it checks if the '" mark is defined, and jumps to it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
214 if so. The backslash at the start of a line is used to continue the command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
215 from the previous line. That avoids a line getting very long.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
216 See |line-continuation|. This only works in a Vim script file, not when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
217 typing commands at the command-line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
218
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
219 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
220 *05.3* Simple mappings
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
221
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
222 A mapping enables you to bind a set of Vim commands to a single key. Suppose,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
223 for example, that you need to surround certain words with curly braces. In
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
224 other words, you need to change a word such as "amount" into "{amount}". With
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
225 the :map command, you can tell Vim that the F5 key does this job. The command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
226 is as follows: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
227
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
228 :map <F5> i{<Esc>ea}<Esc>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
229 <
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
230 Note:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
231 When entering this command, you must enter <F5> by typing four
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
232 characters. Similarly, <Esc> is not entered by pressing the <Esc>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
233 key, but by typing five characters. Watch out for this difference
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
234 when reading the manual!
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
235
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
236 Let's break this down:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
237 <F5> The F5 function key. This is the trigger key that causes the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
238 command to be executed as the key is pressed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
239
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
240 i{<Esc> Insert the { character. The <Esc> key ends Insert mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
241
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
242 e Move to the end of the word.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
243
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
244 a}<Esc> Append the } to the word.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
245
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
246 After you execute the ":map" command, all you have to do to put {} around a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
247 word is to put the cursor on the first character and press F5.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
248
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
249 In this example, the trigger is a single key; it can be any string. But when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
250 you use an existing Vim command, that command will no longer be available.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
251 You better avoid that.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
252 One key that can be used with mappings is the backslash. Since you
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
253 probably want to define more than one mapping, add another character. You
164
8b0ee9d57d7f updated for version 7.0050
vimboss
parents: 43
diff changeset
254 could map "\p" to add parentheses around a word, and "\c" to add curly braces,
8b0ee9d57d7f updated for version 7.0050
vimboss
parents: 43
diff changeset
255 for example: >
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
256
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
257 :map \p i(<Esc>ea)<Esc>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
258 :map \c i{<Esc>ea}<Esc>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
259
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
260 You need to type the \ and the p quickly after another, so that Vim knows they
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
261 belong together.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
262
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
263 The ":map" command (with no arguments) lists your current mappings. At
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
264 least the ones for Normal mode. More about mappings in section |40.1|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
265
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
266 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
267 *05.4* Adding a plugin *add-plugin* *plugin*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
268
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
269 Vim's functionality can be extended by adding plugins. A plugin is nothing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
270 more than a Vim script file that is loaded automatically when Vim starts. You
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
271 can add a plugin very easily by dropping it in your plugin directory.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
272 {not available when Vim was compiled without the |+eval| feature}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
273
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
274 There are two types of plugins:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
275
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
276 global plugin: Used for all kinds of files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
277 filetype plugin: Only used for a specific type of file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
278
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
279 The global plugins will be discussed first, then the filetype ones
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
280 |add-filetype-plugin|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
281
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
282
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
283 GLOBAL PLUGINS *standard-plugin*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
284
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
285 When you start Vim, it will automatically load a number of global plugins.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
286 You don't have to do anything for this. They add functionality that most
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
287 people will want to use, but which was implemented as a Vim script instead of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
288 being compiled into Vim. You can find them listed in the help index
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
289 |standard-plugin-list|. Also see |load-plugins|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
290
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
291 *add-global-plugin*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
292 You can add a global plugin to add functionality that will always be present
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
293 when you use Vim. There are only two steps for adding a global plugin:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
294 1. Get a copy of the plugin.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
295 2. Drop it in the right directory.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
296
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
297
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
298 GETTING A GLOBAL PLUGIN
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
299
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
300 Where can you find plugins?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
301 - Some come with Vim. You can find them in the directory $VIMRUNTIME/macros
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
302 and its sub-directories.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
303 - Download from the net, check out http://vim.sf.net.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
304 - They are sometimes posted in a Vim |maillist|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
305 - You could write one yourself, see |write-plugin|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
306
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
307
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
308 USING A GLOBAL PLUGIN
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
309
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
310 First read the text in the plugin itself to check for any special conditions.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
311 Then copy the file to your plugin directory:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
312
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
313 system plugin directory ~
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
314 Unix ~/.vim/plugin/
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
315 PC and OS/2 $HOME/vimfiles/plugin or $VIM/vimfiles/plugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
316 Amiga s:vimfiles/plugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
317 Macintosh $VIM:vimfiles:plugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
318 Mac OS X ~/.vim/plugin/
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
319 RISC-OS Choices:vimfiles.plugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
320
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
321 Example for Unix (assuming you didn't have a plugin directory yet): >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
322
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
323 mkdir ~/.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
324 mkdir ~/.vim/plugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
325 cp /usr/local/share/vim/vim60/macros/justify.vim ~/.vim/plugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
326
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
327 That's all! Now you can use the commands defined in this plugin to justify
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
328 text.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
329
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
330
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
331 FILETYPE PLUGINS *add-filetype-plugin* *ftplugins*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
332
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
333 The Vim distribution comes with a set of plugins for different filetypes that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
334 you can start using with this command: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
335
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
336 :filetype plugin on
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
337
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
338 That's all! See |vimrc-filetype|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
339
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
340 If you are missing a plugin for a filetype you are using, or you found a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
341 better one, you can add it. There are two steps for adding a filetype plugin:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
342 1. Get a copy of the plugin.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
343 2. Drop it in the right directory.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
344
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
345
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
346 GETTING A FILETYPE PLUGIN
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
347
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
348 You can find them in the same places as the global plugins. Watch out if the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
349 type of file is mentioned, then you know if the plugin is a global or a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
350 filetype one. The scripts in $VIMRUNTIME/macros are global ones, the filetype
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
351 plugins are in $VIMRUNTIME/ftplugin.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
352
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
353
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
354 USING A FILETYPE PLUGIN *ftplugin-name*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
355
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
356 You can add a filetype plugin by dropping it in the right directory. The
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
357 name of this directory is in the same directory mentioned above for global
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
358 plugins, but the last part is "ftplugin". Suppose you have found a plugin for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
359 the "stuff" filetype, and you are on Unix. Then you can move this file to the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
360 ftplugin directory: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
361
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
362 mv thefile ~/.vim/ftplugin/stuff.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
363
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
364 If that file already exists you already have a plugin for "stuff". You might
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
365 want to check if the existing plugin doesn't conflict with the one you are
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
366 adding. If it's OK, you can give the new one another name: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
367
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
368 mv thefile ~/.vim/ftplugin/stuff_too.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
369
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
370 The underscore is used to separate the name of the filetype from the rest,
10
4e2284e71352 updated for version 7.0002
vimboss
parents: 7
diff changeset
371 which can be anything. If you use "otherstuff.vim" it wouldn't work, it would
4e2284e71352 updated for version 7.0002
vimboss
parents: 7
diff changeset
372 be loaded for the "otherstuff" filetype.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
373
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
374 On MS-DOS you cannot use long filenames. You would run into trouble if you
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
375 add a second plugin and the filetype has more than six characters. You can
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
376 use an extra directory to get around this: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
377
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
378 mkdir $VIM/vimfiles/ftplugin/fortran
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
379 copy thefile $VIM/vimfiles/ftplugin/fortran/too.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
380
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
381 The generic names for the filetype plugins are: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
382
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
383 ftplugin/<filetype>.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
384 ftplugin/<filetype>_<name>.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
385 ftplugin/<filetype>/<name>.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
386
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
387 Here "<name>" can be any name that you prefer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
388 Examples for the "stuff" filetype on Unix: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
389
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
390 ~/.vim/ftplugin/stuff.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
391 ~/.vim/ftplugin/stuff_def.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
392 ~/.vim/ftplugin/stuff/header.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
393
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
394 The <filetype> part is the name of the filetype the plugin is to be used for.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
395 Only files of this filetype will use the settings from the plugin. The <name>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
396 part of the plugin file doesn't matter, you can use it to have several plugins
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
397 for the same filetype. Note that it must end in ".vim".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
398
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
399
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
400 Further reading:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
401 |filetype-plugins| Documentation for the filetype plugins and information
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
402 about how to avoid that mappings cause problems.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
403 |load-plugins| When the global plugins are loaded during startup.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
404 |ftplugin-overrule| Overruling the settings from a global plugin.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
405 |write-plugin| How to write a plugin script.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
406 |plugin-details| For more information about using plugins or when your
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
407 plugin doesn't work.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
408 |new-filetype| How to detect a new file type.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
409
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
410 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
411 *05.5* Adding a help file *add-local-help* *matchit-install*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
412
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
413 If you are lucky, the plugin you installed also comes with a help file. We
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
414 will explain how to install the help file, so that you can easily find help
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
415 for your new plugin.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
416 Let us use the "matchit.vim" plugin as an example (it is included with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
417 Vim). This plugin makes the "%" command jump to matching HTML tags,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
418 if/else/endif in Vim scripts, etc. Very useful, although it's not backwards
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
419 compatible (that's why it is not enabled by default).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
420 This plugin comes with documentation: "matchit.txt". Let's first copy the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
421 plugin to the right directory. This time we will do it from inside Vim, so
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
422 that we can use $VIMRUNTIME. (You may skip some of the "mkdir" commands if
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
423 you already have the directory.) >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
424
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
425 :!mkdir ~/.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
426 :!mkdir ~/.vim/plugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
427 :!cp $VIMRUNTIME/macros/matchit.vim ~/.vim/plugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
428
22
cc049b00ee70 updated for version 7.0014
vimboss
parents: 10
diff changeset
429 The "cp" command is for Unix, on MS-DOS you can use "copy".
cc049b00ee70 updated for version 7.0014
vimboss
parents: 10
diff changeset
430
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
431 Now create a "doc" directory in one of the directories in 'runtimepath'. >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
432
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
433 :!mkdir ~/.vim/doc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
434
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
435 Copy the help file to the "doc" directory. >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
436
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
437 :!cp $VIMRUNTIME/macros/matchit.txt ~/.vim/doc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
438
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
439 Now comes the trick, which allows you to jump to the subjects in the new help
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
440 file: Generate the local tags file with the |:helptags| command. >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
441
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
442 :helptags ~/.vim/doc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
443
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
444 Now you can use the >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
445
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
446 :help g%
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
447
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
448 command to find help for "g%" in the help file you just added. You can see an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
449 entry for the local help file when you do: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
450
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
451 :help local-additions
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
452
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
453 The title lines from the local help files are automagically added to this
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
454 section. There you can see which local help files have been added and jump to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
455 them through the tag.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
456
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
457 For writing a local help file, see |write-local-help|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
458
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
459 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
460 *05.6* The option window
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
461
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
462 If you are looking for an option that does what you want, you can search in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
463 the help files here: |options|. Another way is by using this command: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
464
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
465 :options
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
466
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
467 This opens a new window, with a list of options with a one-line explanation.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
468 The options are grouped by subject. Move the cursor to a subject and press
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
469 <Enter> to jump there. Press <Enter> again to jump back. Or use CTRL-O.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
470
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
471 You can change the value of an option. For example, move to the "displaying
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
472 text" subject. Then move the cursor down to this line:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
473
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
474 set wrap nowrap ~
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
475
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
476 When you hit <Enter>, the line will change to:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
477
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
478 set nowrap wrap ~
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
479
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
480 The option has now been switched off.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
481
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
482 Just above this line is a short description of the 'wrap' option. Move the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
483 cursor one line up to place it in this line. Now hit <Enter> and you jump to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
484 the full help on the 'wrap' option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
485
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
486 For options that take a number or string argument you can edit the value.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
487 Then press <Enter> to apply the new value. For example, move the cursor a few
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
488 lines up to this line:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
489
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
490 set so=0 ~
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
491
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
492 Position the cursor on the zero with "$". Change it into a five with "r5".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
493 Then press <Enter> to apply the new value. When you now move the cursor
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
494 around you will notice that the text starts scrolling before you reach the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
495 border. This is what the 'scrolloff' option does, it specifies an offset
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
496 from the window border where scrolling starts.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
497
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
498 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
499 *05.7* Often used options
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
500
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
501 There are an awful lot of options. Most of them you will hardly ever use.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
502 Some of the more useful ones will be mentioned here. Don't forget you can
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
503 find more help on these options with the ":help" command, with single quotes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
504 before and after the option name. For example: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
505
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
506 :help 'wrap'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
507
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
508 In case you have messed up an option value, you can set it back to the
10
4e2284e71352 updated for version 7.0002
vimboss
parents: 7
diff changeset
509 default by putting an ampersand (&) after the option name. Example: >
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
510
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
511 :set iskeyword&
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
512
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
513
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
514 NOT WRAPPING LINES
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
515
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
516 Vim normally wraps long lines, so that you can see all of the text. Sometimes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
517 it's better to let the text continue right of the window. Then you need to
10
4e2284e71352 updated for version 7.0002
vimboss
parents: 7
diff changeset
518 scroll the text left-right to see all of a long line. Switch wrapping off
4e2284e71352 updated for version 7.0002
vimboss
parents: 7
diff changeset
519 with this command: >
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
520
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
521 :set nowrap
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
522
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
523 Vim will automatically scroll the text when you move to text that is not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
524 displayed. To see a context of ten characters, do this: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
525
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
526 :set sidescroll=10
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
527
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
528 This doesn't change the text in the file, only the way it is displayed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
529
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
530
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
531 WRAPPING MOVEMENT COMMANDS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
532
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
533 Most commands for moving around will stop moving at the start and end of a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
534 line. You can change that with the 'whichwrap' option. This sets it to the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
535 default value: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
536
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
537 :set whichwrap=b,s
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
538
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
539 This allows the <BS> key, when used in the first position of a line, to move
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
540 the cursor to the end of the previous line. And the <Space> key moves from
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
541 the end of a line to the start of the next one.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
542
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
543 To allow the cursor keys <Left> and <Right> to also wrap, use this command: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
544
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
545 :set whichwrap=b,s,<,>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
546
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
547 This is still only for Normal mode. To let <Left> and <Right> do this in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
548 Insert mode as well: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
549
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
550 :set whichwrap=b,s,<,>,[,]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
551
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
552 There are a few other flags that can be added, see 'whichwrap'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
553
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
554
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
555 VIEWING TABS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
556
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
557 When there are tabs in a file, you cannot see where they are. To make them
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
558 visible: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
559
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
560 :set list
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
561
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
562 Now every Tab is displayed as ^I. And a $ is displayed at the end of each
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
563 line, so that you can spot trailing spaces that would otherwise go unnoticed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
564 A disadvantage is that this looks ugly when there are many Tabs in a file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
565 If you have a color terminal, or are using the GUI, Vim can show the spaces
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
566 and tabs as highlighted characters. Use the 'listchars' option: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
567
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
568 :set listchars=tab:>-,trail:-
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
569
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
570 Now every tab will be displayed as ">---" (with more or less "-") and trailing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
571 white space as "-". Looks a lot better, doesn't it?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
572
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
573
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
574 KEYWORDS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
575
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
576 The 'iskeyword' option specifies which characters can appear in a word: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
577
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
578 :set iskeyword
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
579 < iskeyword=@,48-57,_,192-255 ~
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
580
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
581 The "@" stands for all alphabetic letters. "48-57" stands for ASCII
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
582 characters 48 to 57, which are the numbers 0 to 9. "192-255" are the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
583 printable latin characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
584 Sometimes you will want to include a dash in keywords, so that commands
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
585 like "w" consider "upper-case" to be one word. You can do it like this: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
586
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
587 :set iskeyword+=-
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
588 :set iskeyword
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
589 < iskeyword=@,48-57,_,192-255,- ~
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
590
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
591 If you look at the new value, you will see that Vim has added a comma for you.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
592 To remove a character use "-=". For example, to remove the underscore: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
593
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
594 :set iskeyword-=_
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
595 :set iskeyword
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
596 < iskeyword=@,48-57,192-255,- ~
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
597
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
598 This time a comma is automatically deleted.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
599
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
600
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
601 ROOM FOR MESSAGES
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
602
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
603 When Vim starts there is one line at the bottom that is used for messages.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
604 When a message is long, it is either truncated, thus you can only see part of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
605 it, or the text scrolls and you have to press <Enter> to continue.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
606 You can set the 'cmdheight' option to the number of lines used for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
607 messages. Example: >
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
608
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
609 :set cmdheight=3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
610
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
611 This does mean there is less room to edit text, thus it's a compromise.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
612
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
613 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
614
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
615 Next chapter: |usr_06.txt| Using syntax highlighting
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
616
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
617 Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: