Japanische / CJK-Schriftarteneinstellungen für die richtige horizontale Ausrichtung

8

Ich hatte dies zu einem bestimmten Zeitpunkt in der Vergangenheit auf einem Computer mit einem bestimmten Schrifttyp bei einer bestimmten Schriftgröße, aber ich kann es scheinbar nicht wieder richtig machen.

Schauen Sie sich beispielsweise an, wie meine Org-Modustabellen aussehen, wenn ich japanische Zeichen hinzufüge. Hier sind zwei Beispiele für die Verwendung von Schriftarten, die richtig ausgerichtet werden sollten (ich habe irgendwo gelesen).

DejaVu Sans Mono Buch 10

Insolata Medium 10

Hilfe!

Dies ist die Version

GNU Emacs 24.4.1 (x86_64-pc-linux-gnu, GTK + Version 3.14.5) vom 10.12.2014 auf gaia, modifiziert von Debian

Bearbeiten Eine kopierbare und einfügbare Version einer Reihe von Ausrichtungsproblemen für alle, die es selbst ausprobieren möchten:

| a 漢字       |   |
| b はどう     |   |
| f デショウ a |   |
| ハーフ          |   |
| whole   |   |
| half         |   |
| ○            |   |
Eugene Beresovsky
quelle

Antworten:

2

Es gibt eine Lösung, die derzeit möglicherweise die beste ist (ich verwende diese Lösung):

http://coldnew.github.io/blog/2013/11/16_d2f3a.html

Obwohl der Artikel auf Chinesisch ist, können Sie den Emacs Lisp-Code trotzdem leicht lesen, um zu verstehen, welchen Mechanismus er ausgeführt hat.

Mein Konfigurationsbeispiel kann hilfreich sein.

kuanyui
quelle
Danke, Kuanyui. Ich habe es noch nicht ausprobiert, weil ich inzwischen eine einfache (Teil-) Lösung gefunden habe. Beheben Sie emacs-font-size-pair-listmöglicherweise das Problem mit der Schriftgröße, das ich in meiner Antwort beschreibe?
Eugene Beresovsky
Ich kann nicht sicher sein. Die Liste der Größenpaare basiert jedoch auf dem Versuch und Irrtum für die von Ihnen verwendeten Schriftarten (möglicherweise müssen Sie einige Anpassungen selbst vornehmen). Daher wäre jede Zoomskala geeignet, wenn Sie sie richtig einstellen.
Kuanyui
1

Die Lösung erwies sich als überraschend einfach. Nach dem Hinzufügen

(set-default-font "Inconsolata-12")

Bis zum Ende meiner ~/.emacsArbeit hat es irgendwie funktioniert (siehe unten für Details).

Emacs Inconsolata 12


Die ganze Geschichte:

Nachdem ich die Tabelle kopiert und in LibreOffice eingefügt hatte, bemerkte ich, dass Inconsolata funktionierte, während DejaVu Sans Mono dies nicht tat - was vermutlich von meinen Einstellungen für die Xorg-Schriftsetzung abhängt. (Die Einstellungen für die LibreOffice-Schriftsetzung sind leer.)

LibreOffice-Rendering im Org-Table-Format

Das führte mich dazu, ein bisschen mehr mit Inconsolata in Emacs herumzuspielen und zu der set-default-fontoben erwähnten Lösung.

Nicht alle Schriftgrößen funktionieren jedoch, und wenn ich die Schriftgröße vergrößere / verkleinere, wird die Ausrichtung erneut durcheinander gebracht. Hier sind die Ergebnisse für die Größen, die ich ausprobiert habe:

━━━━━━━━━━━
 size  ok? 
───────────
    6  ok  
    8      
   10      
   12  ok  
   14      
   16      
   18  ok  
   20      
   22  ok  
   24      
   26      
━━━━━━━━━━━

Es gibt auch ein kleines Problem, das meiner Meinung nach der Organisationstabelle zugeschrieben werden muss: Wenn ich den TABSchlüssel zum Navigieren durch Zellen verwende, ändert sich die Formatierung manchmal zum Schlechten. Das Folgende ist das Ergebnis des Drückens TABin die Zelle ganz links:

TAB in der Org-Tabelle

Zum Glück C-c C-crepariert ein Quick den ganzen Tisch wieder.

Bearbeiten Es stellt sich heraus, dass noch einige Zeichen nicht richtig ausgerichtet sind. Weder in LibreOffice noch in Emacs. Beispiel:

character: ○ (displayed as ○) (codepoint 9675, #o22713, #x25cb)

Entsprechender Screenshot:

Einige Zeichen stimmen immer noch nicht überein

Eugene Beresovsky
quelle