Як змусити gvim розпочати максимізацію в Windows?


15

Я хотів би, щоб мої редактори дали мені якомога більше екранного нерухомості, оскільки це збільшує мою здатність бачити більшість коду одночасно.

Проблема полягає в тому, що, gvimздається, дають мені або вікно 80х25, або запам'ятовують останній не максимізований розмір, залежно від того, як я його викликаю.

Отже, як я можу змусити його бути максимально великим, незалежно від стану, що запам'ятовується?


Я фактично рекомендую плагін github.com/xolox/vim-shell , який працює для gvim на win32 та win64, обидва, з <F11> Перемиканням між повноекранним / нормальним режимом
van abel

Відповіді:


21

Ви можете поставити цей рядок:

autocmd GUIEnter * simalt ~x

в кінці gvimrcфайлу.

Цей метод використовує autocmdфункцію, щоб плести свою магію. Команда autocmd GUIEnter *задає команду, яку потрібно запустити після успішного запуску графічного інтерфейсу для шаблону файлу *(будь-якого файлу).

Команда, яку вона виконає simalt ~x(лише у варіантах для Windows vim), буде імітувати натискання клавіш Alt Spacebarx, які є натисканнями клавіш, які дозволять максимально збільшити вікно.

Ви також можете використовувати скорочену версію:

au GUIEnter * sim ~x

але я віддаю перевагу повністю розширеним командам сам, тим більше, що це така річ, яку ви встановлюєте та забуваєте, вводячи лише один раз при встановленні vimна систему Windows.


Майте на увазі, що це імітація натискань клавіш, щоб досягти її цілей. В англійських версіях це буде добре працювати, оскільки Alt-SpaceXви максимізуєте вікно.

Якщо це не допоможе вам, слід дослідити натискання клавіш у будь-якій місцевості, якою ви користуєтесь. Наприклад, французька версія використовуватиме Agrandir(збільшити) nяк натискання клавіші управління, тому команда, яка вам знадобиться, є:

autocmd GUIEnter * simalt ~n

(що фактично мінімізує ваше вікно англійською мовою).

Якщо ви є іншим (не англійською, не французьким) варіантом, просто натисніть Alt-Spaceна вікно, щоб відкрити системне меню, і з’ясуйте, який ключ слід використовувати (його слід підкреслити).


Щоб знайти свій gvimrcфайл для додавання потрібної команди, ви можете ввести:

:version
:echo $VIM
:echo $HOME

і вам слід отримати список файлів запуску та змінних, таких як:

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

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

У вашій скороченій версії autocmd відсутня *.
Jamessan

Цей метод не працює для мене: замість максимізації вікна він відкриває спливаюче меню, що дозволяє відновити, перемістити, мінімізувати, максимізувати (...) вікно. Я використовую Windows 7 SP1 та gvim 7.4.711. Як я можу змусити його працювати?
statox

@statox, це те, що ви побачили, якби відмовитися xвід кінця. Переконайтеся, що у вас є повний текст au GUIEnter * sim ~x.

@paxdiablo Я не впевнений , щоб зрозуміти , я скопіював всю рядок (і довгі і короткі версії) від auдо ~x. Чи є мій пробіл, який мені не вистачає, або щось подібне?
statox

@statox, коли у вас відкрито вікно gvim і ви клацаєте клавішею системи (піктограма vim, що знаходиться вгорі ліворуч, над меню файлу), ви бачите максимізацію? Коли це системне меню відкрите, чи воно максимізується при натисканні кнопки x?

7

На відміну від максимального вікна, чому б не отримати більше місця для повноцінного досвіду редагування мультивікон Windows з режимом автозапуску ПОВНОГО ЕКРАНУ? ;-)

ПОВНИЙ ЕКРАН Екран кінцевого результату (= ВСІ ВІДЕО пікселів): скріншот відео на весь екран

На мій погляд, це краще, ніж Windows максимізувати: повний ПОВНИЙ ЕКРАН (як це я робив з puTTY з ALT-Enter під час редагування на віддаленому терміналі Unix ...)

Я пояснюю, як:

Крок 1

Встановіть чудову красиву утиліту, щоб дозволити використання повноекранного режиму в gvim у Windows:

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

Вам потрібно завантажити файл DLL gvimfullscreen.dll і помістити його в ту саму директорію, де gvim.exe ($ VIM / vim74 з випуском gVim 7.4). Щоб завантажити DLL (без використання git):

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

Крок 2

Відредагуйте .vimrc- файл (всередині vim :):e $HOME/.vimrc , вставивши ці команди для автоматичного запуску на весь екран і дозволить функціональній клавіші F11 перемикати режими між 3 станами: повноекранний, максимізований вікно, розмір оригінального / за замовчуванням:

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

Крок 3

Редагуйте .gvimrc файл (всередині vim :),:split $HOME/.gvimrc вставляючи ці команди, щоб уникнути рядка меню та непотрібних матеріалів:

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

Чи є повноцінний екран gvimwin64? чи ми можемо скласти його, використовуючи проект на github?
van abel

