updated for version 7.0044
diff --git a/src/Make_cyg.mak b/src/Make_cyg.mak
index 962e22e..5319994 100644
--- a/src/Make_cyg.mak
+++ b/src/Make_cyg.mak
@@ -18,6 +18,16 @@
# RUBY define to path to Ruby dir to get Ruby support (not defined)
# RUBY_VER define to version of Ruby being used (16)
# DYNAMIC_RUBY no or yes: use yes to load the Ruby DLL dynamically (yes)
+# MZSCHEME define to path to MzScheme dir to get MZSCHEME support (not defined)
+# MZSCHEME_VER define to version of MzScheme being used (209_000)
+# DYNAMIC_MZSCHEME no or yes: use yes to load the MzScheme DLLs dynamically (yes)
+# MZSCHEME_DLLS path to MzScheme DLLs (libmzgc and libmzsch).
+# Is used for DYNAMIC_MZSCHEME=no only.
+# c:/windows/system32 isn't a good idea, copy them to some
+# dir and point MZSCHEME_DLLS to this dir.
+# By default $(MZSCHEME) will be used. You can remove
+# these DLLs from $(MZSCHEME_DLLS) after you
+# built Vim (they are used for dll "static" linking only)
# GETTEXT no or yes: set to yes for dynamic gettext support (yes)
# ICONV no or yes: set to yes for dynamic iconv support (yes)
# MBYTE no or yes: set to yes to include multibyte support (yes)
@@ -190,6 +200,33 @@
endif
##############################
+# DYNAMIC_MZSCHEME=yes works
+# DYNAMIC_MZSCHEME=no works too
+##############################
+ifdef MZSCHEME
+DEFINES += -DFEAT_MZSCHEME
+INCLUDES += -I$(MZSCHEME)/include
+EXTRA_OBJS += $(OUTDIR)/if_mzsch.o
+
+ifndef DYNAMIC_MZSCHEME
+DYNAMIC_MZSCHEME = yes
+endif
+
+ifndef MZSCHEME_VER
+MZSCHEME_VER = 209_000
+endif
+
+ifeq (yes, $(DYNAMIC_MZSCHEME))
+DEFINES += -DDYNAMIC_MZSCHEME -DDYNAMIC_MZSCH_DLL=\"libmzsch$(MZSCHEME_VER).dll\" -DDYNAMIC_MZGC_DLL=\"libmzgc$(MZSCHEME_VER).dll\"
+else
+ifndef MZSCHEME_DLLS
+MZSCHEME_DLLS = $(MZSCHEME)
+endif
+EXTRA_LIBS += -L$(MZSCHEME_DLLS) -lmzsch$(MZSCHEME_VER) -lmzgc$(MZSCHEME_VER)
+endif
+endif
+
+##############################
# DYNAMIC_TCL=yes and no both work.
##############################
ifdef TCL
diff --git a/src/Make_ming.mak b/src/Make_ming.mak
index 2d8bbaf..a27ce52 100644
--- a/src/Make_ming.mak
+++ b/src/Make_ming.mak
@@ -107,16 +107,26 @@
# uncomment 'MZSCHEME' if you want a MzScheme-enabled version
#MZSCHEME=d:/plt
ifdef MZSCHEME
+ifndef DYNAMIC_MZSCHEME
+DYNAMIC_MZSCHEME=yes
+endif
+
ifndef MZSCHEME_VER
MZSCHEME_VER=205_000
endif
-# the modern MinGW can dynamically link to dlls directly
-# point MZSCHEME_LIBDIR to where you put libmzschXXXXXXX.dll and libgcXXXXXXX.dll
+
+ifeq (no,$(DYNAMIC_MZSCHEME))
+MZSCHEME_LIB = -lmzsch$(MZSCHEME_VER) -lmzgc$(MZSCHEME_VER)
+# the modern MinGW can dynamically link to dlls directly.
+# point MZSCHEME_DLLS to where you put libmzschXXXXXXX.dll and libgcXXXXXXX.dll
# c:/windows/system32 isn't a good idea, use some other dir;
# to build you can put them in temp dir)
-ifndef MZSCHEME_LIBDIR
-MZSCHEME_LIBDIR=-L$(MZSCHEME)
+ifndef MZSCHEME_DLLS
+MZSCHEME_DLLS=$(MZSCHEME)
endif
+MZSCHEME_LIBDIR=-L$(MZSCHEME_DLLS)
+endif
+
endif
# Python support -- works with the ActiveState python 2.0 release (and others
@@ -270,6 +280,9 @@
ifdef MZSCHEME
CFLAGS += -I$(MZSCHEME)/include -DFEAT_MZSCHEME -DMZSCHEME_COLLECTS=\"$(MZSCHEME)/collects\"
+ifeq (yes, $(DYNAMIC_MZSCHEME))
+CFLAGS += -DDYNAMIC_MZSCHEME -DDYNAMIC_MZSCH_DLL=\"libmzsch$(MZSCHEME_VER).dll\" -DDYNAMIC_MZGC_DLL=\"libmzgc$(MZSCHEME_VER).dll\"
+endif
endif
ifdef RUBY
@@ -461,10 +474,6 @@
endif
endif
-ifdef MZSCHEME
-MZSCHEME_LIB = -lmzsch$(MZSCHEME_VER) -lmzgc$(MZSCHEME_VER)
-endif
-
ifdef TCL
LIB += -L$(TCL)/lib
ifeq (yes, $(DYNAMIC_TCL))
diff --git a/src/configure b/src/configure
index be225ed..6aa15be 100755
--- a/src/configure
+++ b/src/configure
@@ -2,3 +2,5 @@
# run the automatically generated configure script
CONFIG_STATUS=auto/config.status \
auto/configure "$@" --srcdir="${srcdir-.}" --cache-file=auto/config.cache
+# Stupid autoconf 2.5x causes this file to be left behind.
+if test -f configure.lineno; then rm -f configure.lineno; fi
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 47f7c64..2b912d6 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -1584,7 +1584,7 @@
/*
* Avoid optimisation bug in VC++ version 6.0
*/
-# pragma optimize( "g", off )
+ #pragma optimize( "g", off )
#endif
static char_u *
do_one_cmd(cmdlinep, sourcing,
@@ -2611,7 +2611,7 @@
return ea.nextcmd;
}
#if (_MSC_VER == 1200)
-# pragma optimize( "", on )
+ #pragma optimize( "", on )
#endif
/*
@@ -7749,7 +7749,7 @@
/* When using 'viewdir' may have to create the directory. */
if (using_vdir && !mch_isdir(p_vdir))
if (vim_mkdir(p_vdir, 0755) != 0)
- EMSG2(_("E738: Cannot create directory: %s"), p_vdir);
+ EMSG2(_("E739: Cannot create directory: %s"), p_vdir);
#endif
fd = open_exfile(fname, eap->forceit, WRITEBIN);
diff --git a/src/globals.h b/src/globals.h
index 8cac0f7..7580dd0 100644
--- a/src/globals.h
+++ b/src/globals.h
@@ -136,6 +136,7 @@
EXTERN char_u *keep_msg INIT(= NULL); /* msg to be shown after redraw */
EXTERN int keep_msg_attr INIT(= 0); /* highlight attr for keep_msg */
+EXTERN int keep_msg_more INIT(= FALSE); /* keep_msg was set by msgmore() */
EXTERN int need_fileinfo INIT(= FALSE);/* do fileinfo() after redraw */
EXTERN int msg_scroll INIT(= FALSE); /* msg_start() will scroll */
EXTERN int msg_didout INIT(= FALSE); /* msg_outstr() was used in line */
@@ -1278,7 +1279,7 @@
#endif
#if defined(DYNAMIC_PERL) || defined(DYNAMIC_PYTHON) || defined(DYNAMIC_RUBY) \
|| defined(DYNAMIC_TCL) || defined(DYNAMIC_ICONV) \
- || defined(DYNAMIC_GETTEXT)
+ || defined(DYNAMIC_GETTEXT) || defined(DYNAMIC_MZSCHEME)
EXTERN char_u e_loadlib[] INIT(=N_("E370: Could not load library %s"));
EXTERN char_u e_loadfunc[] INIT(=N_("E448: Could not load library function %s"));
#endif
diff --git a/src/macros.h b/src/macros.h
index 6d6484c..233df0f 100644
--- a/src/macros.h
+++ b/src/macros.h
@@ -249,15 +249,6 @@
# define CURSOR_BAR_RIGHT (curwin->w_p_rl && (!(State & CMDLINE) || cmdmsg_rl))
#endif
-#ifndef FEAT_LINEBREAK
-/* Without the 'numberwidth' option line numbers are always 7 chars. */
-# define number_width(x) 7
-#endif
-
-#ifndef FEAT_MBYTE
-# define after_pathsep(b, p) vim_ispathsep(*((p) - 1))
-#endif
-
/*
* mb_ptr_adv(): advance a pointer to the next character, taking care of
* multi-byte characters if needed.
diff --git a/src/proto/charset.pro b/src/proto/charset.pro
index 88e9754..afc8562 100644
--- a/src/proto/charset.pro
+++ b/src/proto/charset.pro
@@ -3,7 +3,7 @@
int buf_init_chartab __ARGS((buf_T *buf, int global));
void trans_characters __ARGS((char_u *buf, int bufsize));
char_u *transstr __ARGS((char_u *s));
-char_u *str_foldcase __ARGS((char_u *str, int len));
+char_u *str_foldcase __ARGS((char_u *str, int orglen, char_u *buf, int buflen));
char_u *transchar __ARGS((int c));
char_u *transchar_byte __ARGS((int c));
void transchar_nonprint __ARGS((char_u *buf, int c));