自己编译带Lua支持的vim

支持GDI++渲染支持

修改\vim\src\gui_w32.c下font renderer相关内容,这样GDI++渲染就可以完全生效,即注释掉os_version.dwPlatformid相关的两行代码:

/* On NT, tell the font renderer not to "help" us with Hebrew and Arabic
     * text.  This doesn't work in 9x, so we have to deal with it manually on
     * those systems. */
    if (os_version.dwPlatformId == VER_PLATFORM_WIN32_NT)
    foptions |= ETO_IGNORELANGUAGE;

支持非等宽字体

修改源代码\vim\src\os_mswin.c,取消对非等宽字体的忽略。即注释掉这一段代码:

#ifndef FEAT_PROPORTIONAL_FONTS
    /* Ignore non-monospace fonts without further ado */
    if ((ntm->tmPitchAndFamily & 1) != 0)
    return 1;
#endif

编译Lua接口支持

首先需要到Lua网站上下载lua53.dll和include文件,解压后放到C:/lua52目录下。然后使用下面的编译选项编译vim。

编译选项:

nmake -f Make_mvc.mak CPU=AMD64 XPM=no GUI=yes OLE=no LUA=c:/Lua53 DYNAMIC_LUA=yes LUA_VER=53 PYTHON3=c:/Python37 DYNAMIC_PYTHON3=yes PYTHON3_VER=37 IME=yes GIME=yes DYNAMIC_IME=yes GDYAMIC_IME=yes CSCOPE=yes NETBEANS=no MBYTE=yes USERNAME=appveyor USERDOMAIN=APPVYR-WIN FEATURES=HUGE

编译后会生成gvim.exe,如果在其它机器上运行,需要把lua52.dll放到和gvim.exe相同的vim81目录下。

如果重新编译需要清除上一次的临时文件,命令

nmake -f Make_mvc.mak clean

你可能感兴趣的:(自己编译带Lua支持的vim)