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