Configurações de fonte japonesa / CJK para alinhamento horizontal adequado

8

Eu já tive esse direito em um ponto no passado em uma máquina com um certo tipo de fonte em um tamanho de fonte específico, mas não consigo acertar novamente.

Veja, por exemplo, a aparência das minhas tabelas de modo organizacional depois de adicionar caracteres japoneses. Aqui estão dois exemplos usando fontes que deveriam alinhar corretamente (eu li em algum lugar).

DejaVu Sans Mono Livro 10

Insolata Medium 10

Socorro!

Esta é a versão

GNU Emacs 24.4.1 (x86_64-pc-linux-gnu, GTK + versão 3.14.5) de 10-12-2014 no gaia, modificado pelo Debian

Editar Uma versão copiável e colável de vários problemas de alinhamento para quem deseja tentar:

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

Respostas:

2

Existe uma solução que pode ser a melhor atualmente (eu uso esta solução):

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

Embora o artigo esteja em chinês, você ainda pode ler o código Emacs Lisp facilmente para entender o mecanismo que ele fez.

Meu exemplo de configuração pode ser útil.

kuanyui
fonte
Obrigado, Kuanyui. Ainda não tentei, porque descobri uma solução simples (parcial). emacs-font-size-pair-listTalvez você esteja lidando com o problema de tamanho da fonte que descrevo na minha resposta?
Eugene Beresovsky
Eu não tenho certeza. Mas a lista de pares de tamanhos é baseada na tentativa e erro das fontes que você está usando (pode ser necessário alguns ajustes por conta própria). Portanto, cada escala de zoom seria adequada se você definir corretamente.
Kuanyui #
1

A solução acabou sendo surpreendentemente fácil. Depois de adicionar

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

no final do meu trabalho ~/.emacs, meio que (veja detalhes abaixo).

Emacs Inconsolata 12


A história completa:

Após copiar e colar a tabela no LibreOffice, notei que o Inconsolata funcionava, enquanto o DejaVu Sans Mono não - o que depende, suponho, das minhas configurações de substituição de fontes do xorg. (As configurações de substituição das fontes do meu LibreOffice estão vazias.)

Renderização em LibreOffice do formato de tabela de organização

Isso me levou a brincar um pouco mais com o Inconsolata no emacs e à set-default-fontsolução mencionada acima.

No entanto, nem todos os tamanhos de fonte funcionam e, se eu aumentar / diminuir o tamanho da fonte, o alinhamento será alterado novamente. Aqui estão os resultados para os tamanhos que tentei:

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

Também há um pequeno problema que acho que deve ser responsabilizado na organização, ou seja, quando uso a TABtecla para navegar pelas células, a formatação às vezes muda para pior. A seguir, o resultado da pressão TABna célula mais à esquerda:

TAB na tabela organizacional

Felizmente, porém, um rápido C-c C-cirá reparar a tabela inteira novamente.

Editar Acontece que ainda existem alguns caracteres que não estão alinhados corretamente. Nem no LibreOffice, nem no emacs. Exemplo:

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

Captura de tela correspondente:

alguns caracteres ainda não se alinham

Eugene Beresovsky
fonte