Jak mogę sprawić, by gVim na Windows zachowywał się tak, jak na Linuksie?

Jestem częstym użytkownikiem edytora Vim w systemie Linux i teraz chcę go używać w systemie Windows.

Pobrałem Vima dla Windows, którym jest gVim. Kilka funkcji Vima nie działa w gVim 7.4, takich jak blok wizualny, polecenie rx i kilka innych kombinacji klawiszy.

Chcę tego samego / oryginalnego Vima z Linux do użytku w systemie Windows. Czy ta wersja jest również dostępna dla systemu Windows? Czy mogę użyć ustawień podobnych do formatu Unix?

Komentarze

  • Wypróbuj Vima z tuxproject.de/projects/vim/x64
  • Sprawdź także swój _vimrc dla linii o treści w rodzaju source $VIMRUNTIME/mswin.vim. Ten plik umożliwia wiele konfiguracji przyjaznych dla MSWindows (w tym wiele mapowań).
  • Używam gvim codziennie w systemie Windows, zarówno gvim GUI, jak i niegraficzny vim za pośrednictwem konsoli cmder. Ja również byłem sfrustrowany, dopóki nie wyłączyłem pliku konfiguracyjnego mswin.vim i nie wprowadziłem kilku innych poprawek. Po prostu usunąłem plik _vimrc, który został zainstalowany program i skopiowałem mój plik .vimrc Linuksa do Windows, a następnie przeszedłem stamtąd.
  • Inne rozpoczęte Ters wspomnieli o tym, ale nikt ' nie powiedział tego wprost: blok wizualny działa dobrze w Windows Vim. Wystarczy wyłączyć ” przyjazne dla systemu Windows ” skróty klawiszowe, które zastępują ctrl-v kombinacja klawiszy z mapowaniem wklejania. Jest ' możliwe (prawdopodobnie?), Że Twoje inne problemy z Windows Vimem wynikają z tego samego problemu, chociaż nie ' nie wspominasz o czym wszystkie są takie, że ' trudno powiedzieć na pewno.
  • OOTB gvim w systemie Windows działa tak samo jak na Linuksie (modulo różne wartości domyślne dla kilku opcji) . Musisz inaczej skonfigurować.

Odpowiedź

Kiedy muszę pracować w systemie Windows (co jest częstsze niż bym chciał), używam Cygwin, aby terminal był nieco mniej kiepski niż oryginalny wiersz poleceń systemu Windows. Cygwin zapewnia środowisko, które stara się być blisko konsoli Bash ze standardowymi poleceniami Linuksa i oczywiście nie jest to bezbłędne.

Zobacz projekt strona Cygwin. Podczas instalacji „zakończysz się w oknie, w którym możesz wybrać, które pakiety chcesz zainstalować. Pasek wyszukiwania umożliwia między innymi wyszukanie pakietów do zainstalowania (np. git , tmux, curl, wget itp.) możesz wpisać i wybierz pakiety, takie jak vim, vim-common, vim-doc , gvim. To zainstaluje edytor Vima bardzo zbliżony do tego, do czego przywykłeś w Linuksie.

Po zainstalowaniu wszystkiego (co czasami może być trochę long) będziesz mógł „uruchomić Cygwin, który pokaże terminal, i” będziesz mógł normalnie uruchomić Vima i używać swojego .vimrc Linuksa i zwykłego menedżera wtyczek. Główną wadą jest zgodność kolorów, które często wymagają poprawek i nadal wyglądają kiepsko.

Uwaga że używam Cygwin z przyzwyczajenia, ale istnieją inne rozwiązania (na przykład cmder ). Żaden z nich nie jest doskonały, więc możesz wypróbować kilka i znaleźć swój ulubiony.

Zwróć też uwagę na że miętowy to dobry sposób, aby uczynić Cygwin trochę mniej gównianym.

Komentarze

  • Występuje kilka problemów. Nie ' nie wyświetla poprawnie znaków Unicode. Niektóre znaki wielobajtowe są ukryte.
  • Tak, ' właśnie dlatego określiłem, że ” Żaden z nich są bezbłędne „: na razie Cygwin (i odpowiedniki) to tylko obejście. Nie jestem ' ekspertem od systemu Windows, ale być może nowa współpraca między Canonical i Microsoft zaowocuje lepszymi alternatywami.
  • Używam babun obecnie, chociaż myślę, że bazowy cygwin nie jest tak świeży jak instalacja waniliowa.
  • Od Windows 10, a zwłaszcza od dodatkowych aktualizacji, ' dodaliśmy do niego (curl, openssh, poprawne przepełnienie tekstu, obsługa 24-bitowego koloru), że prosta zachęta DOS jest teraz lepsza. Renderowanie czcionek w podpowiedziach DOS / PowerShell jest zazwyczaj najlepsze, ' widziałem w aplikacjach terminali Windows. Dodatkowo, jeśli zainstalujesz Git dla Windows, który zawiera prawie wszystkie potrzebne narzędzia wiersza poleceń, dodaj C:\Program Files\Git\usr\bin lub podobne do swojej ścieżki.

Odpowiedź

