Skip to content

Instantly share code, notes, and snippets.

@k-takata
k-takata / dwrite-fix-layout.diff
Created January 11, 2013 14:43
additional patch for vim-kaoriya-vim-mq-ex / patch-direct_write.diff
diff --git a/src/gui_dwrite.cpp b/src/gui_dwrite.cpp
--- a/src/gui_dwrite.cpp
+++ b/src/gui_dwrite.cpp
@@ -2,11 +2,8 @@
#define WIN32_LEAN_AND_MEAN
-#ifdef __MINGW32__
-# undef WINVER
-# define WINVER 0x0600
@k-takata
k-takata / dwrite-mingw-cygwin.diff
Created January 12, 2013 04:35
additional patch for vim-kaoriya-vim-mq-ex / patch-direct_write.diff support for MinGW and Cygwin
diff --git a/src/Make_cyg.mak b/src/Make_cyg.mak
--- a/src/Make_cyg.mak
+++ b/src/Make_cyg.mak
@@ -8,6 +8,7 @@
# Cygwin application use the Makefile (just like on Unix).
#
# GUI no or yes: set to yes if you want the GUI version (yes)
+# DIRECTX no or yes: set to yes if you want use DirectWrite (no)
# PERL define to path to Perl dir to get Perl support (not defined)
# PERL_VER define to version of Perl being used (56)
@k-takata
k-takata / dwrite-4.diff
Created January 13, 2013 02:28
additional patch for vim-kaoriya-vim-mq-ex / patch-direct_write.diff (Add 'if' for noantialias mode. Fix indents.)
diff --git a/src/gui_w32.c b/src/gui_w32.c
--- a/src/gui_w32.c
+++ b/src/gui_w32.c
@@ -2480,12 +2480,12 @@
if (enc_utf8)
{
#if defined(USE_DIRECT_X)
- n = len - 1; /* always output the text as WCHAR */
-#else
- for (n = 0; n < len; ++n)
@k-takata
k-takata / dwrite-gdi-layout.diff
Created January 16, 2013 12:36
additional patch No.5 for vim-kaoriya-vim-mq-ex / patch-direct_write.diff (Use GDI compatible layouts.)
diff --git a/src/gui_dwrite.cpp b/src/gui_dwrite.cpp
--- a/src/gui_dwrite.cpp
+++ b/src/gui_dwrite.cpp
@@ -14,6 +14,10 @@
#include "gui_dwrite.h"
+extern "C" {
+#include "vim.h"
+}
@k-takata
k-takata / dwrite-guifontwide.diff
Last active December 11, 2015 05:59
additional patch No.6 for vim-kaoriya-vim-mq-ex / patch-direct_write.diff (Support for guifontwide.)
diff --git a/src/Make_cyg.mak b/src/Make_cyg.mak
--- a/src/Make_cyg.mak
+++ b/src/Make_cyg.mak
@@ -628,6 +628,9 @@
$(OUTDIR)/gui_dwrite.o: gui_dwrite.cpp $(INCL) gui_dwrite.h
$(CXX) -c $(CFLAGS) gui_dwrite.cpp -o $(OUTDIR)/gui_dwrite.o
+$(OUTDIR)/gui_w32.o: gui_w32.c gui_w48.c $(INCL)
+ $(CC) -c $(CFLAGS) gui_w32.c -o $(OUTDIR)/gui_w32.o
+
@k-takata
k-takata / dwrite-mingw-cygwin-2.diff
Created January 21, 2013 13:56
additional patch No.7 for vim-kaoriya-vim-mq-ex / patch-direct_write.diff (Do not use CXX in Make_ming.mak/Make_cyg.mak)
diff --git a/src/Make_cyg.mak b/src/Make_cyg.mak
--- a/src/Make_cyg.mak
+++ b/src/Make_cyg.mak
@@ -117,6 +117,13 @@
OPTIMIZE = MAXSPEED
endif
+
+# Link against the shared version of libstdc++ by default. Set
+# STATIC_STDCPLUS to "yes" to link against static version instead.
@k-takata
k-takata / dwrite-dynamic-load.diff
Last active December 11, 2015 11:29
additional patch No.8 for vim-kaoriya-vim-mq-ex / patch-direct_write.diff (load DirectWrite components dynamically)
diff --git a/src/Make_cyg.mak b/src/Make_cyg.mak
--- a/src/Make_cyg.mak
+++ b/src/Make_cyg.mak
@@ -92,12 +92,6 @@
ifndef DIRECTX
DIRECTX = no
endif
-ifeq ($(DIRECTX),yes)
-# DirectWrite requires that WINVER is 0x0600 or above
-ifndef WINVER
@k-takata
k-takata / use-proto.diff
Created February 2, 2013 02:35
patch for patch-direct_write-ex1.diff
diff --git a/src/gui_w32.c b/src/gui_w32.c
--- a/src/gui_w32.c
+++ b/src/gui_w32.c
@@ -50,7 +50,7 @@
}
#endif
-#ifdef FEAT_RENDERING_OPTIONS
+#if defined(FEAT_RENDERING_OPTIONS) || defined(PROTO)
int
@k-takata
k-takata / Make_cyg_new.mak
Last active December 14, 2015 02:59
merge Make_cyg.mak into Make_ming.mak (Vim 7.3.831)
#
# Makefile for VIM on Win32, using Cygwin gcc-3 or MinGW cross compiler
# Last updated by Ken Takata. Last Change: 2013 Feb 23
#
# Also read INSTALLpc.txt!
#
# This compiles Vim as a Windows application. If you want Vim to run as a
# Cygwin application use the Makefile (just like on Unix).
#
# The old Make_cyg.mak (maintained by Dan Sharp et al.) was merged into
@k-takata
k-takata / gist:5124445
Last active July 17, 2020 16:50
Build The Silver Searcher

Build The Silver Searcher

the silver searcher

For Win32/64 using MSYS2

Install Packages

Install the following packages using pacman -S package-name: