Jakie dodatkowe funkcje oferuje gVim i / lub MacVim w porównaniu do Vima w emulatorze terminali?

23

Uczę się Vima, oglądając screencasty. Zastanawiam się, dlaczego wiele osób korzysta z gVim lub MacVim?

Z tego, co widzę, wersja GUI Vima ma tylko dodatkowe funkcje, które wymagają użycia myszy. Ale czy nie jest to sprzeczne z „filozofią Vima”?

Czy ktoś może wyjaśnić, jakie dodatkowe funkcje oferuje wersja GUI Vim w porównaniu do Vima opartego na terminalu?

Aaron Shen
źródło
Gui vim pozwala na ponad 256 kolorów, a także inne formatowanie tekstu, więc może to być remis. Osobiście nie rozumiem, dlaczego ludzie wolą gui vim, ponieważ uważam, że terminal vim jest wygodniejszy. Ale to moja opinia.
EvergreenTree,

Odpowiedzi:

27

Niektóre funkcje, które będą działać tylko z gVim:

  • 24-bitowa obsługa kolorów od razu po wyjęciu z pudełka (aby uzyskać taką samą liczbę kolorów w terminalowym vimie, musisz spróbować trochę mocniej, zobacz to i to ). W przypadku prawdziwej kursywy to samo dotyczy prawdy (patrz to i to ). Pamiętaj, że powinieneś używać czcionki, która obsługuje prawdziwą kursywę.
  • Niektóre inne bardziej zaawansowane funkcje graficzne, takie jak „faliste linie” do sprawdzania pisowni, bardziej elastyczne kształty kursorów itp. Terminal może wykonywać tylko „bloki znaków o stałej szerokości”.
  • Włącza obsługę myszy , o ile nie zostanie pozostawiona sama sobie (w tym przeciąganie i upuszczanie plików). Terminal Vim może również całkiem dobrze obsługiwać mysz, ale nie przeciągnij i upuść.
  • Oferuje ładny, konfigurowalny system menu, w którym każda opcja ma na liście odpowiednie polecenie Vima.
  • gVim może zaoferować paski przewijania, które przewijają bufor Vima (a nie przewijanie terminala).
  • Możesz mieć wyskakujące „balony” (aka. „Podpowiedzi”).
  • Ma zintegrowaną obsługę czcionek .
  • Niektóre skróty klawiszowe działają od razu z gVimem, takie jak CTRL+ Space, Meta+ e... podczas gdy w innym przypadku wymagają więcej ulepszeń terminala.

Po drugie, nawet jeśli wolisz korzystać z Vima, instalując wersję GUI może oferować więcej funkcji czasu kompilacji niż wersja bez, przynajmniej w niektórych dystrybucjach (takie jak clipboardi clientserverwsparcie w systemie opartym na Debianie vim-noxvs vim-gnome).

Ponadto w systemie Windows można zmienić rozmiar okna gVim łatwiej niż okno konsoli Vima.

Czego nie robi gVim :

  • gVim nie jest (pełnym) emulatorem terminala, więc uruchamianie zewnętrznych programów, które używają wielu funkcji terminala, nie będzie działać dobrze. Na przykład spróbuj użyć :!vim, :!muttlub :!irssiz gVim lub naciskając Kna słowo (które domyślnie otwiera manpage dla tego słowa). Zobacz także .
muru
źródło
1
Regularny vim jest również wygodniejszy, jeśli będziesz często używać SSH, ponieważ można go umieścić pod tmux lub screenem i nie wymaga on obsługi X11 na żadnym końcu.
Kevin
właściwie gvim ma dołączony terminal od czasu jednej z późniejszych łatek 8.0. Możesz więc uruchomić terminal i uruchomić w nim interaktywne programy.
Christian Brabandt
1
Menu z pewnością jest ładniejsze i bardziej zintegrowane z GUI vim, ale istnieją i są użyteczne w vim konsoli. Należy pozyskiwać, menu.vima następnie prawdopodobnie używać set wildmenui :emenu <Tab>nawigować w sposób, który przypomina ... cóż, menu.
brhfl
@brhfl Zamiast tego powiedziałbym „ledwo” użyteczny.
mur
Społeczność wiki @ChristianBrabandt! Śmiało, edytuj. :)
mur
4

Mogę tylko porozmawiać o gVimie. Poza podstawowymi różnicami odkryłem, że używanie gVim bardzo mi pomaga na początku w nauce podstawowych poleceń (na przykład jeden ze sposobów kopiowania zaznaczonego tekstu do schowka za pomocą „+ y) poprzez czytanie każdego skrótu wyświetlanego w menu. brzmi to głupio, ale naprawdę powinieneś poświęcić trochę czasu na przeglądanie menu, a nie tylko kliknięcie elementu, ale także przetestowanie pokazanego skrótu.

Javier Scappini
źródło
4

Niektórzy z nas utknęli w krainie Windows, więc opcje terminali są mniej wygodne.

W Eksploratorze Windows możesz kliknąć plik prawym przyciskiem myszy i natychmiast go otworzyć za pomocą gVim. Jest to o wiele łatwiejsze i szybsze niż otwieranie terminala (cygwin lub cokolwiek innego), nawigacja do katalogu i podglądanie pliku.

(Na moim komputerze PC, gVim i MinGW bash pokrywają większość moich potrzeb edycyjnych)

roblogic
źródło
Działa również w świecie Linux. Jeśli chcesz otworzyć plik w vimie bezpośrednio z nautilus, gvim jest dostępny, podczas gdy vim nie jest.
kuldeep.kamboj
@ kuldeep.kamboj Jest to po prostu kwestia konfiguracji Nautilis; możesz użyć xterm -e vim %lub coś takiego ...
Martin Tournoij
1
Właśnie dlatego gVimzainstalowałem. Czcionki terminali Windows powodują krwawienie oczu.
Shahbaz,
1

Aby dodać trywialną rzecz: Podczas korzystania z gvim, lista okien mojego pulpitu pokazuje ładny symbol Vima, a nie symbol Xterm, co ułatwia przejście do edytora, jeśli otwartych jest wiele xtermów.

PhilippFrank
źródło
2
Możesz zmienić ikonę okna za pomocą xseticon:-)
Martin Tournoij
1

Jedną z kluczowych rzeczy dla mnie, która wciąż zmusza mnie do używania wersetów MacVima tylko terminal + vi, jest prędkość. Mam wiele wtyczek vima i podpowiedzi językowych i kontrolerów składni, które zaskakująco obciążają terminal VI, podczas gdy skompilowany bin MacVim dobrze radzi sobie z tym cukrem syntatycznym.

Dan Shumaker
źródło
0

Zmiana kształtu kursora w zależności od trybu (np. Normalny vs Wstaw) działa bardzo dobrze w gVim. Powinno to działać, gdy korzystam z vima w programie terminalowym takim jak Konsole, ale nigdy nie widziałem, żeby działał.

John Schmitt
źródło
Nie używam szczególnie fantazyjnych emulatorów terminali w Linuksie, ale mogę potwierdzić, że działa bardzo dobrze w mintty / cygwin i iTerm2 na Macu.
brhfl