Jak mogę zmaksymalizować gvim w systemie Windows?

15

Chciałbym, aby moi redaktorzy dali mi jak najwięcej nieruchomości ekranowych, ponieważ zwiększa to moją zdolność do widzenia większości kodu na raz.

Problem polega na tym, że gvimwydaje mi się albo okno 80x25, albo pamiętam ostatni niezmaksymalizowany rozmiar, w zależności od tego, jak go wywołałem.

Jak więc zmusić go do jak największej wielkości, niezależnie od zapamiętanego stanu?

200_sukces
źródło
W rzeczywistości polecę wtyczkę github.com/xolox/vim-shell , która działa dla gvim na Win32 i Win64 zarówno, z <F11> Przełączanie pomiędzy trybem pełnoekranowym / normalnym
van Abel

Odpowiedzi:

21

Możesz umieścić tę linię:

autocmd GUIEnter * simalt ~x

na końcu gvimrcpliku.

Ta metoda wykorzystuje tę autocmdfunkcję do tkania swojej magii. Polecenie autocmd GUIEnter *określa polecenie, które ma zostać uruchomione po pomyślnym uruchomieniu GUI dla wzorca pliku *(dowolnego pliku).

Polecenie, które wykona simalt ~x(tylko w wersjach Windows vim), symuluje naciśnięcie klawisza Alt Spacebarx, które są klawiszami, które zmaksymalizują okno.

Możesz także użyć skróconej wersji:

au GUIEnter * sim ~x

ale ja osobiście wolę w pełni rozwinięte polecenia, zwłaszcza że jest to coś, co można ustawić i zapomnieć, wpisując tylko raz podczas instalacji vimw systemie Windows.


Pamiętaj, że jest to symulacja naciskania klawiszy w celu osiągnięcia jego celów. W wersjach angielskich będzie działać dobrze, ponieważ Alt-SpaceXmaksymalizuje okno.

Jeśli to nie zadziała, powinieneś sprawdzić naciśnięcia klawiszy w dowolnym używanym języku. Na przykład wersja francuska użyje Agrandir(powiększenie) njako klawisza sterującego, więc potrzebne polecenie to:

autocmd GUIEnter * simalt ~n

(co faktycznie zminimalizowałoby twoje okno w języku angielskim).

Jeśli jesteś innym wariantem (innym niż angielski, nie francuski), po prostu naciśnij Alt-Spaceokno, aby wyświetlić menu systemowe, i dowiedz się, jakiego klucza należy użyć (należy to podkreślić).


Aby znaleźć swój gvimrcplik za dodanie cokolwiek trzeba dowodzić, można wpisać:

:version
:echo $VIM
:echo $HOME

i powinieneś otrzymać listę plików startowych i zmiennych, takich jak:

system gvimrc file = "$VIM/gvimrc"
  user gvimrc file = "$HOME/_gvimrc"

C:\Program Files (x86)\Vim
C:\Users\Pax\Documents

źródło
W skróconej wersji programu autocmd brakuje pliku *.
jamessan
Ta metoda nie działa dla mnie: zamiast maksymalizacji okna otwiera się wyskakujące menu pozwalające na uspokojenie, przesuwanie, minimalizowanie, maksymalizowanie (...) okna. Używam Windows 7 SP1 i gvim 7.4.711. Jak mogę to zrobić?
statox
@statox, to byś zobaczył, gdybyś odszedł xod końca. Upewnij się, że masz pełny tekst au GUIEnter * sim ~x.
@paxdiablo Nie jestem pewien, czy rozumiem, że skopiowałem pełną linię (zarówno długą, jak i krótką wersję) od audo ~x. Czy brakuje mi jakiegoś białego znaku, czy czegoś takiego?
statox
@statox, kiedy masz otwarte okno gvim i klikniesz myszką przycisk systemowy (ikona vim najbardziej w lewym górnym rogu, nad menu pliku), czy widzisz maksymalizację? Kiedy to menu systemowe jest otwarte, czy maksymalizuje się po naciśnięciu x?
7

