2012-04-24 26 views
5

Sto cercando di ottenere supporto per caratteri runici in gvim su Windows 7. Ho i font Free Mono e GNU Unifont (che supportano entrambi questa gamma) installati nella mia directory Fonts, ma non compaiono nel menu font, e gvim mi dà un messaggio di carattere non valido per le seguenti righe:Come posso far funzionare GNU Unifont o Free Mono su gvim windows?

set guifont=unifont:h12:cANSI 
set guifont=GNU_Unifont:h12:cANSI 
set guifont=Free_Mono:h12:cANSI 
set guifont=Free_Monospaced:h12:cANSI 
set guifont=FreeMono:h12:cANSI 

etc... 

Come faccio a farlo funzionare? Ho notato che i caratteri fanno entrambi parte della famiglia di font, "Medium", mentre Ubuntu Mono, che funziona, è etichettato come "Regular". Questo fa qualche differenza? Non ho avuto molta fortuna in generale con il cambio di font su gvim, anche con i font monospace.

risposta

4

mi hai fatto curioso di sapere il motivo per cui questo non funzionava, così ho installato fontforge a curiosare all'interno del font. Si scopre che avevi ragione riguardo al carattere stesso che ha il problema: Lo PANOSE proportion code è "Even Width" (4), non "Monospaced" (9). Poiché vim filtra i font non monospaziali, questo spiega perché non compaiono nella finestra di dialogo.

Nel caso in cui siete interessati, ho avuto di Windows fontforge tramite un Cygwin standalone/X build preparato da this Japanese fellow, tramite this page con una discussione in lingua inglese. Una volta installato, apri il carattere e cerca in Elemento-> Informazioni font-> OS/2-> Panose.

Ho provato a modificare l'impostazione e salvare il file, ma 1) il file di font salvato era 10 volte più grande dell'originale e ci sono voluti un paio di minuti per salvare il file, quindi qualcosa probabilmente è andato storto e quindi 2) Windows rifiutato di caricarlo, lamentandosi che non è un file di font valido. Ho raggiunto la fine della mia curiosità, ma forse puoi farcela.

+0

Fantastico! Grazie. Lo proverò sicuramente. – xdhmoore

+0

Soooo, dopo 3 anni, sono finalmente tornato e ho provato questo. Ho dovuto usare "Genera font" invece di "Salva carattere" nella fucina dei font. Inoltre, ho dovuto disattivare la convalida degli errori. Ma dopo aver salvato come .ttf, l'unificatore ha funzionato! Grazie! Mono continua a non funzionare, ma qualunque cosa. Ora posso digitare le rune nane di Hobbit in gvim ...: S – xdhmoore

+0

Inoltre, per chiunque altro giocherellando con questo, ho ottenuto fontforge da PortableApps.com – xdhmoore

4

per Win32, GTK, Motif, Mac OS e Photon:

:set guifont=* 

porterà un richiedente tipo di carattere, in cui è possibile scegliere il tipo di carattere che si desidera.

Digitare :set guifont? per ottenere l'impostazione e inserirla nel numero .vimrc. Quando lo inserisci nel file .vimrc, dovrai uscire dagli spazi se ci sono spazi. Ad esempio, se ': set guifont?' uscite 'Gnu Unifont 10', ha bisogno di mettere in Vimrc come:

set guifont=Gnu\ Unifont\ 10 
+0

Sì, l'ho provato, ma questi caratteri non vengono visualizzati nella finestra dei caratteri. Credo basandomi su http://stackoverflow.com/questions/8358766/add-to-available-fonts-in-gvim che potrebbe avere qualcosa a che fare con GNU Unifont e Free Mono forse non essendo accurato al 100% sul loro fisso larghezza-ness? Questa è solo una supposizione. O forse i tag non corrispondono a quello che si aspetta gvim? O forse richiede i font PostScript? Basta pugnalare nel buio qui. – xdhmoore

+0

Qualsiasi font con larghezza fissa installato dal sistema dovrebbe funzionare. Da dove hai preso i caratteri? Sono le varianti TrueType? –

+0

Sì, sono entrambi caratteri TrueType. Sono entrambi installati in C: \ Windows \ Fonts e workfin in MS Word. GNU Unifont è da http://www.unifoundry.com/unifont.html e Free Mono è disponibile da https://savannah.gnu.org/projects/freefont/. In entrambi i casi, sto usando le versioni ttf. – xdhmoore

1

Recentemente ho avuto lo stesso problema e lo ho risolto con fontforge. Ecco il flusso di lavoro per generare un unifontmono.ttf carattere di lavoro:

  • inizio fontforge e aprire il tipo di carattere unifont.ttf. Su Debian questo è installato in

/usr/share/fonts/truetype/unifont/unifont.ttf

  • andare a Element ->Font Info...
    • sotto PS Names cambiamento Fontname, Family Name e Name for Humans, ad esempio in UnifontMono.
    • sotto OS/2 ->Panose cambiare Proportion a Monospaced.
  • fare clic su Save. Nel popup seleziona Change.
  • File ->Generate Fonts.... Selezionare TrueType nel richiedente sinistro, selezionare No Bitmap Fonts, disabilitare Validate Before Saving.
  • Save

Questo dovrebbe salvare un file TTF che è possibile installare sotto Windows.

Per utilizzare il tipo di carattere con gvim su Windows:

  1. installare il carattere facendo doppio clic su di esso e scegliere Install.
  2. inizio gvim come amministratore:

    • goto Edit ->Startup Settings.
    • aggiungere la seguente riga:

set guifont = UnifontMono: h12: cANSI

  1. riavvio gvim, ora dovrebbe utilizzare il font convertito.