Так, я знайшов це тут: github.com/derekmcloughlin/gvimfullscreen_win32/blob/…
van abel

2

Від :help 'lines':

Кількість рядків вікна Vim
[...]
Коли Vim працює в графічному інтерфейсі або у вікні зміни розміру, встановлення цієї опції призведе до зміни розміру вікна.
[..]
Ви можете скористатися цією командою, щоб отримати найвище вікно:
:set lines=999

columnsВаріант робить те ж саме, по ширині (в символах) , за винятком.

Отже, ви можете, наприклад, помістити це у свій файл vimrc:

set lines=55
set columns=120

Це не те саме, що бути максимальним (навіть якщо ви використовуєте 999значення, як описано вище), оскільки "бути максимізованим" - це спеціальний прапор, який ставиться на вікно, і тонко змінює деякі операції (наприклад, переміщення), але це повинно вирішити вашу проблему. мати невеликий розмір вікна 80x25 за замовчуванням.


Це не дуже погано, хоча це дає 234x56вікно в моїй системі, тоді як максимізація дає 236x57. Тим не менш, короткий два стовпчики та один рядок такого розміру не є надто великою проблемою, особливо для чогось, що може працювати і на інших платформах Windows, хоча я насправді цього не перевіряв. Я сьогодні

У моєму Debian вікно за замовчуванням становить 200x50, встановлюючи як рядки, так і стовпці до 999 у будь-якому з них vim, rc-файлі або з, gvim -c 'set them'дає мені 236x61, а максимальне дає 237x61, так що навіть ближче, ніж під Windows. Цікаво, що gvim -geometry 999x999мені надається максимальне вікно з дещо більшим розміром, так що це може бути краще для не-Windows, хоча я підозрюю, що буде важче забезпечити всі методи виклику, які використовують це. Шкода, що для платформ, що не входять у модуль WIN, не існує типу simalt.

Тим не менш, це варто трохи представника, оскільки він наближається досить близько, і є більш портативним, ніж метод, який виграє тільки для виграшу. До речі, використання 9999x9999 як геометрії вироджується, vimоскільки воно не любить вікна розмірами понад 64 К пікселів (геометрія - це символьні комірки, а не пікселі). 999x999, здається, працює нормально. Не впевнений, як це піде в системах з декількома моніторами.

Так, цей метод не є ідеальним, але, як ви вже згадували, він є кросплатформенним, а також може бути швидшим (запуск командного рядка-інструментів при запуску може призвести до трохи затримки в Windows Vim, принаймні, так було коли я ним користувався кілька років тому).
Martin Tournoij

Встановлення стовпців / ліній 160 x 42надає формі вікна, що наближається до золотистого співвідношення , і ви отримуєте приголомшливість 42!
roblogic

0

Окрім команд, що стосуються gVim, в інших відповідях, є пара стандартних функцій Windows, щоб запустити будь-яку програму з максимальним збільшенням.

Якщо ви шукаєте gVim з ярлика, наприклад, з меню "Пуск" або "Робочий стіл", ви можете змінити властивості ярлика, щоб запустити Vim максимально. Клацніть ярлик правою кнопкою миші, виберіть "Властивості" та виберіть "Максимізовано" зі спадного списку "Виконати". Однак це вплине лише на цей ярлик, тому gVim все одно відкриється у маленькому вікні, якщо його запустити з іншого ярлика, діалогового вікна Запуск або командного рядка.

Якщо ви запускаєте gVim з командного рядка або пакетного файлу, ви можете використовувати startкоманду CMD : start "" /max "C:\Program Files (x86)\Vim\vim73\gvim.exe". ( ""Потрібно, якщо вказано шлях до gvim.exe. Якщо ви використовуєте без котировки шлях без пробілів, його можна опустити:. start /max C:\Progra~2\Vim\vim73\gvim.exe)


Я не знаю, що таке startкоманда за замовчуванням , але я перезаписав свій PATH, і тепер mingsys startє, тож будьте обережні, ви запускаєте правильну
TankorSmash

Я спробував це ("із ярлика ... виберіть Максимізовано"). Вікно спалахнуло, а потім з’явилося такого ж розміру, як і щойно після запуску його з оболонки cmd DOS. Справедливості я маю в своєму .vimrc команди, які явно встановлюють розмір (рядки / стовпці), тому я підозрюю, що останній переважає спроба максимізувати.
багатий p

Така річ також існує як функція деяких менеджерів вікон Linux. Наприклад, мені подобається, що мої вікна Vim мають повний зріст, але два моїх монітора висотою 1024 пікселів, а центральний - висотою 1080 пікселів. Встановлення Vim для максимального вертикального запуску за допомогою панелі керування KDE "Правила вікна" гарантує, що gVim змінить розмір відповідно до його переміщення з монітора на монітор. (Це також має додаткову перевагу від перевищення linesналаштувань, тому я можу залишити це в моєму gvimrcрезерві для систем, де я не налаштовував такого
настрою
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.