Wie kann ich erreichen, dass gvim in Windows maximiert gestartet wird?


15

Ich möchte, dass meine Redakteure mir so viel Platz auf dem Bildschirm wie möglich geben, da ich dadurch den größten Teil des Codes auf einmal sehen kann.

Das Problem ist, dass gvimich anscheinend entweder ein 80x25-Fenster habe oder mich an die letzte nicht maximierte Größe erinnere, je nachdem, wie ich es aufgerufen habe.

Wie kann ich es also zwingen, so groß wie möglich zu sein, unabhängig von einem erinnerten Zustand?


Ich werde in der Tat empfehlen das Plugin github.com/xolox/vim-shell , die für gvim auf win32 funktioniert und win64 beide mit <F11> Umschalten zwischen Vollbild / Normalmodus
van abel

Antworten:


21

Sie können diese Zeile setzen:

autocmd GUIEnter * simalt ~x

am Ende Ihrer gvimrcDatei.

Diese Methode nutzt das autocmdFeature, um seine Magie zu verweben. Der Befehl autocmd GUIEnter *gibt einen Befehl an, der ausgeführt werden soll, nachdem die GUI für ein Dateimuster von *(eine beliebige Datei) erfolgreich gestartet wurde .

Der Befehl, den es ausführt simalt ~x(nur in Windows-Varianten vim), simuliert den Tastenanschlag. Dies Alt Spacebarxsind die Tastenanschläge, die das Fenster maximieren.

Sie können auch die verkürzte Version verwenden:

au GUIEnter * sim ~x

Ich selbst bevorzuge jedoch vollständig erweiterte Befehle, zumal Sie diese festlegen und vergessen. Bei der Installation auf einem Windows-System müssen Sie sie nur einmal eingeben vim.


Denken Sie daran, dass dies Tastenanschläge simuliert, um ihre Ziele zu erreichen. Bei englischen Versionen funktioniert es einwandfrei, da Alt-SpaceXSie so ein Fenster maximieren.

Wenn dies bei Ihnen nicht funktioniert, sollten Sie die Tastenanschläge in dem von Ihnen verwendeten Gebietsschema untersuchen. In der französischen Version wird beispielsweise Agrandir(Vergrößern) mit dem nals Steuertastenanschlag verwendet. Der Befehl, den Sie dort benötigen würden, lautet also:

autocmd GUIEnter * simalt ~n

(Das würde Ihr Fenster auf Englisch minimieren ).

Wenn Sie eine andere (nicht englische, nicht französische) Variante verwenden, drücken Sie einfach Alt-Spaceauf ein Fenster, um das Systemmenü aufzurufen, und finden Sie heraus, welche Taste verwendet werden sollte (sie sollte unterstrichen sein).


Um Ihre Datei zum Hinzufügen eines beliebigen Befehls zu findengvimrc , können Sie Folgendes eingeben:

:version
:echo $VIM
:echo $HOME

und Sie sollten eine Liste der Startdateien und Variablen erhalten, wie:

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

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

Ihre gekürzte Version der AutocMD fehlt die *.
Jamessan

Diese Methode funktioniert bei mir nicht: Anstatt das Fenster zu maximieren, wird ein Popup-Menü geöffnet, mit dem Sie das Fenster wiederherstellen, verschieben, minimieren, maximieren (...) können. Ich benutze Windows 7 SP1 und gvim 7.4.711. Wie kann ich es zum Laufen bringen?
statox

@statox, das würdest du sehen, wenn du xam Ende aufgehört hättest . Stellen Sie sicher, dass Sie den vollständigen Text haben au GUIEnter * sim ~x.

@paxdiablo Ich bin nicht sicher zu verstehen, dass ich die vollständige Zeile (sowohl lange als auch kurze Version) von aunach kopiert habe ~x. Gibt es ein Leerzeichen, das mir fehlt oder so?
statox

