GVim maksimize nasıl başlatılır?


38

GVim'i açtığımda penceresini otomatik olarak büyütme nasıl yapılır? Çapraz plataform çözümü, aynı yapılandırmaları Linux ve Windows makinelerinde kullanmaya çalışıyorum ...

Hack'i denedim, :set lines=999 columns=999neredeyse çalışıyor, ancak pencere büyütülmedi, yeniden boyutlandırıldı ve bazı satırları / sütunları kaybediyorum.


3
Bu bildiğim en taşınabilir yol. "Ancak pencere büyütülmedi, yeniden boyutlandırıldı ve bazı satırlar / sütunlar kaybediyorum" hakkında ayrıntılı bilgi verebilir misiniz? Büyütme kenarları kadar yeniden boyutlandırma afaik. Ve hiç böyle bir sıra / kol kaybettiğimi sanmıyorum.
Rook

@Idigas: wm-konuşmak açısından, "o (vs araç çubukları kapsayan değildir) kullanılabilir alanı doldurur kadar yeniden boyutlandırma" Doğru, maksimizasyonu :) adildir
akira

Üstteki kesmeyi ayarlamak kenarlara kadar yeniden boyutlandırılmaz. Daha iyi bir yaklaşımın vimrc'mize bir if ekleyeceğini düşünmeye başladım: eğer pencereler olsaydı, bir config çağır, başka birşey çağır, diğer config.
Biri hala sizi MS-DOS kullanarak

Yanıtlar:


30

Gönderen Vim wiki :

au GUIEnter * simalt ~x

Bu Windows üzerinde çalışacak; Gnome / KDE'de hangi tuş kombinasyonlarına ihtiyaç duyacağınızdan emin değilim.


Bu benim için Windows 7 Ultimate'ta işe yaramadı.
Matt Alexander

2
Ayrıca ne yazık ki işletim sistemi diline de bağlı. Fransızca Windows sürümleri için, olur au GUIEnter * simalt ~n.
52'de

Tersini yapmanın, maksimize etmenin bir yolu var mı? :simalt ~xWindows7x64 ENG'de sadece tek yönlü çalışıyor gibi görünüyor .
TankorSmash

1
~xmenü seçeneği için klavye kısayolundan gelir. Arzu seçeneği için kısayolu kontrol edin ve deneyin. Belki de Restore?
Grzegorz Gierlik

@GrzegorzGierlik Teşekkürler, haklısın. Bunun simalt'alt tuşa basmak' anlamına geldiğini anlamadım . Teşekkürler.
TankorSmash

10

Çapraz platform uyumluluğu konusunda endişeliyseniz en iyi yol set lines=999 columns=999. Vim'in Wiki'sinde buldum ve mükemmel olmamasına rağmen, farklı işletim sistemlerinde çalışmanız gerekiyorsa en iyi çözüm.


Bunu au GUIEnter ile birleştirebilir misiniz * simalt ~ x ??
snitzr

Evet, pencere veya Linux olup olmadığını bilmek için vimrc'nizde bir koşul yaratmak. Çoğunlukla Linux kullandığım için bu yapılandırmayı daha sonra ekleyeceğim.
Biri hala sizi MS-DOS

Bu yaklaşım GNOME 3 altında benim için işe yaramıyor. Pencere zaten maksimize edilmemişken, bu Vim'i bir süreliğine yavaşlatacak (pencere yöneticisini en üst düzeye çıkardığımda olmaz) ve yukarıda biraz kenar Pencereyi açtım, çünkü ekran yüksekliğim mükemmel bir çizgi yüksekliği değil. Pencereyi ekranın soluna veya sağına sürükleyerek, dikey olarak (ancak yatay olarak değil) büyütdüğünüzde bunun bir etkisi olmaz.
Andres Riofrio