Od rocznicowej aktualizacji systemu Windows 10 można używać Bash na terminalu Ubuntu , aby uruchomić podsystem Linuksa, w którym możesz apt install wszystko, czego używasz w Ubuntu. Twój system plików Windows jest zamontowany, więc możesz użyj Vima wewnątrz powłoki, aby edytować swoje pliki.

Komentarze

  • Pamiętaj o tobie ' re nadal korzystam z Vima przez konsolę Windows, która jest bardzo ograniczona kolorami i podświetlaniem składni. Nawet z aktualizacją twórców, która ma przynieść 256 kolorów do konsoli, nie udało mi się ' t poprawić podświetlanie składni.
  • @ icc97 Nie ' nie pamiętam dokładnie, co zrobiłem (nie ' t rozumiem kolory i terminale), ale udało mi się uzyskać kolory, które wyglądają dobrze na vimie i naprawić problem z tekstem niebiesko-czarnym, który pojawił się i n bash na wyjściu terminala ubuntu. Teraz ' jest trochę kolorowy, ale działa dobrze. Również z Xming gVim działa dobrze w Ubuntu na Windowsie (właśnie przetestowałem interfejs i próbowałem zapisywać pliki itp.).
  • @Formagella I ' trochę czesze z moimi kolorami. Spędziłem godziny, próbując uzyskać solaryzowane kolory, pracując na podobnym standardzie Linux Vim – opisałem część tego, co zrobiłem w tym problemie . Jednak GVim ma całkiem doskonałe podświetlanie składni (i pogrubienie / kursywa) w systemie Windows, więc przestałem się męczyć i po prostu tego użyłem. Biorąc pod uwagę, że ' w monicie dos, samo podświetlanie składni OK jest świetne i ' jest bardzo przydatne w sesjach SSH, ale edytowanie na pełny etat zrezygnowałem.
  • Dostępna jest ' teraz wersja Mintty działać jako terminal dla Bash w systemie Ubuntu w systemie Windows i implementację Solarized zaprojektowaną dla Mintty. Zrobiłem to przed chwilą i było to stosunkowo bezbolesne doświadczenie!
  • @Formagella I ' wreszcie kolory działały poprawnie w konsoli Windows, zajęło to poprawka w Vimie . Ale od Vima 8.1 + a 24-bitowy schemat kolorów możesz uzyskać piękne kolory w zwykłym znaku zachęty DOS i WSL. Mam oddzielną odpowiedź , która eksperymentuje z różnymi schematami kolorów konsoli Windows i kilka z nich działa.

Odpowiedz

Jak wspomnieli Roflo i Rich w swoim komentarzu tutaj i tutaj , twój problem z niemożnością użycia bloku wizualnego (nie jestem pewien, co to jest polecenie rx) jest spowodowane tym, że systemowy vimrc ($VIM\_vimrc) źródła $VIMRUNTIME\mswin.vim, które definiują mapowania w stylu Windows, takie jak Ctrl + v for wklej, Ctrl + c , aby skopiować, Ctrl + x , aby wyciąć.

Najłatwiejszym sposobem obejścia tego jest utworzenie plików _vimrc w swoim katalogu domowym (zwróć uwagę, że wersja vim dla systemu Windows używa _vimrc zamiast .vimrc). Jak widać na :h vimrc, vim szuka vimrc w kilku lokalizacjach i używa tylko pierwszej znalezionej, ignorując resztę. Ten w katalogu domowym jest zawsze przeszukiwany / używany jako pierwszy.

Minimalne kroki:

  • otwórz gvim lub vim
  • :e ~/_vimrc
  • :w

Odpowiedź

Czysty Vim można pobrać w DOS!

Kolejna dość mała, ale nie mniej ważna aktualizacja wydarzyła się w systemie Windows 10 w wersji 1803. Dodali obsługę 24-bitowej konsoli (znak zachęty cmd / powershell). W Vimie 8.1 ( https://www.vim.org//download.php/#pc ) dodano obsługę for termguicolors, co oznacza, że możesz uzyskać pełną obsługę 24-bitowych kolorów w konsoli Vima. Niedawno opublikowałem odpowiedź dotyczącą uruchomienia obsługi kolorów .

Ale oznacza to, że jest prawie pełne wsparcie dla uruchamiania Vima w znaku zachęty DOS – więc nie musisz instalować żadnego podsystemu Linuksa ani żadnych innych zależności poza samym Vimem, aby czysty Vim działał. Uważam, że nadal jest trochę powolny, ale postępy są świetne.

Czcionki i kolory wspaniale renderują się w Vimie (kliknij ten zrzut ekranu, aby zobaczyć go poprawnie):

enter opis obrazu tutaj

Rzeczy, które działają w konsoli Vima (w Windows 10 kompilacja 1803+):

  • Linia lotnicza z czcionkami Powerline
  • 24-bitowy colortheme (np. vim-solarized8, tender)
  • Prawie każda wtyczka (np.dowolna wtyczka Tim Pope, FZF i Ripgrep)
  • vimdiff
  • Okno konsoli przyciąga się poprawnie z tekstem płynącym poprawnie – to jest lepsze obsługiwane niż GVim

Rzeczy, które nie działają / problemy:

  • Działa wolniej niż GVim
  • Czcionki pogrubione / kursywa
  • Znaki UTF-8 są ograniczone – np niektóre z domyślnych ikon linii lotniczych nie są wyświetlane

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *