Gvim 7.4: как сохранить настройки шрифта по умолчанию? Какие-нибудь улучшения от gvim 7.3?

2773
John Sonderson

Как показывает следующий пост:

Как изменить шрифт по умолчанию для gVim

в Windows 7 невозможно сохранить шрифт Gvim по умолчанию из программы Gvim. Закрытие Gvim приведет к тому, что он полностью забудет обо всех настройках шрифта, и их невозможно установить в файле _vimrc.

Это было исправлено в Gvim 7.4 или эта ошибка сохраняется? Или кто-нибудь знает лучший способ установить шрифт по умолчанию? Потому что шрифт FixedSys отстой, так как он не может отображать чешские символы, и мне не нужно идти в меню, чтобы менять его каждый раз, когда я открываю файл, содержащий чешские символы. Благодарю.

** РЕДАКТИРОВАТЬ **

Хорошо, теперь я вижу документацию по настройке шрифта с помощью команды Gvim

:help guifont 

Вот что я нашел:

For the Win32 GUI *E244* *E245* - takes these options in the font name: hXX - height is XX (points, can be floating-point) wXX - width is XX (points, can be floating-point) b - bold i - italic u - underline s - strikeout cXX - character set XX. Valid charsets are: ANSI, ARABIC, BALTIC, CHINESEBIG5, DEFAULT, EASTEUROPE, GB2312, GREEK, HANGEUL, HEBREW, JOHAB, MAC, OEM, RUSSIAN, SHIFTJIS, SYMBOL, THAI, TURKISH, VIETNAMESE ANSI and BALTIC. Normally you would use "cDEFAULT".  Use a ':' to separate the options. - A '_' can be used in the place of a space, so you don't need to use backslashes to escape the spaces. - Examples:  :set guifont=courier_new:h12:w5:b:cRUSSIAN :set guifont=Andale_Mono:h7.5:w4.5 

так что теперь, например, из Gvim я могу сделать следующее:

:set guifont=Lucida_Console:h12:cDEFAULT 

и я могу поставить команду

set guifont=Lucida_Console:h12:cDEFAULT 

внутри C: \ Users \ JSonderson_gvimrc, и это семейство шрифтов, размер шрифта и набор символов загружаются каждый раз, когда я запускаю gvim.


Однако все еще остается вопрос: почему UTF-8 не входит в список наборов символов?

Не является ли набор символов чем-то отдельным от шрифта?

В чем разница между набором символов и кодировкой символов?

Как я могу отобразить фактический набор символов, который используется при использовании настройки ПО УМОЛЧАНИЮ?

Благодарю.

