From 7c1de0c5f79f9d78ede819ad3435a8f74fd2ef47 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 30 Sep 2013 16:49:22 +0200 Subject: [PATCH] Get Vim 7.3 recipe working. --- app-editors/vim/licenses/Vim | 76 ++ .../{vim-7.3.patch => vim-7.3.patchset} | 782 ++++++------------ app-editors/vim/vim-7.3.recipe | 61 +- 3 files changed, 382 insertions(+), 537 deletions(-) create mode 100644 app-editors/vim/licenses/Vim rename app-editors/vim/patches/{vim-7.3.patch => vim-7.3.patchset} (89%) diff --git a/app-editors/vim/licenses/Vim b/app-editors/vim/licenses/Vim new file mode 100644 index 000000000..e445bcb9a --- /dev/null +++ b/app-editors/vim/licenses/Vim @@ -0,0 +1,76 @@ +I) There are no restrictions on distributing unmodified copies of Vim except + that they must include this license text. You can also distribute + unmodified parts of Vim, likewise unrestricted except that they must + include this license text. You are also allowed to include executables + that you made from the unmodified Vim sources, plus your own usage + examples and Vim scripts. + +II) It is allowed to distribute a modified (or extended) version of Vim, + including executables and/or source code, when the following four + conditions are met: + 1) This license text must be included unmodified. + 2) The modified Vim must be distributed in one of the following five ways: + a) If you make changes to Vim yourself, you must clearly describe in + the distribution how to contact you. When the maintainer asks you + (in any way) for a copy of the modified Vim you distributed, you + must make your changes, including source code, available to the + maintainer without fee. The maintainer reserves the right to + include your changes in the official version of Vim. What the + maintainer will do with your changes and under what license they + will be distributed is negotiable. If there has been no negotiation + then this license, or a later version, also applies to your changes. + The current maintainer is Bram Moolenaar . If this + changes it will be announced in appropriate places (most likely + vim.sf.net, www.vim.org and/or comp.editors). When it is completely + impossible to contact the maintainer, the obligation to send him + your changes ceases. Once the maintainer has confirmed that he has + received your changes they will not have to be sent again. + b) If you have received a modified Vim that was distributed as + mentioned under a) you are allowed to further distribute it + unmodified, as mentioned at I). If you make additional changes the + text under a) applies to those changes. + c) Provide all the changes, including source code, with every copy of + the modified Vim you distribute. This may be done in the form of a + context diff. You can choose what license to use for new code you + add. The changes and their license must not restrict others from + making their own changes to the official version of Vim. + d) When you have a modified Vim which includes changes as mentioned + under c), you can distribute it without the source code for the + changes if the following three conditions are met: + - The license that applies to the changes permits you to distribute + the changes to the Vim maintainer without fee or restriction, and + permits the Vim maintainer to include the changes in the official + version of Vim without fee or restriction. + - You keep the changes for at least three years after last + distributing the corresponding modified Vim. When the maintainer + or someone who you distributed the modified Vim to asks you (in + any way) for the changes within this period, you must make them + available to him. + - You clearly describe in the distribution how to contact you. This + contact information must remain valid for at least three years + after last distributing the corresponding modified Vim, or as long + as possible. + e) When the GNU General Public License (GPL) applies to the changes, + you can distribute the modified Vim under the GNU GPL version 2 or + any later version. + 3) A message must be added, at least in the output of the ":version" + command and in the intro screen, such that the user of the modified Vim + is able to see that it was modified. When distributing as mentioned + under 2)e) adding the message is only required for as far as this does + not conflict with the license used for the changes. + 4) The contact information as required under 2)a) and 2)d) must not be + removed or changed, except that the person himself can make + corrections. + +III) If you distribute a modified version of Vim, you are encouraged to use + the Vim license for your changes and make them available to the + maintainer, including the source code. The preferred way to do this is + by e-mail or by uploading the files to a server and e-mailing the URL. + If the number of changes is small (e.g., a modified Makefile) e-mailing a + context diff will do. The e-mail address to be used is + + +IV) It is not allowed to remove this license from the distribution of the Vim + sources, parts of it or from a modified version. You may use this + license for previous Vim releases instead of the license that they came + with, at your option. diff --git a/app-editors/vim/patches/vim-7.3.patch b/app-editors/vim/patches/vim-7.3.patchset similarity index 89% rename from app-editors/vim/patches/vim-7.3.patch rename to app-editors/vim/patches/vim-7.3.patchset index 09e8c002c..f297d4fc1 100644 --- a/app-editors/vim/patches/vim-7.3.patch +++ b/app-editors/vim/patches/vim-7.3.patchset @@ -1,7 +1,14 @@ -diff -Naur vim73/Makefile vim73.haiku/Makefile ---- vim73/Makefile 2010-08-15 12:23:34.047710208 +0000 -+++ vim73.haiku/Makefile 2010-08-20 23:30:35.620756992 +0000 -@@ -196,6 +196,15 @@ +From b97ce2e9738d5704064d1f1e44294a453cbf040c Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Mon, 30 Sep 2013 16:06:53 +0200 +Subject: Reformat the existing haikuports patch to git format. + + +diff --git a/Makefile b/Makefile +index bf2b309..7902c56 100644 +--- a/Makefile ++++ b/Makefile +@@ -196,6 +196,15 @@ DOSBIN_S = dosbin_s # - Rename the executables to vimos2.exe, xxdos2.exe and teeos2.exe and copy # them to here. # - "make os2bin". @@ -17,7 +24,7 @@ diff -Naur vim73/Makefile vim73.haiku/Makefile VIMVER = vim-$(MAJOR).$(MINOR) VERSION = $(MAJOR)$(MINOR) -@@ -576,3 +585,37 @@ +@@ -576,3 +585,37 @@ html: dist dist/$(COMMENT_HTML) farsi: dist dist/$(COMMENT_FARSI) -rm -f dist/farsi$(VERSION).zip zip -9 -rD -z dist/farsi$(VERSION).zip farsi < dist/$(COMMENT_FARSI) @@ -55,10 +62,11 @@ diff -Naur vim73/Makefile vim73.haiku/Makefile + echo "URL: http://www.vim.org/" >> $(DESCRIPTION) + cd dist/boot && zip -9 -r -z -y ../$(PACKAGE_NAME).zip * $(COMMENT) < $(COMMENT) + -diff -Naur vim73/runtime/doc/eval.txt vim73.haiku/runtime/doc/eval.txt ---- vim73/runtime/doc/eval.txt 2010-08-15 14:23:20.045088768 +0200 -+++ vim73.haiku/runtime/doc/eval.txt 2012-09-15 21:37:50.934019072 +0200 -@@ -6081,7 +6081,7 @@ +diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt +index 5403551..6f79962 100644 +--- a/runtime/doc/eval.txt ++++ b/runtime/doc/eval.txt +@@ -6081,7 +6081,7 @@ arp Compiled with ARP support (Amiga). autocmd Compiled with autocommand support. |autocommand| balloon_eval Compiled with |balloon-eval| support. balloon_multiline GUI supports multiline balloons. @@ -67,7 +75,7 @@ diff -Naur vim73/runtime/doc/eval.txt vim73.haiku/runtime/doc/eval.txt browse Compiled with |:browse| support, and browse() will work. builtin_terms Compiled with some builtin terminals. -@@ -6133,6 +6133,7 @@ +@@ -6133,6 +6133,7 @@ gui_mac Compiled with Macintosh GUI. gui_motif Compiled with Motif GUI. gui_photon Compiled with Photon GUI. gui_win32 Compiled with MS Windows Win32 GUI. @@ -75,10 +83,11 @@ diff -Naur vim73/runtime/doc/eval.txt vim73.haiku/runtime/doc/eval.txt gui_win32s idem, and Win32s system being used (Windows 3.1) gui_running Vim is running in the GUI, or it will start soon. hangul_input Compiled with Hangul input support. |hangul| -diff -Naur vim73/runtime/doc/gui.txt vim73.haiku/runtime/doc/gui.txt ---- vim73/runtime/doc/gui.txt 2010-08-15 14:23:20.046661632 +0200 -+++ vim73.haiku/runtime/doc/gui.txt 2012-09-16 21:58:25.748158976 +0200 -@@ -97,6 +97,7 @@ +diff --git a/runtime/doc/gui.txt b/runtime/doc/gui.txt +index f9bbf78..7649e35 100644 +--- a/runtime/doc/gui.txt ++++ b/runtime/doc/gui.txt +@@ -97,6 +97,7 @@ Recommended place for your personal GUI initializations: OS/2 $HOME/.gvimrc or $VIM/.gvimrc MS-DOS and Win32 $HOME/_gvimrc or $VIM/_gvimrc Amiga s:.gvimrc or $VIM/.gvimrc @@ -86,10 +95,11 @@ diff -Naur vim73/runtime/doc/gui.txt vim73.haiku/runtime/doc/gui.txt There are a number of options which only have meaning in the GUI version of Vim. These are 'guicursor', 'guifont', 'guipty' and 'guioptions'. They are -diff -Naur vim73/runtime/doc/help.txt vim73.haiku/runtime/doc/help.txt ---- vim73/runtime/doc/help.txt 2010-08-15 14:23:20.047448064 +0200 -+++ vim73.haiku/runtime/doc/help.txt 2012-09-16 22:03:00.902823936 +0200 -@@ -155,6 +155,7 @@ +diff --git a/runtime/doc/help.txt b/runtime/doc/help.txt +index 4860eb2..be4c464 100644 +--- a/runtime/doc/help.txt ++++ b/runtime/doc/help.txt +@@ -155,6 +155,7 @@ GUI ~ |gui_w16.txt| Windows 3.1 GUI |gui_w32.txt| Win32 GUI |gui_x11.txt| X11 GUI @@ -97,7 +107,7 @@ diff -Naur vim73/runtime/doc/help.txt vim73.haiku/runtime/doc/help.txt Interfaces ~ |if_cscop.txt| using Cscope with Vim -@@ -181,7 +182,7 @@ +@@ -181,7 +182,7 @@ Versions ~ Remarks about specific systems ~ |os_390.txt| OS/390 Unix |os_amiga.txt| Amiga @@ -106,10 +116,11 @@ diff -Naur vim73/runtime/doc/help.txt vim73.haiku/runtime/doc/help.txt |os_dos.txt| MS-DOS and MS-Windows NT/95 common items |os_mac.txt| Macintosh |os_mint.txt| Atari MiNT -diff -Naur vim73/runtime/doc/options.txt vim73.haiku/runtime/doc/options.txt ---- vim73/runtime/doc/options.txt 2010-08-15 14:23:21.051642368 +0200 -+++ vim73.haiku/runtime/doc/options.txt 2012-05-28 12:06:04.016777216 +0200 -@@ -3528,7 +3528,8 @@ +diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt +index 1282a90..1fdbdd0 100644 +--- a/runtime/doc/options.txt ++++ b/runtime/doc/options.txt +@@ -3528,7 +3528,8 @@ A jump table for the options with a short description can be found at |Q_op|. 'guitablabel' can be used to change the text in the labels. When 'e' is missing a non-GUI tab pages line may be used. The GUI tabs are only supported on some systems, currently @@ -119,7 +130,7 @@ diff -Naur vim73/runtime/doc/options.txt vim73.haiku/runtime/doc/options.txt *'go-f'* 'f' Foreground: Don't use fork() to detach the GUI from the shell where it was started. Use this for programs that wait for the -@@ -5567,7 +5568,12 @@ +@@ -5567,7 +5568,12 @@ A jump table for the options with a short description can be found at |Q_op|. $VIM/vimfiles, $VIMRUNTIME, $VIM/vimfiles/after, @@ -133,7 +144,7 @@ diff -Naur vim73/runtime/doc/options.txt vim73.haiku/runtime/doc/options.txt global {not in Vi} This is a list of directories which will be searched for runtime -@@ -6920,6 +6926,7 @@ +@@ -6920,6 +6926,7 @@ A jump table for the options with a short description can be found at |Q_op|. in the GUI: "builtin_gui" on Amiga: "amiga" on BeOS: "beos-ansi" @@ -141,337 +152,11 @@ diff -Naur vim73/runtime/doc/options.txt vim73.haiku/runtime/doc/options.txt on Mac: "mac-ansi" on MiNT: "vt52" on MS-DOS: "pcterm" -diff -Naur vim73/runtime/doc/os_haiku.txt vim73.haiku/runtime/doc/os_haiku.txt ---- vim73/runtime/doc/os_haiku.txt 1970-01-01 01:00:00.000000000 +0100 -+++ vim73.haiku/runtime/doc/os_haiku.txt 2012-09-17 20:45:04.675807232 +0200 -@@ -0,0 +1,323 @@ -+*os_haiku.txt* For Vim version 7.4. Last change: 2012 May 28 -+ -+ -+ VIM REFERENCE MANUAL by Bram Moolenaar -+ -+// TODO - bring to correspondence with Haiku circumstances! -+ -+ *Haiku* -+This is a port of Vim 7.4 to the Haiku A4 or later. -+ -+This file contains the particularities for the Haiku version of Vim. For -+matters not discussed in this file, Vim behaves very much like the Unix -+|os_unix.txt| version. -+ -+ 1. General |beos-general| -+ 2. Compiling Vim |beos-compiling| -+ 3. Timeout in the Terminal |beos-timeout| -+ 4. Unicode vs. Latin1 |beos-unicode| -+ 5. The BeOS GUI |beos-gui| -+ 6. The $VIM directory |beos-vimdir| -+ 6+. The $BE_USER_SETTINGS directory |haiku-user-settings-dir| -+ 7. Drag & Drop |beos-dragndrop| -+ 8. Single Launch vs. Multiple -+ Launch |beos-launch| -+ 9. Fonts |beos-fonts| -+10. The meta key modifier |beos-meta| -+11. Mouse key mappings |beos-mouse| -+12. Color names |beos-colors| -+13. Compiling with Perl |beos-perl| -+ -+ -+1. General *beos-general* -+ -+The default syntax highlighting mostly works with different foreground colors -+to highlight items. This works best if you set your Terminal window to a -+darkish background and light letters. Some middle-grey background (for -+instance (r,g,b)=(168,168,168)) with black letters also works nicely. If you -+use the default light background and dark letters, it may look better to -+simply reverse the notion of foreground and background color settings. To do -+this, add this to your .vimrc file (where may need to be replaced with -+the escape character): > -+ -+ :if &term == "beos-ansi" -+ : set t_AB=[3%dm -+ : set t_AF=[4%dm -+ :endif -+ -+ -+2. Compiling Vim *beos-compiling* -+ -+From the Advanced Access Preview Release (AAPR) on, Vim can be configured with -+the standard configure script. To get the compiler and its flags right, use -+the following command-line in the shell (you can cut and paste it in one go): -+ -+CC=$BE_C_COMPILER CFLAGS="$BE_DEFAULT_C_FLAGS -O7" \ -+ ./configure --prefix=/boot/home/config -+ -+$BE_C_COMPILER is usually "mwcc", $BE_DEFAULT_C_FLAGS is usually "-I- -I." -+ -+When configure has run, and you wish to enable GUI support, you must edit the -+config.mk file so that the lines with GUI_xxx refer to $(BEOSGUI_xxx) instead -+of $(NONE_xxx). -+Alternatively you can make this change in the Makefile; it will have a -+more permanent effect. Search for "NONE_". -+ -+After compilation you need to add the resources to the binary. Add the -+following few lines near the end (before the line with "exit $exit_value") of -+the link.sh script to do this automatically. -+ -+ rmattr BEOS:TYPE vim -+ copyres os_beos.rsrc vim -+ mimeset vim -+ -+Also, create a dummy file "strip": -+ -+ #!/bin/sh -+ mimeset $1 -+ exit 0 -+ -+You will need it when using "make install" to install Vim. -+ -+Now type "make" to compile Vim, then "make install" to install it. -+ -+If you want to install Vim by hand, you must copy Vim to $HOME/config/bin, and -+create a bunch of symlinks to it ({g,r,rg}{vim,ex,view}). Furthermore you must -+copy Vim's configuration files to $HOME/config/share/vim: -+vim-5.0s/{*.vim,doc,syntax}. For completeness, you should also copy the nroff -+manual pages to $HOME/config/man/man1. Don't forget ctags/ctags and xxd/xxd! -+ -+Obviously, you need the unlimited linker to actually link Vim. See -+http://www.metrowerks.com for purchasing the CodeWarrior compiler for BeOS. -+There are currently no other linkers that can do the job. -+ -+This won't be able to include the Perl or Python interfaces even if -+you have the appropriate files installed. |beos-perl| -+ -+ -+3. Timeout in the Terminal *beos-timeout* -+ -+Because some POSIX/UNIX features are still missing[1], there is no direct OS -+support for read-with-timeout in the Terminal. This would mean that you cannot -+use :mappings of more than one character, unless you also :set notimeout. -+|'timeout'| -+ -+To circumvent this problem, I added a workaround to provide the necessary -+input with timeout by using an extra thread which reads ahead one character. -+As a side effect, it also makes Vim recognize when the Terminal window -+resizes. -+ -+Function keys are not supported in the Terminal since they produce very -+indistinctive character sequences. -+ -+These problems do not exist in the GUI. -+ -+[1]: there is no select() on file descriptors; also the termios VMIN and VTIME -+settings do not seem to work properly. This has been the case since DR7 at -+least and still has not been fixed as of PR2. -+ -+ *beos-unicode* -+4. Unicode vs. Latin1 *beos-utf8* -+ -+BeOS uses Unicode and UTF-8 for text strings (16-bit characters encoded to -+8-bit characters). Vim assumes ISO-Latin1 or other 8-bit character codes. -+This does not produce the desired results for non-ASCII characters. Try the -+command :digraphs to see. If they look messed up, use :set isprint=@ to -+(slightly) improve the display of ISO-Latin1 characters 128-255. This works -+better in the GUI, depending on which font you use (below). -+ -+You may also use the /boot/bin/xtou command to convert UTF-8 files from (xtou -+-f iso1 filename) or to (xtou -t iso1 filename) ISO-Latin1 characters. -+ -+ -+5. The BeOS GUI *beos-gui* -+ -+The BeOS GUI is no longer included. It was not maintained for a while and -+most likely didn't work. If you want to work on this: get the Vim 6.x version -+and merge it back in. -+ -+ -+6. The $VIM directory *beos-vimdir* -+ -+$VIM is the symbolic name for the place where Vims support files are stored. -+The default value for $VIM is set at compile time and can be determined with > -+ -+ :version -+ -+The normal value is /boot/home/config/share/vim. If you don't like it you can -+set the VIM environment variable to override this, or set 'helpfile' in your -+.vimrc: > -+ -+ :if version >= 500 -+ : set helpfile=~/vim/vim54/doc/help.txt -+ : syntax on -+ :endif -+ -+ -+6a. The $USER_SETTINGS_DIR directory *haiku-user-settings-dir* -+ -+ -+7. Drag & Drop *beos-dragndrop* -+ -+You can drop files and directories on either the Vim icon (starts a new Vim -+session, unless you use the File Types application to set Vim to be "Single -+Launch") or on the Vim window (starts editing the files). Dropping a folder -+sets Vim's current working directory. |:cd| |:pwd| If you drop files or -+folders with either SHIFT key pressed, Vim changes directory to the folder -+that contains the first item dropped. When starting Vim, there is no need to -+press shift: Vim behaves as if you do. -+ -+Files dropped set the current argument list. |argument-list| -+ -+ -+8. Single Launch vs. Multiple Launch *beos-launch* -+ -+As distributed Vim's Application Flags (as seen in the FileTypes preference) -+are set to Multiple Launch. If you prefer, you can set them to Single Launch -+instead. Attempts to start a second copy of Vim will cause the first Vim to -+open the files instead. This works from the Tracker but also from the command -+line. In the latter case, non-file (option) arguments are not supported. -+ -+NB: Only the GUI version has a BApplication (and hence Application Flags). -+This section does not apply to the GUI-less version, should you compile one. -+ -+ -+9. Fonts *beos-fonts* -+ -+Set fonts with > -+ -+ :set guifont=Courier10_BT/Roman/10 -+ -+where the first part is the font family, the second part the style, and the -+third part the size. You can use underscores instead of spaces in family and -+style. -+ -+Best results are obtained with monospaced fonts (such as Courier). Vim -+attempts to use all fonts in B_FIXED_SPACING mode but apparently this does not -+work for proportional fonts (despite what the BeBook says). -+ -+Vim also tries to use the B_ISO8859_1 encoding, also known as ISO Latin 1. -+This also does not work for all fonts. It does work for Courier, but not for -+ProFontISOLatin1/Regular (strangely enough). You can verify this by giving the > -+ -+ :digraphs -+ -+command, which lists a bunch of characters with their ISO Latin 1 encoding. -+If, for instance, there are "box" characters among them, or the last character -+isn't a dotted-y, then for this font the encoding does not work. -+ -+If the font you specify is unavailable, you get the system fixed font. -+ -+Standard fixed-width system fonts are: -+ -+ ProFontISOLatin1/Regular -+ Courier10_BT/Roman -+ Courier10_BT/Italic -+ Courier10_BT/Bold -+ Courier10_BT/Bold_Italic -+ -+Standard proportional system fonts are: -+ -+ Swis721_BT/Roman -+ Swis721_BT/Italic -+ Swis721_BT/Bold -+ Swis721_BT/Bold_Italic -+ Dutch801_Rm_BT/Roman -+ Dutch801_Rm_BT/Italic -+ Dutch801_Rm_BT/Bold -+ Dutch801_Rm_BT/Bold_Italic -+ Baskerville/Roman -+ Baskerville/Italic -+ Baskerville/Bold -+ Baskerville/Bold_Italic -+ SymbolProp_BT/Regular -+ -+Try some of them, just for fun. -+ -+ -+10. The meta key modifier *beos-meta* -+ -+The META key modifier is obtained by the left or right OPTION keys. This is -+because the ALT (aka COMMAND) keys are not passed to applications. -+ -+ -+11. Mouse key mappings *beos-mouse* -+ -+Vim calls the various mouse buttons LeftMouse, MiddleMouse and RightMouse. If -+you use the default Mouse preference settings these names indeed correspond to -+reality. Vim uses this mapping: -+ -+ Button 1 -> LeftMouse, -+ Button 2 -> RightMouse, -+ Button 3 -> MiddleMouse. -+ -+If your mouse has fewer than 3 buttons you can provide your own mapping from -+mouse clicks with modifier(s) to other mouse buttons. See the file -+vim-5.x/macros/swapmous.vim for an example. |gui-mouse-mapping| -+ -+ -+12. Color names *beos-colors* -+ -+Vim has a number of color names built-in. Additional names are read from the -+file $VIMRUNTIME/rgb.txt, if present. This file is basically the color -+database from X. Names used from this file are cached for efficiency. -+ -+ -+13. Compiling with Perl *beos-perl* -+ -+Compiling with Perl support enabled is slightly tricky. The Metrowerks -+compiler has some strange ideas where to search for include files. Since -+several include files with Perl have the same names as some Vim header -+files, the wrong ones get included. To fix this, run the following Perl -+script while in the vim-5.0/src directory: > -+ -+ preproc.pl > perl.h -+ -+ #!/bin/env perl -+ # Simple #include expander, just good enough for the Perl header files. -+ -+ use strict; -+ use IO::File; -+ use Config; -+ -+ sub doinclude -+ { -+ my $filename = $_[0]; -+ my $fh = new IO::File($filename, "r"); -+ if (defined $fh) { -+ print "/* Start of $filename */\n"; -+ -+ while (<$fh>) { -+ if (/^#include "(.*)"/) { -+ doinclude($1); -+ print "/* Back in $filename */\n"; -+ } else { -+ print $_; -+ } -+ } -+ print "/* End of $filename */\n"; -+ -+ undef $fh; -+ } else { -+ print "/* Cannot open $filename */\n"; -+ print "#include \"$filename\"\n"; -+ } -+ } -+ -+ chdir $Config{installarchlib}."/CORE"; -+ doinclude "perl.h"; -+ -+It expands the "perl.h" header file, using only other Perl header files. -+ -+Now you can configure & make Vim with the --enable-perlinterp option. -+Be warned though that this adds about 616 kilobytes to the size of Vim! -+Without Perl, Vim with default features and GUI is about 575K, with Perl -+it is about 1191K. -+ -+-Olaf Seibert -+ -+[Note: these addresses no longer work:] -+ -+http://polder.ubc.kun.nl/~rhialto/be -+ -+ vim:tw=78:ts=8:ft=help:norl: -diff -Naur vim73/runtime/doc/starting.txt vim73.haiku/runtime/doc/starting.txt ---- vim73/runtime/doc/starting.txt 2010-08-15 14:23:22.056360960 +0200 -+++ vim73.haiku/runtime/doc/starting.txt 2012-09-16 22:03:00.965476352 +0200 -@@ -756,6 +756,7 @@ +diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt +index 0632e8c..87c2181 100644 +--- a/runtime/doc/starting.txt ++++ b/runtime/doc/starting.txt +@@ -756,6 +756,7 @@ accordingly. Vim proceeds in this order: OS/2 $HOME/.vimrc or $VIM/.vimrc (or _vimrc) MS-DOS and Win32 $HOME/_vimrc or $VIM/_vimrc Amiga s:.vimrc or $VIM/.vimrc @@ -479,7 +164,7 @@ diff -Naur vim73/runtime/doc/starting.txt vim73.haiku/runtime/doc/starting.txt If Vim was started with "-u filename", the file "filename" is used. All following initializations until 4. are skipped. -@@ -791,6 +792,7 @@ +@@ -791,6 +792,7 @@ accordingly. Vim proceeds in this order: "$VIM/.vimrc" (for OS/2 and Amiga) (*) "$HOME/_vimrc" (for MS-DOS and Win32) (*) "$VIM/_vimrc" (for MS-DOS and Win32) (*) @@ -487,7 +172,7 @@ diff -Naur vim73/runtime/doc/starting.txt vim73.haiku/runtime/doc/starting.txt Note: For Unix, OS/2 and Amiga, when ".vimrc" does not exist, "_vimrc" is also tried, in case an MS-DOS compatible file system is used. For MS-DOS and Win32 ".vimrc" is checked -@@ -880,6 +882,7 @@ +@@ -880,6 +882,7 @@ sessions. Put it in a place so that it will be found by 3b: ~/.vimrc (Unix and OS/2) s:.vimrc (Amiga) $VIM\_vimrc (MS-DOS and Win32) @@ -495,10 +180,11 @@ diff -Naur vim73/runtime/doc/starting.txt vim73.haiku/runtime/doc/starting.txt Note that creating a vimrc file will cause the 'compatible' option to be off by default. See |compatible-default|. -diff -Naur vim73/runtime/doc/vi_diff.txt vim73.haiku/runtime/doc/vi_diff.txt ---- vim73/runtime/doc/vi_diff.txt 2010-08-15 14:23:23.066322432 +0200 -+++ vim73.haiku/runtime/doc/vi_diff.txt 2012-05-13 20:55:51.593494016 +0200 -@@ -139,6 +139,7 @@ +diff --git a/runtime/doc/vi_diff.txt b/runtime/doc/vi_diff.txt +index 5d6706b..074acb6 100644 +--- a/runtime/doc/vi_diff.txt ++++ b/runtime/doc/vi_diff.txt +@@ -139,6 +139,7 @@ Support for different systems. - Atari MiNT - VMS - BeOS @@ -506,7 +192,7 @@ diff -Naur vim73/runtime/doc/vi_diff.txt vim73.haiku/runtime/doc/vi_diff.txt - Macintosh - Risc OS - IBM OS/390 -@@ -163,7 +164,7 @@ +@@ -163,7 +164,7 @@ Graphical User Interface (GUI). |gui| define your own menus. Better support for CTRL/SHIFT/ALT keys in combination with special keys and mouse. Supported for various platforms, such as X11 (with Motif and Athena interfaces), GTK, Win32 @@ -515,9 +201,10 @@ diff -Naur vim73/runtime/doc/vi_diff.txt vim73.haiku/runtime/doc/vi_diff.txt Multiple windows and buffers. |windows.txt| Vim can split the screen into several windows, each editing a -diff -Naur vim73/runtime/gvimrc_example.vim vim73.haiku/runtime/gvimrc_example.vim ---- vim73/runtime/gvimrc_example.vim 2010-05-15 11:03:31.008650752 +0000 -+++ vim73.haiku/runtime/gvimrc_example.vim 2010-08-20 23:25:03.942407680 +0000 +diff --git a/runtime/gvimrc_example.vim b/runtime/gvimrc_example.vim +index 5a5197e..e7e2538 100644 +--- a/runtime/gvimrc_example.vim ++++ b/runtime/gvimrc_example.vim @@ -9,6 +9,7 @@ " for Amiga: s:.gvimrc " for MS-DOS and Win32: $VIM\_gvimrc @@ -526,9 +213,10 @@ diff -Naur vim73/runtime/gvimrc_example.vim vim73.haiku/runtime/gvimrc_example.v " Make external commands work through a pipe instead of a pseudo-tty "set noguipty -diff -Naur vim73/runtime/vimrc_example.vim vim73.haiku/runtime/vimrc_example.vim ---- vim73/runtime/vimrc_example.vim 2010-05-15 11:03:57.023855104 +0000 -+++ vim73.haiku/runtime/vimrc_example.vim 2010-08-20 23:25:41.794034176 +0000 +diff --git a/runtime/vimrc_example.vim b/runtime/vimrc_example.vim +index b35100c..f5518d1 100644 +--- a/runtime/vimrc_example.vim ++++ b/runtime/vimrc_example.vim @@ -8,6 +8,7 @@ " for Amiga: s:.vimrc " for MS-DOS and Win32: $VIM\_vimrc @@ -537,10 +225,11 @@ diff -Naur vim73/runtime/vimrc_example.vim vim73.haiku/runtime/vimrc_example.vim " When started as "evim", evim.vim will already have done these settings. if v:progname =~? "evim" -diff -Naur vim73/src/Makefile vim73.haiku/src/Makefile ---- vim73/src/Makefile 2010-08-15 12:56:15.017301504 +0000 -+++ vim73.haiku/src/Makefile 2010-08-20 23:27:51.707264512 +0000 -@@ -1242,6 +1242,23 @@ +diff --git a/src/Makefile b/src/Makefile +index e582eed..985dfd2 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -1242,6 +1242,23 @@ NEXTAW_BUNDLE = # too: #EXTRA_LIBS = /usr/openwin/lib/libXmu.sa -lm @@ -564,7 +253,7 @@ diff -Naur vim73/src/Makefile vim73.haiku/src/Makefile # PHOTON GUI PHOTONGUI_SRC = gui.c gui_photon.c pty.c PHOTONGUI_OBJ = objects/gui.o objects/gui_photon.o objects/pty.o -@@ -2458,6 +2475,9 @@ +@@ -2458,6 +2475,9 @@ objects/gui_at_sb.o: gui_at_sb.c objects/gui_athena.o: gui_athena.c $(CCC) -o $@ gui_athena.c @@ -574,7 +263,7 @@ diff -Naur vim73/src/Makefile vim73.haiku/src/Makefile objects/gui_beval.o: gui_beval.c $(CCC) -o $@ gui_beval.c -@@ -2585,6 +2605,9 @@ +@@ -2585,6 +2605,9 @@ objects/option.o: option.c objects/os_beos.o: os_beos.c $(CCC) -o $@ os_beos.c @@ -584,7 +273,7 @@ diff -Naur vim73/src/Makefile vim73.haiku/src/Makefile objects/os_qnx.o: os_qnx.c $(CCC) -o $@ os_qnx.c -@@ -2738,6 +2761,56 @@ +@@ -2738,6 +2761,56 @@ $(APPDIR)/Contents: ############################################################################### @@ -641,10 +330,11 @@ diff -Naur vim73/src/Makefile vim73.haiku/src/Makefile ### (automatically generated by 'make depend') ### Dependencies: objects/blowfish.o: blowfish.c vim.h auto/config.h feature.h os_unix.h \ -diff -Naur vim73/src/configure.in vim73.haiku/src/configure.in ---- vim73/src/configure.in 2010-08-13 14:15:17.029884416 +0000 -+++ vim73.haiku/src/configure.in 2010-08-20 23:24:07.536870912 +0000 -@@ -69,11 +69,13 @@ +diff --git a/src/configure.in b/src/configure.in +index 152313b..9161849 100644 +--- a/src/configure.in ++++ b/src/configure.in +@@ -69,11 +69,13 @@ fi OS_EXTRA_SRC=""; OS_EXTRA_OBJ="" @@ -660,7 +350,7 @@ diff -Naur vim73/src/configure.in vim73.haiku/src/configure.in *) BEOS=no; AC_MSG_RESULT(no);; esac -@@ -1406,7 +1408,7 @@ +@@ -1406,7 +1408,7 @@ AC_ARG_ENABLE(netbeans, if test "$enable_netbeans" = "yes"; then AC_MSG_RESULT(no) dnl On Solaris we need the socket and nsl library. @@ -669,7 +359,7 @@ diff -Naur vim73/src/configure.in vim73.haiku/src/configure.in AC_CHECK_LIB(nsl, gethostbyname) AC_MSG_CHECKING(whether compiling netbeans integration is possible) AC_TRY_LINK([ -@@ -1614,11 +1616,11 @@ +@@ -1614,11 +1616,11 @@ else fi fi @@ -683,7 +373,7 @@ diff -Naur vim73/src/configure.in vim73.haiku/src/configure.in dnl Canonicalize the --enable-gui= argument so that it can be easily compared. dnl Do not use character classes for portability with old tools. -@@ -1632,10 +1634,24 @@ +@@ -1632,10 +1634,24 @@ SKIP_MOTIF=YES SKIP_ATHENA=YES SKIP_NEXTAW=YES SKIP_PHOTON=YES @@ -709,7 +399,7 @@ diff -Naur vim73/src/configure.in vim73.haiku/src/configure.in SKIP_PHOTON= case "$enable_gui_canon" in no) AC_MSG_RESULT(no GUI support) -@@ -1786,6 +1802,7 @@ +@@ -1786,6 +1802,7 @@ if test "x$MACOSX" = "xyes" -a -z "$SKIP_CARBON" -a "x$CARBON" = "xyes"; then SKIP_ATHENA=YES; SKIP_NEXTAW=YES; SKIP_PHOTON=YES; @@ -717,7 +407,7 @@ diff -Naur vim73/src/configure.in vim73.haiku/src/configure.in SKIP_CARBON=YES fi -@@ -2277,6 +2294,11 @@ +@@ -2277,6 +2294,11 @@ if test "x$GUITYPE:$enable_fontset" = "xGTK:yes"; then enable_fontset="no" fi @@ -729,10 +419,11 @@ diff -Naur vim73/src/configure.in vim73.haiku/src/configure.in if test -z "$SKIP_PHOTON"; then GUITYPE=PHOTONGUI fi -diff -Naur vim73/src/eval.c vim73.haiku/src/eval.c ---- vim73/src/eval.c 2010-08-09 20:12:14.062128128 +0000 -+++ vim73.haiku/src/eval.c 2010-08-20 22:32:14.677642240 +0000 -@@ -11722,6 +11722,9 @@ +diff --git a/src/eval.c b/src/eval.c +index fc01006..44c02e9 100644 +--- a/src/eval.c ++++ b/src/eval.c +@@ -11722,6 +11722,9 @@ f_has(argvars, rettv) #ifdef __BEOS__ "beos", #endif @@ -742,7 +433,7 @@ diff -Naur vim73/src/eval.c vim73.haiku/src/eval.c #ifdef MSDOS # ifdef DJGPP "dos32", -@@ -11894,6 +11897,9 @@ +@@ -11894,6 +11897,9 @@ f_has(argvars, rettv) #ifdef FEAT_GUI_GNOME "gui_gnome", #endif @@ -752,10 +443,11 @@ diff -Naur vim73/src/eval.c vim73.haiku/src/eval.c #ifdef FEAT_GUI_MAC "gui_mac", #endif -diff -Naur vim73/src/ex_docmd.c vim73.haiku/src/ex_docmd.c ---- vim73/src/ex_docmd.c 2010-08-07 14:59:47.016252928 +0000 -+++ vim73.haiku/src/ex_docmd.c 2010-08-20 22:33:08.046923776 +0000 -@@ -6841,6 +6841,7 @@ +diff --git a/src/ex_docmd.c b/src/ex_docmd.c +index b338ed5..07f631b 100644 +--- a/src/ex_docmd.c ++++ b/src/ex_docmd.c +@@ -6841,6 +6841,7 @@ ex_shell(eap) || (defined(FEAT_GUI_GTK) && defined(FEAT_DND)) \ || defined(FEAT_GUI_MSWIN) \ || defined(FEAT_GUI_MAC) \ @@ -763,9 +455,10 @@ diff -Naur vim73/src/ex_docmd.c vim73.haiku/src/ex_docmd.c || defined(PROTO) /* -diff -Naur vim73/src/feature.h vim73.haiku/src/feature.h ---- vim73/src/feature.h 2010-07-27 19:45:42.064749568 +0000 -+++ vim73.haiku/src/feature.h 2010-08-20 22:38:17.466354176 +0000 +diff --git a/src/feature.h b/src/feature.h +index ea79758..577e7c0 100644 +--- a/src/feature.h ++++ b/src/feature.h @@ -659,6 +659,14 @@ /* #define FEAT_MBYTE_IME */ # endif @@ -826,10 +519,11 @@ diff -Naur vim73/src/feature.h vim73.haiku/src/feature.h # define FEAT_GUI_TEXTDIALOG #endif -diff -Naur vim73/src/gui.c vim73.haiku/src/gui.c ---- vim73/src/gui.c 2010-08-08 13:01:18.035651584 +0000 -+++ vim73.haiku/src/gui.c 2010-08-20 23:05:36.517210112 +0000 -@@ -59,7 +59,7 @@ +diff --git a/src/gui.c b/src/gui.c +index 87930c6..537bd7b 100644 +--- a/src/gui.c ++++ b/src/gui.c +@@ -59,7 +59,7 @@ static int can_update_cursor = TRUE; /* can display the cursor */ gui_start() { char_u *old_term; @@ -838,7 +532,7 @@ diff -Naur vim73/src/gui.c vim73.haiku/src/gui.c # define MAY_FORK int dofork = TRUE; #endif -@@ -275,7 +275,7 @@ +@@ -275,7 +275,7 @@ gui_init_check() gui.menu_width = 0; # endif #endif @@ -847,7 +541,7 @@ diff -Naur vim73/src/gui.c vim73.haiku/src/gui.c gui.toolbar_height = 0; #endif #if defined(FEAT_FOOTER) && defined(FEAT_GUI_MOTIF) -@@ -1167,10 +1167,10 @@ +@@ -1167,10 +1167,10 @@ gui_position_components(total_width) text_area_y += gui.tabline_height; #endif @@ -860,7 +554,7 @@ diff -Naur vim73/src/gui.c vim73.haiku/src/gui.c gui_mch_set_toolbar_pos(0, text_area_y, gui.menu_width, gui.toolbar_height); # endif -@@ -1178,6 +1178,13 @@ +@@ -1178,6 +1178,13 @@ gui_position_components(total_width) } #endif @@ -874,7 +568,7 @@ diff -Naur vim73/src/gui.c vim73.haiku/src/gui.c text_area_width = gui.num_cols * gui.char_width + gui.border_offset * 2; text_area_height = gui.num_rows * gui.char_height + gui.border_offset * 2; -@@ -1249,7 +1256,7 @@ +@@ -1249,7 +1256,7 @@ gui_get_base_height() # endif # endif # if defined(FEAT_GUI_TABLINE) && (defined(FEAT_GUI_MSWIN) \ @@ -883,7 +577,7 @@ diff -Naur vim73/src/gui.c vim73.haiku/src/gui.c if (gui_has_tabline()) base_height += gui.tabline_height; # endif -@@ -1292,7 +1299,11 @@ +@@ -1292,7 +1299,11 @@ gui_resize_shell(pixel_width, pixel_height) again: busy = TRUE; @@ -896,7 +590,7 @@ diff -Naur vim73/src/gui.c vim73.haiku/src/gui.c out_flush(); gui.num_cols = (pixel_width - gui_get_base_width()) / gui.char_width; -@@ -1314,7 +1325,11 @@ +@@ -1314,7 +1325,11 @@ again: || gui.num_rows != Rows || gui.num_cols != Columns) shell_resized(); @@ -909,7 +603,7 @@ diff -Naur vim73/src/gui.c vim73.haiku/src/gui.c gui_update_cursor(FALSE, TRUE); #if defined(FEAT_XIM) && !defined(FEAT_GUI_GTK) xim_set_status_area(); -@@ -4055,9 +4070,9 @@ +@@ -4055,9 +4070,9 @@ gui_update_scrollbars(force) y += gui.menu_height; #endif @@ -921,7 +615,7 @@ diff -Naur vim73/src/gui.c vim73.haiku/src/gui.c y += gui.toolbar_height; # else # ifdef FEAT_GUI_MSWIN -@@ -4066,7 +4081,8 @@ +@@ -4066,7 +4081,8 @@ gui_update_scrollbars(force) # endif #endif @@ -931,7 +625,7 @@ diff -Naur vim73/src/gui.c vim73.haiku/src/gui.c if (gui_has_tabline()) y += gui.tabline_height; #endif -@@ -4811,7 +4827,8 @@ +@@ -4811,7 +4827,8 @@ ex_gui(eap) } #if ((defined(FEAT_GUI_X11) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_W32) \ @@ -941,9 +635,10 @@ diff -Naur vim73/src/gui.c vim73.haiku/src/gui.c /* * This is shared between Athena, Motif and GTK. */ -diff -Naur vim73/src/gui.h vim73.haiku/src/gui.h ---- vim73/src/gui.h 2010-07-17 19:40:58.051642368 +0000 -+++ vim73.haiku/src/gui.h 2010-08-20 23:07:23.085983232 +0000 +diff --git a/src/gui.h b/src/gui.h +index 149603c..9feee3a 100644 +--- a/src/gui.h ++++ b/src/gui.h @@ -33,6 +33,10 @@ # include #endif @@ -964,7 +659,7 @@ diff -Naur vim73/src/gui.h vim73.haiku/src/gui.h # define HAVE_DROP_FILE #endif -@@ -216,6 +220,9 @@ +@@ -216,6 +220,9 @@ typedef struct GuiScrollbar scroll_shift is set to the number of shifts to reduce the count. */ #endif @@ -974,7 +669,7 @@ diff -Naur vim73/src/gui.h vim73.haiku/src/gui.h #ifdef FEAT_GUI_MAC ControlHandle id; /* A handle to the scrollbar */ #endif -@@ -412,7 +419,7 @@ +@@ -412,7 +419,7 @@ typedef struct Gui #if defined(FEAT_GUI_TABLINE) \ && (defined(FEAT_GUI_W32) || defined(FEAT_GUI_MOTIF) \ @@ -983,7 +678,7 @@ diff -Naur vim73/src/gui.h vim73.haiku/src/gui.h int tabline_height; #endif -@@ -421,7 +428,7 @@ +@@ -421,7 +428,7 @@ typedef struct Gui #endif #if defined(FEAT_TOOLBAR) \ @@ -992,7 +687,7 @@ diff -Naur vim73/src/gui.h vim73.haiku/src/gui.h int toolbar_height; /* height of the toolbar */ #endif -@@ -442,6 +449,14 @@ +@@ -442,6 +449,14 @@ typedef struct Gui guicolor_T currSpColor; /* Current special text color */ #endif @@ -1007,9 +702,11 @@ diff -Naur vim73/src/gui.h vim73.haiku/src/gui.h #ifdef FEAT_GUI_MAC WindowPtr VimWindow; MenuHandle MacOSHelpMenu; /* Help menu provided by the MacOS */ -diff -Naur vim73/src/gui_beos.cc vim73.haiku/src/gui_beos.cc ---- vim73/src/gui_beos.cc 1970-01-01 00:00:00.000000000 +0000 -+++ vim73.haiku/src/gui_beos.cc 2010-08-20 23:43:35.727711744 +0000 +diff --git a/src/gui_beos.cc b/src/gui_beos.cc +new file mode 100644 +index 0000000..ceafd40 +--- /dev/null ++++ b/src/gui_beos.cc @@ -0,0 +1,4868 @@ +/* vi:set ts=8 sts=4 sw=4: + * @@ -5879,10 +5576,11 @@ diff -Naur vim73/src/gui_beos.cc vim73.haiku/src/gui_beos.cc +} + +#endif //FEAT_GUI_TABLINE -+ -diff -Naur vim73/src/gui_beos.h vim73.haiku/src/gui_beos.h ---- vim73/src/gui_beos.h 1970-01-01 00:00:00.000000000 +0000 -+++ vim73.haiku/src/gui_beos.h 2010-08-20 22:25:02.562298880 +0000 +diff --git a/src/gui_beos.h b/src/gui_beos.h +new file mode 100644 +index 0000000..7f323cd +--- /dev/null ++++ b/src/gui_beos.h @@ -0,0 +1,51 @@ +/* vi:set ts=8 sts=4 sw=4: + * @@ -5935,9 +5633,10 @@ diff -Naur vim73/src/gui_beos.h vim73.haiku/src/gui_beos.h +typedef struct VimScrollBar VimScrollBar; + +#endif -diff -Naur vim73/src/misc1.c vim73.haiku/src/misc1.c ---- vim73/src/misc1.c 2010-08-15 11:24:05.015466496 +0000 -+++ vim73.haiku/src/misc1.c 2010-08-20 22:43:17.718798848 +0000 +diff --git a/src/misc1.c b/src/misc1.c +index fd178c9..b8c838a 100644 +--- a/src/misc1.c ++++ b/src/misc1.c @@ -14,6 +14,10 @@ #include "vim.h" #include "version.h" @@ -5949,7 +5648,7 @@ diff -Naur vim73/src/misc1.c vim73.haiku/src/misc1.c static char_u *vim_version_dir __ARGS((char_u *vimdir)); static char_u *remove_tail __ARGS((char_u *p, char_u *pend, char_u *name)); static int copy_indent __ARGS((int size, char_u *src)); -@@ -3902,7 +3906,18 @@ +@@ -3902,7 +3906,18 @@ vim_getenv(name, mustfree) vimruntime = (STRCMP(name, "VIMRUNTIME") == 0); if (!vimruntime && STRCMP(name, "VIM") != 0) @@ -5969,10 +5668,11 @@ diff -Naur vim73/src/misc1.c vim73.haiku/src/misc1.c /* * When expanding $VIMRUNTIME fails, try using $VIM/vim or $VIM. -diff -Naur vim73/src/normal.c vim73.haiku/src/normal.c ---- vim73/src/normal.c 2010-07-31 13:25:19.021233664 +0000 -+++ vim73.haiku/src/normal.c 2010-08-20 22:44:36.301203456 +0000 -@@ -2599,6 +2599,7 @@ +diff --git a/src/normal.c b/src/normal.c +index b76e40d..d8ef2f1 100644 +--- a/src/normal.c ++++ b/src/normal.c +@@ -2599,6 +2599,7 @@ do_mouse(oap, c, dir, count, fixindent) * shift-left button -> right button * alt-left button -> alt-right button */ @@ -5980,7 +5680,7 @@ diff -Naur vim73/src/normal.c vim73.haiku/src/normal.c if (mouse_model_popup()) { if (which_button == MOUSE_RIGHT -@@ -2613,13 +2614,14 @@ +@@ -2613,13 +2614,14 @@ do_mouse(oap, c, dir, count, fixindent) if (!is_click) return FALSE; #endif @@ -5997,7 +5697,7 @@ diff -Naur vim73/src/normal.c vim73.haiku/src/normal.c if (gui.in_use) { jump_flags = 0; -@@ -5385,7 +5387,8 @@ +@@ -5385,7 +5387,8 @@ nv_clear(cap) { if (!checkclearop(cap->oap)) { @@ -6007,7 +5707,7 @@ diff -Naur vim73/src/normal.c vim73.haiku/src/normal.c /* * Right now, the BeBox doesn't seem to have an easy way to detect * window resizing, so we cheat and make the user detect it -@@ -5393,6 +5396,7 @@ +@@ -5393,6 +5396,7 @@ nv_clear(cap) */ ui_get_shellsize(); #endif @@ -6015,9 +5715,10 @@ diff -Naur vim73/src/normal.c vim73.haiku/src/normal.c #ifdef FEAT_SYN_HL /* Clear all syntax states to force resyncing. */ syn_stack_free_all(curwin->w_s); -diff -Naur vim73/src/option.h vim73.haiku/src/option.h ---- vim73/src/option.h 2010-07-25 14:15:02.038535168 +0000 -+++ vim73.haiku/src/option.h 2010-08-20 22:45:31.003407872 +0000 +diff --git a/src/option.h b/src/option.h +index 0f697c2..a4121b9 100644 +--- a/src/option.h ++++ b/src/option.h @@ -9,7 +9,8 @@ /* * option.h: definition of global variables for settable options @@ -6028,14 +5729,15 @@ diff -Naur vim73/src/option.h vim73.haiku/src/option.h /* * Default values for 'errorformat'. * The "%f|%l| %m" one is used for when the contents of the quickfix window is -@@ -1095,3 +1096,4 @@ +@@ -1095,3 +1096,4 @@ enum , WV_WRAP , WV_COUNT /* must be the last one */ }; +#endif //_OPTION_H_ -diff -Naur vim73/src/os_beos.c vim73.haiku/src/os_beos.c ---- vim73/src/os_beos.c 2010-05-15 11:04:09.032768000 +0000 -+++ vim73.haiku/src/os_beos.c 2010-08-20 23:15:48.089915392 +0000 +diff --git a/src/os_beos.c b/src/os_beos.c +index 10135aa..e46c1ca 100644 +--- a/src/os_beos.c ++++ b/src/os_beos.c @@ -23,8 +23,8 @@ #define thread_id int #endif @@ -6047,7 +5749,7 @@ diff -Naur vim73/src/os_beos.c vim73.haiku/src/os_beos.c sem_id character_present; sem_id character_wanted; thread_id read_thread_id; -@@ -50,7 +50,7 @@ +@@ -50,7 +50,7 @@ read_thread(void *dummy) for (;;) { if (acquire_sem(character_wanted) != B_NO_ERROR) break; @@ -6056,7 +5758,7 @@ diff -Naur vim73/src/os_beos.c vim73.haiku/src/os_beos.c release_sem(character_present); } -@@ -70,13 +70,18 @@ +@@ -70,13 +70,18 @@ beos_cleanup_read_thread(void) #endif @@ -6076,7 +5778,7 @@ diff -Naur vim73/src/os_beos.c vim73.haiku/src/os_beos.c beos_select(int nbits, struct fd_set *rbits, struct fd_set *wbits, -@@ -84,7 +89,11 @@ +@@ -84,7 +89,11 @@ beos_select(int nbits, struct timeval *timeout) { bigtime_t tmo; @@ -6089,7 +5791,7 @@ diff -Naur vim73/src/os_beos.c vim73.haiku/src/os_beos.c if (nbits == 0) { /* select is purely being used for delay */ snooze(timeout->tv_sec * 1e6 + timeout->tv_usec); -@@ -153,13 +162,15 @@ +@@ -153,13 +162,15 @@ beos_select(int nbits, acquired = acquire_sem(character_present); if (acquired == B_NO_ERROR) { if (charcount > 0) { @@ -6106,7 +5808,7 @@ diff -Naur vim73/src/os_beos.c vim73.haiku/src/os_beos.c #if !TRY_ABORT release_sem(character_wanted); #endif -@@ -183,7 +194,7 @@ +@@ -183,7 +194,7 @@ beos_select(int nbits, if (acquired == B_TIMED_OUT) acquire_sem(character_present); if (charcount > 0) { @@ -6115,7 +5817,7 @@ diff -Naur vim73/src/os_beos.c vim73.haiku/src/os_beos.c return 1; } return 0; -@@ -192,6 +203,19 @@ +@@ -192,6 +203,19 @@ beos_select(int nbits, } #endif @@ -6135,9 +5837,10 @@ diff -Naur vim73/src/os_beos.c vim73.haiku/src/os_beos.c +#endif /* __BEOS__ */ + -diff -Naur vim73/src/os_beos.h vim73.haiku/src/os_beos.h ---- vim73/src/os_beos.h 2010-05-15 11:04:11.065273856 +0000 -+++ vim73.haiku/src/os_beos.h 2010-08-20 23:16:40.791937024 +0000 +diff --git a/src/os_beos.h b/src/os_beos.h +index 260834e..c6da995 100644 +--- a/src/os_beos.h ++++ b/src/os_beos.h @@ -20,6 +20,18 @@ #undef BEOS_DR8 #define BEOS_PR_OR_BETTER @@ -6159,9 +5862,11 @@ diff -Naur vim73/src/os_beos.h vim73.haiku/src/os_beos.h +#endif -#include /* for typedefs and #defines only */ -diff -Naur vim73/src/os_beos.rdef vim73.haiku/src/os_beos.rdef ---- vim73/src/os_beos.rdef 1970-01-01 00:00:00.000000000 +0000 -+++ vim73.haiku/src/os_beos.rdef 2010-05-02 14:29:42.040894464 +0000 +diff --git a/src/os_beos.rdef b/src/os_beos.rdef +new file mode 100644 +index 0000000..004ed05 +--- /dev/null ++++ b/src/os_beos.rdef @@ -0,0 +1,205 @@ +/* + * Vim.rdef @@ -6368,10 +6073,11 @@ diff -Naur vim73/src/os_beos.rdef vim73.haiku/src/os_beos.rdef + $"FF17F6CF36F92F1B9E631E8B8F3FBC0000000049454E44AE426082" +}; + -diff -Naur vim73/src/os_unix.c vim73.haiku/src/os_unix.c ---- vim73/src/os_unix.c 2010-08-08 13:14:04.061079552 +0000 -+++ vim73.haiku/src/os_unix.c 2010-08-20 22:41:48.458489856 +0000 -@@ -1131,7 +1131,7 @@ +diff --git a/src/os_unix.c b/src/os_unix.c +index a82c65d..823fa74 100644 +--- a/src/os_unix.c ++++ b/src/os_unix.c +@@ -1131,7 +1131,7 @@ sigcont_handler SIGDEFARG(sigarg) mch_suspend() { /* BeOS does have SIGTSTP, but it doesn't work. */ @@ -6380,7 +6086,7 @@ diff -Naur vim73/src/os_unix.c vim73.haiku/src/os_unix.c out_flush(); /* needed to make cursor visible on some systems */ settmode(TMODE_COOK); out_flush(); /* needed to disable mouse on some systems */ -@@ -2017,6 +2017,11 @@ +@@ -2017,6 +2017,11 @@ mch_settitle(title, icon) if (gui.in_use) type = 1; # endif @@ -6392,7 +6098,7 @@ diff -Naur vim73/src/os_unix.c vim73.haiku/src/os_unix.c #endif /* -@@ -2041,7 +2046,7 @@ +@@ -2041,7 +2046,7 @@ mch_settitle(title, icon) # endif set_x11_title(title); /* x11 */ #endif @@ -6401,7 +6107,7 @@ diff -Naur vim73/src/os_unix.c vim73.haiku/src/os_unix.c || defined(FEAT_GUI_PHOTON) || defined(FEAT_GUI_MAC) else gui_mch_settitle(title, icon); -@@ -3088,7 +3093,9 @@ +@@ -3088,7 +3093,9 @@ mch_exit(r) ml_close_all(TRUE); /* remove all memfiles */ may_core_dump(); #ifdef FEAT_GUI @@ -6411,7 +6117,7 @@ diff -Naur vim73/src/os_unix.c vim73.haiku/src/os_unix.c gui_exit(r); #endif -@@ -3918,7 +3925,7 @@ +@@ -3918,7 +3925,7 @@ mch_call_shell(cmd, options) if (!pipe_error) /* pty or pipe opened or not used */ { @@ -6420,10 +6126,11 @@ diff -Naur vim73/src/os_unix.c vim73.haiku/src/os_unix.c beos_cleanup_read_thread(); # endif -diff -Naur vim73/src/os_unix.h vim73.haiku/src/os_unix.h ---- vim73/src/os_unix.h 2010-05-23 14:16:14.034865152 +0200 -+++ vim73.haiku/src/os_unix.h 2011-02-21 23:18:13.038797312 +0100 -@@ -388,6 +388,8 @@ +diff --git a/src/os_unix.h b/src/os_unix.h +index 5fd28af..a371c4e 100644 +--- a/src/os_unix.h ++++ b/src/os_unix.h +@@ -388,6 +388,8 @@ typedef struct dsc$descriptor DESC; #define DFLT_ERRORFILE "errors.err" @@ -6432,7 +6139,7 @@ diff -Naur vim73/src/os_unix.h vim73.haiku/src/os_unix.h #ifdef OS2 # define DFLT_RUNTIMEPATH "$HOME/vimfiles,$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after,$HOME/vimfiles/after" #else -@@ -402,6 +404,8 @@ +@@ -402,6 +404,8 @@ typedef struct dsc$descriptor DESC; # endif #endif @@ -6441,9 +6148,34 @@ diff -Naur vim73/src/os_unix.h vim73.haiku/src/os_unix.h #ifdef OS2 /* * Try several directories to put the temp files. -diff -Naur vim73/src/proto/gui_beos.pro vim73.haiku/src/proto/gui_beos.pro ---- vim73/src/proto/gui_beos.pro 1970-01-01 00:00:00.000000000 +0000 -+++ vim73.haiku/src/proto/gui_beos.pro 2010-08-20 23:42:00.825229312 +0000 +diff --git a/src/proto.h b/src/proto.h +index 40fb2a9..036bb72 100644 +--- a/src/proto.h ++++ b/src/proto.h +@@ -59,7 +59,7 @@ extern int _stricoll __ARGS((char *a, char *b)); + # ifdef VMS + # include "os_vms.pro" + # endif +-# ifdef __BEOS__ ++# if defined(__BEOS__) || defined(__HAIKU__) + # include "os_beos.pro" + # endif + # ifdef RISCOS +@@ -239,6 +239,9 @@ extern char_u *vimpty_getenv __ARGS((const char_u *string)); /* from pty.c */ + extern char *vim_SelFile __ARGS((Widget toplevel, char *prompt, char *init_path, int (*show_entry)(), int x, int y, guicolor_T fg, guicolor_T bg, guicolor_T scroll_fg, guicolor_T scroll_bg)); + # endif + # endif ++# ifdef FEAT_GUI_BEOS ++# include "gui_beos.pro" ++# endif + # ifdef FEAT_GUI_MAC + # include "gui_mac.pro" + # endif +diff --git a/src/proto/gui_beos.pro b/src/proto/gui_beos.pro +new file mode 100644 +index 0000000..b74cd20 +--- /dev/null ++++ b/src/proto/gui_beos.pro @@ -0,0 +1,90 @@ +/* gui_beos.cc - hand crafted */ +void gui_mch_prepare __ARGS((int *argc, char **argv)); @@ -6535,40 +6267,21 @@ diff -Naur vim73/src/proto/gui_beos.pro vim73.haiku/src/proto/gui_beos.pro +int gui_mch_showing_tabline __ARGS((void)); +void gui_mch_update_tabline __ARGS((void)); +void gui_mch_set_curtab __ARGS((int nr)); -diff -Naur vim73/src/proto/os_beos.pro vim73.haiku/src/proto/os_beos.pro ---- vim73/src/proto/os_beos.pro 1970-01-01 00:00:00.000000000 +0000 -+++ vim73.haiku/src/proto/os_beos.pro 2009-05-16 16:18:36.066846720 +0000 +diff --git a/src/proto/os_beos.pro b/src/proto/os_beos.pro +new file mode 100644 +index 0000000..c537101 +--- /dev/null ++++ b/src/proto/os_beos.pro @@ -0,0 +1,4 @@ +/* os_beos.c */ +void beos_cleanup_read_thread __ARGS((void)); +int beos_select __ARGS((int nbits, struct fd_set *rbits, struct fd_set *wbits, struct fd_set *ebits, struct timeval *timeout)); +/* vim: set ft=c : */ -diff -Naur vim73/src/proto.h vim73.haiku/src/proto.h ---- vim73/src/proto.h 2010-07-17 15:28:51.056623104 +0000 -+++ vim73.haiku/src/proto.h 2010-08-20 22:46:57.833617920 +0000 -@@ -59,7 +59,7 @@ - # ifdef VMS - # include "os_vms.pro" - # endif --# ifdef __BEOS__ -+# if defined(__BEOS__) || defined(__HAIKU__) - # include "os_beos.pro" - # endif - # ifdef RISCOS -@@ -239,6 +239,9 @@ - extern char *vim_SelFile __ARGS((Widget toplevel, char *prompt, char *init_path, int (*show_entry)(), int x, int y, guicolor_T fg, guicolor_T bg, guicolor_T scroll_fg, guicolor_T scroll_bg)); - # endif - # endif -+# ifdef FEAT_GUI_BEOS -+# include "gui_beos.pro" -+# endif - # ifdef FEAT_GUI_MAC - # include "gui_mac.pro" - # endif -diff -Naur vim73/src/pty.c vim73.haiku/src/pty.c ---- vim73/src/pty.c 2010-07-24 18:23:01.037748736 +0000 -+++ vim73.haiku/src/pty.c 2010-08-20 22:48:03.131858432 +0000 -@@ -353,7 +353,7 @@ +diff --git a/src/pty.c b/src/pty.c +index 944eccf..a5c5d59 100644 +--- a/src/pty.c ++++ b/src/pty.c +@@ -353,7 +353,7 @@ OpenPTY(ttyn) static char PtyProto[] = "/dev/ptym/ptyXY"; static char TtyProto[] = "/dev/pty/ttyXY"; # else @@ -6577,10 +6290,11 @@ diff -Naur vim73/src/pty.c vim73.haiku/src/pty.c static char PtyProto[] = "/dev/pt/XY"; static char TtyProto[] = "/dev/tt/XY"; # else -diff -Naur vim73/src/screen.c vim73.haiku/src/screen.c ---- vim73/src/screen.c 2010-08-13 13:21:27.004194304 +0000 -+++ vim73.haiku/src/screen.c 2010-08-20 22:54:49.930349056 +0000 -@@ -7917,6 +7917,10 @@ +diff --git a/src/screen.c b/src/screen.c +index 380eb8b..b696b68 100644 +--- a/src/screen.c ++++ b/src/screen.c +@@ -7917,6 +7917,10 @@ retry: win_new_shellsize(); /* fit the windows in the new sized shell */ @@ -6591,7 +6305,7 @@ diff -Naur vim73/src/screen.c vim73.haiku/src/screen.c comp_col(); /* recompute columns for shown command and ruler */ /* -@@ -8160,6 +8164,9 @@ +@@ -8160,6 +8164,9 @@ give_up: } #endif @@ -6601,7 +6315,7 @@ diff -Naur vim73/src/screen.c vim73.haiku/src/screen.c entered = FALSE; --RedrawingDisabled; -@@ -9023,6 +9030,9 @@ +@@ -9023,6 +9030,9 @@ screen_ins_lines(off, row, line_count, end, wp) clip_scroll_selection(-line_count); #endif @@ -6611,7 +6325,7 @@ diff -Naur vim73/src/screen.c vim73.haiku/src/screen.c #ifdef FEAT_GUI /* Don't update the GUI cursor here, ScreenLines[] is invalid until the * scrolling is actually carried out. */ -@@ -9075,6 +9085,10 @@ +@@ -9075,6 +9085,10 @@ screen_ins_lines(off, row, line_count, end, wp) } } @@ -6622,7 +6336,7 @@ diff -Naur vim73/src/screen.c vim73.haiku/src/screen.c screen_stop_highlight(); windgoto(cursor_row, 0); -@@ -9244,6 +9258,9 @@ +@@ -9244,6 +9258,9 @@ screen_del_lines(off, row, line_count, end, force, wp) clip_scroll_selection(line_count); #endif @@ -6632,7 +6346,7 @@ diff -Naur vim73/src/screen.c vim73.haiku/src/screen.c #ifdef FEAT_GUI /* Don't update the GUI cursor here, ScreenLines[] is invalid until the * scrolling is actually carried out. */ -@@ -9303,6 +9320,10 @@ +@@ -9303,6 +9320,10 @@ screen_del_lines(off, row, line_count, end, force, wp) } } @@ -6643,10 +6357,11 @@ diff -Naur vim73/src/screen.c vim73.haiku/src/screen.c screen_stop_highlight(); #ifdef FEAT_VERTSPLIT -diff -Naur vim73/src/structs.h vim73.haiku/src/structs.h ---- vim73/src/structs.h 2010-08-07 14:59:27.033292288 +0000 -+++ vim73.haiku/src/structs.h 2010-08-20 22:56:00.936640512 +0000 -@@ -2330,6 +2330,13 @@ +diff --git a/src/structs.h b/src/structs.h +index 884d6a9..690cf4d 100644 +--- a/src/structs.h ++++ b/src/structs.h +@@ -2330,6 +2330,13 @@ struct VimMenu HMENU submenu_id; /* If this is submenu, add children here */ HWND tearoff_handle; /* hWnd of tearoff if created */ #endif @@ -6660,10 +6375,11 @@ diff -Naur vim73/src/structs.h vim73.haiku/src/structs.h #ifdef FEAT_GUI_MAC /* MenuHandle id; */ /* short index; */ /* the item index within the father menu */ -diff -Naur vim73/src/term.c vim73.haiku/src/term.c ---- vim73/src/term.c 2010-07-25 13:30:31.000262144 +0000 -+++ vim73.haiku/src/term.c 2010-08-20 22:56:43.414711808 +0000 -@@ -1436,6 +1436,11 @@ +diff --git a/src/term.c b/src/term.c +index 8c42662..bd6c7b7 100644 +--- a/src/term.c ++++ b/src/term.c +@@ -1436,6 +1436,11 @@ static struct builtin_term builtin_termcaps[] = # define DEFAULT_TERM (char_u *)"beos-ansi" #endif @@ -6675,10 +6391,11 @@ diff -Naur vim73/src/term.c vim73.haiku/src/term.c #ifndef DEFAULT_TERM # define DEFAULT_TERM (char_u *)"dumb" #endif -diff -Naur vim73/src/ui.c vim73.haiku/src/ui.c ---- vim73/src/ui.c 2010-08-08 13:17:30.061865984 +0000 -+++ vim73.haiku/src/ui.c 2010-08-20 22:57:17.743440384 +0000 -@@ -269,7 +269,7 @@ +diff --git a/src/ui.c b/src/ui.c +index 9a04476..0886244 100644 +--- a/src/ui.c ++++ b/src/ui.c +@@ -269,7 +269,7 @@ ui_suspend() mch_suspend(); } @@ -6687,7 +6404,7 @@ diff -Naur vim73/src/ui.c vim73.haiku/src/ui.c /* * When the OS can't really suspend, call this function to start a shell. * This is never called in the GUI. -@@ -3000,7 +3000,7 @@ +@@ -3000,7 +3000,7 @@ mouse_find_win(rowp, colp) #if defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_MAC) \ || defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_MSWIN) \ @@ -6696,10 +6413,11 @@ diff -Naur vim73/src/ui.c vim73.haiku/src/ui.c /* * Translate window coordinates to buffer position without any side effects */ -diff -Naur vim73/src/version.c vim73.haiku/src/version.c ---- vim73/src/version.c 2010-08-01 13:45:48.052953088 +0000 -+++ vim73.haiku/src/version.c 2010-08-20 22:58:43.417333248 +0000 -@@ -949,6 +949,9 @@ +diff --git a/src/version.c b/src/version.c +index 79522a4..298b0e6 100644 +--- a/src/version.c ++++ b/src/version.c +@@ -949,6 +949,9 @@ list_version() MSG_PUTS(_("with X11-Athena GUI.")); # endif # else @@ -6709,7 +6427,7 @@ diff -Naur vim73/src/version.c vim73.haiku/src/version.c # ifdef FEAT_GUI_PHOTON MSG_PUTS(_("with Photon GUI.")); # else -@@ -966,6 +969,7 @@ +@@ -966,6 +969,7 @@ list_version() # endif # endif # endif @@ -6717,9 +6435,10 @@ diff -Naur vim73/src/version.c vim73.haiku/src/version.c # endif # endif # endif -diff -Naur vim73/src/vim.h vim73.haiku/src/vim.h ---- vim73/src/vim.h 2010-07-29 18:46:39.058720256 +0000 -+++ vim73.haiku/src/vim.h 2010-08-20 23:00:06.199753728 +0000 +diff --git a/src/vim.h b/src/vim.h +index b9ce325..aaa407a 100644 +--- a/src/vim.h ++++ b/src/vim.h @@ -115,6 +115,7 @@ || defined(FEAT_GUI_MAC) \ || defined(FEAT_GUI_W32) \ @@ -6737,7 +6456,7 @@ diff -Naur vim73/src/vim.h vim73.haiku/src/vim.h # include "os_beos.h" # define __ARGS(x) x #endif -@@ -1903,6 +1904,9 @@ +@@ -1903,6 +1904,9 @@ typedef struct VimClipboard int_u format; /* Vim's own special clipboard format */ int_u format_raw; /* Vim's raw text clipboard format */ # endif @@ -6747,3 +6466,6 @@ diff -Naur vim73/src/vim.h vim73.haiku/src/vim.h } VimClipboard; #else typedef int VimClipboard; /* This is required for the prototypes. */ +-- +1.8.3.4 + diff --git a/app-editors/vim/vim-7.3.recipe b/app-editors/vim/vim-7.3.recipe index d4a2297e0..507f4fd26 100644 --- a/app-editors/vim/vim-7.3.recipe +++ b/app-editors/vim/vim-7.3.recipe @@ -1,22 +1,69 @@ -DESCRIPTION="Vim is highly configurable text editor." +SUMMARY="Vim is highly configurable text editor." +DESCRIPTION=" + Vim is a highly configurable text editor built to enable efficient text + editing. It is an improved version of the vi editor distributed with most + UNIX systems. + + Vim is often called a \"programmer's editor,\" and so useful for programming + that many consider it an entire IDE. It's not just for programmers, though. + Vim is perfect for all kinds of text editing, from composing email to editing + configuration files. + + Despite what the above comic suggests, Vim can be configured to work in a very + simple (Notepad-like) way, called evim or Easy Vim. + " HOMEPAGE="http://www.vim.org" SRC_URI="ftp://ftp.vim.org/pub/vim/unix/vim-7.3.tar.bz2" +COPYRIGHT="Bram Moleenar et al." +LICENSE="Vim" REVISION="1" CHECKSUM_MD5="5b9510a17074e2b37d8bb38ae09edbf2" -STATUS_HAIKU="unstable" -DEPEND="" +ARCHITECTURES="x86_gcc2 x86" + +PROVIDES=" + vim = $portVersion + cmd:ex = $portVersion + cmd:gview = $portVersion + cmd:gvim = $portVersion + cmd:gvimdiff = $portVersion + cmd:rgview = $portVersion + cmd:rgvim = $portVersion + cmd:rview = $portVersion + cmd:rvim = $portVersion + cmd:vim = $portVersion + cmd:vimdiff = $portVersion + cmd:vimtutor = $portVersion + cmd:view = $portVersion + cmd:xxd = $portVersion +" +REQUIRES=" + haiku + lib:libncurses +" +BUILD_REQUIRES=" + ncurses_devel +" +BUILD_PREREQUIRES=" + cmd:make + cmd:autoconf + cmd:gcc +" + +SOURCE_DIR="vim73" +PATCHES=" + vim-7.3.patchset +" + BUILD() { - cd vim73 cd src make autoconf cd ../ - ./configure --prefix=`finddir B_COMMON_DIRECTORY` --with-features=big - make + runConfigure ./configure --with-features=big + make $jobArgs } INSTALL() { - cd vim73 make install }