@statox, wenn Sie ein gvim-Fenster geöffnet haben und mit der Maus auf die Systemschaltfläche klicken (das vim-Symbol ganz oben links über dem Dateimenü), sehen Sie eine Maximierung? Wenn dieses Systemmenü geöffnet ist, maximiert es, wenn Sie x drücken?

7

Alternativ zum maximierten Fenster können Sie mit einem Autostart-Vollbildmodus nicht mehr Platz für eine vollständige Bearbeitung von mehreren Fenstern gewinnen. ;-)

VOLLBILD-Screenshot des Endergebnisses (= ALL THE VIDEO Pixel Kapazität): Video-Vollbild-Screenshot

Meiner Meinung nach ist das besser als ein Fenster zu maximieren: ein vollständiger VOLLBILDSCHIRM (wie ich es früher mit puTTY mit ALT-Enter getan habe, als ich es auf einem entfernten Unix-Terminal bearbeitete ...)

Ich erkläre, wie man:

Schritt 1

Installieren Sie das hervorragende Dienstprogramm, um die Verwendung im Vollbildmodus in gvim unter Windows zu ermöglichen:

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

Sie müssen die DLL-Datei gvimfullscreen.dll herunterladen und in dasselbe Verzeichnis stellen, in dem sich gvim.exe befindet ($ VIM / vim74 mit gVim Release 7.4). So laden Sie die DLL herunter (ohne git zu verwenden):

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

Schritt 2

Bearbeiten Sie die .vimrc- Datei (in vim :), und fügen Sie:e $HOME/.vimrc diese Befehle ein, um den Vollbildmodus automatisch zu starten. Mit der Funktionstaste F11 können Sie zwischen drei Status wechseln : Vollbild, Fenster maximiert, Original- / Standardfenstergröße:

"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>

Schritt 3

Bearbeiten Sie die .gvimrc- Datei (in vim :),:split $HOME/.gvimrc indem Sie diese Befehle einfügen, um Menüleisten und unnötiges Zeug zu vermeiden:

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

Gibt es einen gvimwin64-Vollbildschirm? oder können wir es mit dem projekt auf github kompilieren?
van abel


2

Von :help 'lines':

Anzahl der Zeilen des Vim-Fensters.
[...]
Wenn Vim auf der Benutzeroberfläche oder in einem Fenster mit veränderbarer Größe ausgeführt wird, wird durch Festlegen dieser Option die Fenstergröße geändert.
[..]
Sie können diesen Befehl verwenden, um das größtmögliche Fenster zu erhalten:
:set lines=999

Die columnsOption macht dasselbe mit Ausnahme der Breite (in Zeichen).

So können Sie beispielsweise Folgendes in Ihre vimrc-Datei einfügen:

set lines=55
set columns=120

Dies ist nicht dasselbe wie das Maximieren (selbst wenn Sie den 999oben beschriebenen Wert verwenden), da "Maximieren" ein spezielles Flag ist, das in das Fenster gesetzt wird und einige Vorgänge (wie das Verschieben) subtil ändert, aber es sollte Ihr Problem lösen standardmäßig eine kleine Fenstergröße von 80x25 haben.


Das ist nicht schlecht, obwohl es ein 234x56Fenster auf meinem System gibt, während das Maximieren gibt 236x57. Dennoch ist es kein allzu großes Problem, zwei Spalten und eine Zeile in dieser Größe kurz zu halten , insbesondere für etwas, das möglicherweise auch auf Nicht-Windows-Plattformen funktioniert, obwohl ich es noch nicht getestet habe. Ich werde heute Abend einen Blick darauf werfen, wenn ich zu meiner geliebten Debian-Box nach Hause

Mit meinem Debian ist das Standardfenster 200x50 und setzt sowohl Zeilen als auch Spalten auf 999 in einer beliebigen RC- vimDatei oder mit gvim -c 'set them'236x61 und Maximieren auf 237x61, also noch näher als unter Windows. Interessanterweise habe gvim -geometry 999x999ich ein maximiertes Fenster in der etwas größeren Größe, sodass es für Nicht-Windows-Benutzer möglicherweise besser ist, obwohl ich vermute, dass es schwieriger sein wird, sicherzustellen, dass alle Aufrufmethoden dies verwenden. Schade, dass es für Nicht-Win-Plattformen kein ähnliches Produkt gibt.

