15

VIM 包含一个 'set guifont' 选项来改变字体。Neovim不支持此选项,所以我想知道是否可以更改 Neovim 在终端中使用的字体?

4

6 回答 6

31

这不适用于终端,但它仍然可能对某人有用。

对于 Neovim-Qt GUI 客户端,您可以通过 Ctrl + 鼠标滚动来更改字体,如果您将以下内容放入ginit.vim

let s:fontsize = 12
function! AdjustFontSize(amount)
  let s:fontsize = s:fontsize+a:amount
  :execute "GuiFont! Consolas:h" . s:fontsize
endfunction

noremap <C-ScrollWheelUp> :call AdjustFontSize(1)<CR>
noremap <C-ScrollWheelDown> :call AdjustFontSize(-1)<CR>
inoremap <C-ScrollWheelUp> <Esc>:call AdjustFontSize(1)<CR>a
inoremap <C-ScrollWheelDown> <Esc>:call AdjustFontSize(-1)<CR>a

对于那些喜欢使用键盘的人来说,有一个很好的方法来使用小键盘的+( kPlus) 和-( kMinus)

" In normal mode, pressing numpad's+ increases the font
noremap <kPlus> :call AdjustFontSize(1)<CR>
noremap <kMinus> :call AdjustFontSize(-1)<CR>

" In insert mode, pressing ctrl + numpad's+ increases the font
inoremap <C-kPlus> <Esc>:call AdjustFontSize(1)<CR>a
inoremap <C-kMinus> <Esc>:call AdjustFontSize(-1)<CR>a

显然你可以用Consolas你喜欢的字体替换。

于 2018-07-19T14:01:48.733 回答
22

更改终端模拟器首选项中的字体。终端程序一般不能设置自己的字体。只有 Gvim 或 macvim 等 GUI 客户端使用该set guifont选项。

于 2016-02-22T09:59:14.683 回答
13

如何更改字体取决于您当前使用 Neovim 的方式:

对于终端 Neovim

如果您在终端中使用 Neovim,要更改使用的 neovim 字体,您需要更改终端使用的字体。检查您的终端手册,了解如何更改字体样式和字体大小等。

Neovim GUI 客户端

对于 Neovim GUI 客户端,您需要在文件中设置字体ginit.vim。与[^1]ginit.vim位于同一文件夹中。init.vim不同的 GUI 客户端有不同的命令来设置您使用的字体和字体大小。我尝试过的 GUI 客户端的不完整列表:

  • nvim-qt:使用GuiFont里面ginit.vim的命令来改变字体,例如,GuiFont Hack:h12(假设你已经安装了 font Hack)。
  • fvim : fvim 是另一个 Neovim GUI 客户端。你可以使用set guifont=Hack:12insideginit.vim来设置 fvim 使用的字体。

[^1]:在 Neovim 中,用于:echo stdpath('config')显示该目录在您的平台上的位置。

于 2020-01-08T07:09:21.400 回答
4

我在我的 Ubuntu18.04 上使用 Neovim-qt 版本。但我为我的 vim 使用相同的配置文件。

经过反复试验,我找到了将neovim字体更改为FiraCode Monospace的方法。尽管您可以:Guifont Fira Mono:h12在 GUI 中键入命令来更改当前使用的字体,但它只能工作一次。关闭 GUI 后,需要重新设置字体。:(
或者你需要另一个配置文件来设置GUI相关的东西。ginit.vim设置GUI字体的问题相同,只需写入GuiFont Fira Mono:h12.ginit.vim

于 2019-02-18T01:12:35.433 回答
3

除了这个问题的答案之外,许多适用于 vim/Gvim 但不适用于 NeoVim (qt) 的脚本/插件的原因是在 NeoVim 中,字体是由Guifont而不是guifont.

于 2019-03-27T12:02:24.297 回答
2

我在wsl中使用了neovim,所以如果你在wsl中提问,我可以提供帮助。更改终端字体,您将能够在 wsl 的列表中执行此操作。

所以下载并安装您需要的字体和 cmd > properties > font 并选择您的字体

于 2022-02-28T08:35:10.433 回答