created 2001 · complexity basic · author Leif Wickland · version 6.0
To set the initial size of the Vim window[]
Place the following in your vimrc to control the initial size of the Vim or gvim window (change the numbers to what you need):
set lines=50 columns=1000
Here is a more sophisticated version:
if has("gui_running") " GUI is running or is about to start. " Maximize gvim window (for an alternative on Windows, see simalt below). set lines=999 columns=999 else " This is console Vim. if exists("+lines") set lines=50 endif if exists("+columns") set columns=100 endif endif
On Linux/bsd's terminal, this is done automatically. If you want to set the initial size of gvim, you can put set lines=N columns=N
in .gvimrc. Some systems support -geometry
as shown in the following example. :help -geometry
gvim -geometry 97x46+1913+145
To maximize the initial gvim window using wmctrl (X server)[]
Instead of running gvim directly, you can run the following simple script:
#!/bin/bash exec=/usr/bin/gvim #here you can modify the location of gvim $exec -f $* & pid=$! winid="" while [ -z $winid ]; do sleep 0.05 winid=`wmctrl -pl |grep -P "^0x[0-9a-f]+[ ]+[-0-9]+[ ]+$pid" | cut -f1 -d' '` done # echo "debug: $exec started, PID=$pid, Window ID=$winid" #this maximizes the gvim window wmctrl -i -b add,maximized_vert,maximized_horz -r $winid #this switches the gvim window to fullscreen wmctrl -i -b add,fullscreen -r $winid
In words, the script starts gvim, saves its process id and using wmctrl finds the window id of gvim. After that, it sends either a command for maximizing and/or for fullscreen.
If you want to have this as the default whenever you call gvim, you can, e.g., save this script as /usr/local/bin/gvim .
To maximize the initial Vim window under Windows[]
On some Windows systems, pressing Win-Up (Windows key and the Up cursor key) maximizes the window, and Win-Down restores it.
Put the following in your vimrc to maximize Vim on startup (from :help win16-maximized):
" Use ~x on an English Windows version or ~n for French. au GUIEnter * simalt ~x
To run a single session of Vim maximized use:
gvim -c 'simalt ~x'
A Windows alternative would be to change the properties of the shortcut to start Vim, for example:
cmd /c start /max "C:\Program Files\vim\vim71\gvim.exe"
This will not work, however, if you disable the menu with guioptions-=m
and this is not usable if you need to specify gvim as configuration option of some third party tools (file managers etc).
Using Maximize.dll plugin[]
There is also a plugin with a DLL to maximize/restore the Vim window: maximize.dll: Maximizing plugin for Win32 gvim.
Using Nircmd[]
Nircmd is a small tool from Nirsoft that can be used to automate various aspects of Windows environment. You can use it to start application maximized or maximize running application window:
nircmd.exe exec max "C:\Program Files (x86)\vim\vim74\gvim.exe"
or as PowerShell function that accepts file argument
function gvim($file) { start nircmd.exe "exec max ""C:\Program Files (x86)\vim\vim74\gvim.exe"" $file" }
To maximize the initial Vim window under Sawfish[]
You can configure Sawfish to automatically maximize gvim on startup:
- Run "sawfish-ui".
- Select "matched windows", "Add...".
- In "macthers" select "Class".
- "Grab..." and click the gvim window.
- Select the "Maximized" checkbox and click "OK".
Comments[]
TODO Following are related tips. Should merge some of these.
- 427 Fast window resizing with plus/minus keys
- 488 Start with a wide window for diff
- 494 Maximize or restore window
- 507 Quick window resizing
- 669 Nice window resizing
- 883 Automatically maximizing gvim in KDE
- 1110 Toggle gvim window size
Edit June 9, 2014[]
An edit put simalt ~x
in the "more sophisticated" script, but that is already in the tip so I removed it. JohnBeckett (talk) 05:57, June 10, 2014 (UTC)