]> git.pld-linux.org Git - packages/vim.git/commitdiff
- new
authorArkadiusz Miśkiewicz <arekm@maven.pl>
Tue, 21 Oct 2003 20:03:20 +0000 (20:03 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    6.2.107 -> 1.1
    6.2.108 -> 1.1
    6.2.109 -> 1.1
    6.2.110 -> 1.1
    6.2.111 -> 1.1
    6.2.112 -> 1.1
    6.2.113 -> 1.1
    6.2.114 -> 1.1
    6.2.115 -> 1.1
    6.2.116 -> 1.1
    6.2.117 -> 1.1
    6.2.118 -> 1.1
    6.2.119 -> 1.1
    6.2.120 -> 1.1
    6.2.121 -> 1.1
    6.2.122 -> 1.1
    6.2.123 -> 1.1
    6.2.124 -> 1.1
    6.2.125 -> 1.1
    6.2.126 -> 1.1
    6.2.127 -> 1.1

21 files changed:
6.2.107 [new file with mode: 0644]
6.2.108 [new file with mode: 0644]
6.2.109 [new file with mode: 0644]
6.2.110 [new file with mode: 0644]
6.2.111 [new file with mode: 0644]
6.2.112 [new file with mode: 0644]
6.2.113 [new file with mode: 0644]
6.2.114 [new file with mode: 0644]
6.2.115 [new file with mode: 0644]
6.2.116 [new file with mode: 0644]
6.2.117 [new file with mode: 0644]
6.2.118 [new file with mode: 0644]
6.2.119 [new file with mode: 0644]
6.2.120 [new file with mode: 0644]
6.2.121 [new file with mode: 0644]
6.2.122 [new file with mode: 0644]
6.2.123 [new file with mode: 0644]
6.2.124 [new file with mode: 0644]
6.2.125 [new file with mode: 0644]
6.2.126 [new file with mode: 0644]
6.2.127 [new file with mode: 0644]

diff --git a/6.2.107 b/6.2.107
new file mode 100644 (file)
index 0000000..23fe313
--- /dev/null
+++ b/6.2.107
@@ -0,0 +1,2686 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.107 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.107 (extra)
+Problem:    The NetBeans interface cannot be used on Win32.
+Solution:   Add support for the NetBeans for Win32.  Add support for reading
+           XPM files on Win32.  Also fixes that a sign icon with a space in
+           the file name did not work through the NetBeans interface.
+           (Sergey Khorev)
+           Also: avoid repeating error messages when the connection is lost.
+Files:     Makefile, runtime/doc/netbeans.txt, src/Make_bc5.mak,
+           src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak,
+           src/bigvim.bat, src/feature.h, src/gui_beval.c, src/gui_beval.h,
+           src/gui_w32.c, src/gui_w48.c, src/menu.c, src/nbdebug.c,
+           src/nbdebug.h, src/netbeans.c, src/os_mswin.c, src/os_win32.h,
+           src/proto/gui_beval.pro, src/proto/gui_w32.pro,
+           src/proto/netbeans.pro, src/proto.h, src/version.c, src/vim.h,
+           src/xpm_w32.c, src/xpm_w32.h
+
+
+*** ../vim-6.2.106/Makefile    Sun Jun  1 12:07:20 2003
+--- Makefile   Sun Oct 12 12:19:02 2003
+***************
+*** 438,443 ****
+--- 438,445 ----
+               src/vim16.rc \
+               src/vimrun.c \
+               src/vimtbar.h \
++              src/xpm_w32.c \
++              src/xpm_w32.h \
+               src/xxd/Make_bc3.mak \
+               src/xxd/Make_bc5.mak \
+               src/xxd/Make_cyg.mak \
+***************
+*** 564,569 ****
+--- 566,572 ----
+               src/gui_riscos.h \
+               src/if_sniff.c \
+               src/if_sniff.h \
++              src/infplist.xml \
+               src/link.390 \
+               src/os_beos.c \
+               src/os_beos.h \
+*** ../vim-6.2.106/runtime/doc/netbeans.txt    Sun Jun  1 16:04:00 2003
+--- runtime/doc/netbeans.txt   Fri Sep 12 21:37:19 2003
+***************
+*** 1,4 ****
+! *netbeans.txt*  For Vim version 6.2.  Last change: 2003 Jun 01
+  
+  
+                 VIM REFERENCE MANUAL    by Gordon Prieur
+--- 1,4 ----
+! *netbeans.txt*  For Vim version 6.2.  Last change: 2003 Sep 12
+  
+  
+                 VIM REFERENCE MANUAL    by Gordon Prieur
+***************
+*** 67,72 ****
+--- 67,77 ----
+  ==============================================================================
+  3. Configuring Vim for NetBeans                      *netbeans-configure*
+  
++ For more help installing vim, please read |usr_90.txt| in the Vim User Manual.
++ 
++ 
++ On Unix
++ 
+  When running configure without arguments the NetBeans interface should be
+  included.  That is, if the configure check to find out if your system supports
+  the required features succeeds.
+***************
+*** 81,87 ****
+  If Motif support is required the user must supply XPM libraries. See
+  |workshop-xpm| for details on obtaining the latest version of XPM.
+  
+! For more help installing vim, please read |usr_90.txt| in the Vim User Manual.
+  
+  ==============================================================================
+  4. Downloading NetBeans                                      *netbeans-download*
+--- 86,99 ----
+  If Motif support is required the user must supply XPM libraries. See
+  |workshop-xpm| for details on obtaining the latest version of XPM.
+  
+! 
+! On MS-Windows
+! 
+! The Win32 support is now in beta stage.
+! 
+! To use XPM signs on Win32 (e.g. when using with Netbeans) you can compile
+! XPM by yourself or use precompiled libraries from http://iamphet.nm.ru/xpm
+! (for MS Visual C++) or http://gnuwin32.sourceforge.net (for MinGW).
+  
+  ==============================================================================
+  4. Downloading NetBeans                                      *netbeans-download*
+***************
+*** 391,397 ****
+               Not implemented.
+  
+  setDot off   Make the buffer the current buffer and set the cursor at the
+!              specified position.
+               In version 2.1 "lnum/col" can be used instead of "off".
+  
+  setExitDelay seconds
+--- 411,418 ----
+               Not implemented.
+  
+  setDot off   Make the buffer the current buffer and set the cursor at the
+!              specified position.  If there are folds they are opened to
+!              make the cursor line visible.
+               In version 2.1 "lnum/col" can be used instead of "off".
+  
+  setExitDelay seconds
+*** ../vim-6.2.106/src/Make_bc5.mak    Tue May 13 20:21:37 2003
+--- src/Make_bc5.mak   Fri Sep 12 21:42:02 2003
+***************
+*** 72,77 ****
+--- 72,80 ----
+  #            (BIG for WIN32, SMALL for DOS16)
+  # WINVER     0x400 or 0x500: minimum Win32 version to support (0x400)
+  # CSCOPE     no or yes: include support for Cscope interface (yes)
++ # NETBEANS   no or yes: include support for Netbeans interface (yes if GUI
++ #            is yes)
++ # XPM                define to path to XPM dir to get support for loading XPM images.
+  
+  ### BOR: root of the BC installation
+  !if ("$(BOR)"=="")
+***************
+*** 114,119 ****
+--- 117,127 ----
+  CSCOPE = yes
+  !endif
+  
++ ### NETBEANS: yes to enable NetBeans interface support, no to disable it
++ !if ("$(NETBEANS)"=="") && ("$(GUI)"=="yes")
++ NETBEANS = yes
++ !endif
++ 
+  ### PERL: uncomment this line if you want perl support in vim
+  # PERL=c:\perl
+  
+***************
+*** 190,196 ****
+       ("$(RUBY)"=="") && \
+       ("$(ICONV)"!="yes") && \
+       ("$(IME)"!="yes") && \
+!      ("$(MBYTE)"!="yes")
+  FASTCALL = yes
+  !endif
+  
+--- 198,205 ----
+       ("$(RUBY)"=="") && \
+       ("$(ICONV)"!="yes") && \
+       ("$(IME)"!="yes") && \
+!      ("$(MBYTE)"!="yes") && \
+!      ("$(XPM)"=="")
+  FASTCALL = yes
+  !endif
+  
+***************
+*** 372,377 ****
+--- 381,399 ----
+  DEFINES = $(DEFINES) -DFEAT_CSCOPE
+  !endif
+  
++ !if ("$(NETBEANS)"=="yes")
++ DEFINES = $(DEFINES) -DFEAT_NETBEANS_INTG
++ !if ("$(DEBUG)"=="yes")
++ DEFINES = $(DEFINES) -DNBDEBUG
++ NBDEBUG_DEP = nbdebug.h nbdebug.c
++ !endif
++ !endif
++ 
++ !ifdef XPM
++ DEFINES = $(DEFINES) -DFEAT_XPM_W32
++ INCLUDE = $(XPM)\include;$(INCLUDE)
++ !endif
++ 
+  !if ("$(GUI)"=="yes")
+  DEFINES = $(DEFINES) -DFEAT_GUI_W32 -DFEAT_CLIPBOARD
+  !if ("$(DEBUG)"=="yes")
+***************
+*** 448,454 ****
+  LINK = $(BOR)\BIN\ILink32
+  !endif
+  CC   = $(BOR)\BIN\Bcc32
+! LFLAGS       = -OS -r -Tpe -c -m -L$(LIB) $(DEBUG_FLAG) $(LINK2)
+  LFLAGSDLL  = -Tpd -c -m -L$(LIB) $(DEBUG_FLAG) $(LINK2)
+  CFLAGS = -w-aus -w-par -w-pch -I$(INCLUDE) -d -x- -RT- -k- -Oi $(HEADERS) -f-
+  !endif
+--- 470,476 ----
+  LINK = $(BOR)\BIN\ILink32
+  !endif
+  CC   = $(BOR)\BIN\Bcc32
+! LFLAGS       = -OS -Tpe -c -m -L$(LIB) $(DEBUG_FLAG) $(LINK2)
+  LFLAGSDLL  = -Tpd -c -m -L$(LIB) $(DEBUG_FLAG) $(LINK2)
+  CFLAGS = -w-aus -w-par -w-pch -I$(INCLUDE) -d -x- -RT- -k- -Oi $(HEADERS) -f-
+  !endif
+***************
+*** 512,518 ****
+       $(OBJDIR)\normal.obj \
+       $(OBJDIR)\ops.obj \
+       $(OBJDIR)\option.obj \
+-      $(OBJDIR)\pathdef.obj \
+       $(OBJDIR)\quickfix.obj \
+       $(OBJDIR)\regexp.obj \
+       $(OBJDIR)\screen.obj \
+--- 534,539 ----
+***************
+*** 523,529 ****
+       $(OBJDIR)\ui.obj \
+       $(OBJDIR)\undo.obj \
+       $(OBJDIR)\version.obj \
+!      $(OBJDIR)\window.obj
+  
+  !if ("$(OLE)"=="yes")
+  vimobj = $(vimobj) \
+--- 544,551 ----
+       $(OBJDIR)\ui.obj \
+       $(OBJDIR)\undo.obj \
+       $(OBJDIR)\version.obj \
+!      $(OBJDIR)\window.obj \
+!      $(OBJDIR)\pathdef.obj
+  
+  !if ("$(OLE)"=="yes")
+  vimobj = $(vimobj) \
+***************
+*** 550,560 ****
+      $(OBJDIR)\if_tcl.obj
+  !endif
+  
+! !ifdef CSCOPE
+  vimobj = $(vimobj) \
+      $(OBJDIR)\if_cscope.obj
+  !endif
+  
+  !if ("$(VIMDLL)"=="yes")
+  vimdllobj = $(vimobj)
+  !if ("$(DEBUG)"=="yes")
+--- 572,592 ----
+      $(OBJDIR)\if_tcl.obj
+  !endif
+  
+! !if ("$(CSCOPE)"=="yes")
+  vimobj = $(vimobj) \
+      $(OBJDIR)\if_cscope.obj
+  !endif
+  
++ !if ("$(NETBEANS)"=="yes")
++ vimobj = $(vimobj) \
++     $(OBJDIR)\netbeans.obj $(OBJDIR)\gui_beval.obj
++ !endif
++ 
++ !ifdef XPM
++ vimobj = $(vimobj) \
++     $(OBJDIR)\xpm_w32.obj
++ !endif
++ 
+  !if ("$(VIMDLL)"=="yes")
+  vimdllobj = $(vimobj)
+  !if ("$(DEBUG)"=="yes")
+***************
+*** 620,625 ****
+--- 652,663 ----
+  !if ("$(CSCOPE)"=="yes")
+  MSG = $(MSG) CSCOPE
+  !endif
++ !if ("$(NETBEANS)"=="yes")
++ MSG = $(MSG) NETBEANS
++ !endif
++ !ifdef XPM
++ MSG = $(MSG) XPM
++ !endif
+  !ifdef PERL
+  MSG = $(MSG) PERL
+  ! if "$(DYNAMIC_PERL)" == "yes"
+***************
+*** 728,733 ****
+--- 766,774 ----
+  !ifdef TCL
+       -@del tcl.lib
+  !endif
++ !ifdef XPM
++      -@del xpm.lib
++ !endif
+       cd xxd
+       $(MAKE) /f Make_bc5.mak BOR="$(BOR)" clean
+       cd ..
+***************
+*** 762,767 ****
+--- 803,811 ----
+  !ifdef TCL
+       $(TCL_LIB_FLAG)tcl.lib+
+  !endif
++ !ifdef XPM
++      xpm.lib+
++ !endif
+  !if ("$(USEDLL)"=="yes")
+       cw32i.lib
+  !else
+***************
+*** 808,813 ****
+--- 852,860 ----
+  !ifdef TCL
+       $(TCL_LIB_FLAG)tcl.lib+
+  !endif
++ !ifdef XPM
++      xpm.lib+
++ !endif
+  !if ("$(USEDLL)"=="yes")
+       cw32i.lib
+  !else
+***************
+*** 842,847 ****
+--- 889,900 ----
+  $(OBJDIR)\if_tcl.obj: if_tcl.c tcl.lib
+       $(CC) $(CCARG) $(CC1) $(CC2)$@ -pc if_tcl.c
+  
++ $(OBJDIR)\xpm_w32.obj: xpm_w32.c xpm.lib
++      $(CC) $(CCARG) $(CC1) $(CC2)$@ -pc xpm_w32.c
++ 
++ $(OBJDIR)\netbeans.obj: netbeans.c $(NBDEBUG_DEP)
++      $(CC) $(CCARG) $(CC1) $(CC2)$@ netbeans.c
++ 
+  $(OBJDIR)\vim.res: vim.rc version.h tools.bmp tearoff.bmp \
+               vim.ico vim_error.ico vim_alert.ico vim_info.ico vim_quest.ico
+       $(BRC) -fo$(OBJDIR)\vim.res -i $(BOR)\include -w32 -r vim.rc @&&|
+***************
+*** 876,881 ****
+--- 929,939 ----
+  
+  ruby.lib: $(RUBY)\lib\$(RUBY_INSTALL_NAME).lib
+       coff2omf $(RUBY)\lib\$(RUBY_INSTALL_NAME).lib $@
++ 
++ # For some reason, the coff2omf method doesn't work on libXpm.lib, so
++ # we have to manually generate an import library straight from the DLL.
++ xpm.lib: $(XPM)\lib\libXpm.lib
++      implib -a $@ $(XPM)\bin\libXpm.dll
+  
+  tcl.lib: $(TCL_LIB)
+  !if ("$(DYNAMIC_TCL)" == "yes")
+*** ../vim-6.2.106/src/Make_cyg.mak    Sun Jul 27 13:40:24 2003
+--- src/Make_cyg.mak   Fri Sep 12 21:52:50 2003
+***************
+*** 4,10 ****
+  # This compiles Vim as a Windows application.  If you want Vim to run as a
+  # Cygwin application use the Makefile (just like on Unix).
+  #
+! # Last updated by Dan Sharp.  Last Change: 2003 Jun 22
+  #
+  # GUI                no or yes: set to yes if you want the GUI version (yes)
+  # PERL               define to path to Perl dir to get Perl support (not defined)
+--- 4,10 ----
+  # This compiles Vim as a Windows application.  If you want Vim to run as a
+  # Cygwin application use the Makefile (just like on Unix).
+  #
+! # Last updated by Dan Sharp.  Last Change: 2003 Sep 12
+  #
+  # GUI                no or yes: set to yes if you want the GUI version (yes)
+  # PERL               define to path to Perl dir to get Perl support (not defined)
+***************
+*** 35,40 ****
+--- 35,43 ----
+  # WINVER     Lowest Win32 version to support.  (0x400)
+  # CSCOPE     no or yes: to include cscope interface support (yes)
+  # OPTIMIZE   SPACE, SPEED, or MAXSPEED: set optimization level (MAXSPEED)
++ # NETBEANS   no or yes: to include netbeans interface support (yes when GUI
++ #            is yes)
++ # XPM                define to path to XPM dir to get XPM image support (not defined) 
+  #>>>>> choose options:
+  ifndef GUI
+  GUI=yes
+***************
+*** 76,81 ****
+--- 79,90 ----
+  CSCOPE = yes
+  endif
+  
++ ifndef NETBEANS
++ ifeq ($(GUI),yes)
++ NETBEANS = yes
++ endif
++ endif
++ 
+  ifndef OPTIMIZE
+  OPTIMIZE = MAXSPEED
+  endif
+***************
+*** 266,271 ****
+--- 275,301 ----
+  endif
+  
+  ##############################
++ ifeq (yes, $(NETBEANS))
++ DEFINES += -DFEAT_NETBEANS_INTG
++ EXTRA_OBJS += $(OUTDIR)/netbeans.o $(OUTDIR)/gui_beval.o
++ EXTRA_LIBS += -lws2_32
++ 
++ ifeq (yes, $(DEBUG))
++ DEFINES += -DNBDEBUG
++ NBDEBUG_DEP = nbdebug.h nbdebug.c
++ endif
++ 
++ endif
++ 
++ ##############################
++ ifdef XPM
++ DEFINES += -DFEAT_XPM_W32
++ INCLUDES += -I$(XPM)/include
++ EXTRA_OBJS += $(OUTDIR)/xpm_w32.o
++ EXTRA_LIBS += -L$(XPM)/lib -lXpm
++ endif
++ 
++ ##############################
+  ifeq (yes, $(OLE))
+  DEFINES += -DFEAT_OLE
+  EXTRA_OBJS += $(OUTDIR)/if_ole.o
+***************
+*** 417,422 ****
+--- 447,455 ----
+  
+  $(OUTDIR)/if_ruby.o: if_ruby.c $(INCL)
+       $(CC) -c $(CFLAGS) -U_WIN32 if_ruby.c -o $(OUTDIR)/if_ruby.o
++ 
++ $(OUTDIR)/netbeans.o:        netbeans.c $(INCL) $(NBDEBUG_DEP)
++      $(CC) -c $(CFLAGS) netbeans.c -o $(OUTDIR)/netbeans.o
+  
+  $(OUTDIR)/vimrc.o:   vim.rc version.h gui_w32_rc.h
+       $(RC) $(RCFLAGS) vim.rc -o $(OUTDIR)/vimrc.o
+*** ../vim-6.2.106/src/Make_ming.mak   Tue May 27 21:15:20 2003
+--- src/Make_ming.mak  Fri Sep 12 22:03:17 2003
+***************
+*** 52,59 ****
+  OLE=no
+  # Set the default $(WINVER) to make it work with pre-Win2k
+  WINVER = 0x0400
+! #set to yes to enable Cscope support
+  CSCOPE=yes
+  
+  # If the user doesn't want gettext, undefine it.
+  ifeq (no, $(GETTEXT))
+--- 52,62 ----
+  OLE=no
+  # Set the default $(WINVER) to make it work with pre-Win2k
+  WINVER = 0x0400
+! # Set to yes to enable Cscope support
+  CSCOPE=yes
++ # Set to yes to enable Netbeans support
++ NETBEANS=$(GUI)
++ 
+  
+  # If the user doesn't want gettext, undefine it.
+  ifeq (no, $(GETTEXT))
+***************
+*** 270,275 ****
+--- 273,291 ----
+  DEFINES += -DFEAT_CSCOPE
+  endif
+  
++ ifeq ($(NETBEANS),yes)
++ DEFINES += -DFEAT_NETBEANS_INTG
++ ifeq ($(DEBUG), yes)
++ DEFINES += -DNBDEBUG
++ NBDEBUG_INCL = nbdebug.h
++ NBDEBUG_SRC = nbdebug.c
++ endif
++ endif
++ 
++ ifdef XPM
++ CFLAGS += -DFEAT_XPM_W32 -I $(XPM)/include
++ endif
++ 
+  ifeq ($(DEBUG),yes)
+  CFLAGS += -g -fstack-check
+  DEBUG_SUFFIX=d
+***************
+*** 348,353 ****
+--- 364,378 ----
+  ifeq ($(CSCOPE),yes)
+  OBJ += $(OUTDIR)/if_cscope.o
+  endif
++ ifeq ($(NETBEANS),yes)
++ OBJ += $(OUTDIR)/netbeans.o $(OUTDIR)/gui_beval.o
++ LIB += -lws2_32
++ endif
++ ifdef XPM
++ OBJ += $(OUTDIR)/xpm_w32.o
++ # You'll need libXpm.a from http://gnuwin32.sf.net
++ LIB += -L $(XPM)/lib -lXpm
++ endif
+  
+  
+  ifeq ($(GUI),yes)
+***************
+*** 487,492 ****
+--- 512,520 ----
+  if_perl.c: if_perl.xs typemap
+       perl $(PERLLIB)/ExtUtils/xsubpp -prototypes -typemap \
+            $(PERLLIB)/ExtUtils/typemap if_perl.xs > $@
++ 
++ $(OUTDIR)/netbeans.o:        netbeans.c $(INCL) $(NBDEBUG_INCL) $(NBDEBUG_SRC)
++      $(CC) -c $(CFLAGS) netbeans.c -o $(OUTDIR)/netbeans.o
+  
+  pathdef.c: $(INCL)
+  ifneq (sh.exe, $(SHELL))
+*** ../vim-6.2.106/src/Make_mvc.mak    Sun Aug 10 22:37:55 2003
+--- src/Make_mvc.mak   Fri Sep 12 22:07:37 2003
+***************
+*** 12,18 ****
+  #    nmake -f Make_mvc.mak
+  # This will build the console version of vim with no additional interfaces.
+  # To add interfaces, define any of the following:
+! #    GUI interface: GUI=yes
+  #    OLE interface: OLE=yes (usually with GUI=yes)
+  #    Multibyte support: MBYTE=yes
+  #    IME support: IME=yes    (requires GUI=yes)
+--- 12,18 ----
+  #    nmake -f Make_mvc.mak
+  # This will build the console version of vim with no additional interfaces.
+  # To add interfaces, define any of the following:
+! #    GUI interface: GUI=yes (default is no)
+  #    OLE interface: OLE=yes (usually with GUI=yes)
+  #    Multibyte support: MBYTE=yes
+  #    IME support: IME=yes    (requires GUI=yes)
+***************
+*** 39,52 ****
+  #      TCL_VER=[Tcl version, e.g. 80, 83]  (default is 83)
+  #      TCL_VER_LONG=[Tcl version, eg 8.3] (default is 8.3)
+  #        You must set TCL_VER_LONG when you set TCL_VER.
+- #    Cscope support: CSCOPE=yes
+  #    Debug version: DEBUG=yes
+  #    Mapfile: MAP=[no, yes or lines] (default is yes)
+  #      no:    Don't write a mapfile.
+  #      yes:   Write a normal mapfile.
+  #      lines: Write a mapfile with line numbers (only for VC6 and later)
+  #    SNiFF+ interface: SNIFF=yes
+! #    Cscope interface: CSCOPE=yes
+  #    Iconv library support (always dynamically loaded):
+  #      ICONV=[yes or no]  (default is yes)
+  #    Intl library support (always dynamically loaded):
+--- 39,51 ----
+  #      TCL_VER=[Tcl version, e.g. 80, 83]  (default is 83)
+  #      TCL_VER_LONG=[Tcl version, eg 8.3] (default is 8.3)
+  #        You must set TCL_VER_LONG when you set TCL_VER.
+  #    Debug version: DEBUG=yes
+  #    Mapfile: MAP=[no, yes or lines] (default is yes)
+  #      no:    Don't write a mapfile.
+  #      yes:   Write a normal mapfile.
+  #      lines: Write a mapfile with line numbers (only for VC6 and later)
+  #    SNiFF+ interface: SNIFF=yes
+! #    Cscope support: CSCOPE=yes
+  #    Iconv library support (always dynamically loaded):
+  #      ICONV=[yes or no]  (default is yes)
+  #    Intl library support (always dynamically loaded):
+***************
+*** 57,62 ****
+--- 56,63 ----
+  #       Version Support: WINVER=[0x400, 0x500] (default is 0x400)
+  #       Processor Version: CPUNR=[i386, i486, i586, i686] (default is i386)
+  #       Optimization: OPTIMIZE=[SPACE, SPEED, MAXSPEED] (default is MAXSPEED)
++ #       Netbeans Support: NETBEANS=[yes or no] (default is yes if GUI is yes)
++ #       XPM Image Support: XPM=[path to XPM directory]
+  #
+  # You can combine any of these interfaces
+  #
+***************
+*** 173,178 ****
+--- 174,183 ----
+  MULTITHREADED = yes
+  !endif
+  
++ !ifndef CSCOPE
++ CSCOPE = yes
++ !endif
++ 
+  !if "$(CSCOPE)" == "yes"
+  # CSCOPE - Include support for Cscope
+  CSCOPE_INCL  = if_cscope.h
+***************
+*** 180,185 ****
+--- 185,216 ----
+  CSCOPE_DEFS  = -DFEAT_CSCOPE
+  !endif
+  
++ !ifndef NETBEANS
++ NETBEANS = $(GUI)
++ !endif
++ 
++ !if "$(NETBEANS)" == "yes"
++ # NETBEANS - Include support for Netbeans integration
++ NETBEANS_PRO = proto/netbeans.pro
++ NETBEANS_OBJ = $(OBJDIR)/netbeans.obj $(OBJDIR)/gui_beval.obj
++ NETBEANS_DEFS        = -DFEAT_NETBEANS_INTG
++ !if "$(DEBUG)" == "yes"
++ NBDEBUG_DEFS = -DNBDEBUG
++ NBDEBUG_INCL = nbdebug.h
++ NBDEBUG_SRC  = nbdebug.c
++ !endif
++ NETBEANS_LIB   = Ws2_32.lib
++ !endif
++ 
++ !ifdef XPM
++ # XPM - Include support for XPM signs
++ # you can get xpm.lib from http://iamphet.nm.ru/xpm or create it yourself
++ XPM_OBJ   = $(OBJDIR)/xpm_w32.obj
++ XPM_DEFS  = -DFEAT_XPM_W32
++ XPM_LIB   = $(XPM)\lib\libXpm.lib
++ XPM_INC        = -I $(XPM)\include
++ !endif
++ 
+  !if defined(USE_MSVCRT)
+  CVARS = $(cvarsdll)
+  !elseif defined(MULTITHREADED)
+***************
+*** 208,215 ****
+  #VIMRUNTIMEDIR = somewhere
+  
+  CFLAGS = -c /W3 /nologo $(CVARS) -I. -Iproto -DHAVE_PATHDEF -DWIN32 \
+!              $(SNIFF_DEFS) $(CSCOPE_DEFS) $(DEFINES) \
+!              -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER)
+  
+  #>>>>> end of choices
+  ###########################################################################
+--- 239,247 ----
+  #VIMRUNTIMEDIR = somewhere
+  
+  CFLAGS = -c /W3 /nologo $(CVARS) -I. -Iproto -DHAVE_PATHDEF -DWIN32 \
+!              $(SNIFF_DEFS) $(CSCOPE_DEFS) $(NETBEANS_DEFS) \
+!              $(NBDEBUG_DEFS) $(XPM_DEFS) \
+!              $(DEFINES) -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER)
+  
+  #>>>>> end of choices
+  ###########################################################################
+***************
+*** 285,291 ****
+  !endif # DEBUG
+  
+  INCL =       vim.h os_win32.h ascii.h feature.h globals.h keymap.h macros.h \
+!      proto.h option.h structs.h term.h $(SNIFF_INCL) $(CSCOPE_INCL)
+  
+  OBJ = \
+       $(OUTDIR)\buffer.obj \
+--- 317,324 ----
+  !endif # DEBUG
+  
+  INCL =       vim.h os_win32.h ascii.h feature.h globals.h keymap.h macros.h \
+!      proto.h option.h structs.h term.h $(SNIFF_INCL) $(CSCOPE_INCL) \
+!      $(NBDEBUG_INCL)
+  
+  OBJ = \
+       $(OUTDIR)\buffer.obj \
+***************
+*** 568,581 ****
+  
+  LINKARGS1 = $(linkdebug) $(conflags) /nodefaultlib:libc
+  LINKARGS2 = $(CON_LIB) $(GUI_LIB) $(LIBC) $(OLE_LIB)  user32.lib $(SNIFF_LIB) \
+!              $(PERL_LIB) $(PYTHON_LIB) $(RUBY_LIB) $(TCL_LIB) $(LINK_PDB)
+  
+  all: $(VIM) vimrun.exe install.exe uninstal.exe xxd/xxd.exe GvimExt/gvimext.dll
+  
+! $(VIM): $(OUTDIR) $(OBJ) $(GUI_OBJ) $(OLE_OBJ) $(OLE_IDL) $(PERL_OBJ) $(PYTHON_OBJ) $(RUBY_OBJ) $(TCL_OBJ) $(SNIFF_OBJ) $(CSCOPE_OBJ) version.c version.h
+       $(CC) $(CFLAGS)  version.c /Fo$(OUTDIR)/version.obj $(PDB)
+       $(link) $(LINKARGS1) -out:$*.exe $(OBJ) $(GUI_OBJ) $(OLE_OBJ) \
+!              $(PERL_OBJ) $(PYTHON_OBJ) $(RUBY_OBJ) $(TCL_OBJ) $(SNIFF_OBJ) $(CSCOPE_OBJ) \
+               $(OUTDIR)\version.obj $(LINKARGS2)
+  
+  $(VIM).exe: $(VIM)
+--- 601,616 ----
+  
+  LINKARGS1 = $(linkdebug) $(conflags) /nodefaultlib:libc
+  LINKARGS2 = $(CON_LIB) $(GUI_LIB) $(LIBC) $(OLE_LIB)  user32.lib $(SNIFF_LIB) \
+!              $(PERL_LIB) $(PYTHON_LIB) $(RUBY_LIB) $(TCL_LIB) \
+!              $(NETBEANS_LIB) $(XPM_LIB) $(LINK_PDB)
+  
+  all: $(VIM) vimrun.exe install.exe uninstal.exe xxd/xxd.exe GvimExt/gvimext.dll
+  
+! $(VIM): $(OUTDIR) $(OBJ) $(GUI_OBJ) $(OLE_OBJ) $(OLE_IDL) $(PERL_OBJ) $(PYTHON_OBJ) $(RUBY_OBJ) $(TCL_OBJ) $(SNIFF_OBJ) $(CSCOPE_OBJ) $(NETBEANS_OBJ) $(XPM_OBJ) version.c version.h
+       $(CC) $(CFLAGS)  version.c /Fo$(OUTDIR)/version.obj $(PDB)
+       $(link) $(LINKARGS1) -out:$*.exe $(OBJ) $(GUI_OBJ) $(OLE_OBJ) \
+!              $(PERL_OBJ) $(PYTHON_OBJ) $(RUBY_OBJ) $(TCL_OBJ) $(SNIFF_OBJ) \
+!              $(CSCOPE_OBJ) $(NETBEANS_OBJ) $(XPM_OBJ) \
+               $(OUTDIR)\version.obj $(LINKARGS2)
+  
+  $(VIM).exe: $(VIM)
+***************
+*** 695,700 ****
+--- 730,737 ----
+  
+  $(OUTDIR)/gui_w32.obj:       $(OUTDIR) gui_w32.c gui_w48.c $(INCL) $(GUI_INCL)
+  
++ $(OUTDIR)/if_cscope.obj: $(OUTDIR) if_cscope.c  $(INCL)
++ 
+  if_perl.c : if_perl.xs typemap
+       $(PERL_EXE) $(XSUBPP) -prototypes -typemap $(XSUBPP_TYPEMAP) -typemap typemap if_perl.xs > if_perl.c
+  
+***************
+*** 738,743 ****
+--- 775,782 ----
+  
+  $(OUTDIR)/mbyte.obj: $(OUTDIR) mbyte.c  $(INCL)
+  
++ $(OUTDIR)/netbeans.obj: $(OUTDIR) netbeans.c $(NBDEBUG_SRC) $(INCL)
++ 
+  $(OUTDIR)/normal.obj:        $(OUTDIR) normal.c  $(INCL)
+  
+  $(OUTDIR)/option.obj:        $(OUTDIR) option.c  $(INCL)
+***************
+*** 773,778 ****
+--- 812,820 ----
+  
+  $(OUTDIR)/window.obj:        $(OUTDIR) window.c  $(INCL)
+  
++ $(OUTDIR)/xpm_w32.obj: $(OUTDIR) xpm_w32.c
++      $(CC) $(CFLAGS) $(XPM_INC) xpm_w32.c /Fo$(OUTDIR)/xpm_w32.obj $(PDB)
++ 
+  $(OUTDIR)/vim.res:   $(OUTDIR) vim.rc version.h tools.bmp tearoff.bmp vim.ico vim_error.ico vim_alert.ico vim_info.ico vim_quest.ico
+       $(RC) /l 0x409 /Fo$(OUTDIR)/vim.res $(RCFLAGS) vim.rc
+  
+***************
+*** 839,844 ****
+       proto/term.pro \
+       proto/ui.pro \
+       proto/undo.pro \
+!      proto/window.pro
+  
+  # vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0:
+--- 881,887 ----
+       proto/term.pro \
+       proto/ui.pro \
+       proto/undo.pro \
+!      proto/window.pro \
+!      $(NETBEANS_PRO)
+  
+  # vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0:
+*** ../vim-6.2.106/src/bigvim.bat      Mon Apr 28 21:30:10 2003
+--- src/bigvim.bat     Fri Sep 12 22:08:59 2003
+***************
+*** 1,3 ****
+  :: command to build big Vim with OLE, Perl, Python and Tcl
+! nmake -f make_mvc.mak GUI=yes OLE=yes PERL=E:\perl DYNAMIC_PERL=yes PERL_VER=56 PYTHON=e:\python21 DYNAMIC_PYTHON=yes PYTHON_VER=21 TCL=e:\tcl DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes
+  
+--- 1,3 ----
+  :: command to build big Vim with OLE, Perl, Python and Tcl
+! nmake -f make_mvc.mak GUI=yes OLE=yes PERL=E:\perl DYNAMIC_PERL=yes PERL_VER=56 PYTHON=e:\python21 DYNAMIC_PYTHON=yes PYTHON_VER=21 TCL=e:\tcl DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes XPM=e:\xpm
+  
+*** ../vim-6.2.106/src/feature.h       Mon Jun 30 22:18:22 2003
+--- src/feature.h      Fri Sep 12 22:14:26 2003
+***************
+*** 1109,1118 ****
+  #endif
+  
+  /*
+!  * The Netbeans features currently only work with Motif and GTK.
+   * It also requires +listcmds and +eval.
+   */
+! #if ((!defined(FEAT_GUI_MOTIF) && !defined(FEAT_GUI_GTK)) \
+               || !defined(FEAT_LISTCMDS) || !defined(FEAT_EVAL)) \
+       && defined(FEAT_NETBEANS_INTG)
+  # undef FEAT_NETBEANS_INTG
+--- 1109,1118 ----
+  #endif
+  
+  /*
+!  * The Netbeans features currently only work with Motif and GTK and Win32.
+   * It also requires +listcmds and +eval.
+   */
+! #if ((!defined(FEAT_GUI_MOTIF) && !defined(FEAT_GUI_GTK) && !defined(FEAT_GUI_W32)) \
+               || !defined(FEAT_LISTCMDS) || !defined(FEAT_EVAL)) \
+       && defined(FEAT_NETBEANS_INTG)
+  # undef FEAT_NETBEANS_INTG
+***************
+*** 1139,1150 ****
+   *                   Currently only for Athena and Motif.
+   */
+  #if (defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA) \
+!                           || defined(FEAT_GUI_GTK)) \
+!      && (   (defined(FEAT_TOOLBAR) && !defined(FEAT_GUI_GTK)) \
+           || defined(FEAT_SUN_WORKSHOP) \
+           || defined(FEAT_NETBEANS_INTG))
+  # define FEAT_BEVAL
+! # if !defined(FEAT_XFONTSET) && !defined(FEAT_GUI_GTK)
+  #  define FEAT_XFONTSET
+  # endif
+  #endif
+--- 1139,1152 ----
+   *                   Currently only for Athena and Motif.
+   */
+  #if (defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA) \
+!      || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_W32)) \
+!      && (   (defined(FEAT_TOOLBAR) \
+!              && !defined(FEAT_GUI_GTK) && !defined(FEAT_GUI_W32)) \
+           || defined(FEAT_SUN_WORKSHOP) \
+           || defined(FEAT_NETBEANS_INTG))
+  # define FEAT_BEVAL
+! # if !defined(FEAT_XFONTSET) && !defined(FEAT_GUI_GTK) \
+!      && !defined(FEAT_GUI_W32)
+  #  define FEAT_XFONTSET
+  # endif
+  #endif
+*** ../vim-6.2.106/src/gui_beval.c     Sat May 31 22:30:51 2003
+--- src/gui_beval.c    Fri Sep 12 22:17:52 2003
+***************
+*** 12,17 ****
+--- 12,20 ----
+  
+  #if defined(FEAT_BEVAL) || defined(PROTO)
+  
++ /* on Win32 only gui_mch_get_beval_info is required */
++ #if !defined(FEAT_GUI_W32) || defined(PROTO)
++ 
+  #ifdef FEAT_GUI_GTK
+  # include <gdk/gdkkeysyms.h>
+  # include <gtk/gtk.h>
+***************
+*** 194,199 ****
+--- 197,203 ----
+      return current_beval;
+  }
+  #endif
++ #endif /* !FEAT_GUI_W32 */
+  
+  #if defined(FEAT_SUN_WORKSHOP) || defined(FEAT_NETBEANS_INTG) || defined(PROTO)
+  /*
+***************
+*** 256,265 ****
+                   if (VIsual_active
+                           && wp->w_buffer == curwin->w_buffer
+                           && (lnum == spos->lnum
+!                              ? col >= spos->col
+                               : lnum > spos->lnum)
+                           && (lnum == epos->lnum
+!                              ? col <= epos->col
+                               : lnum < epos->lnum))
+                   {
+                       /* Visual mode and pointing to the line with the
+--- 260,269 ----
+                   if (VIsual_active
+                           && wp->w_buffer == curwin->w_buffer
+                           && (lnum == spos->lnum
+!                              ? col >= (int)spos->col
+                               : lnum > spos->lnum)
+                           && (lnum == epos->lnum
+!                              ? col <= (int)epos->col
+                               : lnum < epos->lnum))
+                   {
+                       /* Visual mode and pointing to the line with the
+***************
+*** 300,305 ****
+--- 304,311 ----
+      return FAIL;
+  }
+  
++ # if !defined(FEAT_GUI_W32) || defined(PROTO)
++ 
+  /*
+   * Show a balloon with "mesg".
+   */
+***************
+*** 314,321 ****
+      else
+       undrawBalloon(beval);
+  }
+! #endif
+  
+  #if defined(FEAT_BEVAL_TIP) || defined(PROTO)
+  /*
+   * Hide the given balloon.
+--- 320,329 ----
+      else
+       undrawBalloon(beval);
+  }
+! # endif /* FEAT_GUI_W32 */
+! #endif /* FEAT_SUN_WORKSHOP || FEAT_NETBEANS_INTG || PROTO */
+  
++ #if !defined(FEAT_GUI_W32) || defined(PROTO)
+  #if defined(FEAT_BEVAL_TIP) || defined(PROTO)
+  /*
+   * Hide the given balloon.
+***************
+*** 1255,1259 ****
+--- 1263,1268 ----
+  }
+  
+  #endif /* !FEAT_GUI_GTK */
++ #endif /* !FEAT_GUI_W32 */
+  
+  #endif /* FEAT_BEVAL */
+*** ../vim-6.2.106/src/gui_beval.h     Sat Apr 19 16:06:43 2003
+--- src/gui_beval.h    Mon Sep 29 09:56:44 2003
+***************
+*** 13,19 ****
+  #ifdef FEAT_GUI_GTK
+  # include <gtk/gtkwidget.h>
+  #else
+! # include <X11/Intrinsic.h>
+  #endif
+  
+  typedef enum
+--- 13,21 ----
+  #ifdef FEAT_GUI_GTK
+  # include <gtk/gtkwidget.h>
+  #else
+! # if defined(FEAT_GUI_X11)
+! #  include <X11/Intrinsic.h>
+! # endif
+  #endif
+  
+  typedef enum
+***************
+*** 36,41 ****
+--- 38,44 ----
+      int                      y;
+      unsigned int     state;          /* Button/Modifier key state */
+  #else
++ # if !defined(FEAT_GUI_W32)
+      Widget           target;         /* widget we are monitoring */
+      Widget           balloonShell;
+      Widget           balloonLabel;
+***************
+*** 47,58 ****
+      Position         x_root;
+      Position         y_root;
+      int                      state;          /* Button/Modifier key state */
+  #endif
+      int                      ts;             /* tabstop setting for this buffer */
+      char_u           *msg;
+      void             (*msgCB)();
+      void             *clientData;    /* For callback */
+! #ifndef FEAT_GUI_GTK
+      Dimension                screen_width;   /* screen width in pixels */
+      Dimension                screen_height;  /* screen height in pixels */
+  #endif
+--- 50,68 ----
+      Position         x_root;
+      Position         y_root;
+      int                      state;          /* Button/Modifier key state */
++ # else
++     HWND             target;
++     HWND             balloon;
++     int                      x;
++     int                      y;
++     BeState          showState;      /* tells us whats currently going on */
++ # endif
+  #endif
+      int                      ts;             /* tabstop setting for this buffer */
+      char_u           *msg;
+      void             (*msgCB)();
+      void             *clientData;    /* For callback */
+! #if !defined(FEAT_GUI_GTK) && !defined(FEAT_GUI_W32)
+      Dimension                screen_width;   /* screen width in pixels */
+      Dimension                screen_height;  /* screen height in pixels */
+  #endif
+*** ../vim-6.2.106/src/gui_w32.c       Fri Jul 25 22:43:59 2003
+--- src/gui_w32.c      Mon Sep 29 11:29:15 2003
+***************
+*** 44,49 ****
+--- 44,52 ----
+   */
+  #include "gui_w48.c"
+  
++ #ifdef FEAT_XPM_W32
++ # include "xpm_w32.h"
++ #endif
+  
+  #ifdef __MINGW32__
+  /*
+***************
+*** 170,175 ****
+--- 173,192 ----
+  #endif
+  
+  
++ #ifdef FEAT_BEVAL
++ # define ID_BEVAL_TOOLTIP   200
++ # define BEVAL_TEXT_LEN          MAXPATHL
++ 
++ static void make_tooltip __ARGS((BalloonEval *beval, char *text, POINT pt));
++ static void delete_tooltip __ARGS((BalloonEval *beval));
++ static VOID CALLBACK BevalTimerProc __ARGS((HWND hwnd, UINT uMsg, UINT idEvent, DWORD dwTime));
++ void TrackUserActivity __ARGS((UINT uMsg));
++ 
++ static BalloonEval  *cur_beval = NULL;
++ static UINT      BevalTimerId = 0;
++ static DWORD     LastActivity = 0;
++ #endif
++ 
+  /* Local variables: */
+  
+  #ifdef FEAT_MENU
+***************
+*** 182,188 ****
+  # define USE_SYSMENU_FONT
+  #endif
+  
+- 
+  #define VIM_NAME     "vim"
+  #define VIM_CLASS    "Vim"
+  
+--- 199,204 ----
+***************
+*** 287,293 ****
+  static TMonitorFromWindow   pMonitorFromWindow = NULL;
+  static TGetMonitorInfo           pGetMonitorInfo = NULL;
+  static HANDLE                    user32_lib = NULL;
+! 
+  /*
+   * Return TRUE when running under Windows NT 3.x or Win32s, both of which have
+   * less fancy GUI APIs.
+--- 303,311 ----
+  static TMonitorFromWindow   pMonitorFromWindow = NULL;
+  static TGetMonitorInfo           pGetMonitorInfo = NULL;
+  static HANDLE                    user32_lib = NULL;
+! #ifdef FEAT_NETBEANS_INTG
+! int WSInitialized = FALSE; /* WinSock is initialized */
+! #endif
+  /*
+   * Return TRUE when running under Windows NT 3.x or Win32s, both of which have
+   * less fancy GUI APIs.
+***************
+*** 512,517 ****
+--- 530,557 ----
+  }
+  #endif
+  
++ #ifdef FEAT_NETBEANS_INTG
++     static void
++ _OnWindowPosChanged(
++     HWND hwnd,
++     const LPWINDOWPOS lpwpos)
++ {
++     static int x = 0, y = 0, cx = 0, cy = 0;
++ 
++     if (WSInitialized && (lpwpos->x != x || lpwpos->y != y
++                                   || lpwpos->cx != cx || lpwpos->cy != cy))
++     {
++      x = lpwpos->x;
++      y = lpwpos->y;
++      cx = lpwpos->cx;
++      cy = lpwpos->cy;
++         netbeans_frame_moved(x, y);
++     }
++     /* Allow to send WM_SIZE and WM_MOVE */
++     FORWARD_WM_WINDOWPOSCHANGED(hwnd, lpwpos, DefWindowProc);
++ }
++ #endif
++ 
+      static int
+  _DuringSizing(
+      HWND hwnd,
+***************
+*** 588,593 ****
+--- 628,636 ----
+       HANDLE_MSG(hwnd, WM_VSCROLL,    _OnScroll);
+       // HANDLE_MSG(hwnd, WM_WINDOWPOSCHANGING,       _OnWindowPosChanging);
+       HANDLE_MSG(hwnd, WM_ACTIVATEAPP, _OnActivateApp);
++ #ifdef FEAT_NETBEANS_INTG
++      HANDLE_MSG(hwnd, WM_WINDOWPOSCHANGED, _OnWindowPosChanged);
++ #endif
+  
+      case WM_QUERYENDSESSION: /* System wants to go down. */
+       gui_shell_closed();     /* Will exit when no changed buffers. */
+***************
+*** 838,843 ****
+--- 881,914 ----
+      }
+  #endif
+  
++ #ifdef FEAT_NETBEANS_INTG
++     {
++      /* stolen from gui_x11.x */
++      int arg;
++ 
++      for (arg = 1; arg < *argc; arg++)
++          if (strncmp("-nb", argv[arg], 3) == 0)
++          {
++              usingNetbeans++;
++              netbeansArg = argv[arg];
++              mch_memmove(&argv[arg], &argv[arg + 1],
++                                          (--*argc - arg) * sizeof(char *));
++              break;  /* enough? */
++          }
++ 
++      if (usingNetbeans)
++      {
++          WSADATA wsaData;
++          int wsaerr;
++ 
++          /* Init WinSock */
++          wsaerr = WSAStartup(MAKEWORD(2, 2), &wsaData);
++          if (wsaerr == 0)
++              WSInitialized = TRUE;
++      }
++     }
++ #endif
++ 
+      /* get the OS version info */
+      os_version.dwOSVersionInfoSize = sizeof(os_version);
+      GetVersionEx(&os_version); /* this call works on Win32s, Win95 and WinNT */
+***************
+*** 1034,1039 ****
+--- 1105,1114 ----
+      s_findrep_struct.wFindWhatLen = MSWIN_FR_BUFSIZE;
+      s_findrep_struct.wReplaceWithLen = MSWIN_FR_BUFSIZE;
+  #endif
++ #ifdef FEAT_NETBEANS_INTG
++     if (usingNetbeans)
++      netbeans_w32_connect();
++ #endif
+  
+      return OK;
+  }
+***************
+*** 3359,3368 ****
+--- 3434,3451 ----
+  #endif
+  
+  #if defined(FEAT_SIGN_ICONS) || defined(PROTO)
++ 
++ # ifdef FEAT_XPM_W32
++ #  define IMAGE_XPM   100
++ # endif
++ 
+  typedef struct _signicon_t
+  {
+      HANDLE   hImage;
+      UINT     uType;
++ #ifdef FEAT_XPM_W32
++     HANDLE   hShape; /* Mask bitmap handle */
++ #endif
+  } signicon_t;
+  
+      void
+***************
+*** 3399,3404 ****
+--- 3482,3506 ----
+       case IMAGE_CURSOR:
+           DrawIconEx(s_hdc, x, y, (HICON)sign->hImage, w, h, 0, NULL, DI_NORMAL);
+           break;
++ #ifdef FEAT_XPM_W32
++      case IMAGE_XPM:
++          {
++              HDC hdcMem;
++              HBITMAP hbmpOld;
++ 
++              hdcMem = CreateCompatibleDC(s_hdc);
++              hbmpOld = (HBITMAP)SelectObject(hdcMem, sign->hShape);
++              /* Make hole */
++              BitBlt(s_hdc, x, y, w, h, hdcMem, 0, 0, SRCAND);
++ 
++              SelectObject(hdcMem, sign->hImage);
++              /* Paint sign */
++              BitBlt(s_hdc, x, y, w, h, hdcMem, 0, 0, SRCPAINT);
++              SelectObject(hdcMem, hbmpOld);
++              DeleteDC(hdcMem);
++          }
++          break;
++ #endif
+      }
+  }
+  
+***************
+*** 3417,3422 ****
+--- 3519,3530 ----
+           case IMAGE_ICON:
+               DestroyIcon((HICON)sign->hImage);
+               break;
++ #ifdef FEAT_XPM_W32
++          case IMAGE_XPM:
++              DeleteObject((HBITMAP)sign->hImage);
++              DeleteObject((HBITMAP)sign->hShape);
++              break;
++ #endif
+       }
+  }
+  
+***************
+*** 3452,3457 ****
+--- 3560,3572 ----
+           sign.hImage = (HANDLE)LoadImage(NULL, signfile, sign.uType,
+                   gui.char_width * 2, gui.char_height,
+                   LR_LOADFROMFILE | LR_CREATEDIBSECTION);
++ #ifdef FEAT_XPM_W32
++      if (!STRICMP(ext, ".xpm"))
++      {
++          sign.uType = IMAGE_XPM;
++          LoadXpmImage(signfile, (HBITMAP *)&sign.hImage, (HBITMAP *)&sign.hShape);
++      }
++ #endif
+      }
+  
+      psign = NULL;
+***************
+*** 3479,3482 ****
+--- 3594,3864 ----
+       vim_free(sign);
+      }
+  }
++ 
++ #if defined(FEAT_BEVAL) || defined(PROTO)
++ 
++ /* BALLOON-EVAL IMPLEMENTATION FOR WINDOWS.
++  *  Added by Sergey Khorev
++  *
++  * The only reused thing is gui_beval.h and gui_mch_get_beval_info()
++  * from gui_beval.c (note it uses x and y of the BalloonEval struct
++  * to get current mouse position).
++  *
++  * Trying to use as more Windows services as possible, and as less
++  * IE version as possible :)).
++  *
++  * 1) Don't create ToolTip in gui_mch_create_beval_area, only initialize
++  * BalloonEval struct.
++  * 2) Enable/Disable simply create/kill BalloonEval Timer
++  * 3) When there was enough inactivity, timer procedure posts
++  * async request to debugger
++  * 4) gui_mch_post_balloon (invoked from netbeans.c) creates tooltip control
++  * and performs some actions to show it ASAP
++  * 5) WM_NOTOFY:TTN_POP destroys created tooltip
++  */
++ 
++     static void
++ make_tooltip(beval, text, pt)
++     BalloonEval *beval;
++     char *text;
++     POINT pt;
++ {
++     TOOLINFO ti;
++ 
++     beval->balloon = CreateWindowEx(WS_EX_TOPMOST, TOOLTIPS_CLASS,
++          NULL, WS_POPUP | TTS_NOPREFIX | TTS_ALWAYSTIP,
++          CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
++          beval->target, NULL, s_hinst, NULL);
++ 
++     SetWindowPos(beval->balloon, HWND_TOPMOST, 0, 0, 0, 0,
++          SWP_NOMOVE | SWP_NOSIZE | SWP_NOACTIVATE);
++ 
++     ti.cbSize = sizeof(TOOLINFO);
++     ti.uFlags = TTF_SUBCLASS;
++     ti.hwnd = beval->target;
++     ti.hinst = 0; /* Don't use string resources */
++     ti.uId = ID_BEVAL_TOOLTIP;
++     ti.lpszText = text;
++ 
++     /* Limit ballooneval bounding rect to CursorPos neighbourhood */
++     ti.rect.left = pt.x - 3;
++     ti.rect.top = pt.y - 3;
++     ti.rect.right = pt.x + 3;
++     ti.rect.bottom = pt.y + 3;
++ 
++     SendMessage(beval->balloon, TTM_ADDTOOL, 0, (LPARAM)&ti);
++     /* Make tooltip appear sooner */
++     SendMessage(beval->balloon, TTM_SETDELAYTIME, TTDT_INITIAL, 10);
++     /*
++      * HACK: force tooltip to appear, because it'll not appear until
++      * first mouse move. D*mn M$
++      */
++     mouse_event(MOUSEEVENTF_MOVE, 1, 1, 0, 0);
++     mouse_event(MOUSEEVENTF_MOVE, -1, -1, 0, 0);
++ }
++ 
++     static void
++ delete_tooltip(beval)
++     BalloonEval      *beval;
++ {
++     DestroyWindow(beval->balloon);
++ }
++ 
++     static VOID CALLBACK
++ BevalTimerProc(hwnd, uMsg, idEvent, dwTime)
++     HWND    hwnd;
++     UINT    uMsg;
++     UINT    idEvent;
++     DWORD   dwTime;
++ {
++     POINT    pt;
++     RECT     rect;
++ 
++     if (cur_beval == NULL || cur_beval->showState == ShS_SHOWING || !p_beval)
++      return;
++ 
++     GetCursorPos(&pt);
++     if (WindowFromPoint(pt) != s_textArea)
++      return;
++ 
++     ScreenToClient(s_textArea, &pt);
++     GetClientRect(s_textArea, &rect);
++     if (!PtInRect(&rect, pt))
++      return;
++ 
++     if (LastActivity > 0
++          && (dwTime - LastActivity) >= (DWORD)p_bdlay
++          && (cur_beval->showState != ShS_PENDING
++              || abs(cur_beval->x - pt.x) > 3
++              || abs(cur_beval->y - pt.y) > 3))
++     {
++      /* Pointer resting in one place long enough, it's time to show
++       * the tooltip. */
++      cur_beval->showState = ShS_PENDING;
++      cur_beval->x = pt.x;
++      cur_beval->y = pt.y;
++ 
++      TRACE0("BevalTimerProc: sending request");
++ 
++      if (cur_beval->msgCB != NULL)
++          (*cur_beval->msgCB)(cur_beval, 0);
++     }
++ }
++ 
++     void
++ gui_mch_disable_beval_area(beval)
++     BalloonEval      *beval;
++ {
++     TRACE0("gui_mch_disable_beval_area {{{");
++     KillTimer(s_textArea, BevalTimerId);
++     TRACE0("gui_mch_disable_beval_area }}}");
++ }
++ 
++     void
++ gui_mch_enable_beval_area(beval)
++     BalloonEval      *beval;
++ {
++     TRACE0("gui_mch_enable_beval_area |||");
++     if (beval == NULL)
++      return;
++     TRACE0("gui_mch_enable_beval_area {{{");
++     BevalTimerId = SetTimer(s_textArea, 0, p_bdlay / 2, (TIMERPROC)BevalTimerProc);
++     TRACE0("gui_mch_enable_beval_area }}}");
++ }
++ 
++     void
++ gui_mch_post_balloon(beval, mesg)
++     BalloonEval      *beval;
++     char_u   *mesg;
++ {
++     POINT   pt;
++     TRACE0("gui_mch_post_balloon {{{");
++     if (beval->showState == ShS_SHOWING)
++      return;
++     GetCursorPos(&pt);
++     ScreenToClient(s_textArea, &pt);
++ 
++     if (abs(beval->x - pt.x) < 3 && abs(beval->y - pt.y) < 3)
++      /* cursor is still here */
++     {
++      gui_mch_disable_beval_area(cur_beval);
++      beval->showState = ShS_SHOWING;
++      make_tooltip(beval, mesg, pt);
++     }
++     TRACE0("gui_mch_post_balloon }}}");
++ }
++ 
++     BalloonEval *
++ gui_mch_create_beval_area(target, mesg, mesgCB, clientData)
++     void     *target;        /* ignored, always use s_textArea */
++     char_u   *mesg;
++     void     (*mesgCB)__ARGS((BalloonEval *, int));
++     void     *clientData;
++ {
++     /* partially stolen from gui_beval.c */
++     BalloonEval      *beval;
++ 
++     if (mesg != NULL && mesgCB != NULL)
++     {
++      EMSG(_("E232: Cannot create BalloonEval with both message and callback"));
++      return NULL;
++     }
++ 
++     beval = (BalloonEval *)alloc(sizeof(BalloonEval));
++     if (beval != NULL)
++     {
++      beval->target = s_textArea;
++      beval->balloon = NULL;
++ 
++      beval->showState = ShS_NEUTRAL;
++      beval->x = 0;
++      beval->y = 0;
++      beval->msg = mesg;
++      beval->msgCB = mesgCB;
++      beval->clientData = clientData;
++ 
++      InitCommonControls();
++ 
++      cur_beval = beval;
++ 
++      if (p_beval)
++          gui_mch_enable_beval_area(beval);
++ 
++     }
++     return beval;
++ }
++ 
++     void
++ Handle_WM_Notify(hwnd, pnmh)
++     HWND hwnd;
++     LPNMHDR pnmh;
++ {
++     if (pnmh->idFrom != ID_BEVAL_TOOLTIP) /* it is not our tooltip */
++      return;
++ 
++     if (cur_beval != NULL)
++     {
++      if (pnmh->code == TTN_SHOW)
++      {
++          TRACE0("TTN_SHOW {{{");
++          TRACE0("TTN_SHOW }}}");
++      }
++      else if (pnmh->code == TTN_POP) /* Before tooltip disappear */
++      {
++          TRACE0("TTN_POP {{{");
++          delete_tooltip(cur_beval);
++          gui_mch_enable_beval_area(cur_beval);
++          TRACE0("TTN_POP }}}");
++ 
++          cur_beval->showState = ShS_NEUTRAL;
++      }
++     }
++ }
++ 
++ void TrackUserActivity (uMsg)
++     UINT    uMsg;
++ {
++     if ((uMsg >= WM_MOUSEFIRST && uMsg <= WM_MOUSELAST) ||
++          (uMsg >= WM_KEYFIRST && uMsg <= WM_KEYLAST))
++     {
++      LastActivity = GetTickCount();
++     }
++ }
++ 
++     void
++ gui_mch_destroy_beval_area(beval)
++     BalloonEval      *beval;
++ {
++     vim_free(beval);
++ }
++ #endif /* FEAT_BEVAL */
++ 
++ #if defined(FEAT_NETBEANS_INTG) || defined(PROTO)
++ /*
++  * We have multiple signs to draw at the same location. Draw the
++  * multi-sign indicator (down-arrow) instead. This is the Win32 version.
++  */
++     void
++ netbeans_draw_multisign_indicator(int row)
++ {
++     int i;
++     int y;
++     int x;
++ 
++     x = 0;
++     y = TEXT_Y(row);
++ 
++     for (i = 0; i < gui.char_height - 3; i++)
++      SetPixel(s_hdc, x+2, y++, gui.currFgColor);
++ 
++     SetPixel(s_hdc, x+0, y, gui.currFgColor);
++     SetPixel(s_hdc, x+2, y, gui.currFgColor);
++     SetPixel(s_hdc, x+4, y++, gui.currFgColor);
++     SetPixel(s_hdc, x+1, y, gui.currFgColor);
++     SetPixel(s_hdc, x+2, y, gui.currFgColor);
++     SetPixel(s_hdc, x+3, y++, gui.currFgColor);
++     SetPixel(s_hdc, x+2, y, gui.currFgColor);
++ }
++ #endif
++ 
+  #endif
+*** ../vim-6.2.106/src/gui_w48.c       Sat Sep 27 19:40:03 2003
+--- src/gui_w48.c      Fri Oct  3 15:13:55 2003
+***************
+*** 28,34 ****
+  #ifndef __MINGW32__
+  # include <shellapi.h>
+  #endif
+! #ifdef FEAT_TOOLBAR
+  # include <commctrl.h>
+  #endif
+  #ifdef WIN16
+--- 28,34 ----
+  #ifndef __MINGW32__
+  # include <shellapi.h>
+  #endif
+! #if defined(FEAT_TOOLBAR) || defined(FEAT_BEVAL)
+  # include <commctrl.h>
+  #endif
+  #ifdef WIN16
+***************
+*** 113,123 ****
+  typedef int UINT;
+  typedef int WORD;
+  typedef int WPARAM;
+! typedef void * HINSTANCE;
+! typedef void * HMENU;
+! typedef void * HWND;
+  typedef void *HDC;
+  typedef void VOID;
+  #endif
+  
+  #ifndef GET_X_LPARAM
+--- 113,125 ----
+  typedef int UINT;
+  typedef int WORD;
+  typedef int WPARAM;
+! typedef void *HINSTANCE;
+! typedef void *HMENU;
+! typedef void *HWND;
+  typedef void *HDC;
+  typedef void VOID;
++ typedef int LPNMHDR;
++ typedef int LONG;
+  #endif
+  
+  #ifndef GET_X_LPARAM
+***************
+*** 228,233 ****
+--- 230,238 ----
+      {VK_F20,         'F', 'A'},
+  
+      {VK_F21,         'F', 'B'},
++ #ifdef FEAT_NETBEANS_INTG
++     {VK_PAUSE,               'F', 'B'},      /* Pause == F21 (see gui_gtk_x11.c) */
++ #endif
+      {VK_F22,         'F', 'C'},
+      {VK_F23,         'F', 'D'},
+      {VK_F24,         'F', 'E'},      /* winuser.h defines up to F24 */
+***************
+*** 279,284 ****
+--- 284,295 ----
+  static int           s_timed_out = FALSE;
+  static int           dead_key = 0;   /* 0 - no dead key, 1 - dead key pressed */
+  
++ #ifdef FEAT_BEVAL
++ /* balloon-eval WM_NOTIFY_HANDLER */
++ void Handle_WM_Notify __ARGS((HWND hwnd, LPNMHDR pnmh));
++ void TrackUserActivity __ARGS((UINT uMsg));
++ #endif
++ 
+  /*
+   * For control IME.
+   */
+***************
+*** 900,905 ****
+--- 911,920 ----
+      s_wParam = wParam;
+      s_lParam = lParam;
+  
++ #ifdef FEAT_BEVAL
++     TrackUserActivity(uMsg);
++ #endif
++ 
+      switch (uMsg)
+      {
+       HANDLE_MSG(hwnd, WM_LBUTTONDBLCLK,_OnMouseButtonDown);
+***************
+*** 919,924 ****
+--- 934,944 ----
+       HANDLE_MSG(hwnd, WM_XBUTTONUP,  _OnMouseMoveOrRelease);
+  #endif
+  
++ #ifdef FEAT_BEVAL
++      case WM_NOTIFY: Handle_WM_Notify(hwnd, (LPNMHDR)lParam);
++          return TRUE;
++ #endif
++ 
+      default:
+       return DefWindowProc(hwnd, uMsg, wParam, lParam);
+      }
+***************
+*** 1472,1477 ****
+--- 1492,1505 ----
+      }
+  #endif
+  
++ #ifdef FEAT_NETBEANS_INTG
++     if (msg.message == WM_NETBEANS)
++     {
++      messageFromNetbeansW32();
++      return;
++     }
++ #endif
++ 
+  #ifdef FEAT_SNIFF
+      if (sniff_request_waiting && want_sniff_request)
+      {
+*** ../vim-6.2.106/src/menu.c  Fri Sep 12 20:13:48 2003
+--- src/menu.c Fri Sep 12 21:30:03 2003
+***************
+*** 764,770 ****
+               menu->silent[i] = menuarg->silent[0];
+           }
+       }
+! #if defined(FEAT_TOOLBAR) && (defined(FEAT_BEVAL) || defined(FEAT_GUI_GTK))
+       /* Need to update the menu tip. */
+       if (modes & MENU_TIP_MODE)
+           gui_mch_menu_set_tip(menu);
+--- 764,771 ----
+               menu->silent[i] = menuarg->silent[0];
+           }
+       }
+! #if defined(FEAT_TOOLBAR) && !defined(FEAT_GUI_W32) \
+!      && (defined(FEAT_BEVAL) || defined(FEAT_GUI_GTK))
+       /* Need to update the menu tip. */
+       if (modes & MENU_TIP_MODE)
+           gui_mch_menu_set_tip(menu);
+***************
+*** 942,948 ****
+       if (modes & MENU_TIP_MODE)
+       {
+           free_menu_string(menu, MENU_INDEX_TIP);
+! #if defined(FEAT_TOOLBAR) && (defined(FEAT_BEVAL) || defined(FEAT_GUI_GTK))
+           /* Need to update the menu tip. */
+           if (gui.in_use)
+               gui_mch_menu_set_tip(menu);
+--- 943,950 ----
+       if (modes & MENU_TIP_MODE)
+       {
+           free_menu_string(menu, MENU_INDEX_TIP);
+! #if defined(FEAT_TOOLBAR) && !defined(FEAT_GUI_W32) \
+!          && (defined(FEAT_BEVAL) || defined(FEAT_GUI_GTK))
+           /* Need to update the menu tip. */
+           if (gui.in_use)
+               gui_mch_menu_set_tip(menu);
+*** ../vim-6.2.106/src/nbdebug.c       Thu Feb 13 16:41:13 2003
+--- src/nbdebug.c      Tue Sep 16 11:42:48 2003
+***************
+*** 38,45 ****
+  void          nbtrace(char *, ...);
+  
+  static int    lookup(char *);
+  static int    errorHandler(Display *, XErrorEvent *);
+! 
+  
+  /*
+   * nbdebug_wait      -   This function can be used to delay or stop execution of vim.
+--- 38,46 ----
+  void          nbtrace(char *, ...);
+  
+  static int    lookup(char *);
++ #ifndef FEAT_GUI_W32
+  static int    errorHandler(Display *, XErrorEvent *);
+! #endif
+  
+  /*
+   * nbdebug_wait      -   This function can be used to delay or stop execution of vim.
+***************
+*** 83,93 ****
+       char            *cp;            /* nb_dlevel pointer */
+  
+       if (log_var && (file = getenv(log_var)) != NULL) {
+!              char buf[BUFSIZ];
+  
+!              sprintf(buf, "date > %s", file);
+!              system(buf);
+!              nb_debug = fopen(file, "a");
+               if (level_var && (cp = getenv(level_var)) != NULL) {
+                       nb_dlevel = strtoul(cp, NULL, 0);
+               } else {
+--- 84,94 ----
+       char            *cp;            /* nb_dlevel pointer */
+  
+       if (log_var && (file = getenv(log_var)) != NULL) {
+!              time_t now;
+  
+!              nb_debug = fopen(file, "w");
+!              time(&now);
+!              fprintf(nb_debug, "%s", asctime(localtime(&now)));
+               if (level_var && (cp = getenv(level_var)) != NULL) {
+                       nb_dlevel = strtoul(cp, NULL, 0);
+               } else {
+***************
+*** 142,151 ****
+       char             buf[BUFSIZ];
+  
+       expand_env((char_u *) file, (char_u *) buf, BUFSIZ);
+!      return (access(buf, F_OK) == 0);
+  
+  }    /* end lookup */
+  
+  static int
+  errorHandler(
+       Display         *dpy,
+--- 143,158 ----
+       char             buf[BUFSIZ];
+  
+       expand_env((char_u *) file, (char_u *) buf, BUFSIZ);
+!      return
+! #ifndef FEAT_GUI_W32
+!              (access(buf, F_OK) == 0);
+! #else
+!              (access(buf, 0) == 0);
+! #endif
+  
+  }    /* end lookup */
+  
++ #ifndef FEAT_GUI_W32
+  static int
+  errorHandler(
+       Display         *dpy,
+***************
+*** 169,175 ****
+  
+       return 0;
+  }
+! 
+  
+  
+  #endif /* NBDEBUG */
+--- 176,182 ----
+  
+       return 0;
+  }
+! #endif
+  
+  
+  #endif /* NBDEBUG */
+*** ../vim-6.2.106/src/nbdebug.h       Thu Feb 13 16:41:13 2003
+--- src/nbdebug.h      Fri Sep 12 21:30:03 2003
+***************
+*** 45,50 ****
+--- 45,52 ----
+  void          nbdbg(char *, ...);
+  void          nbtrace(char *, ...);
+  
++ void nbdebug_wait __ARGS((u_int wait_flags, char *wait_var, u_int wait_secs));
++ void nbdebug_log_init __ARGS((char *log_var, char *level_var));
+  
+  extern FILE  *nb_debug;
+  extern u_int  nb_dlevel;             /* nb_debug verbosity level */
+*** ../vim-6.2.106/src/netbeans.c      Sun Aug 10 22:43:27 2003
+--- src/netbeans.c     Mon Sep 15 14:27:09 2003
+***************
+*** 2,7 ****
+--- 2,8 ----
+   *
+   * VIM - Vi IMproved by Bram Moolenaar
+   *                   Netbeans integration by David Weatherford
++  *                   Adopted for Win32 by Sergey Khorev
+   *
+   * Do ":help uganda"  in Vim to read copying and usage conditions.
+   * Do ":help credits" in Vim to see a list of people who contributed.
+***************
+*** 20,32 ****
+  #if defined(FEAT_NETBEANS_INTG) || defined(PROTO)
+  
+  /* Note: when making changes here also adjust configure.in. */
+! #include <stdarg.h>
+! #include <fcntl.h>
+! #include <netdb.h>
+! #include <netinet/in.h>
+! #include <sys/socket.h>
+! #ifdef HAVE_LIBGEN_H
+! # include <libgen.h>
+  #endif
+  
+  #include "version.h"
+--- 21,54 ----
+  #if defined(FEAT_NETBEANS_INTG) || defined(PROTO)
+  
+  /* Note: when making changes here also adjust configure.in. */
+! # include <stdarg.h>
+! # include <fcntl.h>
+! #ifdef WIN32
+! # ifdef DEBUG
+! #  include <tchar.h> /* for _T definition for TRACEn macros */
+! # endif
+! # include <io.h>
+! # include <winsock2.h>
+! /* WinSock API is separated from C API
+!  * So we can't use read, write, errno...
+!  */
+! # define sock_errno WSAGetLastError()
+! # define ECONNREFUSED WSAECONNREFUSED
+! # define sock_write(sd, buf, len) send(sd, buf, len, 0)
+! # define sock_read(sd, buf, len) recv(sd, buf, len, 0)
+! # define sock_close(sd) closesocket(sd)
+! # define sleep(t) Sleep(t*1000) /* WinAPI Sleep() accepts milliseconds */
+! #else
+! # include <netdb.h>
+! # include <netinet/in.h>
+! # include <sys/socket.h>
+! # ifdef HAVE_LIBGEN_H
+! #  include <libgen.h>
+! # endif
+! # define sock_errno errno
+! # define sock_write(sd, buf, len) write(sd, buf, len)
+! # define sock_read(sd, buf, len) read(sd, buf, len)
+! # define sock_close(sd) close(sd)
+  #endif
+  
+  #include "version.h"
+***************
+*** 69,74 ****
+--- 91,100 ----
+  #ifdef FEAT_GUI_GTK
+  static gint inputHandler;            /* Cookie for input */
+  #endif
++ #ifdef FEAT_GUI_W32
++ static int  inputHandler = -1;               /* simply ret.value of WSAAsyncSelect() */
++ extern HWND s_hwnd;                  /* Gvim's Window handle */
++ #endif
+  static int cmdno;                    /* current command number for reply */
+  static int haveConnection = FALSE;   /* socket is connected and
+                                          initialization is done */
+***************
+*** 160,172 ****
+--- 186,234 ----
+  }
+  #endif /* FEAT_GUI_GTK */
+  
++ #if defined(FEAT_GUI_W32) || defined(PROTO)
++     void
++ netbeans_w32_connect(void)
++ {
++     netbeans_connect();
++     if (sd > 0)
++     {
++      /*
++       * Tell Windows we are interested in receiving message when there
++       * is input on the editor connection socket
++       */
++      inputHandler = WSAAsyncSelect(sd, s_hwnd, WM_NETBEANS, FD_READ);
++     }
++ }
++ 
++     static void
++ netbeans_disconnect(void)
++ {
++     if (inputHandler == 0)
++     {
++      WSAAsyncSelect(sd, s_hwnd, 0, 0);
++      inputHandler = -1;
++     }
++     sd = -1;
++     haveConnection = FALSE;
++ 
++     /* It seems that Motif and GTK versions also need this: */
++     gui_mch_destroy_beval_area(balloonEval);
++     balloonEval = NULL;
++ }
++ #endif /* FEAT_GUI_W32 */
++ 
+      static void
+  netbeans_connect(void)
+  {
+  #ifdef INET_SOCKETS
+      struct sockaddr_in       server;
+      struct hostent * host;
++ # ifdef FEAT_GUI_W32
++     u_short          port;
++ # else
+      int                      port;
++ #endif
+  #else
+      struct sockaddr_un       server;
+  #endif
+***************
+*** 243,252 ****
+      /* Connect to server */
+      if (connect(sd, (struct sockaddr *)&server, sizeof(server)))
+      {
+!      nbdebug(("netbeans_connect: Connect failed with errno %d\n", errno));
+!      if (errno == ECONNREFUSED)
+       {
+!          close(sd);
+  #ifdef INET_SOCKETS
+           if ((sd = socket(AF_INET, SOCK_STREAM, 0)) == -1)
+           {
+--- 305,314 ----
+      /* Connect to server */
+      if (connect(sd, (struct sockaddr *)&server, sizeof(server)))
+      {
+!      nbdebug(("netbeans_connect: Connect failed with errno %d\n", sock_errno));
+!      if (sock_errno == ECONNREFUSED)
+       {
+!          sock_close(sd);
+  #ifdef INET_SOCKETS
+           if ((sd = socket(AF_INET, SOCK_STREAM, 0)) == -1)
+           {
+***************
+*** 265,271 ****
+               int retries = 36;
+               int success = FALSE;
+               while (retries--
+!                           && ((errno == ECONNREFUSED) || (errno == EINTR)))
+               {
+                   nbdebug(("retrying...\n"));
+                   sleep(5);
+--- 327,333 ----
+               int retries = 36;
+               int success = FALSE;
+               while (retries--
+!                           && ((sock_errno == ECONNREFUSED) || (sock_errno == EINTR)))
+               {
+                   nbdebug(("retrying...\n"));
+                   sleep(5);
+***************
+*** 509,522 ****
+   * Read and process a command from netbeans.
+   */
+  /*ARGSUSED*/
+! #ifdef FEAT_GUI_MOTIF
+      static void
+  messageFromNetbeans(XtPointer clientData, int *unused1, XtInputId *unused2)
+! #endif
+! #ifdef FEAT_GUI_GTK
+      static void
+  messageFromNetbeans(gpointer clientData, gint unused1,
+                                                   GdkInputCondition unused2)
+  #endif
+  {
+      static char_u    *buf = NULL;
+--- 571,590 ----
+   * Read and process a command from netbeans.
+   */
+  /*ARGSUSED*/
+! #if defined(FEAT_GUI_W32) || defined(PROTO)
+! /* Use this one when generating prototypes, the others are static. */
+!     void
+! messageFromNetbeansW32()
+! #else
+! # ifdef FEAT_GUI_MOTIF
+      static void
+  messageFromNetbeans(XtPointer clientData, int *unused1, XtInputId *unused2)
+! # endif
+! # ifdef FEAT_GUI_GTK
+      static void
+  messageFromNetbeans(gpointer clientData, gint unused1,
+                                                   GdkInputCondition unused2)
++ # endif
+  #endif
+  {
+      static char_u    *buf = NULL;
+***************
+*** 543,556 ****
+      /* Keep on reading for as long as there is something to read. */
+      for (;;)
+      {
+!      len = read(sd, buf, MAXMSGSIZE);
+       if (len <= 0)
+           break;      /* error or nothing more to read */
+  
+       /* Store the read message in the queue. */
+       save(buf, len);
+       readlen += len;
+- 
+       if (len < MAXMSGSIZE)
+           break;      /* did read everything that's available */
+      }
+--- 611,623 ----
+      /* Keep on reading for as long as there is something to read. */
+      for (;;)
+      {
+!      len = sock_read(sd, buf, MAXMSGSIZE);
+       if (len <= 0)
+           break;      /* error or nothing more to read */
+  
+       /* Store the read message in the queue. */
+       save(buf, len);
+       readlen += len;
+       if (len < MAXMSGSIZE)
+           break;      /* did read everything that's available */
+      }
+***************
+*** 600,606 ****
+      {
+       /* We assume the server knows that we can safely exit! */
+       if (sd >= 0)
+!          close(sd);
+       /* Disconnect before exiting, Motif hangs in a Select error
+        * message otherwise. */
+       netbeans_disconnect();
+--- 667,673 ----
+      {
+       /* We assume the server knows that we can safely exit! */
+       if (sd >= 0)
+!          sock_close(sd);
+       /* Disconnect before exiting, Motif hangs in a Select error
+        * message otherwise. */
+       netbeans_disconnect();
+***************
+*** 612,618 ****
+      {
+       /* The IDE is breaking the connection. */
+       if (sd >= 0)
+!          close(sd);
+       netbeans_disconnect();
+       return;
+      }
+--- 679,685 ----
+      {
+       /* The IDE is breaking the connection. */
+       if (sd >= 0)
+!          sock_close(sd);
+       netbeans_disconnect();
+       return;
+      }
+***************
+*** 660,680 ****
+  struct nbbuf_struct
+  {
+      buf_T            *bufp;
+- #if 0 /* never used */
+-     unsigned int      netbeansOwns:1;
+-     unsigned int      fireCaret:1;
+- #endif
+      unsigned int      fireChanges:1;
+      unsigned int      initDone:1;
+      unsigned int      modified:1;
+- #if 0  /* never used */
+-     char             *internalname;
+- #endif
+      char             *displayname;
+      char_u           *partial_line;
+      int                      *signmap;
+!     ushort            signmaplen;
+!     ushort            signmapused;
+  };
+  
+  typedef struct nbbuf_struct nbbuf_T;
+--- 727,740 ----
+  struct nbbuf_struct
+  {
+      buf_T            *bufp;
+      unsigned int      fireChanges:1;
+      unsigned int      initDone:1;
+      unsigned int      modified:1;
+      char             *displayname;
+      char_u           *partial_line;
+      int                      *signmap;
+!     short_u           signmaplen;
+!     short_u           signmapused;
+  };
+  
+  typedef struct nbbuf_struct nbbuf_T;
+***************
+*** 796,802 ****
+       nbdebug(("EVT: %s", buf));
+  /*   nb_send(buf, "netbeans_end");    avoid "write failed" messages */
+       if (sd >= 0)
+!          write(sd, buf, STRLEN(buf));  /* ignore errors */
+      }
+  
+      /* Give NetBeans a chance to write some clean-up cmds to the socket before
+--- 856,862 ----
+       nbdebug(("EVT: %s", buf));
+  /*   nb_send(buf, "netbeans_end");    avoid "write failed" messages */
+       if (sd >= 0)
+!          sock_write(sd, buf, STRLEN(buf));  /* ignore errors */
+      }
+  
+      /* Give NetBeans a chance to write some clean-up cmds to the socket before
+***************
+*** 811,820 ****
+      static void
+  nb_send(char *buf, char *fun)
+  {
+      if (sd < 0)
+!      EMSG2("E630: %s(): write while not connected", fun);
+!     else if (write(sd, buf, STRLEN(buf)) != STRLEN(buf))
+!      EMSG2("E631: %s(): write failed", fun);
+  }
+  
+  /*
+--- 871,894 ----
+      static void
+  nb_send(char *buf, char *fun)
+  {
++     /* Avoid giving pages full of error messages when the other side has
++      * exited, only mention the first error until the connection works again. */
++     static int did_error = FALSE;
++ 
+      if (sd < 0)
+!     {
+!      if (!did_error)
+!          EMSG2("E630: %s(): write while not connected", fun);
+!      did_error = TRUE;
+!     }
+!     else if (sock_write(sd, buf, STRLEN(buf)) != (int)STRLEN(buf))
+!     {
+!      if (!did_error)
+!          EMSG2("E631: %s(): write failed", fun);
+!      did_error = TRUE;
+!     }
+!     else
+!      did_error = FALSE;
+  }
+  
+  /*
+***************
+*** 888,893 ****
+--- 962,969 ----
+      char_u *p = txt;
+      char_u *q = buf;
+  
++     if (buf == NULL)
++      return NULL;
+      for (; *p; p++)
+      {
+       switch (*p)
+***************
+*** 1244,1249 ****
+--- 1320,1331 ----
+           }
+           else if (args != NULL)
+           {
++              /* We need to detect EOL style
++               * because addAnno passes char-offset
++               */
++              int    ff_detected = EOL_UNKNOWN;
++              int    buf_was_empty = (buf->bufp->b_ml.ml_flags & ML_EMPTY);
++ 
+               oldFire = netbeansFireChanges;
+               netbeansFireChanges = 0;
+  
+***************
+*** 1295,1308 ****
+--- 1377,1413 ----
+                       nbdebug(("    PARTIAL[%d]: %s\n", lnum, args));
+                       break;
+                   }
++                  /* EOL detecting.
++                   * Not sure how to deal with '\n' on Mac
++                   * it will fail already in nl = ... above
++                   */
++                  if (buf_was_empty && /* There is need to detect EOLs */
++                          /* AND: string is empty */
++                          (args == nl
++                           /* OR hasn't '\r' at the end */
++                          || *(nl - 1) != '\r'))
++                      ff_detected = EOL_UNIX;
++ 
+                   *nl = '\0';
+                   nbdebug(("    INSERT[%d]: %s\n", lnum, args));
+                   ml_append((linenr_T)(lnum++ - 1), args,
+                                                    STRLEN(args) + 1, FALSE);
+                   args = nl + 1;
+               }
++ 
+               appended_lines_mark(pos->lnum - 1, lnum - pos->lnum);
+  
++              /* We can change initial ff without consequences
++               * Isn't it a kind of hacking?
++               */
++              if (buf_was_empty)
++              {
++                  if (ff_detected == EOL_UNKNOWN)
++                      ff_detected = EOL_DOS;
++                  set_fileformat(ff_detected, OPT_LOCAL);
++                  buf->bufp->b_start_ffc = *buf->bufp->b_p_ff;
++              }
++ 
+               if (*args)
+               {
+                   /*
+***************
+*** 1596,1601 ****
+--- 1701,1709 ----
+           {
+               curwin->w_cursor = *pos;
+               check_cursor();
++ #ifdef FEAT_FOLDING
++              foldOpenCursor();
++ #endif
+           }
+           else
+               nbdebug(("    BAD POSITION in setDot: %s\n", s));
+***************
+*** 1661,1666 ****
+--- 1769,1775 ----
+           int typeNum;
+           char_u *typeName;
+           char_u *tooltip;
++          char_u *p;
+           char_u *glyphFile;
+           int use_fg = 0;
+           int use_bg = 0;
+***************
+*** 1679,1685 ****
+           args = skipwhite(args + 1);
+           tooltip = (char_u *)nb_unquote(args, &args);
+           args = skipwhite(args + 1);
+!          glyphFile = (char_u *)nb_unquote(args, &args);
+           args = skipwhite(args + 1);
+           if (STRNCMP(args, "none", 4) == 0)
+               args += 5;
+--- 1788,1798 ----
+           args = skipwhite(args + 1);
+           tooltip = (char_u *)nb_unquote(args, &args);
+           args = skipwhite(args + 1);
+! 
+!          p = (char_u *)nb_unquote(args, &args);
+!          glyphFile = vim_strsave_escaped(p, escape_chars);
+!          vim_free(p);
+! 
+           args = skipwhite(args + 1);
+           if (STRNCMP(args, "none", 4) == 0)
+               args += 5;
+***************
+*** 2049,2055 ****
+      char_u   *text;
+      int              line;
+      int              col;
+!     char     buf[MAXPATHLEN * 2 + 25];
+      char_u   *p;
+  
+      /* Don't do anything when 'ballooneval' is off, messages scrolled the
+--- 2192,2198 ----
+      char_u   *text;
+      int              line;
+      int              col;
+!     char     buf[MAXPATHL * 2 + 25];
+      char_u   *p;
+  
+      /* Don't do anything when 'ballooneval' is off, messages scrolled the
+***************
+*** 2061,2067 ****
+      {
+       /* Send debugger request.  Only when the text is of reasonable
+        * length. */
+!      if (text != NULL && text[0] != NUL && STRLEN(text) < MAXPATHLEN)
+       {
+           p = nb_quote(text);
+           if (p != NULL)
+--- 2204,2210 ----
+      {
+       /* Send debugger request.  Only when the text is of reasonable
+        * length. */
+!      if (text != NULL && text[0] != NUL && STRLEN(text) < MAXPATHL)
+       {
+           p = nb_quote(text);
+           if (p != NULL)
+***************
+*** 2089,2095 ****
+      nbdebug(("EVT: %s", cmd));
+      nb_send(cmd, "netbeans_startup_done");
+  
+! # if defined(FEAT_BEVAL) && defined(FEAT_GUI_MOTIF)
+      if (gui.in_use)
+      {
+       /*
+--- 2232,2239 ----
+      nbdebug(("EVT: %s", cmd));
+      nb_send(cmd, "netbeans_startup_done");
+  
+! #ifdef FEAT_BEVAL
+! # ifdef FEAT_GUI_MOTIF
+      if (gui.in_use)
+      {
+       /*
+***************
+*** 2102,2111 ****
+       if (!p_beval)
+           gui_mch_disable_beval_area(balloonEval);
+      }
+  # endif
+  }
+  
+! #if defined(FEAT_GUI_MOTIF) || defined(PROTO)
+  /*
+   * Tell netbeans that the window was moved or resized.
+   */
+--- 2246,2263 ----
+       if (!p_beval)
+           gui_mch_disable_beval_area(balloonEval);
+      }
++ # else
++ #  if defined(FEAT_GUI_W32) && defined(FEAT_BEVAL)
++      balloonEval = gui_mch_create_beval_area(NULL, NULL,
++                                                  &netbeans_beval_cb, NULL);
++      if (!p_beval)
++          gui_mch_disable_beval_area(balloonEval);
++ #  endif
+  # endif
++ #endif
+  }
+  
+! #if defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_W32) || defined(PROTO)
+  /*
+   * Tell netbeans that the window was moved or resized.
+   */
+***************
+*** 2130,2146 ****
+      void
+  netbeans_file_opened(char *filename)
+  {
+!     char buffer[2*MAXPATHLEN];
+  
+      if (!haveConnection)
+       return;
+  
+      sprintf(buffer, "0:fileOpened=%d \"%s\" %s %s\n",
+           0,
+!          nb_quote((char_u *)filename),
+           "F",  /* open in NetBeans */
+           "F"); /* modified */
+  
+      nbdebug(("EVT: %s", buffer));
+  
+      nb_send(buffer, "netbeans_file_opened");
+--- 2282,2303 ----
+      void
+  netbeans_file_opened(char *filename)
+  {
+!     char    buffer[2*MAXPATHL];
+!     char_u  *q;
+  
+      if (!haveConnection)
+       return;
+  
++     q = nb_quote((char_u *)filename);
++     if (q == NULL)
++      return;
+      sprintf(buffer, "0:fileOpened=%d \"%s\" %s %s\n",
+           0,
+!          (char *)q,
+           "F",  /* open in NetBeans */
+           "F"); /* modified */
+  
++     vim_free(q);
+      nbdebug(("EVT: %s", buffer));
+  
+      nb_send(buffer, "netbeans_file_opened");
+***************
+*** 2156,2162 ****
+  {
+      int              bufno = nb_getbufno(bufp);
+      nbbuf_T  *nbbuf = nb_get_buf(bufno);
+!     char     buffer[2*MAXPATHLEN];
+  
+      if (!haveConnection)
+       return;
+--- 2313,2319 ----
+  {
+      int              bufno = nb_getbufno(bufp);
+      nbbuf_T  *nbbuf = nb_get_buf(bufno);
+!     char     buffer[2*MAXPATHL];
+  
+      if (!haveConnection)
+       return;
+***************
+*** 2265,2275 ****
+      newtxt[newlen] = '\0';
+      p = nb_quote(newtxt);
+      if (p != NULL)
+       sprintf((char *)buf, "%d:insert=%d %ld \"%s\"\n", bufno, cmdno, off, p);
+      vim_free(p);
+      vim_free(newtxt);
+-     nbdebug(("EVT: %s", buf));
+-     nb_send((char *)buf, "netbeans_inserted");
+      vim_free(buf);
+  }
+  
+--- 2422,2434 ----
+      newtxt[newlen] = '\0';
+      p = nb_quote(newtxt);
+      if (p != NULL)
++     {
+       sprintf((char *)buf, "%d:insert=%d %ld \"%s\"\n", bufno, cmdno, off, p);
++      nbdebug(("EVT: %s", buf));
++      nb_send((char *)buf, "netbeans_inserted");
++     }
+      vim_free(p);
+      vim_free(newtxt);
+      vim_free(buf);
+  }
+  
+***************
+*** 2339,2348 ****
+      void
+  netbeans_keycommand(int key)
+  {
+!     char     buf[2*MAXPATHLEN];
+      int              bufno;
+      char     keyName[60];
+      long     off;
+  
+      if (!haveConnection)
+       return;
+--- 2498,2508 ----
+      void
+  netbeans_keycommand(int key)
+  {
+!     char     buf[2*MAXPATHL];
+      int              bufno;
+      char     keyName[60];
+      long     off;
++     char_u   *q;
+  
+      if (!haveConnection)
+       return;
+***************
+*** 2355,2365 ****
+      if (bufno == -1)
+      {
+       nbdebug(("got keycommand for non-NetBeans buffer, opening...\n"));
+       sprintf(buf, "0:fileOpened=%d \"%s\" %s %s\n", 0,
+!              curbuf->b_ffname == NULL ? (char_u *)""
+!                                               : nb_quote(curbuf->b_ffname),
+               "T",  /* open in NetBeans */
+               "F"); /* modified */
+       nbdebug(("EVT: %s", buf));
+       nb_send(buf, "netbeans_keycommand");
+  
+--- 2515,2530 ----
+      if (bufno == -1)
+      {
+       nbdebug(("got keycommand for non-NetBeans buffer, opening...\n"));
++      q = curbuf->b_ffname == NULL ? (char_u *)""
++                                               : nb_quote(curbuf->b_ffname);
++      if (q == NULL)
++          return;
+       sprintf(buf, "0:fileOpened=%d \"%s\" %s %s\n", 0,
+!              q,
+               "T",  /* open in NetBeans */
+               "F"); /* modified */
++      if (curbuf->b_ffname != NULL)
++          vim_free(q);
+       nbdebug(("EVT: %s", buf));
+       nb_send(buf, "netbeans_keycommand");
+  
+***************
+*** 2372,2377 ****
+--- 2537,2547 ----
+      sprintf(buf, "%d:newDotAndMark=%d %ld %ld\n", bufno, cmdno, off, off);
+      nbdebug(("EVT: %s", buf));
+      nb_send(buf, "netbeans_keycommand");
++ 
++     /* To work on Win32 you must apply patch to ExtEditor module
++      * from ExtEdCaret.java.diff - make EVT_newDotAndMark handler
++      * more synchronous
++      */
+  
+      /* now send keyCommand event */
+      sprintf(buf, "%d:keyCommand=%d \"%s\"\n", bufno, cmdno, keyName);
+*** ../vim-6.2.106/src/os_mswin.c      Mon Aug  4 22:04:43 2003
+--- src/os_mswin.c     Fri Sep 12 21:30:03 2003
+***************
+*** 163,168 ****
+--- 163,169 ----
+  # endif
+  #endif
+  
++ extern int WSInitialized;
+  
+  /* Don't generate prototypes here, because some systems do have these
+   * functions. */
+***************
+*** 229,234 ****
+--- 230,242 ----
+  
+  # ifdef FEAT_OLE
+      UninitOLE();
++ # endif
++ # ifdef FEAT_NETBEANS_INTG
++     if (WSInitialized)
++     {
++      WSInitialized = FALSE;
++         WSACleanup();
++     }
+  # endif
+  #ifdef DYNAMIC_GETTEXT
+      dyn_libintl_end();
+*** ../vim-6.2.106/src/os_win32.h      Wed May  7 22:53:05 2003
+--- src/os_win32.h     Fri Sep 12 21:30:03 2003
+***************
+*** 140,145 ****
+--- 140,146 ----
+  # define TRACE1(sz, p1)              Trace(_T(sz), p1)
+  # define TRACE2(sz, p1, p2)  Trace(_T(sz), p1, p2)
+  # define TRACE3(sz, p1, p2, p3) Trace(_T(sz), p1, p2, p3)
++ # define TRACE4(sz, p1, p2, p3, p4) Trace(_T(sz), p1, p2, p3, p4)
+  
+  /* In debug version, writes trace messages to debug stream */
+  void __cdecl
+***************
+*** 156,161 ****
+--- 157,163 ----
+  # define TRACE1(sz, p1)
+  # define TRACE2(sz, p1, p2)
+  # define TRACE3(sz, p1, p2, p3)
++ # define TRACE4(sz, p1, p2, p3, p4)
+  
+  #endif /* !_DEBUG */
+  
+*** ../vim-6.2.106/src/proto/gui_w32.pro       Sun Jun  1 12:26:27 2003
+--- src/proto/gui_w32.pro      Sat Sep 13 21:28:07 2003
+***************
+*** 78,81 ****
+--- 78,88 ----
+  void gui_mch_drawsign __ARGS((int row, int col, int typenr));
+  void *gui_mch_register_sign __ARGS((char_u *signfile));
+  void gui_mch_destroy_sign __ARGS((void *sign));
++ void gui_mch_disable_beval_area __ARGS((BalloonEval *beval));
++ void gui_mch_enable_beval_area __ARGS((BalloonEval *beval));
++ void gui_mch_post_balloon __ARGS((BalloonEval *beval, char_u *mesg));
++ BalloonEval *gui_mch_create_beval_area __ARGS((void *target, char_u *mesg, void (*mesgCB)(BalloonEval *, int), void *clientData));
++ void Handle_WM_Notify __ARGS((HWND hwnd, LPNMHDR pnmh));
++ void gui_mch_destroy_beval_area __ARGS((BalloonEval *beval));
++ void netbeans_draw_multisign_indicator __ARGS((int row));
+  /* vim: set ft=c : */
+*** ../vim-6.2.106/src/proto/netbeans.pro      Sun Jul 27 14:16:53 2003
+--- src/proto/netbeans.pro     Sat Sep 13 21:27:52 2003
+***************
+*** 1,6 ****
+--- 1,8 ----
+  /* netbeans.c */
+  void netbeans_Xt_connect __ARGS((void *context));
+  void netbeans_gtk_connect __ARGS((void));
++ void netbeans_w32_connect __ARGS((void));
++ void messageFromNetbeansW32 __ARGS((void));
+  void netbeans_end __ARGS((void));
+  void netbeans_startup_done __ARGS((void));
+  void netbeans_frame_moved __ARGS((int new_x, int new_y));
+***************
+*** 13,18 ****
+--- 15,21 ----
+  void netbeans_saved __ARGS((buf_T *bufp));
+  void netbeans_deleted_all_lines __ARGS((buf_T *bufp));
+  int netbeans_is_guarded __ARGS((linenr_T top, linenr_T bot));
++ void netbeans_draw_multisign_indicator __ARGS((int row));
+  void netbeans_draw_multisign_indicator __ARGS((int row));
+  void netbeans_gutter_click __ARGS((linenr_T lnum));
+  /* vim: set ft=c : */
+*** ../vim-6.2.106/src/proto.h Sat May 24 17:27:36 2003
+--- src/proto.h        Tue Sep 30 20:57:53 2003
+***************
+*** 172,177 ****
+--- 172,182 ----
+  #  ifdef FEAT_GUI_W16
+  #   include "gui_w16.pro"
+  #  endif
++     /* Ugly solution for "BalloonEval" not being defined while it's used in
++      * the prototypes. */
++ #  ifndef FEAT_BEVAL
++ #   define BalloonEval int
++ #  endif
+  #  ifdef FEAT_GUI_W32
+  #   include "gui_w32.pro"
+  #  endif
+*** ../vim-6.2.106/src/vim.h   Thu Sep 11 21:25:44 2003
+--- src/vim.h  Wed Sep 17 22:15:42 2003
+***************
+*** 17,23 ****
+      defined(FEAT_TCL) || \
+      defined(DYNAMIC_GETTEXT) || \
+      defined(DYNAMIC_ICONV) || \
+!     defined(DYNAMIC_IME)
+  #  pragma option -pc
+  # else
+  #  pragma option -pr
+--- 17,24 ----
+      defined(FEAT_TCL) || \
+      defined(DYNAMIC_GETTEXT) || \
+      defined(DYNAMIC_ICONV) || \
+!     defined(DYNAMIC_IME) || \
+!     defined(XPM)
+  #  pragma option -pc
+  # else
+  #  pragma option -pr
+***************
+*** 1463,1468 ****
+--- 1470,1479 ----
+  # ifdef FEAT_GUI_W32
+  #  ifdef FEAT_OLE
+  #   define WM_OLE (WM_APP+0)
++ #  endif
++ #  ifdef FEAT_NETBEANS_INTG
++     /* message for Netbeans socket event */
++ #   define WM_NETBEANS (WM_APP+1)
+  #  endif
+  # endif
+  
+*** ../vim-6.2.106/src/xpm_w32.c       Sun Sep 14 16:09:21 2003
+--- src/xpm_w32.c      Fri Sep 12 21:49:22 2003
+***************
+*** 0 ****
+--- 1,60 ----
++ /*
++  * Load XPM image.
++  *
++  * This function is placed in separate file because Xpm headers conflict with
++  * Vim ones :(
++  *
++  * Written by Sergey Khorev.
++  * http://iamphet.nm.ru/vim/index.html
++  */
++ 
++ #ifndef WIN32_LEAN_AND_MEAN
++ # define WIN32_LEAN_AND_MEAN
++ #endif
++ #include <windows.h>
++ 
++ /* reduced def from Vim.h */
++ #ifndef __ARGS
++ # if defined(__STDC__) || defined(__GNUC__) || defined(WIN3264)
++ #  define __ARGS(x) x
++ # else
++ #  define __ARGS(x) ()
++ # endif
++ #endif
++ 
++ #include "xpm_w32.h"
++ 
++ /* Engage Windows support in libXpm */
++ #define FOR_MSW
++ 
++ #include "xpm.h"
++ 
++ /*
++  * Tries to load Xpm image from file 'filename'.
++  * If fails return -1.
++  * success - 0 and image and mask BITMAPS
++  */
++     int
++ LoadXpmImage(filename, hImage, hShape)
++     char    *filename;
++     HBITMAP *hImage;
++     HBITMAP *hShape;
++ {
++     XImage       *img;   /* loaded image */
++     XImage       *shp;  /* shapeimage */
++     XpmAttributes   attr;
++     int                  res;
++     HDC                  hdc = CreateCompatibleDC(NULL);
++ 
++     attr.valuemask = 0;
++     res = XpmReadFileToImage(&hdc, filename, &img, &shp, &attr);
++     DeleteDC(hdc);
++     if (res < 0)
++      return -1;
++     else
++     {
++      *hImage = img->bitmap;
++      *hShape = shp->bitmap;
++      return 0;
++     }
++ }
+*** ../vim-6.2.106/src/xpm_w32.h       Sun Sep 14 16:09:21 2003
+--- src/xpm_w32.h      Fri Sep 12 21:49:01 2003
+***************
+*** 0 ****
+--- 1,7 ----
++ /*
++  * Header file for xpm_w32.c
++  */
++ 
++ #ifndef XPM_W32__H
++ int LoadXpmImage __ARGS((char *filename, HBITMAP *hImage, HBITMAP *hShape));
++ #endif
+*** ../vim-6.2.106/src/version.c       Sat Sep 27 20:18:38 2003
+--- src/version.c      Sun Oct 12 16:27:29 2003
+***************
+*** 626,629 ****
+--- 626,636 ----
+       "-xterm_save",
+  #endif
++ #ifdef WIN3264
++ # ifdef FEAT_XPM_W32
++      "+xpm_w32",
++ # else
++      "-xpm_w32",
++ # endif
++ #endif
+       NULL
+  };
+***************
+*** 632,633 ****
+--- 638,641 ----
+  {   /* Add new patch number below this line */
++ /**/
++     107,
+  /**/
+
+-- 
+If Microsoft would build a car...
+... Occasionally, executing a maneuver such as a left turn
+would cause your car to shut down and refuse to restart, in
+which case you would have to reinstall the engine.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.108 b/6.2.108
new file mode 100644 (file)
index 0000000..e813840
--- /dev/null
+++ b/6.2.108
@@ -0,0 +1,89 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.108
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.108
+Problem:    Crash when giving a message about ignoring case in a tag. (Manfred
+           Kuehn)
+Solution:   Use a longer buffer for the message.
+Files:     src/tag.c
+
+
+*** ../vim-6.2.107/src/tag.c   Sat Sep 27 20:18:38 2003
+--- src/tag.c  Tue Sep 30 21:29:58 2003
+***************
+*** 782,804 ****
+               && !skip_msg)
+           {
+               /* Give an indication of the number of matching tags */
+!              sprintf((char *)msg_buf, _("tag %d of %d%s"),
+                               cur_match + 1,
+                               num_matches,
+                               max_num_matches != MAXCOL ? _(" or more") : "");
+               if (ic)
+!                  STRCAT(msg_buf, _("  Using tag with different case!"));
+               if ((num_matches > prev_num_matches || new_tag)
+                                                          && num_matches > 1)
+               {
+                   if (ic)
+!                      msg_attr(msg_buf, hl_attr(HLF_W));
+                   else
+!                      msg(msg_buf);
+                   msg_scroll = TRUE;  /* don't overwrite this message */
+               }
+               else
+!                  give_warning(msg_buf, ic);
+               if (ic && !msg_scrolled && msg_silent == 0)
+               {
+                   out_flush();
+--- 782,804 ----
+               && !skip_msg)
+           {
+               /* Give an indication of the number of matching tags */
+!              sprintf((char *)IObuff, _("tag %d of %d%s"),
+                               cur_match + 1,
+                               num_matches,
+                               max_num_matches != MAXCOL ? _(" or more") : "");
+               if (ic)
+!                  STRCAT(IObuff, _("  Using tag with different case!"));
+               if ((num_matches > prev_num_matches || new_tag)
+                                                          && num_matches > 1)
+               {
+                   if (ic)
+!                      msg_attr(IObuff, hl_attr(HLF_W));
+                   else
+!                      msg(IObuff);
+                   msg_scroll = TRUE;  /* don't overwrite this message */
+               }
+               else
+!                  give_warning(IObuff, ic);
+               if (ic && !msg_scrolled && msg_silent == 0)
+               {
+                   out_flush();
+*** ../vim-6.2.107/src/version.c       Sun Oct 12 16:42:14 2003
+--- src/version.c      Sun Oct 12 16:51:44 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     108,
+  /**/
+
+-- 
+If Microsoft would build a car...
+... Occasionally your car would die on the freeway for no
+reason. You would have to pull over to the side of the road,
+close all of the car windows, shut it off, restart it, and
+reopen the windows before you could continue. For some reason
+you would simply accept this.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.109 b/6.2.109
new file mode 100644 (file)
index 0000000..05819b1
--- /dev/null
+++ b/6.2.109
@@ -0,0 +1,81 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.109
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.109
+Problem:    Compiler warnings with various Amiga compilers.
+Solution:   Add typecast, prototypes, et al. that are also useful for other
+           systems.  (Flavio Stanchina)
+Files:     src/eval.c, src/ops.c
+
+
+*** ../vim-6.2.108/src/eval.c  Sat Sep 27 19:36:46 2003
+--- src/eval.c Wed Sep 17 21:53:22 2003
+***************
+*** 9552,9559 ****
+       sprintf((char *)IObuff, ":return \"%s\"",
+               ((VAR)retvar)->var_val.var_string);
+      else
+!      sprintf((char *)IObuff, ":return %d",
+!              ((VAR)retvar)->var_val.var_number);
+      return vim_strsave(s);
+  }
+  
+--- 9552,9559 ----
+       sprintf((char *)IObuff, ":return \"%s\"",
+               ((VAR)retvar)->var_val.var_string);
+      else
+!      sprintf((char *)IObuff, ":return %ld",
+!              (long)(((VAR)retvar)->var_val.var_number));
+      return vim_strsave(s);
+  }
+  
+*** ../vim-6.2.108/src/ops.c   Sat Sep 27 19:36:47 2003
+--- src/ops.c  Wed Sep 17 21:59:01 2003
+***************
+*** 4334,4341 ****
+      linenr_T lnum;
+  {
+      char_u   *s = ml_get(lnum);
+  
+!     return (*s != NUL && vim_iswhite(s[STRLEN(s) - 1]));
+  }
+  
+  /*
+--- 4334,4347 ----
+      linenr_T lnum;
+  {
+      char_u   *s = ml_get(lnum);
++     size_t   l;
+  
+!     if (*s == NUL)
+!      return FALSE;
+!     /* Don't use STRLEN() inside vim_iswhite(), SAS/C complains: "macro
+!      * invocation may call function multiple times". */
+!     l = STRLEN(s) - 1;
+!     return vim_iswhite(s[l]);
+  }
+  
+  /*
+*** ../vim-6.2.108/src/version.c       Sun Oct 12 16:52:45 2003
+--- src/version.c      Sun Oct 12 16:55:21 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     109,
+  /**/
+
+-- 
+The CIA drives around in cars with the "Intel inside" logo.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.110 b/6.2.110
new file mode 100644 (file)
index 0000000..6a3cba2
--- /dev/null
+++ b/6.2.110
@@ -0,0 +1,63 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.110
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.110
+Problem:    When $LANG includes the encoding, a menu without an encoding name
+           is not found.
+Solution:   Also look for a menu file without any encoding.
+Files:     runtime/menu.vim
+
+
+*** ../vim-6.2.109/runtime/menu.vim    Sun May  4 22:58:58 2003
+--- runtime/menu.vim   Sat Sep 20 20:47:07 2003
+***************
+*** 2,8 ****
+  " You can also use this as a start for your own set of menus.
+  "
+  " Maintainer:        Bram Moolenaar <Bram@vim.org>
+! " Last Change:       2003 May 04
+  
+  " Note that ":an" (short for ":anoremenu") is often used to make a menu work
+  " in all modes and avoid side effects from mappings defined by the user.
+--- 2,8 ----
+  " You can also use this as a start for your own set of menus.
+  "
+  " Maintainer:        Bram Moolenaar <Bram@vim.org>
+! " Last Change:       2003 Set 20
+  
+  " Note that ":an" (short for ":anoremenu") is often used to make a menu work
+  " in all modes and avoid side effects from mappings defined by the user.
+***************
+*** 45,50 ****
+--- 45,51 ----
+      if !exists("did_menu_trans")
+        " There is no exact match, try matching with a wildcard added
+        " (e.g. find menu_de_de.iso_8859-1.vim if s:lang == de_DE).
++       let s:lang = substitute(s:lang, "\\.[^.]*", "", "")
+        exe "runtime! lang/menu_" . s:lang . "*.vim"
+  
+        if !exists("did_menu_trans") && strlen($LANG) > 1
+*** ../vim-6.2.109/src/version.c       Sun Oct 12 16:56:43 2003
+--- src/version.c      Sun Oct 12 16:58:17 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     110,
+  /**/
+
+-- 
+If Microsoft would build a car...
+... The airbag system would ask "are you SURE?" before deploying.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.111 b/6.2.111
new file mode 100644 (file)
index 0000000..0cf1fae
--- /dev/null
+++ b/6.2.111
@@ -0,0 +1,54 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.111
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.111
+Problem:    Encoding "cp1251" is not recognized.
+Solution:   Add "cp1251" to the table of encocings. (Alexey Froloff)
+Files:     src/mbyte.c
+
+
+*** ../vim-6.2.110/src/mbyte.c Fri Jul 25 22:35:52 2003
+--- src/mbyte.c        Tue Sep 30 20:07:15 2003
+***************
+*** 210,216 ****
+      {"euc-tw",               ENC_DBCS,               DBCS_CHTU},
+  #define IDX_BIG5     34
+      {"big5",         ENC_DBCS,               DBCS_CHT},
+! #define IDX_COUNT    35
+  };
+  
+  /*
+--- 210,218 ----
+      {"euc-tw",               ENC_DBCS,               DBCS_CHTU},
+  #define IDX_BIG5     34
+      {"big5",         ENC_DBCS,               DBCS_CHT},
+! #define IDX_CP1251   35
+!     {"cp1251",               ENC_8BIT,               1251},
+! #define IDX_COUNT    36
+  };
+  
+  /*
+*** ../vim-6.2.110/src/version.c       Sun Oct 12 17:00:32 2003
+--- src/version.c      Sun Oct 12 17:01:56 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     111,
+  /**/
+
+-- 
+If Microsoft would build a car...
+... You'd have to press the "Start" button to turn the engine off.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.112 b/6.2.112
new file mode 100644 (file)
index 0000000..e3eb959
--- /dev/null
+++ b/6.2.112
@@ -0,0 +1,95 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.112
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.112
+Problem:    After applying patches test32 fails. (Antonio Colombo)
+Solution:   Have "make clean" in the testdir delete *.rej and *.orig files.
+           Use this when doing "make clean" in the src directory.
+Files:     src/Makefile, src/testdir/Makefile
+
+
+*** ../vim-6.2.111/src/Makefile        Wed Sep 10 21:51:27 2003
+--- src/Makefile       Mon Sep 22 19:22:52 2003
+***************
+*** 1562,1568 ****
+       cd testdir; $(MAKE) -f Makefile $(GUI_TESTTARGET) VIMPROG=../$(VIMTARGET)
+  
+  testclean:
+!      -rm -f testdir/*.out testdir/test.log
+  
+  #
+  # Avoid overwriting an existing executable, somebody might be running it and
+--- 1587,1593 ----
+       cd testdir; $(MAKE) -f Makefile $(GUI_TESTTARGET) VIMPROG=../$(VIMTARGET)
+  
+  testclean:
+!      cd testdir; $(MAKE) -f Makefile clean
+  
+  #
+  # Avoid overwriting an existing executable, somebody might be running it and
+*** ../vim-6.2.111/src/testdir/Makefile        Fri Apr 18 17:14:03 2003
+--- src/testdir/Makefile       Wed Oct  8 19:59:05 2003
+***************
+*** 32,41 ****
+  $(SCRIPTS) $(SCRIPTS_GUI): $(VIMPROG)
+  
+  clean:
+!      -rm -rf *.out test.log tiny.vim small.vim mbyte.vim test.ok X*
+  
+  test1.out: test1.in
+!      -rm -f $*.failed tiny.vim small.vim mbyte.vim
+       $(VIMPROG) -u unix.vim -U NONE --noplugin -s dotest.in $*.in
+       @/bin/sh -c "if diff test.out $*.ok; \
+               then mv -f test.out $*.out; \
+--- 32,41 ----
+  $(SCRIPTS) $(SCRIPTS_GUI): $(VIMPROG)
+  
+  clean:
+!      -rm -rf *.out *.rej *.orig test.log tiny.vim small.vim mbyte.vim test.ok X*
+  
+  test1.out: test1.in
+!      -rm -f $*.failed tiny.vim small.vim mbyte.vim test.ok X*
+       $(VIMPROG) -u unix.vim -U NONE --noplugin -s dotest.in $*.in
+       @/bin/sh -c "if diff test.out $*.ok; \
+               then mv -f test.out $*.out; \
+***************
+*** 45,51 ****
+       -rm -rf X*
+  
+  .in.out:
+!      -rm -f $*.failed test.ok
+       cp $*.ok test.ok
+       $(VIMPROG) -u unix.vim -U NONE --noplugin -s dotest.in $*.in
+       @/bin/sh -c "if diff test.out $*.ok; \
+--- 45,51 ----
+       -rm -rf X*
+  
+  .in.out:
+!      -rm -f $*.failed test.ok X*
+       cp $*.ok test.ok
+       $(VIMPROG) -u unix.vim -U NONE --noplugin -s dotest.in $*.in
+       @/bin/sh -c "if diff test.out $*.ok; \
+*** ../vim-6.2.111/src/version.c       Sun Oct 12 17:02:40 2003
+--- src/version.c      Sun Oct 12 17:04:08 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     112,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+176. You lie, even to user-friends, about how long you were online yesterday.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.113 b/6.2.113
new file mode 100644 (file)
index 0000000..a44a6d6
--- /dev/null
+++ b/6.2.113
@@ -0,0 +1,72 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.113
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.113
+Problem:    Using ":startinsert" after "$" works like "a" instead of "i".
+           (Ajit Thakkar)
+Solution:   Reset "w_curswant" for ":startinsert" and reset o_eol in edit().
+Files:     src/edit.c, src/ex_docmd.c
+
+
+*** ../vim-6.2.112/src/edit.c  Sat Sep 27 19:36:46 2003
+--- src/edit.c Fri Oct  3 20:55:21 2003
+***************
+*** 420,429 ****
+       }
+      }
+      else
+-     {
+       arrow_used = FALSE;
+!      o_eol = FALSE;
+!     }
+  
+      /* we are in insert mode now, don't need to start it anymore */
+      need_start_insertmode = FALSE;
+--- 420,427 ----
+       }
+      }
+      else
+       arrow_used = FALSE;
+!     o_eol = FALSE;
+  
+      /* we are in insert mode now, don't need to start it anymore */
+      need_start_insertmode = FALSE;
+*** ../vim-6.2.112/src/ex_docmd.c      Fri Sep 12 20:20:20 2003
+--- src/ex_docmd.c     Fri Oct  3 20:56:40 2003
+***************
+*** 7520,7526 ****
+--- 7520,7529 ----
+       restart_edit = 'a';
+      }
+      else
++     {
+       restart_edit = 'i';
++      curwin->w_curswant = 0;     /* avoid MAXCOL */
++     }
+  }
+  
+  /*
+*** ../vim-6.2.112/src/version.c       Sun Oct 12 17:06:26 2003
+--- src/version.c      Sun Oct 12 17:08:03 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     113,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+177. You log off of your system because it's time to go to work.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.114 b/6.2.114
new file mode 100644 (file)
index 0000000..1e59985
--- /dev/null
+++ b/6.2.114
@@ -0,0 +1,95 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.114
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.114
+Problem:    When stdout is piped through "tee", the size of the screen may not
+           be correct.
+Solution:   Use stdin instead of stdout for ioctl() when stdin is a tty and
+           stdout isn't.
+Files:     src/os_unix.c
+
+
+*** ../vim-6.2.113/src/os_unix.c       Sat Sep 27 19:36:47 2003
+--- src/os_unix.c      Wed Oct  1 15:33:39 2003
+***************
+*** 3042,3055 ****
+      /*
+       * 1. try using an ioctl. It is the most accurate method.
+       *
+!      * Try using TIOCGWINSZ first, some systems that have it also define TIOCGSIZE
+!      * but don't have a struct ttysize.
+       */
+  # ifdef TIOCGWINSZ
+      {
+       struct winsize  ws;
+  
+!      if (ioctl(1, TIOCGWINSZ, &ws) == 0)
+       {
+           columns = ws.ws_col;
+           rows = ws.ws_row;
+--- 3042,3059 ----
+      /*
+       * 1. try using an ioctl. It is the most accurate method.
+       *
+!      * Try using TIOCGWINSZ first, some systems that have it also define
+!      * TIOCGSIZE but don't have a struct ttysize.
+       */
+  # ifdef TIOCGWINSZ
+      {
+       struct winsize  ws;
++      int fd = 1;
+  
+!      /* When stdout is not a tty, use stdin for the ioctl(). */
+!      if (!isatty(fd) && isatty(read_cmd_fd))
+!          fd = read_cmd_fd;
+!      if (ioctl(fd, TIOCGWINSZ, &ws) == 0)
+       {
+           columns = ws.ws_col;
+           rows = ws.ws_row;
+***************
+*** 3059,3066 ****
+  #  ifdef TIOCGSIZE
+      {
+       struct ttysize  ts;
+  
+!      if (ioctl(1, TIOCGSIZE, &ts) == 0)
+       {
+           columns = ts.ts_cols;
+           rows = ts.ts_lines;
+--- 3063,3074 ----
+  #  ifdef TIOCGSIZE
+      {
+       struct ttysize  ts;
++      int fd = 1;
+  
+!      /* When stdout is not a tty, use stdin for the ioctl(). */
+!      if (!isatty(fd) && isatty(read_cmd_fd))
+!          fd = read_cmd_fd;
+!      if (ioctl(fd, TIOCGSIZE, &ts) == 0)
+       {
+           columns = ts.ts_cols;
+           rows = ts.ts_lines;
+*** ../vim-6.2.113/src/version.c       Sun Oct 12 17:10:47 2003
+--- src/version.c      Sun Oct 12 17:12:48 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     114,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+178. You look for an icon to double-click to open your bedroom window.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.115 b/6.2.115
new file mode 100644 (file)
index 0000000..9fb761e
--- /dev/null
+++ b/6.2.115
@@ -0,0 +1,334 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.115 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.115 (extra)
+Problem:    Compiler warnings with various Amiga compilers.
+Solution:   Add typecast, prototypes, et al.  Those changes that are
+           Amiga-specific. (Flavio Stanchina)
+Files:     src/fileio.c, src/memfile.c, src/os_amiga.c, src/os_amiga.h,
+           src/vim.h
+
+
+*** ../vim-6.2.114/src/fileio.c        Sat Sep 27 19:36:46 2003
+--- src/fileio.c       Wed Sep 17 22:01:56 2003
+***************
+*** 25,34 ****
+  # include <fcntl.h>
+  #endif
+  
+- #ifdef LATTICE
+- # include <proto/dos.h>              /* for Lock() and UnLock() */
+- #endif
+- 
+  #ifdef __TANDEM
+  # include <limits.h>         /* for SSIZE_MAX */
+  #endif
+--- 25,30 ----
+*** ../vim-6.2.114/src/memfile.c       Sun May  4 22:43:59 2003
+--- src/memfile.c      Wed Sep 17 22:03:02 2003
+***************
+*** 660,667 ****
+               Flush(fp->ufbfh);
+       }
+  # else
+! #  ifdef _DCC
+       {
+           BPTR fh = (BPTR)fdtofh(mfp->mf_fd);
+  
+           if (fh != 0)
+--- 660,673 ----
+               Flush(fp->ufbfh);
+       }
+  # else
+! #  if defined(_DCC) || defined(__GNUC__)
+       {
++ #   ifdef __GNUC__
++          /* Have function (in libnix at least),
++           * but ain't got no prototype anywhere. */
++          unsigned long fdtofh(int filedescriptor);
++ #   endif
++ 
+           BPTR fh = (BPTR)fdtofh(mfp->mf_fd);
+  
+           if (fh != 0)
+*** ../vim-6.2.114/src/os_amiga.c      Sat Apr 19 15:10:39 2003
+--- src/os_amiga.c     Sun Oct 12 17:24:09 2003
+***************
+*** 62,68 ****
+  static int lock2name __ARGS((BPTR lock, char_u *buf, long   len));
+  static void out_num __ARGS((long n));
+  static struct FileInfoBlock *get_fib __ARGS((char_u *));
+! static int sortcmp __ARGS((char **a, char **b));
+  
+  static BPTR          raw_in = (BPTR)NULL;
+  static BPTR          raw_out = (BPTR)NULL;
+--- 62,68 ----
+  static int lock2name __ARGS((BPTR lock, char_u *buf, long   len));
+  static void out_num __ARGS((long n));
+  static struct FileInfoBlock *get_fib __ARGS((char_u *));
+! static int sortcmp __ARGS((const void *a, const void *b));
+  
+  static BPTR          raw_in = (BPTR)NULL;
+  static BPTR          raw_out = (BPTR)NULL;
+***************
+*** 233,239 ****
+      suspend_shell();
+  }
+  
+! #define DOS_LIBRARY  ((UBYTE *) "dos.library")
+  
+      void
+  mch_init()
+--- 233,241 ----
+      suspend_shell();
+  }
+  
+! #ifndef DOS_LIBRARY
+! # define DOS_LIBRARY ((UBYTE *)"dos.library")
+! #endif
+  
+      void
+  mch_init()
+***************
+*** 304,310 ****
+      static char_u   *(constrings[3]) = {(char_u *)"con:0/0/662/210/",
+                                       (char_u *)"con:0/0/640/200/",
+                                       (char_u *)"con:0/0/320/200/"};
+!     static char_u   winerr[] = _("VIM: Can't open window!\n");
+      struct WBArg    *argp;
+      int                  ac;
+      char         *av;
+--- 306,312 ----
+      static char_u   *(constrings[3]) = {(char_u *)"con:0/0/662/210/",
+                                       (char_u *)"con:0/0/640/200/",
+                                       (char_u *)"con:0/0/320/200/"};
+!     static char_u   winerr[] = (char_u *)N_("VIM: Can't open window!\n");
+      struct WBArg    *argp;
+      int                  ac;
+      char         *av;
+***************
+*** 316,322 ****
+  /*
+   * check if we are running under DOS 2.0x or higher
+   */
+!     if (DosBase = OpenLibrary(DOS_LIBRARY, 37L))
+      {
+       CloseLibrary(DosBase);
+  #ifdef FEAT_ARP
+--- 318,326 ----
+  /*
+   * check if we are running under DOS 2.0x or higher
+   */
+!     DosBase = OpenLibrary(DOS_LIBRARY, 37L);
+!     if (DosBase != NULL)
+!     /* if (((struct Library *)DOSBase)->lib_Version >= 37) */
+      {
+       CloseLibrary(DosBase);
+  #ifdef FEAT_ARP
+***************
+*** 394,400 ****
+       }
+       if (raw_in == (BPTR)NULL)       /* all three failed */
+       {
+!          mch_errmsg((char *)winerr);
+           goto exit;
+       }
+       raw_out = raw_in;
+--- 398,404 ----
+       }
+       if (raw_in == (BPTR)NULL)       /* all three failed */
+       {
+!          mch_errmsg(_(winerr));
+           goto exit;
+       }
+       raw_out = raw_in;
+***************
+*** 412,418 ****
+       * Make a unique name for the temp file (which we will not delete!).
+       * Use a pointer on the stack (nobody else will be using it).
+       */
+!     sprintf((char *)buf1, "t:nc%ld", (char *)buf1);
+      if ((fh = Open((UBYTE *)buf1, (long)MODE_NEWFILE)) == (BPTR)NULL)
+      {
+       mch_errmsg(_("Cannot create "));
+--- 416,422 ----
+       * Make a unique name for the temp file (which we will not delete!).
+       * Use a pointer on the stack (nobody else will be using it).
+       */
+!     sprintf((char *)buf1, "t:nc%ld", (long)buf1);
+      if ((fh = Open((UBYTE *)buf1, (long)MODE_NEWFILE)) == (BPTR)NULL)
+      {
+       mch_errmsg(_("Cannot create "));
+***************
+*** 499,505 ****
+      if (i == 3)          /* all three failed */
+      {
+       DeleteFile((UBYTE *)buf1);
+!      mch_errmsg((char *)winerr);
+       goto exit;
+      }
+      exitval = 0;    /* The Execute succeeded: exit this program */
+--- 503,509 ----
+      if (i == 3)          /* all three failed */
+      {
+       DeleteFile((UBYTE *)buf1);
+!      mch_errmsg(_(winerr));
+       goto exit;
+      }
+      exitval = 0;    /* The Execute succeeded: exit this program */
+***************
+*** 1198,1204 ****
+      else if (x)
+  # endif
+      {
+!      if (x = IoErr())
+       {
+           if (!(options & SHELL_SILENT))
+           {
+--- 1202,1208 ----
+      else if (x)
+  # endif
+      {
+!      if ((x = IoErr()) != 0)
+       {
+           if (!(options & SHELL_SILENT))
+           {
+***************
+*** 1314,1320 ****
+      vim_free(shellcmd);
+  #endif       /* AZTEC_C */
+  
+!     if (mydir = CurrentDir(mydir))   /* make sure we stay in the same directory */
+       UnLock(mydir);
+      if (tmode == TMODE_RAW)
+       settmode(TMODE_RAW);            /* set to raw mode */
+--- 1318,1324 ----
+      vim_free(shellcmd);
+  #endif       /* AZTEC_C */
+  
+!     if ((mydir = CurrentDir(mydir)) != 0) /* make sure we stay in the same directory */
+       UnLock(mydir);
+      if (tmode == TMODE_RAW)
+       settmode(TMODE_RAW);            /* set to raw mode */
+***************
+*** 1478,1486 ****
+  
+      static int
+  sortcmp(a, b)
+!     char **a, **b;
+  {
+!     return pathcmp(*a, *b);
+  }
+  
+  /*
+--- 1482,1492 ----
+  
+      static int
+  sortcmp(a, b)
+!     const void *a, *b;
+  {
+!     char_u *s = *(char **)a,
+!            *t = *(char **)b;
+!     return pathcmp(s, t);
+  }
+  
+  /*
+*** ../vim-6.2.114/src/os_amiga.h      Thu Jul 26 14:00:21 2001
+--- src/os_amiga.h     Wed Sep 17 22:15:14 2003
+***************
+*** 17,23 ****
+  #define HAVE_AVAIL_MEM
+  
+  #ifndef HAVE_CONFIG_H
+! # ifndef _DCC
+  #  define HAVE_STAT_H
+  # endif
+  # define HAVE_STDLIB_H
+--- 17,23 ----
+  #define HAVE_AVAIL_MEM
+  
+  #ifndef HAVE_CONFIG_H
+! # ifdef AZTEC_C
+  #  define HAVE_STAT_H
+  # endif
+  # define HAVE_STDLIB_H
+***************
+*** 44,49 ****
+--- 44,60 ----
+  
+  #endif /* HAVE_CONFIG_H */
+  
++ #include <exec/types.h>
++ #include <libraries/dos.h>
++ #include <libraries/dosextens.h>
++ 
++ /* Currently, all Amiga compilers except AZTEC C have these... */
++ #ifndef AZTEC_C
++ # include <proto/exec.h>
++ # include <proto/dos.h>
++ # include <proto/intuition.h>
++ #endif
++ 
+  #define FNAME_ILLEGAL ";*?`#%" /* illegal characters in a file name */
+  
+  /*
+***************
+*** 55,60 ****
+--- 66,76 ----
+  
+  #ifdef LATTICE
+  # define USE_TMPNAM  /* use tmpnam() instead of mktemp() */
++ #endif
++ 
++ #ifdef __GNUC__
++ # include <sys/stat.h>
++ # include <unistd.h>
+  #endif
+  
+  /*
+*** ../vim-6.2.114/src/vim.h   Sun Oct 12 16:42:14 2003
+--- src/vim.h  Wed Sep 17 22:15:42 2003
+***************
+*** 128,134 ****
+  #ifdef AMIGA
+    /* Be conservative about sizeof(int). It could be 4 too. */
+  # ifndef FEAT_GUI_GTK        /* avoid problems when generating prototypes */
+! #  define SIZEOF_INT 2
+  # endif
+  #endif
+  #ifdef MACOS
+--- 130,140 ----
+  #ifdef AMIGA
+    /* Be conservative about sizeof(int). It could be 4 too. */
+  # ifndef FEAT_GUI_GTK        /* avoid problems when generating prototypes */
+! #  ifdef __GNUC__
+! #   define SIZEOF_INT        4
+! #  else
+! #   define SIZEOF_INT        2
+! #  endif
+  # endif
+  #endif
+  #ifdef MACOS
+*** ../vim-6.2.114/src/version.c       Sun Oct 12 17:14:12 2003
+--- src/version.c      Sun Oct 12 17:15:47 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     115,
+  /**/
+
+-- 
+Rule #1: Don't give somebody a tool that he's going to hurt himself with.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.116 b/6.2.116
new file mode 100644 (file)
index 0000000..ead7dde
--- /dev/null
+++ b/6.2.116
@@ -0,0 +1,59 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.116 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.116 (extra)
+Problem:    German keyboard with Numlock set different from system startup
+           causes problems.
+Solution:   Ignore keys with code 0xff. (Helmut Stiegler)
+Files:     src/gui_w48.c
+
+
+*** ../vim-6.2.115/src/gui_w48.c       Sun Oct 12 16:42:14 2003
+--- src/gui_w48.c      Fri Oct  3 15:13:55 2003
+***************
+*** 1628,1635 ****
+       }
+       if (special_keys[i].key_sym == 0)
+       {
+!          /* Some keys need C-S- where they should only need C- */
+!          if ((GetKeyState(VK_CONTROL) & 0x8000)
+                   && !(GetKeyState(VK_SHIFT) & 0x8000)
+                   && !(GetKeyState(VK_MENU) & 0x8000))
+           {
+--- 1628,1638 ----
+       }
+       if (special_keys[i].key_sym == 0)
+       {
+!          /* Some keys need C-S- where they should only need C-.
+!           * Ignore 0xff, Windows XP sends it when NUMLOCK has changed since
+!           * system startup (Helmut Stiegler, 2003 Oct 3). */
+!          if (vk != 0xff
+!                  && (GetKeyState(VK_CONTROL) & 0x8000)
+                   && !(GetKeyState(VK_SHIFT) & 0x8000)
+                   && !(GetKeyState(VK_MENU) & 0x8000))
+           {
+*** ../vim-6.2.115/src/version.c       Sun Oct 12 17:25:14 2003
+--- src/version.c      Sun Oct 12 17:27:20 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     116,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+179. You wonder why your household garbage can doesn't have an
+     "empty recycle bin" button.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.117 b/6.2.117
new file mode 100644 (file)
index 0000000..06a12dd
--- /dev/null
+++ b/6.2.117
@@ -0,0 +1,221 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.117
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.117
+Problem:    Breakpoints in loops of sourced files and functions are not
+           detected. (Hari Krishna Dara)
+Solution:   Check for breakpoints when using lines that were previously read.
+           (Servatius Brandt)
+Files:     src/eval.c, src/ex_cmds2.c, src/ex_docmd.c, src/proto/eval.pro,
+           src/proto/ex_cmds2.pro
+
+
+*** ../vim-6.2.116/src/eval.c  Sun Oct 12 16:56:43 2003
+--- src/eval.c Sun Oct 12 20:04:45 2003
+***************
+*** 126,131 ****
+--- 126,161 ----
+  };
+  
+  /*
++  * Return the name of the executed function.
++  */
++     char_u *
++ func_name(cookie)
++     void *cookie;
++ {
++     return ((struct funccall *)cookie)->func->name;
++ }
++ 
++ /*
++  * Return the address holding the next breakpoint line for a funccall cookie.
++  */
++     linenr_T *
++ func_breakpoint(cookie)
++     void *cookie;
++ {
++     return &((struct funccall *)cookie)->breakpoint;
++ }
++ 
++ /*
++  * Return the address holding the debug tick for a funccall cookie.
++  */
++     int *
++ func_dbg_tick(cookie)
++     void *cookie;
++ {
++     return &((struct funccall *)cookie)->dbg_tick;
++ }
++ 
++ /*
+   * Return the nesting level for a funccall cookie.
+   */
+      int
+*** ../vim-6.2.116/src/ex_cmds2.c      Sat Sep 27 19:36:46 2003
+--- src/ex_cmds2.c     Sun Oct 12 20:04:45 2003
+***************
+*** 1995,2000 ****
+--- 1995,2020 ----
+  };
+  
+  #ifdef FEAT_EVAL
++ /*
++  * Return the address holding the next breakpoint line for a source cookie.
++  */
++     linenr_T *
++ source_breakpoint(cookie)
++     void *cookie;
++ {
++     return &((struct source_cookie *)cookie)->breakpoint;
++ }
++ 
++ /*
++  * Return the address holding the debug tick for a source cookie.
++  */
++     int *
++ source_dbg_tick(cookie)
++     void *cookie;
++ {
++     return &((struct source_cookie *)cookie)->dbg_tick;
++ }
++ 
+  /*
+   * Return the nesting level for a source cookie.
+   */
+*** ../vim-6.2.116/src/ex_docmd.c      Sun Oct 12 17:10:47 2003
+--- src/ex_docmd.c     Sun Oct 12 20:14:08 2003
+***************
+*** 591,596 ****
+--- 591,599 ----
+      struct condstack cstack;         /* conditional stack */
+      garray_T lines_ga;               /* keep lines for ":while" */
+      int              current_line = 0;       /* active line in lines_ga */
++     char_u   *fname = NULL;          /* function or script name */
++     linenr_T *breakpoint = NULL;     /* ptr to breakpoint field in cookie */
++     int              *dbg_tick = NULL;       /* ptr to dbg_tick field in cookie */
+      int              saved_trylevel = 0;
+      int              saved_force_abort = 0;
+      except_T *saved_caught_stack = NULL;
+***************
+*** 649,654 ****
+--- 652,672 ----
+      if (getline == get_func_line && ex_nesting_level == func_level(cookie))
+       ++ex_nesting_level;
+  
++     /* Get the function or script name and the address where the next breakpoint
++      * line and the debug tick for a function or script are stored. */
++     if (getline == get_func_line)
++     {
++      fname = func_name(cookie);
++      breakpoint = func_breakpoint(cookie);
++      dbg_tick = func_dbg_tick(cookie);
++     }
++     else if (getline == getsourceline)
++     {
++      fname = sourcing_name;
++      breakpoint = source_breakpoint(cookie);
++      dbg_tick = source_dbg_tick(cookie);
++     }
++ 
+      /*
+       * Initialize "force_abort"  and "suppress_errthrow" at the top level.
+       */
+***************
+*** 749,756 ****
+--- 767,794 ----
+               break;
+           }
+  
++          /* If breakpoints have been added/deleted need to check for it. */
++          if (breakpoint != NULL && dbg_tick != NULL
++                                                 && *dbg_tick != debug_tick)
++          {
++              *breakpoint = dbg_find_breakpoint((getline == getsourceline),
++                                                      fname, sourcing_lnum);
++              *dbg_tick = debug_tick;
++          }
++ 
+           next_cmdline = ((wcmd_T *)(lines_ga.ga_data))[current_line].line;
+           sourcing_lnum = ((wcmd_T *)(lines_ga.ga_data))[current_line].lnum;
++ 
++          /* Did we encounter a breakpoint? */
++          if (breakpoint != NULL && *breakpoint != 0
++                                            && *breakpoint <= sourcing_lnum)
++          {
++              dbg_breakpoint(fname, sourcing_lnum);
++              /* Find next breakpoint. */
++              *breakpoint = dbg_find_breakpoint((getline == getsourceline),
++                                                      fname, sourcing_lnum);
++              *dbg_tick = debug_tick;
++          }
+       }
+  #endif
+  
+***************
+*** 932,937 ****
+--- 970,984 ----
+                   current_line = cstack.cs_line[cstack.cs_idx];
+                   cstack.cs_had_while = TRUE; /* note we jumped there */
+                   line_breakcheck();          /* check if CTRL-C typed */
++ 
++                  /* Check for the next breakpoint at or after the ":while".*/
++                  if (breakpoint != NULL)
++                  {
++                      *breakpoint = dbg_find_breakpoint(
++                                          (getline == getsourceline), fname,
++                         ((wcmd_T *)lines_ga.ga_data)[current_line].lnum-1);
++                      *dbg_tick = debug_tick;
++                  }
+               }
+               else /* can only get here with ":endwhile" */
+               {
+*** ../vim-6.2.116/src/proto/eval.pro  Sun Jun  1 12:26:07 2003
+--- src/proto/eval.pro Sun Oct 12 20:04:45 2003
+***************
+*** 1,4 ****
+--- 1,7 ----
+  /* eval.c */
++ char_u *func_name __ARGS((void *cookie));
++ linenr_T *func_breakpoint __ARGS((void *cookie));
++ int *func_dbg_tick __ARGS((void *cookie));
+  int func_level __ARGS((void *cookie));
+  int current_func_returned __ARGS((void));
+  void set_internal_string_var __ARGS((char_u *name, char_u *value));
+*** ../vim-6.2.116/src/proto/ex_cmds2.pro      Sun Jun  1 12:26:08 2003
+--- src/proto/ex_cmds2.pro     Sun Oct 12 20:04:45 2003
+***************
+*** 37,42 ****
+--- 37,44 ----
+  int do_in_runtimepath __ARGS((char_u *name, int all, void (*callback)(char_u *fname)));
+  void ex_options __ARGS((exarg_T *eap));
+  void ex_source __ARGS((exarg_T *eap));
++ linenr_T *source_breakpoint __ARGS((void *cookie));
++ int *source_dbg_tick __ARGS((void *cookie));
+  int source_level __ARGS((void *cookie));
+  int do_source __ARGS((char_u *fname, int check_other, int is_vimrc));
+  void ex_scriptnames __ARGS((exarg_T *eap));
+*** ../vim-6.2.116/src/version.c       Sun Oct 12 17:28:22 2003
+--- src/version.c      Sun Oct 12 20:19:24 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     117,
+  /**/
+
+-- 
+Wizards had always known that the act of observation changed the thing that
+was observed, and sometimes forgot that it also changed the observer too.
+                       Terry Pratchett  -  Interesting times
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.118 b/6.2.118
new file mode 100644 (file)
index 0000000..1653e46
--- /dev/null
+++ b/6.2.118
@@ -0,0 +1,1648 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.118 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.118 (extra)
+Problem:    Mac: Compiling is done in a non-standard way.
+Solution:   Use the Unix method for Mac OS X, with autoconf.  Add "CARBONGUI"
+           to Makefile and configure. (Eric Kow)
+           Move a few prototypes from os_mac.pro to gui_mac.pro.
+Files:     src/Makefile, src/auto/configure, src/configure.in,
+           src/config.mk.in, src/gui_mac.c, src/os_mac.h, src/os_macosx.c,
+           src/proto/gui_mac.pro, src/proto/os_mac.pro,
+           src/infplist.xml, src/vim.h
+
+
+*** ../vim-6.2.117/src/Makefile        Sun Oct 12 17:06:26 2003
+--- src/Makefile       Mon Sep 22 19:22:52 2003
+***************
+*** 1010,1019 ****
+--- 1010,1023 ----
+  #GUI_LIBS_DIR        = $(NONE_LIBS_DIR)
+  #GUI_LIBS1   = $(NONE_LIBS1)
+  #GUI_LIBS2   = $(NONE_LIBS2)
++ #GUI_INSTALL    = $(NONE_INSTALL)
+  #GUI_TARGETS = $(NONE_TARGETS)
+  #GUI_MAN_TARGETS= $(NONE_MAN_TARGETS)
+  #GUI_TESTTARGET = $(NONE_TESTTARGET)
+  
++ # Without a GUI install the normal way.
++ NONE_INSTALL = install_normal
++ 
+  ### GTK GUI
+  GTK_SRC              = gui.c gui_gtk.c gui_gtk_x11.c pty.c gui_gtk_f.c \
+                       gui_beval.c
+***************
+*** 1025,1030 ****
+--- 1029,1035 ----
+  GTK_LIBS_DIR = $(GUI_LIB_LOC)
+  GTK_LIBS1    =
+  GTK_LIBS2    = $(GTK_LIBNAME)
++ GTK_INSTALL     = install_normal
+  GTK_TARGETS  = installglinks
+  GTK_MAN_TARGETS = installghelplinks
+  GTK_TESTTARGET = gui
+***************
+*** 1038,1043 ****
+--- 1043,1049 ----
+  MOTIF_LIBS_DIR       = $(GUI_LIB_LOC)
+  MOTIF_LIBS1  =
+  MOTIF_LIBS2  = $(MOTIF_LIBNAME) -lXt
++ MOTIF_INSTALL   = install_normal
+  MOTIF_TARGETS        = installglinks
+  MOTIF_MAN_TARGETS = installghelplinks
+  MOTIF_TESTTARGET = gui
+***************
+*** 1066,1072 ****
+  ATHENA_LIBS_DIR = $(GUI_LIB_LOC)
+  ATHENA_LIBS1 = $(XAW_LIB)
+  ATHENA_LIBS2 = -lXt
+! ATHENA_TARGETS       =  installglinks
+  ATHENA_MAN_TARGETS = installghelplinks
+  ATHENA_TESTTARGET = gui
+  
+--- 1072,1079 ----
+  ATHENA_LIBS_DIR = $(GUI_LIB_LOC)
+  ATHENA_LIBS1 = $(XAW_LIB)
+  ATHENA_LIBS2 = -lXt
+! ATHENA_INSTALL  = install_normal
+! ATHENA_TARGETS       = installglinks
+  ATHENA_MAN_TARGETS = installghelplinks
+  ATHENA_TESTTARGET = gui
+  
+***************
+*** 1082,1087 ****
+--- 1089,1095 ----
+  NEXTAW_LIBS_DIR = $(GUI_LIB_LOC)
+  NEXTAW_LIBS1 = $(NEXTAW_LIB)
+  NEXTAW_LIBS2 = -lXt
++ NEXTAW_INSTALL  =  install_normal
+  NEXTAW_TARGETS       =  installglinks
+  NEXTAW_MAN_TARGETS = installghelplinks
+  NEXTAW_TESTTARGET = gui
+***************
+*** 1105,1110 ****
+--- 1113,1119 ----
+  BEOSGUI_LIBS_DIR =
+  BEOSGUI_LIBS1        = -lbe -lroot
+  BEOSGUI_LIBS2        =
++ BEOSGUI_INSTALL = install_normal
+  BEOSGUI_TARGETS      = installglinks
+  BEOSGUI_MAN_TARGETS = installghelplinks
+  BEOSGUI_TESTTARGET = gui
+***************
+*** 1117,1126 ****
+--- 1126,1151 ----
+  PHOTONGUI_LIBS_DIR =
+  PHOTONGUI_LIBS1      = -lph -lphexlib
+  PHOTONGUI_LIBS2      =
++ PHOTONGUI_INSTALL = install_normal
+  PHOTONGUI_TARGETS = installglinks
+  PHOTONGUI_MAN_TARGETS = installghelplinks
+  PHOTONGUI_TESTTARGET = gui
+  
++ # CARBON GUI
++ CARBONGUI_SRC        =  gui.c gui_mac.c
++ CARBONGUI_OBJ        =  objects/gui.o objects/gui_mac.o objects/pty.o
++ CARBONGUI_DEFS       =  -arch ppc -fno-common -fpascal-strings \
++                   -Wall -Wno-unknown-pragmas \
++                   -mdynamic-no-pic -pipe
++ CARBONGUI_IPATH      = -I. -Iproto -I/Developer/Headers/FlatCarbon
++ CARBONGUI_LIBS_DIR =
++ CARBONGUI_LIBS1      = -framework Carbon
++ CARBONGUI_LIBS2      = -ltermcap
++ CARBONGUI_INSTALL = gui_mac.rsrc install_macosx
++ CARBONGUI_TARGETS =
++ CARBONGUI_MAN_TARGETS =
++ CARBONGUI_TESTTARGET =
++ 
+  # All GUI files
+  ALL_GUI_SRC  = gui.c gui_gtk.c gui_gtk_f.c gui_motif.c gui_athena.c gui_gtk_x11.c gui_x11.c gui_at_sb.c gui_at_fs.c pty.c
+  ALL_GUI_PRO  = gui.pro gui_gtk.pro gui_motif.pro gui_athena.pro gui_gtk_x11.pro gui_x11.pro gui_w16.pro gui_w32.pro gui_amiga.pro gui_photon.pro
+***************
+*** 1573,1579 ****
+  # If you want to keep an older version, rename it before running "make
+  # install".
+  #
+! install: installvim installtools install-languages install-icons
+  
+  installvim: installvimbin installruntime installlinks installhelplinks installmacros installtutor
+  
+--- 1598,1606 ----
+  # If you want to keep an older version, rename it before running "make
+  # install".
+  #
+! install: $(GUI_INSTALL)
+! 
+! install_normal: installvim installtools install-languages install-icons
+  
+  installvim: installvimbin installruntime installlinks installhelplinks installmacros installtutor
+  
+***************
+*** 2135,2140 ****
+--- 2162,2170 ----
+  objects/gui_photon.o: gui_photon.c
+       $(CCC) -o $@ gui_photon.c
+  
++ objects/gui_mac.o: gui_mac.c
++      $(CCC) -o $@ gui_mac.c
++ 
+  objects/hangulin.o: hangulin.c
+       $(CCC) -o $@ hangulin.c
+  
+***************
+*** 2210,2215 ****
+--- 2240,2248 ----
+  objects/os_qnx.o: os_qnx.c
+       $(CCC) -o $@ os_qnx.c
+  
++ objects/os_macosx.o: os_macosx.c
++      $(CCC) -o $@ os_macosx.c
++ 
+  objects/os_unix.o: os_unix.c
+       $(CCC) -o $@ os_unix.c
+  
+***************
+*** 2269,2274 ****
+--- 2302,2393 ----
+  
+  Makefile:
+       @echo The name of the makefile MUST be "Makefile" (with capital M)!!!!
++ 
++ ###############################################################################
++ ### MacOS X installation
++ ###
++ ### This creates a runnable Vim.app in the src directory
++ ###
++ ### TODO: install the runtime files in Vim.app instead of
++ ### requiring that they be in a seperate directory.
++ 
++ REZ    = /Developer/Tools/Rez
++ RESMRG = /Developer/Tools/ResMerger
++ APPDIR = $(VIMNAME).app
++ RESDIR = $(APPDIR)/Contents/Resources
++ # FIXME: i'm sure someone else can do something clever with grep
++ # sed and version.h here
++ VERSION = 6.2
++ 
++ ### Common flags
++ M4FLAGS += -DAPP_EXE=$(VIMNAME) -DAPP_NAME=$(VIMNAME) -DAPP_VER=$(VERSION) \
++         -DICON_APP=$(ICON_APP)
++ 
++ ### Icons
++ # You can download Douglas Stebila's icons:
++ #    http://homepage.mac.com/dstebila/code/vim/
++ # TODO: Honestly, why don't we just go ahead and do this? OS 9?
++ # If you place those *.icns at src directory, it will be detected by this
++ # Makefile automatically, and used for Vim.
++ ICON_APP = $(shell if [ -e app.icns ] ; then echo app.icns ; else echo gui_mac.icns ; fi)
++ ICON_DOC = $(shell if [ -e doc.icns ] ; then echo doc.icns ; else echo ; fi)
++ ICON_DOCTXT = $(shell if [ -e doc-txt.icns ] ; then echo doc-txt.icns ; else echo ; fi)
++ ICONS = $(addprefix $(RESDIR)/, $(ICON_APP) $(ICON_DOC) $(ICON_DOCTXT))
++ 
++ install_macosx: bundle-dir bundle-executable bundle-info bundle-resource \
++      bundle-language
++ 
++ bundle-dir: $(APPDIR)/Contents
++      cp -R ../runtime $(APPDIR)
++ 
++ bundle-executable: $(VIMTARGET)
++      cp $(VIMTARGET) $(APPDIR)/Contents/MacOS/$(VIMTARGET)
++ 
++ bundle-info:  bundle-dir
++      @echo "Creating PkgInfo"
++      @echo -n "APPLVIM!" > $(APPDIR)/Contents/PkgInfo
++      @echo "Creating Info.plist"
++      m4 $(M4FLAGS) infplist.xml > $(APPDIR)/Contents/Info.plist
++ 
++ bundle-resource: bundle-dir bundle-icons bundle-rsrc
++ 
++ bundle-icons: $(ICONS)
++ 
++ ### Classic resources
++ # Resource fork (in the form of a .rsrc file) for Classic Vim (Mac OS 9)
++ # This file is also required for OS X Vim.
++ bundle-rsrc: gui_mac.rsrc
++      @echo "Creating resource fork"
++      $(RESMRG) gui_mac.rsrc -dstIs DF -o $(RESDIR)/$(VIMNAME).rsrc
++ 
++ gui_mac.rsrc:
++      open os_mac.rsr.hqx
++      sleep 1
++      @echo
++      @echo "--------------------"
++      @echo "If this fails, run make install again after StuffIt Expander quits."
++      @echo "--------------------"
++      @echo
++ 
++ # po/Make_osx.pl says something about generating a Mac message file
++ # for Ukrananian.  Would somebody using Mac OS X in Ukranian
++ # *really* be upset that Carbon Vim was not localised in
++ # Ukranian?
++ #
++ #bundle-language: bundle-dir po/Make_osx.pl
++ #    cd po && perl Make_osx.pl --outdir ../$(RESDIR) $(MULTILANG)
++ bundle-language: bundle-dir
++ 
++ $(APPDIR)/Contents:
++      mkdir $(APPDIR)
++      mkdir $(APPDIR)/Contents
++      mkdir $(APPDIR)/Contents/MacOS
++      mkdir $(RESDIR)
++      mkdir $(RESDIR)/English.lproj
++ 
++ $(RESDIR)/%.icns: %.icns
++      cp $< $@
++ 
+  
+  ###############################################################################
+  ### (automatically generated by 'make depend')
+*** ../vim-6.2.117/src/auto/configure  Sat Sep 27 19:20:53 2003
+--- src/auto/configure Sat Sep 13 21:22:56 2003
+***************
+*** 60,66 ****
+  ac_help="$ac_help
+    --with-x                use the X Window System"
+  ac_help="$ac_help
+!   --enable-gui[=OPTS]     X11 GUI [default=auto] [OPTS=auto/no/gtk/gtk2/gnome/gnome2/motif/athena/neXtaw/beos/photon]"
+  ac_help="$ac_help
+    --enable-gtk-check      If auto-select GUI, check for GTK [default=yes]"
+  ac_help="$ac_help
+--- 60,66 ----
+  ac_help="$ac_help
+    --with-x                use the X Window System"
+  ac_help="$ac_help
+!   --enable-gui[=OPTS]     X11 GUI [default=auto] [OPTS=auto/no/gtk/gtk2/gnome/gnome2/motif/athena/neXtaw/beos/photon/carbon]"
+  ac_help="$ac_help
+    --enable-gtk-check      If auto-select GUI, check for GTK [default=yes]"
+  ac_help="$ac_help
+***************
+*** 74,79 ****
+--- 74,81 ----
+  ac_help="$ac_help
+    --enable-nextaw-check   If auto-select GUI, check for neXtaw [default=yes]"
+  ac_help="$ac_help
++   --enable-carbon-check   If auto-select GUI, check for Carbon [default=yes]"
++ ac_help="$ac_help
+    --with-gtk-prefix=PFX   Prefix where GTK is installed (optional)"
+  ac_help="$ac_help
+    --with-gtk-exec-prefix=PFX Exec prefix where GTK is installed (optional)"
+***************
+*** 1169,1174 ****
+--- 1171,1229 ----
+      *)               QNX=no; echo "$ac_t""no" 1>&6;;
+  esac
+  
++ DEFAULT_VIMNAME=vim
++ echo $ac_n "checking for Darwin (Mac OS X)""... $ac_c" 1>&6
++ echo "configure:1177: checking for Darwin (Mac OS X)" >&5
++ if test "`(uname) 2>/dev/null`" = Darwin; then
++   echo "$ac_t""yes" 1>&6
++   MACOSX=yes
++   OS_EXTRA_SCR="os_macosx.c"; 
++   OS_EXTRA_OBJ="objects/os_macosx.o"
++   CFLAGS="$CFLAGS -DMACOS_X_UNIX"
++ 
++       ac_safe=`echo "Carbon/Carbon.h" | sed 'y%./+-%__p_%'`
++ echo $ac_n "checking for Carbon/Carbon.h""... $ac_c" 1>&6
++ echo "configure:1187: checking for Carbon/Carbon.h" >&5
++ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
++   echo $ac_n "(cached) $ac_c" 1>&6
++ else
++   cat > conftest.$ac_ext <<EOF
++ #line 1192 "configure"
++ #include "confdefs.h"
++ #include <Carbon/Carbon.h>
++ EOF
++ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
++ { (eval echo configure:1197: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
++ if test -z "$ac_err"; then
++   rm -rf conftest*
++   eval "ac_cv_header_$ac_safe=yes"
++ else
++   echo "$ac_err" >&5
++   echo "configure: failed program was:" >&5
++   cat conftest.$ac_ext >&5
++   rm -rf conftest*
++   eval "ac_cv_header_$ac_safe=no"
++ fi
++ rm -f conftest*
++ fi
++ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
++   echo "$ac_t""yes" 1>&6
++   CARBON=yes
++ else
++   echo "$ac_t""no" 1>&6
++ fi
++          
++   if test "x$CARBON" = "xyes"; then
++     if test -z "$with_x"; then
++       with_x=no
++       DEFAULT_VIMNAME=Vim
++     fi
++   fi
++ else
++   echo "$ac_t""no" 1>&6
++ fi
++ 
+  
+  
+  
+***************
+*** 1194,1211 ****
+  fi
+  
+  echo $ac_n "checking --with-vim-name argument""... $ac_c" 1>&6
+! echo "configure:1198: checking --with-vim-name argument" >&5
+  # Check whether --with-vim-name or --without-vim-name was given.
+  if test "${with_vim_name+set}" = set; then
+    withval="$with_vim_name"
+    VIMNAME="$withval"; echo "$ac_t""$VIMNAME" 1>&6
+  else
+!   VIMNAME="vim"; echo "$ac_t""Defaulting to vim" 1>&6
+  fi
+  
+  
+  echo $ac_n "checking --with-ex-name argument""... $ac_c" 1>&6
+! echo "configure:1209: checking --with-ex-name argument" >&5
+  # Check whether --with-ex-name or --without-ex-name was given.
+  if test "${with_ex_name+set}" = set; then
+    withval="$with_ex_name"
+--- 1249,1266 ----
+  fi
+  
+  echo $ac_n "checking --with-vim-name argument""... $ac_c" 1>&6
+! echo "configure:1253: checking --with-vim-name argument" >&5
+  # Check whether --with-vim-name or --without-vim-name was given.
+  if test "${with_vim_name+set}" = set; then
+    withval="$with_vim_name"
+    VIMNAME="$withval"; echo "$ac_t""$VIMNAME" 1>&6
+  else
+!   VIMNAME="$DEFAULT_VIMNAME"; echo "$ac_t""Defaulting to $VIMNAME" 1>&6
+  fi
+  
+  
+  echo $ac_n "checking --with-ex-name argument""... $ac_c" 1>&6
+! echo "configure:1264: checking --with-ex-name argument" >&5
+  # Check whether --with-ex-name or --without-ex-name was given.
+  if test "${with_ex_name+set}" = set; then
+    withval="$with_ex_name"
+***************
+*** 1515,1520 ****
+--- 1570,1595 ----
+        echo "$ac_t"">>> too old; need Perl version 5.003_01 or later <<<" 1>&6
+      fi
+    fi
++ 
++   if test "x$MACOSX" == "xyes"; then 
++         dir=/System/Library/Perl
++     darwindir=$dir/darwin
++     if test -d $darwindir; then 
++       PERL=/usr/bin/perl
++     else
++             dir=/System/Library/Perl/5.8.1
++       darwindir=$dir/darwin-thread-multi-2level
++       if test -d $darwindir; then 
++      PERL=/usr/bin/perl
++       fi
++     fi
++     if test -n "$PERL"; then
++       PERL_DIR=$dir
++       PERL_CFLAGS=-DFEAT_PERL -I$darwindir/CORE
++       PERL_OBJ=if_perl.o if_perlsfio.o $darwindir/auto/DynaLoader/DynaLoader.a
++       PERL_LIBS=-lperl -L$darwindir/CORE
++     fi
++   fi
+  fi
+  
+  
+***************
+*** 2345,2351 ****
+  echo "$ac_t""$enable_fontset" 1>&6
+  
+  test -z "$with_x" && with_x=yes
+! test "${enable_gui-yes}" != no -a "x$QNX" != "xyes" && with_x=yes
+  if test "$with_x" = no; then
+    echo "$ac_t""defaulting to: don't HAVE_X11" 1>&6
+  else
+--- 2420,2426 ----
+  echo "$ac_t""$enable_fontset" 1>&6
+  
+  test -z "$with_x" && with_x=yes
+! test "${enable_gui-yes}" != no -a "x$MACOSX" != "xyes" -a "x$QNX" != "xyes" && with_x=yes
+  if test "$with_x" = no; then
+    echo "$ac_t""defaulting to: don't HAVE_X11" 1>&6
+  else
+***************
+*** 3458,3467 ****
+    fi
+  fi
+  
+! test "x$with_x" = xno -a "x$BEOS" != "xyes" -a "x$QNX" != "xyes" && enable_gui=no
+  
+  echo $ac_n "checking --enable-gui argument""... $ac_c" 1>&6
+! echo "configure:3465: checking --enable-gui argument" >&5
+  # Check whether --enable-gui or --disable-gui was given.
+  if test "${enable_gui+set}" = set; then
+    enableval="$enable_gui"
+--- 3533,3542 ----
+    fi
+  fi
+  
+! test "x$with_x" = xno -a "x$BEOS" != "xyes" -a "x$MACOSX" != "xyes" -a "x$QNX" != "xyes" && enable_gui=no
+  
+  echo $ac_n "checking --enable-gui argument""... $ac_c" 1>&6
+! echo "configure:3540: checking --enable-gui argument" >&5
+  # Check whether --enable-gui or --disable-gui was given.
+  if test "${enable_gui+set}" = set; then
+    enableval="$enable_gui"
+***************
+*** 3471,3553 ****
+  fi
+  
+  
+- ## Canonicalize the --enable-gui= argument so that it can be easily compared.
+- ## Do not use character classes for portability with old tools.
+  enable_gui_canon=`echo "_$enable_gui" | \
+       sed 's/[ _+-]//g;y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
+  
+! if test "x$BEOS" = "xyes"; then
+  
+!   SKIP_GTK=YES
+!   SKIP_GTK2=YES
+!   SKIP_GNOME=YES
+!   SKIP_MOTIF=YES
+!   SKIP_ATHENA=YES
+!   SKIP_NEXTAW=YES
+!   SKIP_PHOTON=YES
+    SKIP_BEOS=
+-   GUITYPE=NONE
+- 
+    case "$enable_gui_canon" in
+      no)              echo "$ac_t""no GUI support" 1>&6
+               SKIP_BEOS=YES ;;
+      yes|"")  echo "$ac_t""yes - automatic GUI support" 1>&6 ;;
+      auto)    echo "$ac_t""auto - automatic GUI support" 1>&6 ;;
+      beos)    echo "$ac_t""BeOS GUI support" 1>&6 ;;
+!     *)               echo "$ac_t""Sorry, $enable_gui GUI is not supported" 1>&6 ;;
+    esac
+  
+  elif test "x$QNX" = "xyes" -a "x$with_x" = "xno" ; then
+-   SKIP_GTK=YES
+-   SKIP_GTK2=YES
+-   SKIP_GNOME=YES
+-   SKIP_MOTIF=YES
+-   SKIP_ATHENA=YES
+-   SKIP_NEXTAW=YES
+-   SKIP_BEOS=YES
+    SKIP_PHOTON=
+-   GUITYPE=NONE
+- 
+    case "$enable_gui_canon" in
+      no)              echo "$ac_t""no GUI support" 1>&6
+               SKIP_PHOTON=YES ;;
+      yes|"")  echo "$ac_t""yes - automatic GUI support" 1>&6 ;;
+      auto)    echo "$ac_t""auto - automatic GUI support" 1>&6 ;;
+      photon)  echo "$ac_t""Photon GUI support" 1>&6 ;;
+!     *)               echo "$ac_t""Sorry, $enable_gui GUI is not supported" 1>&6 ;;
+    esac
+  
+  else
+  
+-   SKIP_GTK=
+-   SKIP_GTK2=
+-   SKIP_GNOME=
+-   SKIP_MOTIF=
+-   SKIP_ATHENA=
+-   SKIP_NEXTAW=
+-   SKIP_BEOS=YES
+-   SKIP_PHOTON=YES
+-   GUITYPE=NONE
+  
+    case "$enable_gui_canon" in
+!     no|none) echo "$ac_t""no GUI support" 1>&6
+!              SKIP_GTK=YES; SKIP_GTK2=YES; SKIP_GNOME=YES; SKIP_MOTIF=YES; SKIP_ATHENA=YES; SKIP_NEXTAW=YES ;;
+      yes|"")  echo "$ac_t""yes - automatic GUI support" 1>&6 ;;
+!     auto)    echo "$ac_t""auto - automatic GUI support" 1>&6 ;;
+      gtk)     echo "$ac_t""GTK+ 1.x GUI support" 1>&6
+!              SKIP_GTK2=YES; SKIP_GNOME=YES; SKIP_MOTIF=YES; SKIP_ATHENA=YES; SKIP_NEXTAW=YES ;;
+      gtk2)    echo "$ac_t""GTK+ 2.x GUI support" 1>&6
+!              SKIP_GNOME=YES; SKIP_MOTIF=YES; SKIP_ATHENA=YES; SKIP_NEXTAW=YES ;;
+      gnome)   echo "$ac_t""GNOME 1.x GUI support" 1>&6
+!              SKIP_GTK2=YES; SKIP_MOTIF=YES; SKIP_ATHENA=YES; SKIP_NEXTAW=YES ;;
+      gnome2)  echo "$ac_t""GNOME 2.x GUI support" 1>&6
+!              SKIP_MOTIF=YES; SKIP_ATHENA=YES; SKIP_NEXTAW=YES ;;
+      motif)   echo "$ac_t""Motif GUI support" 1>&6
+!              SKIP_GTK=YES; SKIP_GNOME=YES; SKIP_ATHENA=YES; SKIP_NEXTAW=YES ;;
+      athena)  echo "$ac_t""Athena GUI support" 1>&6
+!              SKIP_GTK=YES; SKIP_GNOME=YES; SKIP_MOTIF=YES; SKIP_NEXTAW=YES ;;
+      nextaw)  echo "$ac_t""neXtaw GUI support" 1>&6
+!              SKIP_GTK=YES; SKIP_GNOME=YES; SKIP_MOTIF=YES; SKIP_ATHENA=YES ;;
+      *)               echo "$ac_t""Sorry, $enable_gui GUI is not supported" 1>&6 ;;
+    esac
+  
+--- 3546,3633 ----
+  fi
+  
+  
+  enable_gui_canon=`echo "_$enable_gui" | \
+       sed 's/[ _+-]//g;y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
+  
+! SKIP_GTK=YES
+! SKIP_GTK2=YES
+! SKIP_GNOME=YES
+! SKIP_MOTIF=YES
+! SKIP_ATHENA=YES
+! SKIP_NEXTAW=YES
+! SKIP_PHOTON=YES
+! SKIP_BEOS=YES
+! SKIP_CARBON=YES
+! GUITYPE=NONE
+  
+! if test "x$BEOS" = "xyes"; then
+    SKIP_BEOS=
+    case "$enable_gui_canon" in
+      no)              echo "$ac_t""no GUI support" 1>&6
+               SKIP_BEOS=YES ;;
+      yes|"")  echo "$ac_t""yes - automatic GUI support" 1>&6 ;;
+      auto)    echo "$ac_t""auto - automatic GUI support" 1>&6 ;;
+      beos)    echo "$ac_t""BeOS GUI support" 1>&6 ;;
+!     *)               echo "$ac_t""Sorry, $enable_gui GUI is not supported" 1>&6
+!              SKIP_BEOS=YES ;;
+    esac
+  
+  elif test "x$QNX" = "xyes" -a "x$with_x" = "xno" ; then
+    SKIP_PHOTON=
+    case "$enable_gui_canon" in
+      no)              echo "$ac_t""no GUI support" 1>&6
+               SKIP_PHOTON=YES ;;
+      yes|"")  echo "$ac_t""yes - automatic GUI support" 1>&6 ;;
+      auto)    echo "$ac_t""auto - automatic GUI support" 1>&6 ;;
+      photon)  echo "$ac_t""Photon GUI support" 1>&6 ;;
+!     *)               echo "$ac_t""Sorry, $enable_gui GUI is not supported" 1>&6
+!              SKIP_PHOTON=YES ;;
+!   esac
+! 
+! elif test "x$MACOSX" = "xyes" -a "x$with_x" = "xno" ; then
+!   SKIP_CARBON=
+!   case "$enable_gui_canon" in
+!     no)              echo "$ac_t""no GUI support" 1>&6
+!              SKIP_CARBON=YES ;;
+!     yes|"")  echo "$ac_t""yes - automatic GUI support" 1>&6 ;;
+!     auto)    echo "$ac_t""auto - automatic GUI support" 1>&6 ;;
+!     carbon)  echo "$ac_t""Carbon GUI support" 1>&6 ;;
+!     *)               echo "$ac_t""Sorry, $enable_gui GUI is not supported" 1>&6
+!              SKIP_CARBON=YES ;;
+    esac
+  
+  else
+  
+  
+    case "$enable_gui_canon" in
+!     no|none) echo "$ac_t""no GUI support" 1>&6 ;;
+      yes|"")  echo "$ac_t""yes - automatic GUI support" 1>&6 ;;
+!     auto)    echo "$ac_t""auto - automatic GUI support" 1>&6
+!              SKIP_GTK=
+!              SKIP_GTK2=
+!              SKIP_GNOME=
+!              SKIP_MOTIF=
+!              SKIP_ATHENA=
+!              SKIP_NEXTAW=
+!              SKIP_CARBON=;;
+      gtk)     echo "$ac_t""GTK+ 1.x GUI support" 1>&6
+!              SKIP_GTK=;;
+      gtk2)    echo "$ac_t""GTK+ 2.x GUI support" 1>&6
+!              SKIP_GTK=
+!              SKIP_GTK2=;;
+      gnome)   echo "$ac_t""GNOME 1.x GUI support" 1>&6
+!              SKIP_GNOME=
+!              SKIP_GTK=;;
+      gnome2)  echo "$ac_t""GNOME 2.x GUI support" 1>&6
+!              SKIP_GNOME=
+!              SKIP_GTK=
+!              SKIP_GTK2=;;
+      motif)   echo "$ac_t""Motif GUI support" 1>&6
+!              SKIP_MOTIF=;;
+      athena)  echo "$ac_t""Athena GUI support" 1>&6
+!              SKIP_ATHENA=;;
+      nextaw)  echo "$ac_t""neXtaw GUI support" 1>&6
+!              SKIP_NEXTAW=;;
+      *)               echo "$ac_t""Sorry, $enable_gui GUI is not supported" 1>&6 ;;
+    esac
+  
+***************
+*** 3658,3663 ****
+--- 3738,3776 ----
+    fi
+  fi
+  
++ if test "x$SKIP_CARBON" != "xYES" -a "$enable_gui_canon" != "carbon"; then
++   echo $ac_n "checking whether or not to look for Carbon""... $ac_c" 1>&6
++ echo "configure:3744: checking whether or not to look for Carbon" >&5
++   # Check whether --enable-carbon-check or --disable-carbon-check was given.
++ if test "${enable_carbon_check+set}" = set; then
++   enableval="$enable_carbon_check"
++   :
++ else
++   enable_carbon_check="yes"
++ fi
++ 
++   echo "$ac_t""$enable_carbon_check" 1>&6;
++   if test "x$enable_carbon_check" = "xno"; then
++     SKIP_CARBON=YES
++   fi
++ fi
++ 
++ if test "x$MACOSX" = "xyes" -a -z "$SKIP_CARBON" -a "x$CARBON" = "xyes"; then
++   echo $ac_n "checking for Carbon GUI""... $ac_c" 1>&6
++ echo "configure:3761: checking for Carbon GUI" >&5
++     echo "$ac_t""yes" 1>&6;
++   GUITYPE=CARBONGUI
++     SKIP_GTK=YES;
++   SKIP_GTK2=YES;
++   SKIP_GNOME=YES;
++   SKIP_MOTIF=YES;
++   SKIP_ATHENA=YES;
++   SKIP_NEXTAW=YES;
++   SKIP_PHOTON=YES;
++   SKIP_BEOS=YES;
++   SKIP_CARBON=YES
++ fi
++ 
+  
+  
+  
+***************
+*** 5292,5298 ****
+  
+  for ac_hdr in stdarg.h stdlib.h string.h sys/select.h sys/utsname.h \
+       termcap.h fcntl.h sgtty.h sys/ioctl.h sys/time.h termio.h \
+!      iconv.h langinfo.h unistd.h stropts.h errno.h strings.h \
+       sys/resource.h sys/systeminfo.h locale.h \
+       sys/stream.h sys/ptem.h termios.h libc.h sys/statfs.h \
+       poll.h sys/poll.h pwd.h utime.h sys/param.h libintl.h \
+--- 5408,5414 ----
+  
+  for ac_hdr in stdarg.h stdlib.h string.h sys/select.h sys/utsname.h \
+       termcap.h fcntl.h sgtty.h sys/ioctl.h sys/time.h termio.h \
+!      iconv.h langinfo.h unistd.h stropts.h errno.h \
+       sys/resource.h sys/systeminfo.h locale.h \
+       sys/stream.h sys/ptem.h termios.h libc.h sys/statfs.h \
+       poll.h sys/poll.h pwd.h utime.h sys/param.h libintl.h \
+***************
+*** 5301,5317 ****
+  do
+  ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+  echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+! echo "configure:5305: checking for $ac_hdr" >&5
+  if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+    echo $ac_n "(cached) $ac_c" 1>&6
+  else
+    cat > conftest.$ac_ext <<EOF
+! #line 5310 "configure"
+  #include "confdefs.h"
+  #include <$ac_hdr>
+  EOF
+  ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+! { (eval echo configure:5315: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+  ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+  if test -z "$ac_err"; then
+    rm -rf conftest*
+--- 5417,5433 ----
+  do
+  ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+  echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+! echo "configure:5421: checking for $ac_hdr" >&5
+  if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+    echo $ac_n "(cached) $ac_c" 1>&6
+  else
+    cat > conftest.$ac_ext <<EOF
+! #line 5426 "configure"
+  #include "confdefs.h"
+  #include <$ac_hdr>
+  EOF
+  ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+! { (eval echo configure:5431: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+  ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+  if test -z "$ac_err"; then
+    rm -rf conftest*
+***************
+*** 5338,5349 ****
+  done
+  
+  
+  echo $ac_n "checking if strings.h can be included after string.h""... $ac_c" 1>&6
+! echo "configure:5343: checking if strings.h can be included after string.h" >&5
+  cppflags_save=$CPPFLAGS
+  CPPFLAGS="$CPPFLAGS $X_CFLAGS"
+  cat > conftest.$ac_ext <<EOF
+! #line 5347 "configure"
+  #include "confdefs.h"
+  
+  #if defined(_AIX) && !defined(_AIX51) && !defined(_NO_PROTO)
+--- 5454,5508 ----
+  done
+  
+  
++ if test "x$MACOSX" != "xyes"; then
++   for ac_hdr in strings.h
++ do
++ ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
++ echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
++ echo "configure:5463: checking for $ac_hdr" >&5
++ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
++   echo $ac_n "(cached) $ac_c" 1>&6
++ else
++   cat > conftest.$ac_ext <<EOF
++ #line 5468 "configure"
++ #include "confdefs.h"
++ #include <$ac_hdr>
++ EOF
++ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
++ { (eval echo configure:5473: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
++ if test -z "$ac_err"; then
++   rm -rf conftest*
++   eval "ac_cv_header_$ac_safe=yes"
++ else
++   echo "$ac_err" >&5
++   echo "configure: failed program was:" >&5
++   cat conftest.$ac_ext >&5
++   rm -rf conftest*
++   eval "ac_cv_header_$ac_safe=no"
++ fi
++ rm -f conftest*
++ fi
++ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
++   echo "$ac_t""yes" 1>&6
++     ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
++   cat >> confdefs.h <<EOF
++ #define $ac_tr_hdr 1
++ EOF
++  
++ else
++   echo "$ac_t""no" 1>&6
++ fi
++ done
++ 
++ fi
++ 
+  echo $ac_n "checking if strings.h can be included after string.h""... $ac_c" 1>&6
+! echo "configure:5502: checking if strings.h can be included after string.h" >&5
+  cppflags_save=$CPPFLAGS
+  CPPFLAGS="$CPPFLAGS $X_CFLAGS"
+  cat > conftest.$ac_ext <<EOF
+! #line 5506 "configure"
+  #include "confdefs.h"
+  
+  #if defined(_AIX) && !defined(_AIX51) && !defined(_NO_PROTO)
+*** ../vim-6.2.117/src/configure.in    Sat Sep 27 19:20:53 2003
+--- src/configure.in   Sun Oct 12 22:41:30 2003
+***************
+*** 75,80 ****
+--- 75,105 ----
+      *)               QNX=no; AC_MSG_RESULT(no);;
+  esac
+  
++ dnl Check for Darwin and MacOS X
++ dnl We do a check for MacOS X in the very beginning because there
++ dnl are a lot of other things we need to change besides GUI stuff
++ DEFAULT_VIMNAME=vim
++ AC_MSG_CHECKING([for Darwin (Mac OS X)])
++ if test "`(uname) 2>/dev/null`" = Darwin; then
++   AC_MSG_RESULT(yes)
++   MACOSX=yes
++   OS_EXTRA_SCR="os_macosx.c"; 
++   OS_EXTRA_OBJ="objects/os_macosx.o"
++   CFLAGS="$CFLAGS -DMACOS_X_UNIX"
++ 
++   dnl If Carbon is found, assume we don't want X11
++   dnl unless it was specifically asked for (--with-x)
++   AC_CHECK_HEADER(Carbon/Carbon.h, CARBON=yes)         
++   if test "x$CARBON" = "xyes"; then
++     if test -z "$with_x"; then
++       with_x=no
++       DEFAULT_VIMNAME=Vim
++     fi
++   fi
++ else
++   AC_MSG_RESULT(no)
++ fi
++ 
+  AC_SUBST(OS_EXTRA_SRC)
+  AC_SUBST(OS_EXTRA_OBJ)
+  
+***************
+*** 106,112 ****
+  AC_MSG_CHECKING(--with-vim-name argument)
+  AC_ARG_WITH(vim-name, [  --with-vim-name=NAME    what to call the Vim executable],
+       VIMNAME="$withval"; AC_MSG_RESULT($VIMNAME),
+!      VIMNAME="vim"; AC_MSG_RESULT(Defaulting to vim))
+  AC_SUBST(VIMNAME)
+  AC_MSG_CHECKING(--with-ex-name argument)
+  AC_ARG_WITH(ex-name, [  --with-ex-name=NAME     what to call the Ex executable],
+--- 131,137 ----
+  AC_MSG_CHECKING(--with-vim-name argument)
+  AC_ARG_WITH(vim-name, [  --with-vim-name=NAME    what to call the Vim executable],
+       VIMNAME="$withval"; AC_MSG_RESULT($VIMNAME),
+!      VIMNAME="$DEFAULT_VIMNAME"; AC_MSG_RESULT(Defaulting to $VIMNAME))
+  AC_SUBST(VIMNAME)
+  AC_MSG_CHECKING(--with-ex-name argument)
+  AC_ARG_WITH(ex-name, [  --with-ex-name=NAME     what to call the Ex executable],
+***************
+*** 295,300 ****
+--- 320,347 ----
+        AC_MSG_RESULT(>>> too old; need Perl version 5.003_01 or later <<<)
+      fi
+    fi
++ 
++   if test "x$MACOSX" == "xyes"; then 
++     dnl Mac OS X 10.2 or 10.3
++     dir=/System/Library/Perl
++     darwindir=$dir/darwin
++     if test -d $darwindir; then 
++       PERL=/usr/bin/perl
++     else
++       dnl Mac OS X 10.3
++       dir=/System/Library/Perl/5.8.1
++       darwindir=$dir/darwin-thread-multi-2level
++       if test -d $darwindir; then 
++      PERL=/usr/bin/perl
++       fi
++     fi
++     if test -n "$PERL"; then
++       PERL_DIR=$dir
++       PERL_CFLAGS=-DFEAT_PERL -I$darwindir/CORE
++       PERL_OBJ=if_perl.o if_perlsfio.o $darwindir/auto/DynaLoader/DynaLoader.a
++       PERL_LIBS=-lperl -L$darwindir/CORE
++     fi
++   fi
+  fi
+  AC_SUBST(shrpenv)
+  AC_SUBST(PERL_SRC)
+***************
+*** 715,721 ****
+  dnl defining FEAT_XFONTSET is delayed, so that it can be disabled for no GUI
+  
+  test -z "$with_x" && with_x=yes
+! test "${enable_gui-yes}" != no -a "x$QNX" != "xyes" && with_x=yes
+  if test "$with_x" = no; then
+    AC_MSG_RESULT(defaulting to: don't HAVE_X11)
+  else
+--- 762,768 ----
+  dnl defining FEAT_XFONTSET is delayed, so that it can be disabled for no GUI
+  
+  test -z "$with_x" && with_x=yes
+! test "${enable_gui-yes}" != no -a "x$MACOSX" != "xyes" -a "x$QNX" != "xyes" && with_x=yes
+  if test "$with_x" = no; then
+    AC_MSG_RESULT(defaulting to: don't HAVE_X11)
+  else
+***************
+*** 815,903 ****
+    fi
+  fi
+  
+! test "x$with_x" = xno -a "x$BEOS" != "xyes" -a "x$QNX" != "xyes" && enable_gui=no
+  
+  AC_MSG_CHECKING(--enable-gui argument)
+  AC_ARG_ENABLE(gui,
+!  [  --enable-gui[=OPTS]     X11 GUI [default=auto] [OPTS=auto/no/gtk/gtk2/gnome/gnome2/motif/athena/neXtaw/beos/photon]], , enable_gui="auto")
+  
+! ## Canonicalize the --enable-gui= argument so that it can be easily compared.
+! ## Do not use character classes for portability with old tools.
+  enable_gui_canon=`echo "_$enable_gui" | \
+       sed 's/[[ _+-]]//g;y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
+  
+! if test "x$BEOS" = "xyes"; then
+  
+!   SKIP_GTK=YES
+!   SKIP_GTK2=YES
+!   SKIP_GNOME=YES
+!   SKIP_MOTIF=YES
+!   SKIP_ATHENA=YES
+!   SKIP_NEXTAW=YES
+!   SKIP_PHOTON=YES
+    SKIP_BEOS=
+-   GUITYPE=NONE
+- 
+    case "$enable_gui_canon" in
+      no)              AC_MSG_RESULT(no GUI support)
+               SKIP_BEOS=YES ;;
+      yes|"")  AC_MSG_RESULT(yes - automatic GUI support) ;;
+      auto)    AC_MSG_RESULT(auto - automatic GUI support) ;;
+      beos)    AC_MSG_RESULT(BeOS GUI support) ;;
+!     *)               AC_MSG_RESULT([Sorry, $enable_gui GUI is not supported]) ;;
+    esac
+  
+  elif test "x$QNX" = "xyes" -a "x$with_x" = "xno" ; then
+-   SKIP_GTK=YES
+-   SKIP_GTK2=YES
+-   SKIP_GNOME=YES
+-   SKIP_MOTIF=YES
+-   SKIP_ATHENA=YES
+-   SKIP_NEXTAW=YES
+-   SKIP_BEOS=YES
+    SKIP_PHOTON=
+-   GUITYPE=NONE
+- 
+    case "$enable_gui_canon" in
+      no)              AC_MSG_RESULT(no GUI support)
+               SKIP_PHOTON=YES ;;
+      yes|"")  AC_MSG_RESULT(yes - automatic GUI support) ;;
+      auto)    AC_MSG_RESULT(auto - automatic GUI support) ;;
+      photon)  AC_MSG_RESULT(Photon GUI support) ;;
+!     *)               AC_MSG_RESULT([Sorry, $enable_gui GUI is not supported]) ;;
+    esac
+  
+  else
+  
+-   SKIP_GTK=
+-   SKIP_GTK2=
+-   SKIP_GNOME=
+-   SKIP_MOTIF=
+-   SKIP_ATHENA=
+-   SKIP_NEXTAW=
+-   SKIP_BEOS=YES
+-   SKIP_PHOTON=YES
+-   GUITYPE=NONE
+  
+    case "$enable_gui_canon" in
+!     no|none) AC_MSG_RESULT(no GUI support)
+!              SKIP_GTK=YES; SKIP_GTK2=YES; SKIP_GNOME=YES; SKIP_MOTIF=YES; SKIP_ATHENA=YES; SKIP_NEXTAW=YES ;;
+!     yes|"")  AC_MSG_RESULT(yes - automatic GUI support) ;;
+!     auto)    AC_MSG_RESULT(auto - automatic GUI support) ;;
+      gtk)     AC_MSG_RESULT(GTK+ 1.x GUI support)
+!              SKIP_GTK2=YES; SKIP_GNOME=YES; SKIP_MOTIF=YES; SKIP_ATHENA=YES; SKIP_NEXTAW=YES ;;
+      gtk2)    AC_MSG_RESULT(GTK+ 2.x GUI support)
+!              SKIP_GNOME=YES; SKIP_MOTIF=YES; SKIP_ATHENA=YES; SKIP_NEXTAW=YES ;;
+      gnome)   AC_MSG_RESULT(GNOME 1.x GUI support)
+!              SKIP_GTK2=YES; SKIP_MOTIF=YES; SKIP_ATHENA=YES; SKIP_NEXTAW=YES ;;
+      gnome2)  AC_MSG_RESULT(GNOME 2.x GUI support)
+!              SKIP_MOTIF=YES; SKIP_ATHENA=YES; SKIP_NEXTAW=YES ;;
+      motif)   AC_MSG_RESULT(Motif GUI support)
+!              SKIP_GTK=YES; SKIP_GNOME=YES; SKIP_ATHENA=YES; SKIP_NEXTAW=YES ;;
+      athena)  AC_MSG_RESULT(Athena GUI support)
+!              SKIP_GTK=YES; SKIP_GNOME=YES; SKIP_MOTIF=YES; SKIP_NEXTAW=YES ;;
+      nextaw)  AC_MSG_RESULT(neXtaw GUI support)
+!              SKIP_GTK=YES; SKIP_GNOME=YES; SKIP_MOTIF=YES; SKIP_ATHENA=YES ;;
+      *)               AC_MSG_RESULT([Sorry, $enable_gui GUI is not supported]) ;;
+    esac
+  
+--- 862,957 ----
+    fi
+  fi
+  
+! test "x$with_x" = xno -a "x$BEOS" != "xyes" -a "x$MACOSX" != "xyes" -a "x$QNX" != "xyes" && enable_gui=no
+  
+  AC_MSG_CHECKING(--enable-gui argument)
+  AC_ARG_ENABLE(gui,
+!  [  --enable-gui[=OPTS]     X11 GUI [default=auto] [OPTS=auto/no/gtk/gtk2/gnome/gnome2/motif/athena/neXtaw/beos/photon/carbon]], , enable_gui="auto")
+  
+! dnl Canonicalize the --enable-gui= argument so that it can be easily compared.
+! dnl Do not use character classes for portability with old tools.
+  enable_gui_canon=`echo "_$enable_gui" | \
+       sed 's/[[ _+-]]//g;y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
+  
+! dnl Skip everything by default.
+! SKIP_GTK=YES
+! SKIP_GTK2=YES
+! SKIP_GNOME=YES
+! SKIP_MOTIF=YES
+! SKIP_ATHENA=YES
+! SKIP_NEXTAW=YES
+! SKIP_PHOTON=YES
+! SKIP_BEOS=YES
+! SKIP_CARBON=YES
+! GUITYPE=NONE
+  
+! if test "x$BEOS" = "xyes"; then
+    SKIP_BEOS=
+    case "$enable_gui_canon" in
+      no)              AC_MSG_RESULT(no GUI support)
+               SKIP_BEOS=YES ;;
+      yes|"")  AC_MSG_RESULT(yes - automatic GUI support) ;;
+      auto)    AC_MSG_RESULT(auto - automatic GUI support) ;;
+      beos)    AC_MSG_RESULT(BeOS GUI support) ;;
+!     *)               AC_MSG_RESULT([Sorry, $enable_gui GUI is not supported])
+!              SKIP_BEOS=YES ;;
+    esac
+  
+  elif test "x$QNX" = "xyes" -a "x$with_x" = "xno" ; then
+    SKIP_PHOTON=
+    case "$enable_gui_canon" in
+      no)              AC_MSG_RESULT(no GUI support)
+               SKIP_PHOTON=YES ;;
+      yes|"")  AC_MSG_RESULT(yes - automatic GUI support) ;;
+      auto)    AC_MSG_RESULT(auto - automatic GUI support) ;;
+      photon)  AC_MSG_RESULT(Photon GUI support) ;;
+!     *)               AC_MSG_RESULT([Sorry, $enable_gui GUI is not supported])
+!              SKIP_PHOTON=YES ;;
+!   esac
+! 
+! elif test "x$MACOSX" = "xyes" -a "x$with_x" = "xno" ; then
+!   SKIP_CARBON=
+!   case "$enable_gui_canon" in
+!     no)              AC_MSG_RESULT(no GUI support)
+!              SKIP_CARBON=YES ;;
+!     yes|"")  AC_MSG_RESULT(yes - automatic GUI support) ;;
+!     auto)    AC_MSG_RESULT(auto - automatic GUI support) ;;
+!     carbon)  AC_MSG_RESULT(Carbon GUI support) ;;
+!     *)               AC_MSG_RESULT([Sorry, $enable_gui GUI is not supported])
+!              SKIP_CARBON=YES ;;
+    esac
+  
+  else
+  
+  
+    case "$enable_gui_canon" in
+!     no|none) AC_MSG_RESULT(no GUI support) ;;
+!     yes|""|auto)     AC_MSG_RESULT(yes/auto - automatic GUI support)
+!              SKIP_GTK=
+!              SKIP_GTK2=
+!              SKIP_GNOME=
+!              SKIP_MOTIF=
+!              SKIP_ATHENA=
+!              SKIP_NEXTAW=
+!              SKIP_CARBON=;;
+      gtk)     AC_MSG_RESULT(GTK+ 1.x GUI support)
+!              SKIP_GTK=;;
+      gtk2)    AC_MSG_RESULT(GTK+ 2.x GUI support)
+!              SKIP_GTK=
+!              SKIP_GTK2=;;
+      gnome)   AC_MSG_RESULT(GNOME 1.x GUI support)
+!              SKIP_GNOME=
+!              SKIP_GTK=;;
+      gnome2)  AC_MSG_RESULT(GNOME 2.x GUI support)
+!              SKIP_GNOME=
+!              SKIP_GTK=
+!              SKIP_GTK2=;;
+      motif)   AC_MSG_RESULT(Motif GUI support)
+!              SKIP_MOTIF=;;
+      athena)  AC_MSG_RESULT(Athena GUI support)
+!              SKIP_ATHENA=;;
+      nextaw)  AC_MSG_RESULT(neXtaw GUI support)
+!              SKIP_NEXTAW=;;
+      *)               AC_MSG_RESULT([Sorry, $enable_gui GUI is not supported]) ;;
+    esac
+  
+***************
+*** 972,977 ****
+--- 1026,1059 ----
+    fi
+  fi
+  
++ if test "x$SKIP_CARBON" != "xYES" -a "$enable_gui_canon" != "carbon"; then
++   AC_MSG_CHECKING(whether or not to look for Carbon)
++   AC_ARG_ENABLE(carbon-check,
++      [  --enable-carbon-check   If auto-select GUI, check for Carbon [default=yes]],
++      , enable_carbon_check="yes")
++   AC_MSG_RESULT($enable_carbon_check);
++   if test "x$enable_carbon_check" = "xno"; then
++     SKIP_CARBON=YES
++   fi
++ fi
++ 
++ if test "x$MACOSX" = "xyes" -a -z "$SKIP_CARBON" -a "x$CARBON" = "xyes"; then
++   AC_MSG_CHECKING(for Carbon GUI)
++   dnl already did this
++   AC_MSG_RESULT(yes);
++   GUITYPE=CARBONGUI
++   dnl skip everything else
++   SKIP_GTK=YES;
++   SKIP_GTK2=YES;
++   SKIP_GNOME=YES;
++   SKIP_MOTIF=YES;
++   SKIP_ATHENA=YES;
++   SKIP_NEXTAW=YES;
++   SKIP_PHOTON=YES;
++   SKIP_BEOS=YES;
++   SKIP_CARBON=YES
++ fi
++ 
+  
+  dnl
+  dnl Get the cflags and libraries from the gtk-config script
+***************
+*** 1567,1572 ****
+--- 1649,1660 ----
+    AC_DEFINE(FEAT_XFONTSET)
+  fi
+  
++ 
++ dnl ---------------------------------------------------------------------------
++ dnl end of GUI-checking 
++ dnl ---------------------------------------------------------------------------
++ 
++ 
+  dnl Only really enable hangul input when GUI and XFONTSET are available
+  if test "$enable_hangulinput" = "yes"; then
+    if test "x$GUITYPE" = "xNONE"; then
+***************
+*** 1622,1633 ****
+  
+  AC_CHECK_HEADERS(stdarg.h stdlib.h string.h sys/select.h sys/utsname.h \
+       termcap.h fcntl.h sgtty.h sys/ioctl.h sys/time.h termio.h \
+!      iconv.h langinfo.h unistd.h stropts.h errno.h strings.h \
+       sys/resource.h sys/systeminfo.h locale.h \
+       sys/stream.h sys/ptem.h termios.h libc.h sys/statfs.h \
+       poll.h sys/poll.h pwd.h utime.h sys/param.h libintl.h \
+       libgen.h util/debug.h util/msg18n.h frame.h \
+       sys/acl.h sys/access.h sys/sysctl.h sys/sysinfo.h)
+  
+  dnl Check if strings.h and string.h can both be included when defined.
+  AC_MSG_CHECKING([if strings.h can be included after string.h])
+--- 1710,1726 ----
+  
+  AC_CHECK_HEADERS(stdarg.h stdlib.h string.h sys/select.h sys/utsname.h \
+       termcap.h fcntl.h sgtty.h sys/ioctl.h sys/time.h termio.h \
+!      iconv.h langinfo.h unistd.h stropts.h errno.h \
+       sys/resource.h sys/systeminfo.h locale.h \
+       sys/stream.h sys/ptem.h termios.h libc.h sys/statfs.h \
+       poll.h sys/poll.h pwd.h utime.h sys/param.h libintl.h \
+       libgen.h util/debug.h util/msg18n.h frame.h \
+       sys/acl.h sys/access.h sys/sysctl.h sys/sysinfo.h)
++ 
++ dnl On Mac OS X strings.h exists but produces a warning message :-(
++ if test "x$MACOSX" != "xyes"; then
++   AC_CHECK_HEADERS(strings.h)
++ fi
+  
+  dnl Check if strings.h and string.h can both be included when defined.
+  AC_MSG_CHECKING([if strings.h can be included after string.h])
+*** ../vim-6.2.117/src/config.mk.in    Sun Apr 20 16:10:18 2003
+--- src/config.mk.in   Sun Sep  7 20:25:02 2003
+***************
+*** 116,121 ****
+--- 116,122 ----
+  GUI_LIBS_DIR = $(@GUITYPE@_LIBS_DIR)
+  GUI_LIBS1    = $(@GUITYPE@_LIBS1)
+  GUI_LIBS2    = $(@GUITYPE@_LIBS2)
++ GUI_INSTALL  = $(@GUITYPE@_INSTALL)
+  GUI_TARGETS  = $(@GUITYPE@_TARGETS)
+  GUI_MAN_TARGETS      = $(@GUITYPE@_MAN_TARGETS)
+  GUI_TESTTARGET       = $(@GUITYPE@_TESTTARGET)
+*** ../vim-6.2.117/src/gui_mac.c       Sat Jul 26 21:25:27 2003
+--- src/gui_mac.c      Sun Oct 12 21:59:11 2003
+***************
+*** 206,212 ****
+  #endif
+  
+  /* Colors Macros */
+! #define RGB(r,g,b)   (r << 16) + (g << 8) + b
+  #define Red(c)               ((c & 0x00FF0000) >> 16)
+  #define Green(c)     ((c & 0x0000FF00) >>  8)
+  #define Blue(c)              ((c & 0x000000FF) >>  0)
+--- 206,212 ----
+  #endif
+  
+  /* Colors Macros */
+! #define RGB(r,g,b)   ((r) << 16) + ((g) << 8) + (b)
+  #define Red(c)               ((c & 0x00FF0000) >> 16)
+  #define Green(c)     ((c & 0x0000FF00) >>  8)
+  #define Blue(c)              ((c & 0x000000FF) >>  0)
+***************
+*** 613,622 ****
+      }
+  
+      for (buf = firstbuf; buf != NULL; buf = buf->b_next)
+!      if (buf->b_ml.ml_mfp != NULL)
+!          if (SearchData.theFile.parID == buf->b_FSSpec.parID)
+!            if (SearchData.theFile.name[0] = buf->b_FSSpec.name[0])
+!              if (STRNCMP(SearchData.theFile.name, buf->b_FSSpec.name, buf->b_FSSpec.name[0]+1))
+           {
+               foundFile = true;
+               break;
+--- 613,622 ----
+      }
+  
+      for (buf = firstbuf; buf != NULL; buf = buf->b_next)
+!      if (buf->b_ml.ml_mfp != NULL
+!              && SearchData.theFile.parID == buf->b_FSSpec.parID
+!              && SearchData.theFile.name[0] == buf->b_FSSpec.name[0]
+!              && STRNCMP(SearchData.theFile.name, buf->b_FSSpec.name, buf->b_FSSpec.name[0] + 1) == 0)
+           {
+               foundFile = true;
+               break;
+***************
+*** 822,828 ****
+      CW_GetText       GetTextData;
+      Size     actualSize;
+      char_u   *line;
+!     char_u   *fullbuffer;
+      long     linesize;
+      long     lineStart;
+      long     BufferSize;
+--- 822,828 ----
+      CW_GetText       GetTextData;
+      Size     actualSize;
+      char_u   *line;
+!     char_u   *fullbuffer = NULL;
+      long     linesize;
+      long     lineStart;
+      long     BufferSize;
+***************
+*** 875,883 ****
+               HUnlock (GetTextData.theText);
+           }
+       }
+!      HLock (GetTextData.theText);
+!      fullbuffer[BufferSize-1] = 0;
+!      HUnlock (GetTextData.theText);
+       if (foundFile == false)
+           *GetTextData.theDate = fnfErr;
+       else
+--- 875,886 ----
+               HUnlock (GetTextData.theText);
+           }
+       }
+!      if (fullbuffer != NULL)
+!      {
+!          HLock (GetTextData.theText);
+!          fullbuffer[BufferSize-1] = 0;
+!          HUnlock (GetTextData.theText);
+!      }
+       if (foundFile == false)
+           *GetTextData.theDate = fnfErr;
+       else
+***************
+*** 3160,3166 ****
+       if (STRICMP (name, "hilite") == 0)
+       {
+           LMGetHiliteRGB (&MacColor);
+!          return (RGB (MacColor.red >> 8, MacColor.green >> 8, MacColor.blue >>8));
+       }
+       /* Check if the name is one of the colors we know */
+       for (i = 0; i < sizeof(table) / sizeof(table[0]); i++)
+--- 3163,3169 ----
+       if (STRICMP (name, "hilite") == 0)
+       {
+           LMGetHiliteRGB (&MacColor);
+!          return (RGB (MacColor.red >> 8, MacColor.green >> 8, MacColor.blue >> 8));
+       }
+       /* Check if the name is one of the colors we know */
+       for (i = 0; i < sizeof(table) / sizeof(table[0]); i++)
+***************
+*** 3214,3220 ****
+           if (STRICMP(color, name) == 0)
+           {
+               fclose(fd);
+!              return (guicolor_T) RGB(r,g,b);
+           }
+       }
+       fclose(fd);
+--- 3217,3223 ----
+           if (STRICMP(color, name) == 0)
+           {
+               fclose(fd);
+!              return (guicolor_T) RGB(r, g, b);
+           }
+       }
+       fclose(fd);
+***************
+*** 5086,5091 ****
+--- 5089,5095 ----
+      status = ContextualMenuSelect(CntxMenu, where, false, kCMHelpItemNoHelp, HelpName, NULL, &CntxType, &CntxMenuID, &CntxMenuItem);
+  
+      if (status == noErr)
++     {
+       if (CntxType == kCMMenuItemSelected)
+       {
+           /* Handle the menu CntxMenuID, CntxMenuItem */
+***************
+*** 5097,5102 ****
+--- 5101,5107 ----
+       {
+           /* Should come up with the help */
+       }
++     }
+  
+      /* Restore original Port */
+      SetPort (savePort); /*OSX*/
+*** ../vim-6.2.117/src/os_mac.h        Mon Jul 28 14:38:38 2003
+--- src/os_mac.h       Sun Oct 12 21:14:34 2003
+***************
+*** 147,165 ****
+  #endif
+  #define HAVE_AVAIL_MEM
+  
+  /* #define SYNC_DUP_CLOSE       sync() a file with dup() and close() */
+! #define HAVE_STRING_H
+! #define HAVE_STRCSPN
+! #define HAVE_MEMSET
+! #define USE_TMPNAM           /* use tmpnam() instead of mktemp() */
+! #define HAVE_FCNTL_H
+! #define HAVE_QSORT
+! #define HAVE_ST_MODE         /* have stat.st_mode */
+  
+! #if defined(__DATE__) && defined(__TIME__)
+! # define HAVE_DATE_TIME
+  #endif
+- #define HAVE_STRFTIME
+  
+  
+  /*
+--- 147,167 ----
+  #endif
+  #define HAVE_AVAIL_MEM
+  
++ #ifndef HAVE_CONFIG_H
+  /* #define SYNC_DUP_CLOSE       sync() a file with dup() and close() */
+! # define HAVE_STRING_H
+! # define HAVE_STRCSPN
+! # define HAVE_MEMSET
+! # define USE_TMPNAM          /* use tmpnam() instead of mktemp() */
+! # define HAVE_FCNTL_H
+! # define HAVE_QSORT
+! # define HAVE_ST_MODE                /* have stat.st_mode */
+  
+! # if defined(__DATE__) && defined(__TIME__)
+! #  define HAVE_DATE_TIME
+! # endif
+! # define HAVE_STRFTIME
+  #endif
+  
+  
+  /*
+***************
+*** 333,358 ****
+  /**************/
+  #define mch_rename(src, dst) rename(src, dst)
+  #define mch_remove(x) unlink((char *)(x))
+! #if defined(__MRC__) || defined(__SC__)
+! # define mch_getenv(name)  ((char_u *)getenv((char *)(name)))
+! # define mch_setenv(name, val, x) setenv((name), (val))
+! #elif defined(__APPLE_CC__)
+! # define mch_getenv(name)  ((char_u *)getenv((char *)(name)))
+  /*# define mch_setenv(name, val, x) setenv((name), (val)) */ /* Obsoleted by Dany on Oct 30, 2001 */
+! # define mch_setenv(name, val, x) setenv(name, val, x)
+! #else
+!  /* vim_getenv() is in pty.c */
+! # define USE_VIMPTY_GETENV
+! # define mch_getenv(x) vimpty_getenv(x)
+! # define mch_setenv(name, val, x) setenv(name, val, x)
+  #endif
+  
+! #ifdef __APPLE_CC__
+  /* Assuming compiling for MacOS X */
+  /* Trying to take advantage of the prebinding */
+! # define HAVE_TGETENT
+! # define OSPEED_EXTERN
+! # define UP_BC_PC_EXTERN
+  #endif
+  
+  /* Some "prep work" definition to be able to compile the MacOS X
+--- 335,364 ----
+  /**************/
+  #define mch_rename(src, dst) rename(src, dst)
+  #define mch_remove(x) unlink((char *)(x))
+! #ifndef mch_getenv
+! # if defined(__MRC__) || defined(__SC__)
+! #  define mch_getenv(name)  ((char_u *)getenv((char *)(name)))
+! #  define mch_setenv(name, val, x) setenv((name), (val))
+! # elif defined(__APPLE_CC__)
+! #  define mch_getenv(name)  ((char_u *)getenv((char *)(name)))
+  /*# define mch_setenv(name, val, x) setenv((name), (val)) */ /* Obsoleted by Dany on Oct 30, 2001 */
+! #  define mch_setenv(name, val, x) setenv(name, val, x)
+! # else
+!   /* vim_getenv() is in pty.c */
+! #  define USE_VIMPTY_GETENV
+! #  define mch_getenv(x) vimpty_getenv(x)
+! #  define mch_setenv(name, val, x) setenv(name, val, x)
+! # endif
+  #endif
+  
+! #ifndef HAVE_CONFIG_H
+! # ifdef __APPLE_CC__
+  /* Assuming compiling for MacOS X */
+  /* Trying to take advantage of the prebinding */
+! #  define HAVE_TGETENT
+! #  define OSPEED_EXTERN
+! #  define UP_BC_PC_EXTERN
+! # endif
+  #endif
+  
+  /* Some "prep work" definition to be able to compile the MacOS X
+***************
+*** 361,385 ****
+   */
+  
+  #ifdef MACOS_X_UNIX
+- # define RETSIGTYPE void
+- # define SIGRETURN  return
+  # define SIGPROTOARG (int)
+  # define SIGDEFARG(s)        (s) int s;
+  # define SIGDUMMYARG 0
+- /*# define USE_SYSTEM */  /* Output ship do debugger :(, but ot compile */
+- # define HAVE_SYS_WAIT_H 1 /* Attempt */
+- # define HAVE_TERMIOS_H 1
+- # define SYS_SELECT_WITH_SYS_TIME 1
+- # define HAVE_SELECT 1
+- # define HAVE_SYS_SELECT_H 1
+  # undef  HAVE_AVAIL_MEM
+! # define HAVE_PUTENV
+! # define HAVE_SETENV
+! # define HAVE_RENAME
+  # define mch_chdir(s) chdir(s)
+  #endif
+  
+! #ifdef MACOS_X
+  # define HAVE_PUTENV
+  #endif
+  
+--- 367,393 ----
+   */
+  
+  #ifdef MACOS_X_UNIX
+  # define SIGPROTOARG (int)
+  # define SIGDEFARG(s)        (s) int s;
+  # define SIGDUMMYARG 0
+  # undef  HAVE_AVAIL_MEM
+! # ifndef HAVE_CONFIG_H
+! #  define RETSIGTYPE void
+! #  define SIGRETURN  return
+! /*# define USE_SYSTEM */  /* Output ship do debugger :(, but ot compile */
+! #  define HAVE_SYS_WAIT_H 1 /* Attempt */
+! #  define HAVE_TERMIOS_H 1
+! #  define SYS_SELECT_WITH_SYS_TIME 1
+! #  define HAVE_SELECT 1
+! #  define HAVE_SYS_SELECT_H 1
+! #  define HAVE_PUTENV
+! #  define HAVE_SETENV
+! #  define HAVE_RENAME
+! # endif
+  # define mch_chdir(s) chdir(s)
+  #endif
+  
+! #if defined(MACOS_X) && !defined(HAVE_CONFIG_H)
+  # define HAVE_PUTENV
+  #endif
+  
+*** ../vim-6.2.117/src/os_macosx.c     Sun May 11 17:26:37 2003
+--- src/os_macosx.c    Sun Sep  7 21:45:56 2003
+***************
+*** 13,19 ****
+   */
+  
+  #ifdef MACOS_X_UNIX
+! # include "os_unix.c"
+  #else
+  # include "os_mac.c"
+  # include <TextEncodingConverter.h>
+--- 13,19 ----
+   */
+  
+  #ifdef MACOS_X_UNIX
+! # include "vim.h"
+  #else
+  # include "os_mac.c"
+  # include <TextEncodingConverter.h>
+*** ../vim-6.2.117/src/proto/gui_mac.pro       Sat Jul 26 21:25:27 2003
+--- src/proto/gui_mac.pro      Sun Sep  7 23:42:13 2003
+***************
+*** 135,138 ****
+--- 135,142 ----
+  void gui_mac_doMouseMovedEvent __ARGS((EventRecord *event));
+  void gui_mac_doMouseUpEvent __ARGS((EventRecord *theEvent));
+  
++ int C2PascalString (char_u *CString, Str255 *PascalString);
++ int GetFSSpecFromPath ( char_u *file, FSSpec *fileFSSpec);
++ char_u *FullPathFromFSSpec_save (FSSpec file);
++ 
+  /* vim: set ft=c : */
+*** ../vim-6.2.117/src/proto/os_mac.pro        Sun Sep 16 20:33:15 2001
+--- src/proto/os_mac.pro       Sun Sep  7 23:42:47 2003
+***************
+*** 45,55 ****
+  int mch_has_exp_wildcard __ARGS((char_u *p));
+  
+  void slash_n_colon_adjust __ARGS((char_u *buf));
+- char_u *FullPathFromFSSpec_save (FSSpec file);
+  int mch_copy_file(char_u *from, char_u *to);
+  
+- int C2PascalString (char_u *CString, Str255 *PascalString);
+- int GetFSSpecFromPath ( char_u *file, FSSpec *fileFSSpec);
+  int mch_has_resource_fork (char_u *file);
+  int mch_copy_file_attribute(char_u *from, char_u *to);
+  
+--- 45,52 ----
+*** ../vim-6.2.117/src/infplist.xml    Mon Oct 13 22:09:37 2003
+--- src/infplist.xml   Thu Aug 14 13:36:03 2003
+***************
+*** 0 ****
+--- 1,51 ----
++ <?xml version="1.0" encoding="UTF-8"?>
++ <!-- vim:set ts=2 sts=2 sw=2 tw=0: -->
++ <!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
++ <plist version="0.9">
++      <dict>
++ 
++              <key>CFBundleInfoDictionaryVersion</key>
++              <string>6.0</string>
++ 
++              <key>CFBundleExecutable</key>
++              <string>APP_EXE</string>
++              <key>CFBundleName</key>
++              <string>APP_NAME</string>
++              <key>CFBundlePackageType</key>
++              <string>APPL</string>
++              <key>CFBundleVersion</key>
++              <string>APP_VER</string>
++              <key>CFBundleShortVersionString</key>
++              <string>APP_VER</string>
++              <key>CFBundleSignature</key>
++              <string>VIM!</string>
++ 
++              <key>CFBundleDevelopmentRegion</key>
++              <string>English</string>
++              <key>CSResourcesFileMapped</key>
++              <true/>
++              <key>CFBundleIconFile</key>
++              <string>ICON_APP</string>
++ 
++              <key>CFBundleDocumentTypes</key>
++              <array>
++                      <dict>
++                              <key>CFBundleTypeExtensions</key>
++                              <array>
++                                      <string>*</string>
++                              </array>
++                              <key>CFBundleTypeIconFile</key>
++                              <string>doc-txt.icns</string>
++                              <key>CFBundleTypeName</key>
++                              <string>NSStringPboardType</string>
++                              <key>CFBundleTypeOSTypes</key>
++                              <array>
++                                      <string>****</string>
++                              </array>
++                              <key>CFBundleTypeRole</key>
++                              <string>Editor</string>
++                      </dict>
++              </array>
++ 
++      </dict>
++ </plist>
+*** ../vim-6.2.117/src/vim.h   Sun Oct 12 17:25:14 2003
+--- src/vim.h  Sun Oct 12 21:10:15 2003
+***************
+*** 63,70 ****
+  #  define MACOS_CLASSIC
+  #endif
+  #if defined(MACOS_X_UNIX)
+! #  define MACOS_X
+  #  define UNIX
+  #endif
+  #if defined(MACOS_X) || defined(MACOS_CLASSIC)
+  #  define MACOS
+--- 63,72 ----
+  #  define MACOS_CLASSIC
+  #endif
+  #if defined(MACOS_X_UNIX)
+! # define MACOS_X
+! # ifndef HAVE_CONFIG_H
+  #  define UNIX
++ # endif
+  #endif
+  #if defined(MACOS_X) || defined(MACOS_CLASSIC)
+  #  define MACOS
+***************
+*** 187,193 ****
+  # define __ARGS(x)  x
+  #endif
+  
+! #if (defined(UNIX) || defined(__EMX__) || defined(VMS)) && !defined(MACOS_X)
+  # include "os_unix.h"            /* bring lots of system header files */
+  #endif
+  
+--- 189,196 ----
+  # define __ARGS(x)  x
+  #endif
+  
+! #if (defined(UNIX) || defined(__EMX__) || defined(VMS)) \
+!      && (!defined(MACOS_X) || defined(HAVE_CONFIG_H))
+  # include "os_unix.h"            /* bring lots of system header files */
+  #endif
+  
+*** ../vim-6.2.117/src/version.c       Sun Oct 12 20:20:38 2003
+--- src/version.c      Mon Oct 13 22:08:37 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     118,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+197. Your desk collapses under the weight of your computer peripherals.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.119 b/6.2.119
new file mode 100644 (file)
index 0000000..8373dd1
--- /dev/null
+++ b/6.2.119
@@ -0,0 +1,238 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.119
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.119 (after 6.2.107)
+Problem:    When packing the MS-Windows archives a few files are missing.
+           (Guopeng Wen)
+Solution:   Add gui_beval.* to the list of generic source files.
+Files:     Makefile
+
+
+*** ../vim-6.2.118/Makefile    Sun Oct 12 16:42:14 2003
+--- Makefile   Mon Oct 13 11:29:54 2003
+***************
+*** 84,91 ****
+  #   src/vim16.def.
+  # - Correct included_patches[] in src/version.c.
+  # - Compile Vim with GTK, Perl, Python, TCL, Ruby, Cscope and "huge" features.
+! # - With these features: "make proto" (requires cproto; ignore warnings for
+! #   missing include files, fix problems for syntax errors).
+  # - With these features: "make depend" (works best with gcc).
+  # - "make lint" and check the output (ignore GTK warnings).
+  # - Enable the efence library in "src/Makefile" and run "make test".
+--- 84,91 ----
+  #   src/vim16.def.
+  # - Correct included_patches[] in src/version.c.
+  # - Compile Vim with GTK, Perl, Python, TCL, Ruby, Cscope and "huge" features.
+! # - With these features: "make proto" (requires cproto and Motif installed;
+! #   ignore warnings for missing include files, fix problems for syntax errors).
+  # - With these features: "make depend" (works best with gcc).
+  # - "make lint" and check the output (ignore GTK warnings).
+  # - Enable the efence library in "src/Makefile" and run "make test".
+***************
+*** 185,193 ****
+--- 185,196 ----
+  SRC_ALL =    \
+               main.aap \
+               src/README.txt \
++              src/arabic.c \
++              src/arabic.h \
+               src/ascii.h \
+               src/buffer.c \
+               src/charset.c \
++              src/diff.c \
+               src/digraph.c \
+               src/edit.c \
+               src/eval.c \
+***************
+*** 197,211 ****
+--- 200,222 ----
+               src/ex_docmd.c \
+               src/ex_eval.c \
+               src/ex_getln.c \
++              src/farsi.c \
++              src/farsi.h \
+               src/feature.h \
+               src/fileio.c \
++              src/fold.c \
+               src/getchar.c \
+               src/globals.h \
++              src/gui.c \
++              src/gui.h \
++              src/gui_beval.c \
++              src/gui_beval.h \
+               src/keymap.h \
+               src/macros.h \
+               src/main.aap \
+               src/main.c \
+               src/mark.c \
++              src/mbyte.c \
+               src/memfile.c \
+               src/memline.c \
+               src/menu.c \
+***************
+*** 237,244 ****
+--- 248,257 ----
+               src/proto/fold.pro \
+               src/proto/getchar.pro \
+               src/proto/gui.pro \
++              src/proto/gui_beval.pro \
+               src/proto/main.pro \
+               src/proto/mark.pro \
++              src/proto/mbyte.pro \
+               src/proto/memfile.pro \
+               src/proto/memline.pro \
+               src/proto/menu.pro \
+***************
+*** 246,252 ****
+               src/proto/misc1.pro \
+               src/proto/misc2.pro \
+               src/proto/move.pro \
+-              src/proto/mbyte.pro \
+               src/proto/netbeans.pro \
+               src/proto/normal.pro \
+               src/proto/ops.pro \
+--- 259,264 ----
+***************
+*** 275,282 ****
+               src/term.h \
+               src/termlib.c \
+               src/testdir/*.in \
+-              src/testdir/main.aap \
+               src/testdir/*.ok \
+               src/testdir/test49.vim \
+               src/ui.c \
+               src/undo.c \
+--- 287,294 ----
+               src/term.h \
+               src/termlib.c \
+               src/testdir/*.in \
+               src/testdir/*.ok \
++              src/testdir/main.aap \
+               src/testdir/test49.vim \
+               src/ui.c \
+               src/undo.c \
+***************
+*** 286,303 ****
+               src/window.c \
+               src/xxd/xxd.c \
+  
+- # more source files
+- SRC_MORE =   \
+-              src/diff.c \
+-              src/arabic.c \
+-              src/arabic.h \
+-              src/farsi.c \
+-              src/farsi.h \
+-              src/fold.c \
+-              src/gui.c \
+-              src/gui.h \
+-              src/mbyte.c \
+- 
+  # source files for Unix only
+  SRC_UNIX =   \
+               Makefile \
+--- 298,303 ----
+***************
+*** 319,326 ****
+               src/gui_at_sb.c \
+               src/gui_at_sb.h \
+               src/gui_athena.c \
+-              src/gui_beval.c \
+-              src/gui_beval.h \
+               src/gui_gtk.c \
+               src/gui_gtk_f.c \
+               src/gui_gtk_f.h \
+--- 319,324 ----
+***************
+*** 341,347 ****
+               src/osdef2.h.in \
+               src/pathdef.sh \
+               src/proto/gui_athena.pro \
+-              src/proto/gui_beval.pro \
+               src/proto/gui_gtk.pro \
+               src/proto/gui_gtk_x11.pro \
+               src/proto/gui_motif.pro \
+--- 339,344 ----
+***************
+*** 612,617 ****
+--- 609,615 ----
+               runtime/macros/matchit.txt \
+               runtime/macros/maze/README.txt \
+               runtime/macros/maze/[mM]akefile \
++              runtime/macros/maze/main.aap \
+               runtime/macros/maze/maze.c \
+               runtime/macros/maze/maze_5.78 \
+               runtime/macros/maze/maze_mac \
+***************
+*** 632,638 ****
+               runtime/indoff.vim \
+               runtime/termcap \
+               runtime/tools/README.txt \
+!              runtime/tools/[a-z]* \
+               runtime/tutor/README.txt \
+               runtime/tutor/tutor \
+               runtime/tutor/tutor.vim \
+--- 630,636 ----
+               runtime/indoff.vim \
+               runtime/termcap \
+               runtime/tools/README.txt \
+!              runtime/tools/[a-z]*[^~] \
+               runtime/tutor/README.txt \
+               runtime/tutor/tutor \
+               runtime/tutor/tutor.vim \
+***************
+*** 925,931 ****
+       mkdir dist/$(VIMRTDIR)
+       tar cf - \
+               $(SRC_ALL) \
+-              $(SRC_MORE) \
+               | (cd dist/$(VIMRTDIR); tar xf -)
+       cd dist && tar cf $(VIMVER)-src1.tar $(VIMRTDIR)
+       gzip -9 dist/$(VIMVER)-src1.tar
+--- 923,928 ----
+***************
+*** 1034,1040 ****
+       tar cf - \
+               $(ROOT_AMI) \
+               $(SRC_ALL) \
+-              $(SRC_MORE) \
+               $(SRC_AMI) \
+               $(SRC_AMI_DOS) \
+               | (cd dist/Vim/$(VIMRTDIR); tar xf -)
+--- 1031,1036 ----
+***************
+*** 1208,1214 ****
+       mkdir dist/vim/$(VIMRTDIR)
+       tar cf - \
+               $(SRC_ALL) \
+-              $(SRC_MORE) \
+               $(SRC_DOS) \
+               $(SRC_AMI_DOS) \
+               $(SRC_DOS_UNIX) \
+--- 1204,1209 ----
+*** ../vim-6.2.118/src/version.c       Mon Oct 13 22:21:06 2003
+--- src/version.c      Mon Oct 13 22:29:29 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     119,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+199. You read this entire list of symptoms, looking for something
+     that doesn't describe you.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.120 b/6.2.120
new file mode 100644 (file)
index 0000000..c86a56e
--- /dev/null
+++ b/6.2.120
@@ -0,0 +1,74 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.120
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.120
+Problem:    Win32 GUI: The console dialogs are not supported on MS-Windows,
+           disabling the 'c' flag of 'guioptions'. (Servatius Brandt)
+Solution:   Define FEAT_CON_DIALOG also for GUI-only builds.
+Files:     src/feature.h
+
+
+*** ../vim-6.2.119/src/feature.h       Sun Oct 12 16:42:14 2003
+--- src/feature.h      Mon Oct 13 20:13:07 2003
+***************
+*** 719,737 ****
+   *                   When none of these defined there is no dialog support.
+   */
+  #ifdef FEAT_NORMAL
+! # if defined(FEAT_GUI_MSWIN)
+! #  define FEAT_GUI_DIALOG
+! # else
+! #  if ((defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_MOTIF)) \
+               && defined(HAVE_X11_XPM_H)) \
+       || defined(FEAT_GUI_GTK) \
+       || defined(FEAT_GUI_PHOTON) \
+       || defined(FEAT_GUI_MAC)
+! #   define FEAT_CON_DIALOG
+! #   define FEAT_GUI_DIALOG
+! #  else
+! #   define FEAT_CON_DIALOG
+! #  endif
+  # endif
+  #endif
+  #if !defined(FEAT_GUI_DIALOG) && (defined(FEAT_GUI_MOTIF) \
+--- 719,734 ----
+   *                   When none of these defined there is no dialog support.
+   */
+  #ifdef FEAT_NORMAL
+! # if ((defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_MOTIF)) \
+               && defined(HAVE_X11_XPM_H)) \
+       || defined(FEAT_GUI_GTK) \
+       || defined(FEAT_GUI_PHOTON) \
++      || defined(FEAT_GUI_MSWIN) \
+       || defined(FEAT_GUI_MAC)
+! #  define FEAT_CON_DIALOG
+! #  define FEAT_GUI_DIALOG
+! # else
+! #  define FEAT_CON_DIALOG
+  # endif
+  #endif
+  #if !defined(FEAT_GUI_DIALOG) && (defined(FEAT_GUI_MOTIF) \
+*** ../vim-6.2.119/src/version.c       Mon Oct 13 22:30:33 2003
+--- src/version.c      Mon Oct 13 22:46:57 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     120,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+201. When somebody asks you where you are, you tell them in which chat room.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.121 b/6.2.121
new file mode 100644 (file)
index 0000000..6909ca2
--- /dev/null
+++ b/6.2.121
@@ -0,0 +1,53 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.121
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.121 (after 6.2.118)
+Problem:    Not all make programs support "+=". (Charles Campbell)
+Solution:   Use a normal assignment.
+Files:     src/Makefile
+
+
+*** ../vim-6.2.120/src/Makefile        Mon Oct 13 22:21:06 2003
+--- src/Makefile       Tue Oct 14 10:33:02 2003
+***************
+*** 2320,2327 ****
+  VERSION = 6.2
+  
+  ### Common flags
+! M4FLAGS += -DAPP_EXE=$(VIMNAME) -DAPP_NAME=$(VIMNAME) -DAPP_VER=$(VERSION) \
+!         -DICON_APP=$(ICON_APP)
+  
+  ### Icons
+  # You can download Douglas Stebila's icons:
+--- 2320,2327 ----
+  VERSION = 6.2
+  
+  ### Common flags
+! M4FLAGS = $(M4FLAGS) -DAPP_EXE=$(VIMNAME) -DAPP_NAME=$(VIMNAME) \
+!              -DAPP_VER=$(VERSION) -DICON_APP=$(ICON_APP)
+  
+  ### Icons
+  # You can download Douglas Stebila's icons:
+*** ../vim-6.2.120/src/version.c       Mon Oct 13 22:48:17 2003
+--- src/version.c      Tue Oct 14 10:34:56 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     121,
+  /**/
+
+-- 
+$ echo pizza > /dev/oven
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.122 b/6.2.122
new file mode 100644 (file)
index 0000000..d312f5f
--- /dev/null
+++ b/6.2.122
@@ -0,0 +1,132 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.122
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.122 (after 6.2.119)
+Problem:    Not all shells can expand [^~].  File missing.  (Guopeng Wen)
+Solution:   Use a simpler pattern.  Add the Aap recipe for the maze program
+           and a clean version of the source code.
+Files:     Makefile, runtime/macros/maze/Makefile,
+           runtime/macros/maze/README.txt, runtime/macros/maze/main.aap,
+           runtime/macros/maze/mazeclean.c
+
+
+*** ../vim-6.2.121/Makefile    Mon Oct 13 22:30:33 2003
+--- Makefile   Fri Oct 17 11:53:21 2003
+***************
+*** 614,619 ****
+--- 614,620 ----
+               runtime/macros/maze/maze_5.78 \
+               runtime/macros/maze/maze_mac \
+               runtime/macros/maze/mazeansi.c \
++              runtime/macros/maze/mazeclean.c \
+               runtime/macros/maze/poster \
+               runtime/macros/shellmenu.vim \
+               runtime/macros/swapmous.vim \
+***************
+*** 630,636 ****
+               runtime/indoff.vim \
+               runtime/termcap \
+               runtime/tools/README.txt \
+!              runtime/tools/[a-z]*[^~] \
+               runtime/tutor/README.txt \
+               runtime/tutor/tutor \
+               runtime/tutor/tutor.vim \
+--- 631,637 ----
+               runtime/indoff.vim \
+               runtime/termcap \
+               runtime/tools/README.txt \
+!              runtime/tools/[a-z]*[a-z0-9] \
+               runtime/tutor/README.txt \
+               runtime/tutor/tutor \
+               runtime/tutor/tutor.vim \
+*** ../vim-6.2.121/runtime/macros/maze/Makefile        Mon Jan 17 15:30:12 2000
+--- runtime/macros/maze/Makefile       Sun Oct 12 12:25:01 2003
+***************
+*** 1,6 ****
+  # It's simple...
+- # NOTE: The maze program doesn't work on x86 systems, might be a byte order
+- # problem.
+  
+  maze: mazeansi.c
+       cc -o maze mazeansi.c
+--- 1,7 ----
+  # It's simple...
+  
+  maze: mazeansi.c
+       cc -o maze mazeansi.c
++ 
++ mazeclean: mazeclean.c
++      cc -o mazeclean mazeclean.c
+*** ../vim-6.2.121/runtime/macros/maze/README.txt      Sun May  4 23:09:37 2003
+--- runtime/macros/maze/README.txt     Sun Oct 12 12:24:33 2003
+***************
+*** 5,11 ****
+  
+  The "-u maze.mac" loads the maze macros and skips loading your .vimrc, which
+  may contain settings and mappings that get in the way.
+- The maze program doesn't work on x86 systems, probably a byte order problem.
+  
+  
+  The original README:
+--- 5,10 ----
+*** ../vim-6.2.121/runtime/macros/maze/main.aap        Fri Oct 17 11:54:07 2003
+--- runtime/macros/maze/main.aap       Sun Oct 12 12:21:33 2003
+***************
+*** 0 ****
+--- 1,4 ----
++ # Aap recipe to build the maze program
++ :program maze : mazeansi.c
++ 
++ :program mazeclean : mazeclean.c
+*** ../vim-6.2.121/runtime/macros/maze/mazeclean.c     Fri Oct 17 11:54:07 2003
+--- runtime/macros/maze/mazeclean.c    Sun Oct 12 12:23:20 2003
+***************
+*** 0 ****
+--- 1,22 ----
++ /*
++  * Cleaned-up version of the maze program.
++  * Doesn't look as nice, but should work with all C compilers.
++  * Sascha Wilde, October 2003
++  */
++ #include <stdio.h>
++ #include <stdlib.h>
++ 
++ char *M, A, Z, E = 40, line[80], T[3];
++ int
++ main (C)
++ {
++   for (M = line + E, *line = A = scanf ("%d", &C); --E; line[E] = M[E] = E)
++     printf ("._");
++   for (; (A -= Z = !Z) || (printf ("\n|"), A = 39, C--); Z || printf (T))
++     T[Z] = Z[A - (E = A[line - Z]) && !C
++           & A == M[A]
++           | RAND_MAX/3 < rand ()
++           || !C & !Z ? line[M[E] = M[A]] = E, line[M[A] = A - Z] =
++           A, "_." : " |"];
++   return 0;
++ }
+*** ../vim-6.2.121/src/version.c       Tue Oct 14 10:36:08 2003
+--- src/version.c      Fri Oct 17 11:53:28 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     122,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+269. You receive an e-mail from the wife of a deceased president, offering
+     to send you twenty million dollar, and you are not even surprised.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.123 b/6.2.123
new file mode 100644 (file)
index 0000000..9ed1494
--- /dev/null
+++ b/6.2.123
@@ -0,0 +1,72 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.123
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.123 (after 6.2.118)
+Problem:    Running configure fails. (Tony Leneis)
+Solution:   Change "==" to "=" for a test.
+Files:     src/auto/configure, src/configure.in
+
+
+*** ../vim-6.2.122/src/auto/configure  Mon Oct 13 22:21:06 2003
+--- src/auto/configure Thu Oct 16 10:32:05 2003
+***************
+*** 1571,1577 ****
+      fi
+    fi
+  
+!   if test "x$MACOSX" == "xyes"; then 
+          dir=/System/Library/Perl
+      darwindir=$dir/darwin
+      if test -d $darwindir; then 
+--- 1571,1577 ----
+      fi
+    fi
+  
+!   if test "x$MACOSX" = "xyes"; then 
+          dir=/System/Library/Perl
+      darwindir=$dir/darwin
+      if test -d $darwindir; then 
+*** ../vim-6.2.122/src/configure.in    Mon Oct 13 22:21:06 2003
+--- src/configure.in   Thu Oct 16 10:31:42 2003
+***************
+*** 321,327 ****
+      fi
+    fi
+  
+!   if test "x$MACOSX" == "xyes"; then 
+      dnl Mac OS X 10.2 or 10.3
+      dir=/System/Library/Perl
+      darwindir=$dir/darwin
+--- 321,327 ----
+      fi
+    fi
+  
+!   if test "x$MACOSX" = "xyes"; then 
+      dnl Mac OS X 10.2 or 10.3
+      dir=/System/Library/Perl
+      darwindir=$dir/darwin
+*** ../vim-6.2.122/src/version.c       Fri Oct 17 11:55:09 2003
+--- src/version.c      Fri Oct 17 11:59:58 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     123,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+269. You wonder how you can make your dustbin produce Sesame Street's
+     Oscar's the Garbage Monster song when you empty it.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.124 b/6.2.124
new file mode 100644 (file)
index 0000000..cb2253e
--- /dev/null
+++ b/6.2.124
@@ -0,0 +1,385 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.124 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.124 (after 6.2.121)(extra)
+Problem:    Mac: Recursive use of M4FLAGS causes problems.  When running Vim
+           directly it can't find the runtime files.  (Emily Jackson)
+           Using GNU constructs causes warnings with other make programs.
+           (Ronald Schild)
+Solution:   Use another name for the M4FLAGS variable.
+           Don't remove "Vim.app" from the path.
+           Update the explanation for compiling on the Mac. (Eric Kow)
+           Don't use $(shell ) and $(addprefix ).
+Files:     src/INSTALLmac.txt, src/Makefile, src/misc1.c
+
+
+*** ../vim-6.2.123/src/INSTALLmac.txt  Sun May  4 22:40:16 2003
+--- src/INSTALLmac.txt Wed Oct 15 16:50:16 2003
+***************
+*** 3,69 ****
+  This file contains instructions for compiling Vim. If you already have an
+  executable version of Vim, you don't need this.
+  
+! -----------------------------------------------------------
+  
+! Here's a summary of how Vim can be compiled under MacOS, depending on
+! the version of MacOS, the compiler and the interface.
+  
+! A. Supported compiler and environement
+  
+!  1. CodeWarrior (pre-MacOS X)
+!  2. MPW (pre-MacOS X)
+!  3. Project Builder (MacOS X)
+!  4. Unix Compiler (MacOS X)
+  
+! B. Supported user interface
+  
+!  1. Original MacOS Toolbox   [Compile with A.1 and A.2]
+!  2. Carbon MacOS          [Compile with A.3]
+!  3. X (Athena, GTK, Motif).  [Compile with A.4]
+!  4. Plain Text                    [Compile with A.4]
+  
+!  NOTE: Sorry, Cocoa is not expected to be supported for now.
+! 
+! C. Supported "OS" style
+! 
+!  1. MacOS                 [Compile as B.1]
+!  2. MacOS X               [Compile as B.2]
+!  3. BSD Unix              [Compile as B.2, B.3 and B.4]
+! 
+! -----------------------------------------------------------
+! 
+! Special Consideration
+! ---------------------
+! 
+! B.2: Compiling for Carbon
+! 
+!  Currently the Carbon version can only be compiled properly under MacOS X.
+!  The binary created in that way does'nt work under previous version.
+! 
+! B.3: Compiling for X
+! 
+!  You need to first install XFree86 and XDarwin.
+!  Please visit http://www.XDarwin.org
+! 
+! C.1: The MacOS version
+! 
+!  Both ':' and '/' supported as path separator.
+! 
+! C.2: The MacOS X version
+! 
+!  Only '/' supported as path separator.
+! 
+! C.3: The BSD Unix version
+  
+   Only '/' supported as path separator.
+-  Shell command can be invoked (:!)
+  
+! -----------------------------------------------------------
+  
+! A.1: Compiling with CodeWarior
+  
+   1. Expand the resource file:
+!    - ../src/os_mac.rsr.hqx (to produce ../src/gui_mac.rsrc)
+  
+   2. Expand the project file:
+     - ../src/os_mac.sit.hqx (to produce ../src/vim.mcp)
+--- 3,74 ----
+  This file contains instructions for compiling Vim. If you already have an
+  executable version of Vim, you don't need this.
+  
+! An alternate way of building that Benji Fisher uses can be found here:
+  
+!      http://macvim.swdev.org/OSX/#Developers
+  
+! ----------------------------------------------------------------------------
+! Summary
+! ----------------------------------------------------------------------------
+  
+! 1 MacOS X
+!  1.1. Carbon interface
+!  1.2. X (Athena, GTK, Motif) or plain text.  
+  
+! 2 MacOS Classic
+!  2.1. CodeWarrior 
+!  2.2. MPW 
+  
+! NOTE: The Carbon version can only be compiled properly under
+!       MacOS X.
+  
+! ----------------------------------------------------------------------------
+! 1 MacOS X
+! ----------------------------------------------------------------------------
+  
++ 1.0 Considerations
++  
+   Only '/' supported as path separator.
+  
+! 1.1 Carbon interface (default)
+!  
+!  You can compile vim with the standard Unix routine:
+!    cd ..
+!    ./configure
+!    make; make install
+!   
+!  This will create a working Vim.app application bundle in the src
+!  directory.  You can move this bundle (the Vim.app directory) anywhere
+!  you want, for example, /Applications.
+!  
+! 1.2 X-Windows or Plain Text 
+!  
+!  If you do not want the Carbon interface, you must explicitly tell
+!  configure to use a different GUI.
+!  
+!   cd ..
+!   ./configure --enable-gui=gtk2
+!   make; make install
+!  
+!  NOTE: The following GUI options are supported: 
+!         no (for text), motif, athena, nextaw 
+!         gtk, gtk2, gnome, gnome2,
+!   
+!  NOTE: You need to first install XFree86 and XDarwin.
+!        Please visit http://www.XDarwin.org
+!  
+! ----------------------------------------------------------------------------
+! MacOS 9 
+! ----------------------------------------------------------------------------
+  
+! Both ':' and '/' supported as path separator.
+  
++ 2.1: Compiling with CodeWarior
++  
+   1. Expand the resource file:
+!    open ../src/os_mac.rsr.hqx to produce ../src/gui_mac.rsrc:
+!    % cd vim62/src
+!    % open -a StuffIt\ Expander os_mac.rsr.hqx
+  
+   2. Expand the project file:
+     - ../src/os_mac.sit.hqx (to produce ../src/vim.mcp)
+***************
+*** 81,88 ****
+  
+   5. Compile
+  
+! 
+! A.2: Compiling with MPW.
+  
+   0. You will need a recent version of the MPW and the Universal Interfaces.
+      You can get both at:
+--- 86,92 ----
+  
+   5. Compile
+  
+! 2.2: Compiling with MPW.
+  
+   0. You will need a recent version of the MPW and the Universal Interfaces.
+      You can get both at:
+***************
+*** 94,100 ****
+      Apple.
+  
+   1. Expand the resource file:
+!    - ../src/os_mac.rsr.hqx (to produce ../src/gui_mac.rsrc)
+  
+   3. Double click on os_make.make, the MPW will now open in the correct
+      folder and load the CreateVimMake script. Change to the Worksheet
+--- 98,106 ----
+      Apple.
+  
+   1. Expand the resource file:
+!    open ../src/os_mac.rsr.hqx to produce ../src/gui_mac.rsrc:
+!    % cd vim62/src
+!    % open -a StuffIt\ Expander os_mac.rsr.hqx
+  
+   3. Double click on os_make.make, the MPW will now open in the correct
+      folder and load the CreateVimMake script. Change to the Worksheet
+***************
+*** 103,135 ****
+  
+   4. Select "Build" from the menu (or type command-B). Type the program name
+      into the dialog box.
+- 
+- A.3: Compiling with Project Builder.
+- 
+-  1. Expand the resource file:
+-    - ../src/os_mac.rsr.hqx (to produce ../src/gui_mac.rsrc)
+- 
+-  2. Open ../src/os_mac.pbproject with Project Builder
+- 
+-  3. Choose between C.2 and C.3
+- 
+-     In Target ... CCFLAGS use:
+- 
+-      -DMACOS_X
+-        if you want a normal MacOS X version (using os_mac.c)
+- 
+-      -DMACOS_X_UNIX
+-        if you want to use shell commands (using os_unix.c)
+-        NOTE: some functionality may be missing
+- 
+-  4. Hammer the build button in ;)
+- 
+- 
+- A.4: Using the unix compiler.
+- 
+-  From Terminal.app you can use "configure" and "make". Refer to INSTALL for
+-  full detail. The MacOS port is not involve here.
+- 
+  
+  ------------------------------------------------------
+  
+--- 109,114 ----
+*** ../vim-6.2.123/src/Makefile        Tue Oct 14 10:36:08 2003
+--- src/Makefile       Thu Oct 16 12:56:23 2003
+***************
+*** 2307,2315 ****
+  ### MacOS X installation
+  ###
+  ### This creates a runnable Vim.app in the src directory
+- ###
+- ### TODO: install the runtime files in Vim.app instead of
+- ### requiring that they be in a seperate directory.
+  
+  REZ    = /Developer/Tools/Rez
+  RESMRG = /Developer/Tools/ResMerger
+--- 2307,2312 ----
+***************
+*** 2320,2338 ****
+  VERSION = 6.2
+  
+  ### Common flags
+! M4FLAGS = $(M4FLAGS) -DAPP_EXE=$(VIMNAME) -DAPP_NAME=$(VIMNAME) \
+               -DAPP_VER=$(VERSION) -DICON_APP=$(ICON_APP)
+  
+  ### Icons
+! # You can download Douglas Stebila's icons:
+! #    http://homepage.mac.com/dstebila/code/vim/
+! # TODO: Honestly, why don't we just go ahead and do this? OS 9?
+! # If you place those *.icns at src directory, it will be detected by this
+! # Makefile automatically, and used for Vim.
+! ICON_APP = $(shell if [ -e app.icns ] ; then echo app.icns ; else echo gui_mac.icns ; fi)
+! ICON_DOC = $(shell if [ -e doc.icns ] ; then echo doc.icns ; else echo ; fi)
+! ICON_DOCTXT = $(shell if [ -e doc-txt.icns ] ; then echo doc-txt.icns ; else echo ; fi)
+! ICONS = $(addprefix $(RESDIR)/, $(ICON_APP) $(ICON_DOC) $(ICON_DOCTXT))
+  
+  install_macosx: bundle-dir bundle-executable bundle-info bundle-resource \
+       bundle-language
+--- 2317,2335 ----
+  VERSION = 6.2
+  
+  ### Common flags
+! M4FLAGSX = $(M4FLAGS) -DAPP_EXE=$(VIMNAME) -DAPP_NAME=$(VIMNAME) \
+               -DAPP_VER=$(VERSION) -DICON_APP=$(ICON_APP)
+  
+  ### Icons
+! ICON_APP = gui_mac.icns
+! ICONS = $(RESDIR)/$(ICON_APP)
+! 
+! # If you uncomment the following lines the *.icns in the src directory will be
+! # detected by this Makefile automatically, and used for Vim.
+! #ICON_APP = $(shell if [ -e app.icns ] ; then echo app.icns ; else echo gui_mac.icns ; fi)
+! #ICON_DOC = $(shell if [ -e doc.icns ] ; then echo doc.icns ; else echo ; fi)
+! #ICON_DOCTXT = $(shell if [ -e doc-txt.icns ] ; then echo doc-txt.icns ; else echo ; fi)
+! #ICONS = $(addprefix $(RESDIR)/, $(ICON_APP) $(ICON_DOC) $(ICON_DOCTXT))
+  
+  install_macosx: bundle-dir bundle-executable bundle-info bundle-resource \
+       bundle-language
+***************
+*** 2347,2353 ****
+       @echo "Creating PkgInfo"
+       @echo -n "APPLVIM!" > $(APPDIR)/Contents/PkgInfo
+       @echo "Creating Info.plist"
+!      m4 $(M4FLAGS) infplist.xml > $(APPDIR)/Contents/Info.plist
+  
+  bundle-resource: bundle-dir bundle-icons bundle-rsrc
+  
+--- 2344,2350 ----
+       @echo "Creating PkgInfo"
+       @echo -n "APPLVIM!" > $(APPDIR)/Contents/PkgInfo
+       @echo "Creating Info.plist"
+!      m4 $(M4FLAGSX) infplist.xml > $(APPDIR)/Contents/Info.plist
+  
+  bundle-resource: bundle-dir bundle-icons bundle-rsrc
+  
+*** ../vim-6.2.123/src/misc1.c Sat Sep 27 19:48:50 2003
+--- src/misc1.c        Wed Oct 15 11:30:39 2003
+***************
+*** 20,28 ****
+  
+  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));
+- #if defined(USE_EXE_NAME) && defined(MACOS_X)
+- static char_u *remove_tail_with_ext __ARGS((char_u *p, char_u *pend, char_u *name));
+- #endif
+  static int get_indent_str __ARGS((char_u *ptr, int ts));
+  static int copy_indent __ARGS((int size, char_u      *src));
+  
+--- 20,25 ----
+***************
+*** 3398,3404 ****
+           if (p == exe_name)
+           {
+               pend = remove_tail(p, pend, (char_u *)"Contents/MacOS");
+-              pend = remove_tail_with_ext(p, pend, (char_u *)".app");
+               pend = remove_tail(p, pend, (char_u *)"build");
+           }
+  # endif
+--- 3399,3404 ----
+***************
+*** 3544,3573 ****
+       return newend;
+      return pend;
+  }
+- 
+- #if defined(USE_EXE_NAME) && defined(MACOS_X)
+- /*
+-  * If the string between "p" and "pend" ends in "???.ext/", return "pend" minus
+-  * the length of "???.ext/".  Otherwise return "pend".
+-  */
+-     static char_u *
+- remove_tail_with_ext(p, pend, ext)
+-     char_u   *p;
+-     char_u   *pend;
+-     char_u   *ext;
+- {
+-     int              len = (int)STRLEN(ext) + 1;
+-     char_u   *newend = pend - len;
+- 
+-     if (newend >= p
+-          && fnamencmp(newend, ext, len - 1) == 0)
+-      for (;newend != p && !vim_ispathsep(*(newend -1)); newend--);
+- 
+-     if (newend == p || vim_ispathsep(*(newend - 1)))
+-      return newend;
+-     return pend;
+- }
+- #endif
+  
+  /*
+   * Call expand_env() and store the result in an allocated string.
+--- 3544,3549 ----
+*** ../vim-6.2.123/src/version.c       Fri Oct 17 12:01:21 2003
+--- src/version.c      Fri Oct 17 12:05:52 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     124,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+10E. You start counting in hex.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.125 b/6.2.125
new file mode 100644 (file)
index 0000000..e8b7a53
--- /dev/null
+++ b/6.2.125
@@ -0,0 +1,57 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.125
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.125 (after 6.2.107)
+Problem:    The "winsock2.h" file isn't always available.
+Solution:   Don't include this header file.
+Files:     src/netbeans.c
+
+
+*** ../vim-6.2.124/src/netbeans.c      Sun Oct 12 16:42:14 2003
+--- src/netbeans.c     Tue Oct 14 15:41:00 2003
+***************
+*** 28,37 ****
+  #  include <tchar.h> /* for _T definition for TRACEn macros */
+  # endif
+  # include <io.h>
+! # include <winsock2.h>
+! /* WinSock API is separated from C API
+!  * So we can't use read, write, errno...
+!  */
+  # define sock_errno WSAGetLastError()
+  # define ECONNREFUSED WSAECONNREFUSED
+  # define sock_write(sd, buf, len) send(sd, buf, len, 0)
+--- 28,35 ----
+  #  include <tchar.h> /* for _T definition for TRACEn macros */
+  # endif
+  # include <io.h>
+! /* WinSock API is separated from C API, thus we can't use read(), write(),
+!  * errno... */
+  # define sock_errno WSAGetLastError()
+  # define ECONNREFUSED WSAECONNREFUSED
+  # define sock_write(sd, buf, len) send(sd, buf, len, 0)
+*** ../vim-6.2.124/src/version.c       Fri Oct 17 12:08:46 2003
+--- src/version.c      Fri Oct 17 12:11:48 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     125,
+  /**/
+
+-- 
+ARTHUR: This new learning amazes me, Sir Bedevere.  Explain again how sheep's
+        bladders may be employed to prevent earthquakes.
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.126 b/6.2.126
new file mode 100644 (file)
index 0000000..5277873
--- /dev/null
+++ b/6.2.126
@@ -0,0 +1,58 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.125
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.126
+Problem:    Typing CTRL-C at a confirm() prompt doesn't throw an exception.
+Solution:   Reset "mapped_ctrl_c" in get_keystroke(), so that "got_int" is set
+           in _OnChar().
+Files:     src/misc1.c
+
+
+*** ../vim-6.2.125/src/misc1.c Fri Oct 17 12:08:46 2003
+--- src/misc1.c        Wed Oct 15 11:30:39 2003
+***************
+*** 2760,2766 ****
+--- 2760,2768 ----
+      char_u   buf[CBUFLEN];
+      int              len = 0;
+      int              n;
++     int              save_mapped_ctrl_c = mapped_ctrl_c;
+  
++     mapped_ctrl_c = FALSE;   /* mappings are not used here */
+      for (;;)
+      {
+       cursor_on();
+***************
+*** 2835,2840 ****
+--- 2837,2844 ----
+  #endif
+       break;
+      }
++ 
++     mapped_ctrl_c = save_mapped_ctrl_c;
+      return n;
+  }
+  
+*** ../vim-6.2.125/src/version.c       Fri Oct 17 12:13:28 2003
+--- src/version.c      Fri Oct 17 12:17:16 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     126,
+  /**/
+
+-- 
+Women are probably the main cause of free software starvation.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
diff --git a/6.2.127 b/6.2.127
new file mode 100644 (file)
index 0000000..445de7c
--- /dev/null
+++ b/6.2.127
@@ -0,0 +1,58 @@
+To: vim-dev@vim.org
+Subject: Patch 6.2.127 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 6.2.127 (extra)
+Problem:    Win32 console: Typing CTRL-C doesn't throw an exception.
+Solution:   Set got_int immediately when CTRL-C is typed, don't wait for
+           mch_breakcheck() being called.
+Files:     src/os_win32.c
+
+
+*** ../vim-6.2.126/src/os_win32.c      Thu Sep 11 21:50:44 2003
+--- src/os_win32.c     Thu Oct 16 19:41:18 2003
+***************
+*** 1386,1393 ****
+           }
+  #endif
+  
+!          if (c == Ctrl_C)
+!              g_fCBrkPressed = TRUE;
+  
+  #ifdef FEAT_MOUSE
+           if (g_nMouseClick == -1)
+--- 1386,1396 ----
+           }
+  #endif
+  
+!          if (c == Ctrl_C && ctrl_c_interrupts)
+!          {
+!              trash_input_buf();
+!              got_int = TRUE;
+!          }
+  
+  #ifdef FEAT_MOUSE
+           if (g_nMouseClick == -1)
+*** ../vim-6.2.126/src/version.c       Fri Oct 17 12:18:17 2003
+--- src/version.c      Fri Oct 17 12:19:58 2003
+***************
+*** 639,640 ****
+--- 639,642 ----
+  {   /* Add new patch number below this line */
++ /**/
++     127,
+  /**/
+
+-- 
+This sentence is not sure that it exists, but if it does, it will
+certainly consider the possibility that other sentences exist.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///          Creator of Vim - Vi IMproved -- http://www.Vim.org          \\\
+\\\              Project leader for A-A-P -- http://www.A-A-P.org        ///
+ \\\  Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html  ///
This page took 0.241588 seconds and 4 git commands to generate.