W przeciwieństwie do zmaksymalizowanego okna, dlaczego nie zyskać więcej miejsca na pełną edycję wielu okien w vimie w trybie automatycznego uruchamiania PEŁNEGO EKRANU? ;-)

Zrzut ekranu PEŁNEGO EKRANU końcowego wyniku (= pojemność WSZYSTKICH WIDEO pikseli): zrzut ekranu pełnoekranowego wideo

Moim zdaniem jest to lepsze niż maksymalizacja systemu Windows: pełny PEŁNY EKRAN (tak jak robiłem puTTY z ALT-Enter podczas edycji na zdalnym terminalu unix ...)

Wyjaśniam, jak:

Krok 1

Zainstaluj doskonałe, piękne narzędzie, aby umożliwić korzystanie z pełnego ekranu w gvim w systemie Windows:

https://github.com/derekmcloughlin/gvimfullscreen_win32/tree/master

Musisz pobrać plik DLL gvimfullscreen.dll i umieścić go w tym samym katalogu, w którym znajduje się gvim.exe ($ VIM / vim74 z gVim wersja 7.4). Aby pobrać bibliotekę DLL (bez użycia git):

https://github.com/derekmcloughlin/gvimfullscreen_win32/raw/master/gvimfullscreen.dll

Krok 2

Edytuj plik .vimrc (wewnątrz vim:) :e $HOME/.vimrc, wstawiając te polecenia, aby automatycznie uruchomić pełny ekran i pozwalając klawiszowi funkcyjnemu F11 przełączać tryby pomiędzy 3 stanami: pełny ekran, maksymalizacja okna, oryginalny / domyślny rozmiar okna:

"run the command immediately when starting vim
autocmd VimEnter * call libcallnr("gvimfullscreen.dll", "ToggleFullScreen", 0)

" activate/deactivate full screen with function key <F11>  
map <F11> <Esc>:call libcallnr("gvimfullscreen.dll", "ToggleFullScreen", 0)<CR>

Krok 3

Edytuj plik .gvimrc (wewnątrz vim :):split $HOME/.gvimrc wstawiając te polecenia, aby uniknąć paska menu i bezużytecznych rzeczy:

set guioptions-=m  "remove menu bar
set guioptions-=T  "remove toolbar
set guioptions-=r  "remove right-hand scroll bar
set guioptions-=L  "remove left-hand scroll bar
Giorgio Robino
źródło
Czy istnieje gvimwin64fullscreen? czy możemy go skompilować używając projektu na github?
van abel
2

Od :help 'lines':

Liczba linii okna Vima.
[...]
Gdy Vim działa w GUI lub w oknie o zmiennym rozmiarze, ustawienie tej opcji spowoduje zmianę rozmiaru okna.
[..]
Możesz użyć tego polecenia, aby uzyskać najwyższe możliwe okno:
:set lines=999

columnsOpcja robi to samo, z wyjątkiem szerokości (w znakach).

Możesz na przykład umieścić to w pliku vimrc:

set lines=55
set columns=120

To nie jest to samo, co maksymalizacja (nawet jeśli użyjesz 999wartości opisanej powyżej), ponieważ „maksymalizacja” to specjalna flaga umieszczona w oknie i subtelnie zmienia niektóre operacje (np. Ruch), ale powinna rozwiązać twój problem domyślnie ma mały rozmiar okna 80 x 25.

