# HG changeset patch # User Christian Brabandt # Date 1507477504 -7200 # Node ID b390f5003e2f9b0b1316d696bcc1127b9f1faf2a # Parent 753cc0b5885892ad0a55bed5a0b846542a8cd825 patch 8.0.1182: cannot see or change mzscheme dll name commit https://github.com/vim/vim/commit/0ab35b279f9d64f32e99424166b047f90cb042d8 Author: Bram Moolenaar Date: Sun Oct 8 17:41:37 2017 +0200 patch 8.0.1182: cannot see or change mzscheme dll name Problem: Cannot see or change mzscheme dll name. Solution: Add 'mzschemedll' and 'mzschemegcdll'. diff --git a/runtime/doc/if_mzsch.txt b/runtime/doc/if_mzsch.txt --- a/runtime/doc/if_mzsch.txt +++ b/runtime/doc/if_mzsch.txt @@ -1,4 +1,4 @@ -*if_mzsch.txt* For Vim version 8.0. Last change: 2016 Jan 24 +*if_mzsch.txt* For Vim version 8.0. Last change: 2017 Oct 08 VIM REFERENCE MANUAL by Sergey Khorev @@ -278,12 +278,15 @@ When you don't use the MzScheme interfac use Vim without these DLL files. NOTE: Newer version of MzScheme (Racket) require earlier (trampolined) initialisation via scheme_main_setup. So Vim always loads the MzScheme DLL at -startup if possible. +startup if possible. This may make Vim startup slower. To use the MzScheme interface the MzScheme DLLs must be in your search path. In a console window type "path" to see what directories are used. -The names of the DLLs must match the MzScheme version Vim was compiled with. +On MS-Windows the options 'mzschemedll' and 'mzschemegcdll' are used for the +name of the library to load. The initial value is specified at build time. + +The version of the DLL must match the MzScheme version Vim was compiled with. For MzScheme version 209 they will be "libmzsch209_000.dll" and "libmzgc209_000.dll". To know for sure look at the output of the ":version" command, look for -DDYNAMIC_MZSCH_DLL="something" and diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -5468,6 +5468,31 @@ A jump table for the options with a shor time in msec between two mouse clicks for the second click to be recognized as a multi click. + *'mzschemedll'* +'mzschemedll' string (default depends on the build) + global + {not in Vi} + {only available when compiled with the |+mzscheme/dyn| + feature} + Specifies the name of the MzScheme shared library. The default is + DYNAMIC_MZSCH_DLL which was specified at compile time. + Environment variables are expanded |:set_env|. + This option cannot be set from a |modeline| or in the |sandbox|, for + security reasons. + + *'mzschemegcdll'* +'mzschemegcdll' string (default depends on the build) + global + {not in Vi} + {only available when compiled with the |+mzscheme/dyn| + feature} + Specifies the name of the MzScheme GC shared library. The default is + DYNAMIC_MZGC_DLL which was specified at compile time. + The value can be equal to 'mzschemedll' if it includes the GC code. + Environment variables are expanded |:set_env|. + This option cannot be set from a |modeline| or in the |sandbox|, for + security reasons. + *'mzquantum'* *'mzq'* 'mzquantum' 'mzq' number (default 100) global diff --git a/src/if_mzsch.c b/src/if_mzsch.c --- a/src/if_mzsch.c +++ b/src/if_mzsch.c @@ -757,7 +757,7 @@ mzscheme_runtime_link_init(char *sch_dll mzscheme_enabled(int verbose) { return mzscheme_runtime_link_init( - DYNAMIC_MZSCH_DLL, DYNAMIC_MZGC_DLL, verbose) == OK; + (char *)p_mzschemedll, (char *)p_mzschemegcdll, verbose) == OK; } static void diff --git a/src/option.c b/src/option.c --- a/src/option.c +++ b/src/option.c @@ -2008,6 +2008,24 @@ static struct vimoption options[] = {"mousetime", "mouset", P_NUM|P_VI_DEF, (char_u *)&p_mouset, PV_NONE, {(char_u *)500L, (char_u *)0L} SCRIPTID_INIT}, + {"mzschemedll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, +#if defined(DYNAMIC_MZSCHEME) + (char_u *)&p_mzschemedll, PV_NONE, + {(char_u *)DYNAMIC_MZSCH_DLL, (char_u *)0L} +#else + (char_u *)NULL, PV_NONE, + {(char_u *)"", (char_u *)0L} +#endif + SCRIPTID_INIT}, + {"mzschemegcdll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, +#if defined(DYNAMIC_MZSCHEME) + (char_u *)&p_mzschemegcdll, PV_NONE, + {(char_u *)DYNAMIC_MZGC_DLL, (char_u *)0L} +#else + (char_u *)NULL, PV_NONE, + {(char_u *)"", (char_u *)0L} +#endif + SCRIPTID_INIT}, {"mzquantum", "mzq", P_NUM, #ifdef FEAT_MZSCHEME (char_u *)&p_mzq, PV_NONE, diff --git a/src/option.h b/src/option.h --- a/src/option.h +++ b/src/option.h @@ -662,6 +662,10 @@ EXTERN long p_mouset; /* 'mousetime' */ EXTERN int p_more; /* 'more' */ #ifdef FEAT_MZSCHEME EXTERN long p_mzq; /* 'mzquantum */ +# if defined(DYNAMIC_MZSCHEME) +EXTERN char_u *p_mzschemedll; /* 'mzschemedll' */ +EXTERN char_u *p_mzschemegcdll; /* 'mzschemegcdll' */ +# endif #endif #if defined(MSWIN) EXTERN int p_odev; /* 'opendevice' */ diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -762,6 +762,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1182, +/**/ 1181, /**/ 1180,