Cygwin'deki Vimserver


1

Bunun ardından soru , Kullanabileceğimi öğrendim --servername <name> ve --remote Konsolumdaki vim Cygwin altında çalıştırılabilir.

Bu yüzden kurdum vim-common vim ve gvim ve böyle seçenekler yok /bin/vim. Sadece ile mevcut /bin/gvim. Maalesef kullanmak istemiyorum gvim versiyonu vim.

Sorunun vim'in X desteği ile inşa edilmediğini düşünmüştüm. Böylece Vim'i sıfırdan inşa ettim. ./configure --with-x. Bu hiçbir şeyi değiştirmez.

Vim sunucusunu Vim konsol sürümünde nasıl kullanabilirim?

Yanıtlar:


2

LibX11-devel ve libXt-devel 'in kurulu olduğundan emin olun. Eğer cygwin kurulumunuz güncel ise, Vim 7.4'ü + clientserver ve + X11 ile derlemek için src / mbyte.c yamasını yapmanız gerekebilir.

libX11-devel ve libXt-devel'i kontrol edin

# vim configure log
#$ grep X_LIB src/auto/config.log
GUI_X_LIBS=''
X_LIB='-lXt -lX11'
X_LIBS=' '

# cygwin
#$ cygcheck.exe -c | grep libX11-devel
libX11-devel                            1.6.3-1                          OK
#$ cygcheck.exe -c | grep libXt-devel
libXt-devel                             1.1.4-2                          OK

Lech Lorens src / mbyte.c yamasını uygulayın

https://groups.google.com/forum/#!topic/vim_dev/OJjnbKQ7oYU

diff --git a/src/mbyte.c b/src/mbyte.c
 index 6340992..cb14a25 100644
--- a/src/mbyte.c
+++ b/src/mbyte.c
@@ -83,10 +83,18 @@
 # ifndef WIN32_LEAN_AND_MEAN
 #  define WIN32_LEAN_AND_MEAN
 # endif
-# include <windows.h>
+# if defined(FEAT_GUI) || defined(FEAT_XCLIPBOARD)
+#  include <X11/Xwindows.h>
+#  define WINBYTE wBYTE
+# else
+#  include <windows.h>
+#  define WINBYTE BYTE
+# endif
 # ifdef WIN32
 #  undef WIN32     /* Some windows.h define WIN32, we don't want that here. */
 # endif
+#else
+# define WINBYTE BYTE
 #endif

 #if (defined(WIN3264) || defined(WIN32UNIX)) && !defined(__MINGW32__)
@@ -698,7 +706,7 @@ codepage_invalid:
        /* enc_dbcs is set by setting 'fileencoding'.  It becomes a Windows
     * CodePage identifier, which we can pass directly in to Windows
     * API */
-       n = IsDBCSLeadByteEx(enc_dbcs, (BYTE)i) ? 2 : 1;
+       n = IsDBCSLeadByteEx(enc_dbcs, (WINBYTE)i) ? 2 : 1;
 #else
 # if defined(MACOS) || defined(__amigaos4__)
    /*

derleme Vim 7.4 + müşteri sunucusu + X11

#$./configure --with-x
#$ make
#$ ./src/vim.exe --version
VIM - Vi IMproved 7.4 

Normal version without GUI.  Features included (+) or not (-):

+clientserver    -hangul_input    +netbeans_intg   +title

+digraphs        +mksession       +scrollbind      +X11

#$ ./src/vim.exe --serverlist
TEST

İyi bir nokta. Kayıptım libXt-devel. Şimdi sahibim +X11 Vim'imle. Maalesef oyunu hala bitirmedim. İle bir oturum başlatırsam ./vim --servername foo ve başka bir terimde test ediyorum ./vim --serverlist Göremiyorum foo sunucusu. X sunucum çalışıyor ve çalıştırabilirim xeyes Her iki terminalde de
nowox

2

Düzgün bir şekilde derlenmiş bir Vim örneğiniz olduğunu varsayarsak, cygwin X sunucusunu çalıştırmanız gerekir. Windows makineme giriş yaptığımda, komut satırını kullanarak benim başlayacağım:

C:\cygwin64\bin\XWin.exe -multiwindow

Sonra, ekranımda DISPLAY olduğundan emin olun ~/.bash_profile:

DISPLAY=:0.0; export DISPLAY

Yerel bir Windows gVim örneğini tercih etme eğiliminde olmama rağmen, cygwin'in gVim'sini kullanabildiğim için ek avantajı var.


Bitti. Bunu girişimin komut dosyasına ekledim. Ben her zaman yaptım startxwin& ne yaptığımı bilmeden önce ...
nowox
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.