Wechseln Sie zur Laufzeit schnell zwischen den Schriftarten

11

Während Schriftarten in GVim manuell aus dem Menü ausgewählt werden können, habe ich einige bevorzugte Schriftarten, zwischen denen ich je nach Aufgabe wechseln möchte (kleine Bitmap, größere OTF ... usw.) .

Gibt es eine Möglichkeit, die Schlüsselbindung so einzurichten, dass eine Liste der in meinem vimrc vordefinierten Schriftarten durchlaufen wird?

ideasman42
quelle

Antworten:

11

Die Grundidee könnte so etwas sein wie:

" Define a list of the fonts you want to use, and the index in the 
" list of the default font. See :help Lists
let g:fc_list = [
\   "DejaVu Sans Mono 9",
\   "Source Code Pro 12",
\   "GohuFont 11"
\   ]
let g:fc_current = 0

" Set default font
let &guifont = g:fc_list[g:fc_current]

function! FontCycle()
  " Increment circular list. See :help expr-%
  let g:fc_current = (g:fc_current + 1) % len(g:fc_list)
  let &guifont = g:fc_list[g:fc_current]
endfunction

noremap <leader>fc :call FontCycle()<cr>
toro2k
quelle
7

Ich habe Folgendes in meiner .vimrc-Datei definiert.

set guifont=DejaVu\ Sans\ Mono\ for\ Powerline\ 10

Sie können das also als Mapping wie folgt einrichten ...

nmap <Leader>f :set guifont=DejaVu\ Sans\ Mono\ for\ Powerline\ 10<CR>

Fügen Sie zusätzliche Zuordnungen für andere Schriftarten hinzu.

Quincy Bowers
quelle