@AndresRiofrio Bu durumlar için (Linux'taki çoklu masaüstü ortamları), devilspie kullanmayı düşünüyorum . Bu üçüncü taraf bir çözüm, biliyorum ama işe yarayabilir. Açıkça büyütmek istediğim bazı uygulamalarda kullandım.
Biri hala MS-DOS kullanıyor

Bu ayrıca, pencereyi ekrandan kapatarak büyütmek için büyük olmasına neden olur.
Kevin Cox

6

İle hüner:

au GUIEnter * simalt ~x

Windows diline göre değişir.

Lehçe versiyonumun çalışmaları için:

au GUIEnter * simalt ~ s

Nereden sgeliyor Mak_s_ymalizuj?

Bu yüzden ~xişe yaramazsa, ALT+SPACEPencere menüsünü açmak için basın ve Ma_x_imize Pencere menüsü seçeneğinin kısayolunu kontrol edin .


1
Ve Fransızca için Fransızca ("Agra & ndir")
Sébastien RoccaSerra

1
Norveçli için ~ m
Bjarte Brandt

4

(Windows kullanıyorsanız) Vim'de tam ekran veiw için maximize.dll eklentisini kullanabilirsiniz . Sadece maximize.dll dosyasını vimdirectory/pluginkopyalayın.



3

GNU / Linux'ta

GNU / Linux üzerinde en kolay yolu çağırmaktır gvimile -geometryseçeneği. Örneğin:

gvim -geometry 1336x744

Farklı makinelerde aynı start komutunu tekrar kullanmak isterseniz bu kullanışlı değildir.

İşte şimdi birkaç makinede herhangi bir sorun olmadan kullanıyorum. Sadece içinde yüksek bir yere ekleyin .vimrc.

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

Kaynak: http://vim.wikia.com/wiki/Maximize_or_set_initial_window_size


Linux için bu muhtemelen en iyi seçenektir. .zshrc do alias v = "gvim -geometry 1366x768" içinde ve iyiye hazırsınız.
Tanel Tammik,

@TanelTammik Cevabımı tekrar kontrol et. Şimdi kullanıyorum daha iyi bir çözüm göstermek için büyük ölçüde düzenledi. Oy kullandığınız için teşekkürler.
Serge Stroobandt

2

GÜNCELLEME: linux kullanıcıları için, pencereyi gerçekten büyüten daha iyi bir çözüm buldum: https://stackoverflow.com/questions/12448179/how-to-maximize-vims-windows-on-startup-with-vimrc

Tek bağımlılık wmctrl, ancak yüklemeye değer.

Bu nedenle, windows için maximize.dll eklentisini (zaten fatihturan tarafından bahsedildiği gibi) ve linux için kullanıyorum wmctrl. Harika!

(ancak 2014'te gvim'nin neden bu özelliği kullanamadığını anlamıyorum)


Eski cevap:


Benim için düz kesmek :set lines=999 columns=999Linux Mint MATE cihazımda iki monitörle kötü çalışıyor. Genellikle ikincil monitörde gvim açıldı, görev çubuğu yok, bu yüzden Vim tüm ekranı kaplamalı. Ancak yaparsam :set lines=999 columns=999, gvim bu değerleri birincil monitörün boyutuna küçültür , bu nedenle kullanılmayan gvim penceresinin altında küçük bir alan vardır. Gerçek satır / sütun sayısı ayarladıysam daha iyi olur: sadece pencerenizi "elle" maksimize edin :set lines?ve :set columns?gerekli değerleri elde etmek için ve yazın . İki monitör kullandığımdan, pencere konumunu da belirtmem gerekiyor, o nedenle :winposgeçerli pencere konumunu almak için yazın .

İkincisi, sadece bu ayarları yapmak .vimrcdeğil, gui yüklendiğinde bunları çalıştırmak daha iyidir .

Yani, son tarif:

1) elle sizin GVIM maksimize etmek ve gerçek değerleri elde etmek için üç komutları yazın: :winpos, :set lines?ve :set columns?.

2) şunu ekle .vimrc:

function Maximize()

   " put your actual values below
   winpos 0 0
   set lines=78
   set columns=237

endfunction

autocmd GUIEnter * call Maximize()

İlginç. Belki dinamik olarak vimscript'te satır ve sütun değerlerini alabilirsiniz, bu yüzden bu yapılandırma tüm cihazlarda çalışacaktır.
Biri hala sizi MS-DOS

1

Ubuntu (16.04)

Pencere yöneticisinin bu görevi yapmasına izin verin, en azından Ubuntu'da , gvimpencereyi büyütmek yerine tam ekran yapıp size daha fazla alan kazandırır. Elbette bu çözüm platforma bağımlı ve platformlar arası değil ama Ubuntu için çok daha iyi bir seçenek . gvimBelirli bir vitrinde açmaya bile ayarlayabilirsiniz .

Compiz Yapılandırma Ayarları Yöneticisi -> Windows'u Yerleştir -> Sabit Pencere Yerleşimi -> Sabit yerleştirme moduna sahip Windows -> yeni

 Windows class=Gvim
 Mode    Maximize

Compiz Config Settings Manager yoksa:

sudo apt install compizconfig-settings-manager

1

Vim'in Windows'ta tam ekrana tam olarak ulaşmasını istiyorsanız (resimde olduğu gibi), eklenti gvimfullscreen_win32şiddetle önerilir.

Eklenti, tam ekran moduna ve dikkat dağıtıcı olmayan ortama daha kolay erişim sağlar. Daha :set go=fazla alan kazanmak için de ekleyebilirsiniz . İşte bir ekran görüntüsü (Windows 8.1'de Gvim7.4):

görüntü tanımını buraya girin


0

İstediğini $HOME/.vimrcelde etmek için bunu yapabileceğine inanıyorum :

if has("gui_running")
     set fuoptions=maxvert,maxhorz
     au GUIEnter * set fullscreen
 endif

Tam ekranın nerelerde uygulandığını onaylayabilirsiniz:

:verbose set nofullscreen?
 fullscreen
       Last set from ~/.vim_runtime/my_configs.vim

Görünüşe göre bu sadece MacVim için işe yarıyor.
Michael Yoo
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.