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


8

Многие системы предлагают кнопки + и - масштабирования. Может кто-нибудь продемонстрировать, как можно эмулировать такие две кнопки gvim?

Это означает, что нажатие кнопки + увеличит размер шрифта на один шаг. Кнопка - делает наоборот.


2
Начните с :h toolbar-iconи:h guifont
VanLaser

4
... и объединить с vim.wikia.com/wiki/Change_font_size_quickly (я ленивый, ... мне это не нужно: D)
VanLaser

Спасибо! Я пытался, по крайней мере, с ссылкой vim.wikia. Определенные команды, кажется, игнорируются в моем gvim, поэтому я все еще работаю над этим.
Йосси Гил

Я думаю, что в patternопределении есть дополнительный пробел, который не будет работать в Windows или в тех ОС, где guifontвыглядит FontName:h12вместо FontName\ 12. И, конечно, попробуйте без has("gui_gtk2")проверки (по крайней мере, для Windows).
VanLaser

Не уверен, что с этим делать. Я пользователь Ubuntu.
Йосси Гил

Ответы:


6

Я думаю, что-то вроде следующего должно работать:

amenu ToolBar.Builtin#31   :let &guifont=substitute(&guifont, '\(\d\+\)', '\=submatch(1)+1', '')<cr>
amenu ToolBar.Builtin#32   :let &guifont=substitute(&guifont, '\(\d\+\)', '\=submatch(1)-1', '')<cr>

Теперь, чтобы включить красивые значки, вам просто нужно добавить аргумент icon.


Это не сработало для меня. Я получил размытые значки, но при нажатии на них экран обновляется, ничего не делая. Я все еще должен изменить размер шрифта вручную.
Йосси Гил

Попробуйте, :echo substitute(&guifont, '\(\d\+\)', '\=submatch(1)-1', '')что это дает вам
Кристиан Брабандт

Ничего не произошло. Не уверен, что было даже обновление.
Йосси Гил

Вы должны увидеть вывод. Какая у вас настройка гифона?
Кристиан Брабандт

2
это выглядит правильно. И если вы запустите эту команду: :let &guifont=substitute(&guifont, '\(\d\+\)', '\=submatch(1)-1', '')это уменьшает размер шрифта?
Кристиан Брабандт
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.