0
У меня просто есть следующая команда в моем _vimrc. Это не работает для вас? `set guifont = Courier_New: h10: cANSI` garyjohn 10 лет назад 1
Это должно быть в вашем файле _gvimrc, правильно, не в файле _vimrc? John Sonderson 10 лет назад 0
Нет, у меня нет файла _gvimrc. Эта команда сработала, когда я вставил ее туда, и она, похоже, все еще работает, но я проверю свою систему Windows в понедельник еще раз, чтобы убедиться. garyjohn 10 лет назад 1
Благодарю. Подскажите, пожалуйста, почему раздел «Набор символов» этой команды не включает UTF-8 и в чем разница между указанием здесь набора символов и его заданием с помощью: set encoding? Благодарю. John Sonderson 10 лет назад 0
Я только что проверил мой Vim 7.4.52, работающий на Windows 7. Шрифт, используемый gvim, действительно соответствует настройке `guifont` в моем ~ / _vimrc. Что касается вопроса о наборе символов и кодировании, я думаю, что Тони ответил на этот вопрос довольно хорошо в вашей ветке в списке рассылки vim и лучше, чем я мог сделать. garyjohn 10 лет назад 1
Благодарю. По какой-то причине я не получил остальную часть письма из списка рассылки vim, но я вижу ответ здесь: https://groups.google.com/forum/#!searchin/vim_use/sonderson/vim_use/X6_l_kIukrI / 2fqvM3aeiWwJ. Я предполагаю, что форумы теперь доступны в группах Google, таких как: https://groups.google.com/forum/#!forum/vim_use John Sonderson 10 лет назад 0
Процитируем ответ Тони: настройка «guifont» имеет несколько различных несовместимых настроек. Если вы используете Vim только для Windows, это не сильно беспокоит вас, но в настоящее время в Linux используется как минимум два совершенно разных формата, и раньше был еще один. См. Http://vim.wikia.com/wiki/Setting_the_font_in_the_GUI. John Sonderson 10 лет назад 0
Так что в основном этот параметр несовместим. Вероятно, vim должен очистить синтаксис этой команды, так как у нас уже есть команда ": set encoding". John Sonderson 10 лет назад 0
Я не слежу за тобой. Несовместимо с чем? Различные настройки «guifont» несовместимы друг с другом, потому что различные оконные менеджеры имеют несовместимые методы указания шрифтов и обычно имеют разные доступные шрифты. Это то, что Vim не может «исправить», не придумав еще один язык спецификаций шрифтов. Решение, которое, кажется, хорошо работает, это использовать `if has (" ... ")` в вашем vimrc для выбора 'guifont' в зависимости от вашей среды GUI. Я не уверен, что это то, что вы подразумеваете под "несовместимым", хотя. garyjohn 10 лет назад 0
Хорошо, я просто имел в виду тот факт, что Gvim предлагает функциональность в двух местах, а не в одном для настройки кодировки символов. А именно, с помощью: set guifont = ... (в котором есть поле, где помимо шрифта также указывается кодировка и отдельная: set econding = ..., которая также устанавливает кодировку. Кажется, я не могу выясните разницу между этими двумя способами установки шрифта. Почему vim позволяет устанавливать кодировку в двух разных местах (т.е. с помощью двух разных команд), а не с помощью одной команды? John Sonderson 10 лет назад 0
то есть, почему gvim разработан с двумя местами, где можно указать кодировку, а не с одним местом, которое будет более логичным для меня? Благодарю. John Sonderson 10 лет назад 0
Где вы видите кодировку в меню шрифтов GUI? И в Windows, и в Linux я вижу в этом меню только настройки для `Font`,` Font style`, `Size` и (только для Windows)` Script`. Кодировка и шрифт - разные понятия. Кодировка определяет представление символов в памяти или в файле. Шрифт определяет внешний вид символов на дисплее или странице. Например, чтобы использовать gvim для просмотра файла, содержащего греческую букву mu, битовый шаблон, представляющий этот символ в файле, должен использовать некоторую кодировку, включающую символ mu. Чтобы увидеть этот символ на вашем дисплее, вы должны использовать шрифт ... garyjohn 10 лет назад 1
... который включает в себя глиф, или изображение, для этого персонажа. garyjohn 10 лет назад 1
Извините за поздний ответ. Конечно, символ из кодировки может быть отображен с использованием разных шрифтов. Это правда, в меню шрифтов GUI нет опции кодирования, но есть опция Script, которая не имеет смысла. В чем разница между кодировкой и скриптом? И кодировка для русского языка кодирует русский, а кодировка для корейского кодирует корейский. Следовательно, скрипт должен быть избыточным. Это та часть, которую я нахожу запутанной. John Sonderson 10 лет назад 0
Также, если вы введете: help guifont в VIM, вы увидите, что там написано cXX - набор символов XX. Допустимые кодировки: ANSI, ARABIC, ALTIC, CHINESEBIG5, DEFAULT, EASTEUROPE, ... Этот «набор символов» должен соответствовать тому, что вы описываете как параметр «Сценарий» в графическом интерфейсе. John Sonderson 10 лет назад 0
Я не знаю, что делает этот параметр Script. Его нет в диалоговом окне шрифтов Linux, так что это, вероятно, вещь для Windows, и я ничего не знаю о деталях шрифтов Windows. garyjohn 10 лет назад 0

2 ответа на вопрос

0
StahlRat

Я использую GVIM 8.0.69. Это идет с, vimrc_example.vimкоторый я отредактировал, чтобы добавить следующую строку:

set guifont=Consolas:h10,

:saveas _guirc сохраняет конфигурационный файл в домашней папке по умолчанию GVIM.

Перезапусков. У меня есть новый шрифт по умолчанию.

0
Ravi G.

В Windows 10 мне пришлось добавить эту строку в _vimrc в домашнем каталоге пользователя, чтобы сделать постоянными настройки шрифта: (по умолчанию установлено значение Consolas size 10).

установить guifont = Consolas: h10