comparison runtime/doc/os_beos.txt @ 20758:47bfe07e06a3 v8.2.0931

patch 8.2.0931: some remarks about BeOS remain Commit: https://github.com/vim/vim/commit/6938e27abd80715cf7beb9d3d579a63201f417a1 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Jun 7 22:23:19 2020 +0200 patch 8.2.0931: some remarks about BeOS remain Problem: Some remarks about BeOS remain. Solution: Remove BeOS remarks from the help and other files. (Emir Sari, closes #6221)
author Bram Moolenaar <Bram@vim.org>
date Sun, 07 Jun 2020 22:30:04 +0200
parents 1908e92b02fd
children f8116058ca76
comparison
equal deleted inserted replaced
20757:a06551b9a497 20758:47bfe07e06a3
1 *os_beos.txt* For Vim version 8.2. Last change: 2016 Mar 28 1 *os_beos.txt* For Vim version 8.2. Last change: 2020 Jun 07
2 2
3 3
4 VIM REFERENCE MANUAL by Bram Moolenaar 4 VIM REFERENCE MANUAL by Bram Moolenaar
5 5
6 6
7 *BeOS* *BeBox* 7 *beos* *BeOS* *BeBox*
8 This is a port of Vim 5.1 to the BeOS Preview Release 2 (also known as PR2) 8 This file used to contain particularities for the BeOS port of Vim.
9 or later.
10 9
11 This file contains the particularities for the BeBox/BeOS version of Vim. For 10 The BeOS support was removed in patch 8.2.0849.
12 matters not discussed in this file, Vim behaves very much like the Unix
13 |os_unix.txt| version.
14
15 1. General |beos-general|
16 2. Compiling Vim |beos-compiling|
17 3. Timeout in the Terminal |beos-timeout|
18 4. Unicode vs. Latin1 |beos-unicode|
19 5. The BeOS GUI |beos-gui|
20 6. The $VIM directory |beos-vimdir|
21 7. Drag & Drop |beos-dragndrop|
22 8. Single Launch vs. Multiple
23 Launch |beos-launch|
24 9. Fonts |beos-fonts|
25 10. The meta key modifier |beos-meta|
26 11. Mouse key mappings |beos-mouse|
27 12. Color names |beos-colors|
28 13. Compiling with Perl |beos-perl|
29 11
30 12
31 1. General *beos-general*
32
33 The default syntax highlighting mostly works with different foreground colors
34 to highlight items. This works best if you set your Terminal window to a
35 darkish background and light letters. Some middle-grey background (for
36 instance (r,g,b)=(168,168,168)) with black letters also works nicely. If you
37 use the default light background and dark letters, it may look better to
38 simply reverse the notion of foreground and background color settings. To do
39 this, add this to your .vimrc file (where <Esc> may need to be replaced with
40 the escape character): >
41
42 :if &term == "beos-ansi"
43 : set t_AB=<Esc>[3%dm
44 : set t_AF=<Esc>[4%dm
45 :endif
46
47
48 2. Compiling Vim *beos-compiling*
49
50 From the Advanced Access Preview Release (AAPR) on, Vim can be configured with
51 the standard configure script. To get the compiler and its flags right, use
52 the following command-line in the shell (you can cut and paste it in one go):
53
54 CC=$BE_C_COMPILER CFLAGS="$BE_DEFAULT_C_FLAGS -O7" \
55 ./configure --prefix=/boot/home/config
56
57 $BE_C_COMPILER is usually "mwcc", $BE_DEFAULT_C_FLAGS is usually "-I- -I."
58
59 When configure has run, and you wish to enable GUI support, you must edit the
60 config.mk file so that the lines with GUI_xxx refer to $(BEOSGUI_xxx) instead
61 of $(NONE_xxx).
62 Alternatively you can make this change in the Makefile; it will have a
63 more permanent effect. Search for "NONE_".
64
65 After compilation you need to add the resources to the binary. Add the
66 following few lines near the end (before the line with "exit $exit_value") of
67 the link.sh script to do this automatically.
68
69 rmattr BEOS:TYPE vim
70 copyres os_beos.rsrc vim
71 mimeset vim
72
73 Also, create a dummy file "strip":
74
75 #!/bin/sh
76 mimeset $1
77 exit 0
78
79 You will need it when using "make install" to install Vim.
80
81 Now type "make" to compile Vim, then "make install" to install it.
82
83 If you want to install Vim by hand, you must copy Vim to $HOME/config/bin, and
84 create a bunch of symlinks to it ({g,r,rg}{vim,ex,view}). Furthermore you must
85 copy Vim's configuration files to $HOME/config/share/vim:
86 vim-5.0s/{*.vim,doc,syntax}. For completeness, you should also copy the nroff
87 manual pages to $HOME/config/man/man1. Don't forget ctags/ctags and xxd/xxd!
88
89 Obviously, you need the unlimited linker to actually link Vim. See
90 http://www.metrowerks.com for purchasing the CodeWarrior compiler for BeOS.
91 There are currently no other linkers that can do the job.
92
93 This won't be able to include the Perl or Python interfaces even if
94 you have the appropriate files installed. |beos-perl|
95
96
97 3. Timeout in the Terminal *beos-timeout*
98
99 Because some POSIX/UNIX features are still missing[1], there is no direct OS
100 support for read-with-timeout in the Terminal. This would mean that you cannot
101 use :mappings of more than one character, unless you also :set notimeout.
102 |'timeout'|
103
104 To circumvent this problem, I added a workaround to provide the necessary
105 input with timeout by using an extra thread which reads ahead one character.
106 As a side effect, it also makes Vim recognize when the Terminal window
107 resizes.
108
109 Function keys are not supported in the Terminal since they produce very
110 indistinctive character sequences.
111
112 These problems do not exist in the GUI.
113
114 [1]: there is no select() on file descriptors; also the termios VMIN and VTIME
115 settings do not seem to work properly. This has been the case since DR7 at
116 least and still has not been fixed as of PR2.
117
118 *beos-unicode*
119 4. Unicode vs. Latin1 *beos-utf8*
120
121 BeOS uses Unicode and UTF-8 for text strings (16-bit characters encoded to
122 8-bit characters). Vim assumes ISO-Latin1 or other 8-bit character codes.
123 This does not produce the desired results for non-ASCII characters. Try the
124 command :digraphs to see. If they look messed up, use :set isprint=@ to
125 (slightly) improve the display of ISO-Latin1 characters 128-255. This works
126 better in the GUI, depending on which font you use (below).
127
128 You may also use the /boot/bin/xtou command to convert UTF-8 files from (xtou
129 -f iso1 filename) or to (xtou -t iso1 filename) ISO-Latin1 characters.
130
131
132 5. The BeOS GUI *beos-gui*
133
134 The BeOS GUI is no longer included. It was not maintained for a while and
135 most likely didn't work. If you want to work on this: get the Vim 6.x version
136 and merge it back in.
137
138
139 6. The $VIM directory *beos-vimdir*
140
141 $VIM is the symbolic name for the place where Vim's support files are stored.
142 The default value for $VIM is set at compile time and can be determined with >
143
144 :version
145
146 The normal value is /boot/home/config/share/vim. If you don't like it you can
147 set the VIM environment variable to override this, or set 'helpfile' in your
148 .vimrc: >
149
150 :if version >= 500
151 : set helpfile=~/vim/vim54/doc/help.txt
152 : syntax on
153 :endif
154
155
156 7. Drag & Drop *beos-dragndrop*
157
158 You can drop files and directories on either the Vim icon (starts a new Vim
159 session, unless you use the File Types application to set Vim to be "Single
160 Launch") or on the Vim window (starts editing the files). Dropping a folder
161 sets Vim's current working directory. |:cd| |:pwd| If you drop files or
162 folders with either SHIFT key pressed, Vim changes directory to the folder
163 that contains the first item dropped. When starting Vim, there is no need to
164 press shift: Vim behaves as if you do.
165
166 Files dropped set the current argument list. |argument-list|
167
168
169 8. Single Launch vs. Multiple Launch *beos-launch*
170
171 As distributed Vim's Application Flags (as seen in the FileTypes preference)
172 are set to Multiple Launch. If you prefer, you can set them to Single Launch
173 instead. Attempts to start a second copy of Vim will cause the first Vim to
174 open the files instead. This works from the Tracker but also from the command
175 line. In the latter case, non-file (option) arguments are not supported.
176
177 NB: Only the GUI version has a BApplication (and hence Application Flags).
178 This section does not apply to the GUI-less version, should you compile one.
179
180
181 9. Fonts *beos-fonts*
182
183 Set fonts with >
184
185 :set guifont=Courier10_BT/Roman/10
186
187 where the first part is the font family, the second part the style, and the
188 third part the size. You can use underscores instead of spaces in family and
189 style.
190
191 Best results are obtained with monospaced fonts (such as Courier). Vim
192 attempts to use all fonts in B_FIXED_SPACING mode but apparently this does not
193 work for proportional fonts (despite what the BeBook says).
194
195 Vim also tries to use the B_ISO8859_1 encoding, also known as ISO Latin 1.
196 This also does not work for all fonts. It does work for Courier, but not for
197 ProFontISOLatin1/Regular (strangely enough). You can verify this by giving the >
198
199 :digraphs
200
201 command, which lists a bunch of characters with their ISO Latin 1 encoding.
202 If, for instance, there are "box" characters among them, or the last character
203 isn't a dotted-y, then for this font the encoding does not work.
204
205 If the font you specify is unavailable, you get the system fixed font.
206
207 Standard fixed-width system fonts are:
208
209 ProFontISOLatin1/Regular
210 Courier10_BT/Roman
211 Courier10_BT/Italic
212 Courier10_BT/Bold
213 Courier10_BT/Bold_Italic
214
215 Standard proportional system fonts are:
216
217 Swis721_BT/Roman
218 Swis721_BT/Italic
219 Swis721_BT/Bold
220 Swis721_BT/Bold_Italic
221 Dutch801_Rm_BT/Roman
222 Dutch801_Rm_BT/Italic
223 Dutch801_Rm_BT/Bold
224 Dutch801_Rm_BT/Bold_Italic
225 Baskerville/Roman
226 Baskerville/Italic
227 Baskerville/Bold
228 Baskerville/Bold_Italic
229 SymbolProp_BT/Regular
230
231 Try some of them, just for fun.
232
233
234 10. The meta key modifier *beos-meta*
235
236 The META key modifier is obtained by the left or right OPTION keys. This is
237 because the ALT (aka COMMAND) keys are not passed to applications.
238
239
240 11. Mouse key mappings *beos-mouse*
241
242 Vim calls the various mouse buttons LeftMouse, MiddleMouse and RightMouse. If
243 you use the default Mouse preference settings these names indeed correspond to
244 reality. Vim uses this mapping:
245
246 Button 1 -> LeftMouse,
247 Button 2 -> RightMouse,
248 Button 3 -> MiddleMouse.
249
250 If your mouse has fewer than 3 buttons you can provide your own mapping from
251 mouse clicks with modifier(s) to other mouse buttons. See the swapmouse
252 package for an example: |gui-mouse-mapping|
253 $VIMRUNTIME/pack/dist/opt/swapmouse/plugin/swapmouse.vim
254
255
256 12. Color names *beos-colors*
257
258 Vim has a number of color names built-in. Additional names are read from the
259 file $VIMRUNTIME/rgb.txt, if present. This file is basically the color
260 database from X. Names used from this file are cached for efficiency.
261
262
263 13. Compiling with Perl *beos-perl*
264
265 Compiling with Perl support enabled is slightly tricky. The Metrowerks
266 compiler has some strange ideas where to search for include files. Since
267 several include files with Perl have the same names as some Vim header
268 files, the wrong ones get included. To fix this, run the following Perl
269 script while in the vim-5.0/src directory: >
270
271 preproc.pl > perl.h
272
273 #!/bin/env perl
274 # Simple #include expander, just good enough for the Perl header files.
275
276 use strict;
277 use IO::File;
278 use Config;
279
280 sub doinclude
281 {
282 my $filename = $_[0];
283 my $fh = new IO::File($filename, "r");
284 if (defined $fh) {
285 print "/* Start of $filename */\n";
286
287 while (<$fh>) {
288 if (/^#include "(.*)"/) {
289 doinclude($1);
290 print "/* Back in $filename */\n";
291 } else {
292 print $_;
293 }
294 }
295 print "/* End of $filename */\n";
296
297 undef $fh;
298 } else {
299 print "/* Cannot open $filename */\n";
300 print "#include \"$filename\"\n";
301 }
302 }
303
304 chdir $Config{installarchlib}."/CORE";
305 doinclude "perl.h";
306
307 It expands the "perl.h" header file, using only other Perl header files.
308
309 Now you can configure & make Vim with the --enable-perlinterp option.
310 Be warned though that this adds about 616 kilobytes to the size of Vim!
311 Without Perl, Vim with default features and GUI is about 575K, with Perl
312 it is about 1191K.
313
314 -Olaf Seibert
315
316 [Note: these addresses no longer work:]
317 <rhialto@polder.ubc.kun.nl>
318 http://polder.ubc.kun.nl/~rhialto/be
319
320 vim:tw=78:ts=8:noet:ft=help:norl: 13 vim:tw=78:ts=8:noet:ft=help:norl: