Vim: Wie gehe ich mit Unicode-Dateien mit Text in mehreren (mehr als zwei) Sprachen um?


9

Welche Einstellungen muss ich in Vim / gVim vornehmen , um Unicode-Textdateien anzeigen zu können, die Text in vielen Sprachen enthalten?

Sie können folgende Annahmen treffen:

  • Die Anzahl der Sprachen beträgt mehr als zwei.
  • Einige der Sprachen sind Chinesisch, Japanisch und Koreanisch.
  • Es reicht aus, wenn ich diese Dateien in gVim anzeigen kann (nicht unbedingt in Vim).
  • gVim 7.0 läuft unter Windows.

Hier ist ein Textbeispiel, das beim Speichern in Unicode in Notepad problemlos geöffnet wird, in gVim jedoch als Kauderwelsch angezeigt wird:

This is English.
这是中文。
これは日本です。
한국입니다.
ಇದು ಕನ್ನಡ.

Jerryjvl: Es scheint Unicode-Unterstützung in GViM zu geben. Es ist mir nicht gelungen, die Verwendung mit> 2 Sprachen zu ermöglichen. vim.org/htmldoc/mbyte.html
Ashwin Nanjappa

3
Ihr Beispiel funktioniert einwandfrei, wenn es unter Linux in gvim eingefügt wird. Schlagen
Sie ein

Antworten:


7

Mit gVim unter Windows habe ich die folgenden zwei Dinge getan:

:set encoding=utf-8
:set guifont=*

Der zweite Befehl ruft eine Schriftartauswahl auf. Durch Auswahl der Schriftart "@MS Mincho" wurden einige der japanischen Zeichen angezeigt, aber seltsamerweise wurden sie um 90 Grad nach links gedreht.

Auf jeden Fall müssen Sie die Codierung festlegen, bevor Sie Text in gVim laden oder einfügen (andernfalls werden sie möglicherweise nur in alle Fragezeichen konvertiert). Dann müssen Sie eine Schriftart finden, die (a) eine feste Breite hat und (b) die Zeichen enthält, die Sie sehen möchten. Ich habe momentan keine solche Schriftart auf meinem System, aber Sie können.


Das gleiche gilt für jedes Betriebssystem: Sie benötigen vim, um die richtige Codierung UND die richtige Schriftart zu verwenden, um die Glyphen der Schriftart anzuzeigen.
Also

Danke Greg! Wenn Sie die Codierung auf UTF-8 einstellen, kann GViM die gelesenen Bytes verstehen. Leider können nicht alle diese Sprachen mit einer einzigen Schriftart mit fester Breite angezeigt werden. Daher wird Kauderwelsch angezeigt.
Ashwin Nanjappa

0

Die Verwendung der folgenden Einstellungen in Ihrer .vimrc funktioniert möglicherweise für Sie. Es hat bei mir für chinesische / japanische Charaktere funktioniert.
:set encoding=utf-8
:set guifont=*
:set guifontwide=*


Sie können auch Folgendes versuchen: :set fileencoding=utf-8 :set fileencodings=ucs-bom,utf-8,latin1 :set *encoding=utf-8
GuruM

0

Die Schriftart Arial Unicode MS unterstützt Japanisch, Chinesisch und Koreanisch sowie Vietnamesisch und Arabisch. Sie könnten versuchen, diese Schriftart zu verwenden, obwohl ich nicht glaube, dass sie monospaced ist.

http://www.microsoft.com/typography/fonts/font.aspx?FMID=1081

Es gibt vielleicht andere pan-language Schriften, vielleicht auch monospaced, aber ich kenne sie nicht.

bearbeiten

Ich habe diese Seite mit einigen Schriftarten gefunden, die alle drei Sprachen unterstützen. Einige von ihnen stehen als kostenlose Downloads zur Verfügung: http://www.wazu.jp/gallery/Fonts_Japanese.html

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.