Trotzdem ist es eine Wiederholung wert, da es nah genug ist und portabler ist als die Nur-Win-Methode. Übrigens, die Verwendung von 9999 x 9999 als Geometrie flippt aus, vimda es keine Fenster mit Abmessungen über 64 KB Pixel mag (Geometrie ist in diesem Fall eher Zeichenzellen als Pixel). 999x999 scheint in Ordnung zu funktionieren. Ich bin mir nicht sicher, wie dies bei Systemen mit mehreren Monitoren funktionieren würde.

Ja, diese Methode ist nicht perfekt, aber wie Sie bereits erwähnt haben, ist sie plattformübergreifend und möglicherweise auch schneller (das Ausführen von Befehlszeilentools beim Start kann zumindest unter Windows Vim zu einer gewissen Verzögerung führen) als ich es vor ein paar Jahren benutzt habe).
Martin Tournoij

Wenn Sie die Spalten / Zeilen so einstellen, dass 160 x 42eine Fensterform entsteht, die in etwa dem goldenen Schnitt entspricht, erhalten Sie die beeindruckende Wirkung von 42!
Roblogic

0

Zusätzlich zu den gVim-spezifischen Befehlen in den anderen Antworten gibt es einige Standardfunktionen von Windows, mit denen jede Anwendung maximiert gestartet werden kann.

Wenn Sie gVim über eine Verknüpfung starten, z. B. über das Startmenü oder den Desktop, können Sie die Verknüpfungseigenschaften ändern, um Vim maximiert zu starten. Klicken Sie mit der rechten Maustaste auf die Verknüpfung, wählen Sie "Eigenschaften" und dann "Maximiert" aus der Dropdown-Liste "Ausführen". Dies wirkt sich jedoch nur auf diese Verknüpfung aus. Daher wird gVim auch dann in einem kleinen Fenster geöffnet, wenn es über eine andere Verknüpfung, das Dialogfeld Ausführen oder die Befehlszeile gestartet wird.

Wenn Sie gVim von der Kommandozeile oder einer Batch - Datei starten, können Sie CMD verwenden startBefehl: start "" /max "C:\Program Files (x86)\Vim\vim73\gvim.exe". (Das ""ist erforderlich, wenn der Pfad zu gvim.exe in Anführungszeichen gesetzt ist. Wenn Sie einen nicht zitierten Pfad ohne Leerzeichen verwenden, können Sie ihn weglassen:. start /max C:\Progra~2\Vim\vim73\gvim.exe)


Ich weiß nicht, wie der Standardbefehl startlautet, aber ich habe meinen PATH überschrieben und jetzt ist der von mingsys da. Passen Sie startalso auf, dass Sie den richtigen
ausführen

Ich habe es versucht ("von einer Verknüpfung ... wählen Sie Maximiert"). Das Fenster blitzte und hatte dann dieselbe Größe wie beim Starten von einer DOS-Cmd-Shell. Um fair zu sein, habe ich in meiner .vimrc-Datei Befehle, die explizit eine Größe (Zeilen / Spalten) festlegen, sodass ich vermute, dass letztere den Maximierungsversuch außer Kraft setzt.
Rich p

Diese Art von Dingen gibt es auch als Funktion einiger Linux Window Manager. Ich möchte zum Beispiel, dass meine Vim-Fenster in voller Höhe sind, aber zwei meiner Monitore sind 1024 Pixel groß, während der mittlere 1080 Pixel groß ist. Wenn Sie Vim so einstellen, dass es mit dem Kontrollfeld "Fensterregeln" von KDE vertikal maximiert startet, wird die Größe von gVim angepasst, wenn es von Monitor zu Monitor verschoben wird. (Es hat auch den zusätzlichen Vorteil lines, dass die Einstellung gvimrc
außer Kraft
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.