Martin Tournoij
źródło
Nie jest tak źle, choć daje 234x56okno w moim systemie, podczas gdy maksymalizacja daje 236x57. Mimo to, jest krótki dwie kolumny i jeden wiersz w tym rozmiarze nie jest zbyt wielkim problemem, zwłaszcza na coś, co może działać na platformach innych niż Windows, a także, choć w rzeczywistości nie przetestował. Zobaczę dziś wieczorem, kiedy wrócę do domu do mojej ukochanej skrzynki Debiana :-)
W moim Debianie domyślnym oknem jest 200x50, ustawiając zarówno linie, jak i kolumny na 999 w dowolnym z nich vim, plik rc lub z, gvim -c 'set them'daje mi 236x61, a maksymalizacja daje 237x61, czyli nawet bliżej niż pod Windows. Co ciekawe, gvim -geometry 999x999daje mi zmaksymalizowane okno przy nieco większym rozmiarze, co może być lepsze dla systemów innych niż Windows, chociaż podejrzewam, że trudniej będzie zapewnić, że wszystkie metody wywoływania tego używają. Szkoda, że ​​nie ma czegoś takiego jak simalt dla platform innych niż Win.
Mimo to warto powtórzyć, ponieważ jest wystarczająco blisko i jest bardziej przenośny niż metoda „tylko wygrana”. Nawiasem mówiąc, używanie 9999x9999 jako geometrii wariuje, vimponieważ nie lubi okien o wymiarach powyżej 64K pikseli (geometria to w tym przypadku komórki znaków, a nie piksele). Wygląda na to, że 999x999 działa dobrze. Nie jestem pewien, jak by to wyglądało w systemach z wieloma monitorami.
Tak, ta metoda nie jest idealna, ale jak wspomniałeś, jest wieloplatformowa i może być także szybsza (uruchamianie narzędzi wiersza polecenia podczas uruchamiania może spowodować trochę opóźnienia w Windows Vim, przynajmniej tak było kiedy użyłem go kilka lat temu).
Martin Tournoij
Ustawienie kolumn / linii w taki sposób, aby 160 x 42nadać kształtowi okna przybliżenie złotego współczynnika , daje niesamowite efekty 42!
roblogic
0

Oprócz poleceń specyficznych dla gVim w innych odpowiedziach, istnieje kilka standardowych funkcji systemu Windows, aby uruchomić dowolną aplikację zmaksymalizowaną.

Jeśli wpatrujesz się w gVim ze skrótu, na przykład z menu Start lub pulpitu, możesz zmienić właściwości skrótu, aby uruchomić Vim zmaksymalizowany. Kliknij skrót prawym przyciskiem myszy, wybierz Właściwości i wybierz Maksymalizuj z rozwijanej listy Uruchom. Wpłynie to jednak tylko na ten skrót, więc gVim nadal otworzy się w małym oknie, jeśli zostanie uruchomiony z innego skrótu, okna dialogowego Uruchom lub wiersza poleceń.

Jeśli zaczynają gVima z wiersza polecenia lub pliku wsadowym, można użyć w cmd startpolecenie: start "" /max "C:\Program Files (x86)\Vim\vim73\gvim.exe". (Jest ""to wymagane, jeśli podano ścieżkę do pliku gvim.exe. Jeśli używasz ścieżki bez cudzysłowu bez spacji, możesz ją pominąć:. start /max C:\Progra~2\Vim\vim73\gvim.exe)

Lithis
źródło
Nie wiem, jaka jest domyślna startkomenda, ale nadpisałem swoją ŚCIEŻKĘ, a teraz mingsys's startjest, więc uważaj, że uruchamiasz właściwą
TankorSmash
Próbowałem tego („ze skrótu ... wybierz Maksymalizuj”). Okno błysnęło, a następnie wyglądało tak samo, jak przed uruchomieniem z powłoki cmd systemu DOS. Aby być uczciwym, mam w moim .vimrc polecenia, które jawnie ustawiają rozmiar (linie / kolumny), więc podejrzewam, że to ostatnie przesłania próbę maksymalizacji.
bogaty p
Tego rodzaju funkcja istnieje również w zależności od niektórych menedżerów okien systemu Linux. Na przykład podoba mi się, że moje okna Vima są na pełnej wysokości, ale dwa moje monitory mają wysokość 1024 pikseli, a środkowy - 1080 pikseli. Ustawienie Vima na maksymalne uruchomienie w pionie za pomocą panelu sterowania „Reguły okien” KDE zapewnia, że ​​gVim zmieni rozmiar, aby dopasować się podczas przenoszenia z monitora na monitor. (Ma również tę dodatkową zaletę, że zastępuje linesustawienie, więc mogę zostawić to gvimrcjako awarię dla systemów, w których nie skonfigurowałem takiego ulepszenia.)
ssokolow