19721
|
1 *os_haiku.txt* For Vim version 8.2. Last change: 2020 Mar 19
|
19526
|
2
|
|
3
|
|
4 VIM REFERENCE MANUAL by Bram Moolenaar
|
|
5
|
|
6
|
|
7 *Haiku*
|
|
8 This file contains the particularities for the Haiku version of Vim. For
|
|
9 matters not discussed in this file, Vim behaves very much like the Unix
|
|
10 |os_unix.txt| version.
|
|
11
|
|
12 Haiku is an open-source operating system inspired by BeOS, that specifically
|
|
13 targets personal computing.
|
|
14
|
|
15 1. General |haiku-general|
|
|
16 2. Compiling Vim |haiku-compiling|
|
|
17 3. The Haiku GUI |haiku-gui|
|
|
18 4. The $VIM directory |haiku-vimdir|
|
19721
|
19 5. The $USER_SETTINGS_DIR
|
19526
|
20 directory |haiku-user-settings-dir|
|
|
21 6. Drag & Drop |haiku-dragndrop|
|
|
22 7. Single Launch vs. Multiple
|
|
23 Launch |haiku-launch|
|
|
24 8. Fonts |haiku-fonts|
|
|
25 9. The meta key modifier |haiku-meta|
|
|
26 10. Mouse key mappings |haiku-mouse|
|
|
27 11. Color names |haiku-colors|
|
|
28 12. Credits |haiku-support-credits|
|
19813
|
29 13. Bugs & to-do |haiku-bugs|
|
19526
|
30
|
|
31
|
|
32 1. General *haiku-general*
|
|
33
|
|
34 The default syntax highlighting mostly works with different foreground colors
|
|
35 to highlight items. This works best if you set your Terminal window to a
|
|
36 darkish background and light letters. Some middle-grey background (for
|
|
37 instance (r,g,b)=(168,168,168)) with black letters also works nicely.
|
|
38
|
|
39
|
|
40 2. Compiling Vim *haiku-compiling*
|
|
41
|
|
42 Vim can be compiled using the standard configure/make approach. Running
|
|
43 ./configure without any arguments or passing --enable-gui=haiku, will compile
|
|
44 vim with the Haiku GUI support. Run ./configure --help , to find out other
|
|
45 features you can enable/disable.
|
|
46
|
19721
|
47 Haiku uses "ncurses6" as its terminal library, therefore you need to have
|
|
48 "ncurses6_devel" package installed from HaikuDepot in order to configure
|
|
49 the Haiku build. Just append "--with-tlib=ncurses6" to ./configure command
|
|
50 below for the initial build.
|
|
51
|
19526
|
52 Now you should use "make" to compile Vim, then "make install" to install it.
|
19721
|
53 For seamless integration into Haiku, the GUI-less vim binary should be
|
19526
|
54 additionally installed over the GUI version. Typical build commands are: >
|
|
55
|
|
56 ./configure --prefix=`finddir B_SYSTEM_NONPACKAGED_DIRECTORY` \
|
|
57 --datarootdir=`finddir B_SYSTEM_NONPACKAGED_DATA_DIRECTORY` \
|
|
58 --mandir=`finddir B_SYSTEM_NONPACKAGED_DIRECTORY`/documentation/man \
|
|
59 make clean
|
|
60 make install
|
|
61
|
|
62 ./configure --prefix=`finddir B_SYSTEM_NONPACKAGED_DIRECTORY` \
|
|
63 --datarootdir=`finddir B_SYSTEM_NONPACKAGED_DATA_DIRECTORY` \
|
|
64 --mandir=`finddir B_SYSTEM_NONPACKAGED_DIRECTORY`/documentation/man \
|
|
65 --disable-gui
|
|
66 make clean
|
|
67 make install
|
|
68
|
|
69
|
|
70 3. The Haiku GUI *haiku-gui*
|
|
71
|
|
72 Normally Vim starts with the GUI if you start it as gvim or vim -g. The vim
|
|
73 version with GUI tries to determine if it was started from the Tracker instead
|
|
74 of the Terminal, and if so, uses the GUI anyway. However, the current detection
|
|
75 scheme is fooled if you use the command "vim - </dev/null".
|
|
76
|
|
77 Stuff that does not work yet:
|
|
78
|
|
79 - Mouse up events are not generated when outside the window. This may be a bug in
|
|
80 Haiku. You can notice this when selecting text and moving the cursor outside
|
|
81 the window, then letting go of the mouse button. Another way is when you
|
|
82 drag the scrollbar and do the same thing. Because Vim still thinks you are
|
|
83 still playing with the scrollbar it won't change it itself. I provided a
|
|
84 workaround which kicks in when the window is activated or deactivated (so it
|
|
85 works best with focus- follows-mouse turned on).
|
19813
|
86 - The cursor does not flash.
|
19526
|
87
|
|
88
|
|
89 4. The $VIM directory *haiku-vimdir*
|
|
90
|
|
91 $VIM is the symbolic name for the place where Vims support files are stored.
|
|
92 The default value for $VIM is set at compile time and can be determined with >
|
|
93
|
|
94 :version
|
|
95
|
19721
|
96 The normal value is /boot/system/data/vim for Haikuports version,
|
|
97 /boot/system/non-packaged/data/vim for manual builds. If you don't like it
|
|
98 you can set the VIM environment variable to override this, or set 'helpfile'
|
|
99 in your .vimrc: >
|
19526
|
100
|
|
101 :if version >= 500
|
|
102 : set helpfile=~/vim/runtime/doc/help.txt
|
|
103 : syntax on
|
|
104 :endif
|
|
105
|
|
106
|
|
107 5. The $USER_SETTINGS_DIR directory *haiku-user-settings-dir*
|
|
108
|
|
109 $USER_SETTINGS_DIR is the symbolic name for the place where Haiku
|
|
110 configuration and settings files are stored.
|
|
111
|
|
112 The normal value is /boot/home/config/settings.
|
|
113
|
|
114
|
|
115 6. Drag & Drop *haiku-dragndrop*
|
|
116
|
|
117 You can drop files and directories on either the Vim icon (starts a new Vim
|
|
118 session, unless you use the File Types application to set Vim to be "Single
|
|
119 Launch") or on the Vim window (starts editing the files). Dropping a folder
|
|
120 sets Vim's current working directory. |:cd| |:pwd| If you drop files or
|
|
121 folders with either SHIFT key pressed, Vim changes directory to the folder
|
|
122 that contains the first item dropped. When starting Vim, there is no need to
|
|
123 press shift: Vim behaves as if you do.
|
|
124
|
|
125 Files dropped set the current argument list. |argument-list|
|
|
126
|
|
127
|
|
128 7. Single Launch vs. Multiple Launch *haiku-launch*
|
|
129
|
|
130 As distributed Vim's Application Flags (as seen in the FileTypes preference)
|
|
131 are set to Multiple Launch. If you prefer, you can set them to Single Launch
|
|
132 instead. Attempts to start a second copy of Vim will cause the first Vim to
|
|
133 open the files instead. This works from the Tracker but also from the command
|
|
134 line. In the latter case, non-file (option) arguments are not supported.
|
|
135 Another drawback of the Single Launch is silent ignore of "Open With ..."
|
|
136 requests by vim instance that running as non-GUI application even GUI support
|
|
137 was compiled in. Vim instance running with GUI has no such problems.
|
|
138
|
|
139 NB: Only the GUI version has a BApplication (and hence Application Flags).
|
|
140 This section does not apply to the GUI-less version, should you compile one.
|
|
141
|
|
142
|
|
143 8. Fonts *haiku-fonts*
|
|
144
|
|
145 Set fonts with >
|
|
146
|
|
147 :set guifont=DejaVu_Sans_Mono/Book/12
|
|
148
|
|
149 where the first part is the font family, the second part the style, and the
|
|
150 third part the size. You can use underscores instead of spaces in family and
|
|
151 style.
|
|
152
|
|
153 Best results are obtained with monospaced fonts. Vim attempts to use all
|
|
154 fonts in B_FIXED_SPACING mode but apparently this does not work for
|
|
155 proportional fonts (despite what the BeBook says).
|
|
156
|
|
157 To verify which encodings are supported by the current font give the >
|
|
158
|
|
159 :digraphs
|
|
160
|
|
161 command, which lists a bunch of characters with their ISO Latin 1 encoding.
|
|
162 If, for instance, there are "box" characters among them, or the last character
|
|
163 isn't a dotted-y, then for this font the encoding does not work.
|
|
164
|
|
165 If the font you specify is unavailable, you get the system fixed font.
|
|
166
|
|
167 GUI Font Selection Dialog is available at giving the >
|
|
168
|
|
169 :set guifont=*
|
|
170
|
|
171 command.
|
|
172
|
|
173
|
|
174 9. The meta key modifier *haiku-meta*
|
|
175
|
|
176 The META key modifier is obtained by the left or right OPTION keys. This is
|
|
177 because the ALT (aka COMMAND) keys are not passed to applications.
|
|
178
|
|
179
|
|
180 10. Mouse key mappings *haiku-mouse*
|
|
181
|
|
182 Vim calls the various mouse buttons LeftMouse, MiddleMouse and RightMouse. If
|
|
183 you use the default Mouse preference settings these names indeed correspond to
|
|
184 reality. Vim uses this mapping:
|
|
185
|
|
186 Button 1 -> LeftMouse,
|
|
187 Button 2 -> RightMouse,
|
|
188 Button 3 -> MiddleMouse.
|
|
189
|
|
190 If your mouse has fewer than 3 buttons you can provide your own mapping from
|
|
191 mouse clicks with modifier(s) to other mouse buttons. See the file
|
|
192 $VIM/macros/swapmous.vim for an example. |gui-mouse-mapping|
|
|
193
|
|
194
|
|
195 11. Color names *haiku-colors*
|
|
196
|
|
197 Vim has a number of color names built-in. Additional names are read from the
|
|
198 file $VIMRUNTIME/rgb.txt, if present. This file is basically the color
|
|
199 database from X. Names used from this file are cached for efficiency.
|
|
200
|
|
201
|
|
202 12. GUI Toolbar Images *haiku-toolbar-images*
|
|
203
|
|
204 Alternative set of toolbar images should be the PNG image of any height you
|
|
205 like. Image width is calculated to contain at least 32 buttons in one-row
|
|
206 cells.
|
|
207 The image should be stored under the name $VIRUNTIME/bitmaps/builtin-tools.png
|
|
208 More info about the buttons assignment are at |builtin-tools|.
|
|
209
|
|
210
|
|
211 13. Credits *haiku-support-credits*
|
|
212
|
|
213 Haiku port is based on work done for BeOS version by many people
|
|
214 - BeBox GUI support Copyright 1998 by Olaf Seibert;
|
|
215 - Ported to R4 by Richard Offer <richard@whitequeen.com> Jul 99;
|
|
216 - Those who contributed, not listed above but not forgotten;
|
|
217 - Haiku support by Siarzhuk Zharski <imker@gmx.li> Apr-Mai 2009.
|
|
218
|
|
219 All the changes and patches released under vim-license.
|
|
220
|
|
221 Thank you, all!
|
|
222
|
|
223
|
19813
|
224 13. Bugs & to-do *haiku-bugs*
|
|
225
|
|
226 The port is under development now and far away from the perfect state. For bug
|
|
227 reports, patches and wishes, please use the Vim mailing list or Vim Github
|
|
228 repository.
|
|
229
|
|
230 Mailing list: https://www.vim.org/maillist.php
|
|
231 Vim Github repository: https://github.com/vim/vim
|
19526
|
232
|
|
233
|
|
234 vim:tw=78:ts=8:ft=help:norl:
|