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)