Personalize o editor de texto e o terminal para usar fontes não monoespaçadas sem os resultados horríveis?

6

Eu quero experimentar todas as fontes, incluindo aquelas que não são mono-espaçadas. Eu entendo o motivo de usar fontes monoespaçadas, mas francamente elas não parecem legítimas para mim.

Por exemplo, um motivo para usar fontes monoespaçadas é que os blocos de código sejam alinhados perfeitamente no editor. Mas por que uma grade simplesmente não pode ser construída a partir do menor caractere na fonte dada, ou talvez de alguma unidade que realize isso. Parece um resquício de dias ASCII. Eu pesquisei, mas não consigo encontrar muita informação sobre isso.

Alguém já tentou isso antes ou sabe de algum projeto que esteja tentando habilitar isso? Em particular, eu quero usar as fontes no VIM e iTerm2 no OS X.

    
por Aeschylus 15.11.2011 / 08:42

5 respostas

6

Eu li várias postagens de blogs no passado, escritas por pessoas que realmente preferiam fontes proporcionais para o seu código. Normalmente, o que eles gostavam desse tipo de fonte era sua expressividade, mas eles sempre precisavam de alguns recursos de realce de sintaxe e / ou ferramentas externas personalizadas para que funcionasse e realmente pudessem ler e entender seu próprio código.

Você não lê código como você lê um texto. Um é na maior parte vertical, o outro é principalmente horizontal.

Como você sabe, as fontes monoespaçadas são projetadas em uma grade para que cada caractere ocupe o mesmo espaço horizontal que as outras. Por isso, podemos alinhar as coisas e ler e entender nosso código em partes discretas sem muito trabalho cerebral: tudo é regular e previsível, o que é uma necessidade em nosso ofício.

Como tendemos a escrever linhas curtas e as partes lógicas dos nossos arquivos de origem são distribuídas verticalmente, a maioria dos movimentos dos nossos olhos é vertical, esse é o fluxo natural da programação. As fontes monoespaçadas facilitam esses movimentos, porque as coisas podem ser alinhadas com precisão e não precisamos mover muito os olhos.

Cada glifo individual de uma fonte proporcional é projetado com uma largura diferente e diferentes configurações de espaço em branco padrão. Além disso, essas fontes fazem uso intenso do kerning (o ajuste de espaço em branco entre os glifos), que é o que realmente torna o texto com bom aspecto . Remova o kerning e qualquer fonte proporcional (mesmo as melhores como Frutiger ou qualquer outra) parecerão ish. Glifos individuais ainda serão bem desenhados, mas eles não se encaixam mais entre si e criam o ritmo distinto que os torna úteis e agradáveis.

A aplicação de uma grade a um conjunto de texto no Helvetica Neue resultaria em distribuição desigual de preto / branco e uma bagunça ilegível, porque na verdade removeríamos o recurso mais importante de fontes proporcionais.

fontes proporcionais, não são projetadas para fluxo vertical. Muito cuidado é colocado no kerning para permitir o melhor ritmo horizontal possível, mas esse tipo de característica é totalmente desnecessário no contexto da programação.

Para finalizar, você pode definir a fonte do Vim para uma fonte proporcional, aqui está a aparência da Helvetica Neue a 12 px:


(Cliquenasimagensparaampliar)

eomesmoarquivocomInconsolata-dzem12px:

Acho que essas capturas de tela falam por si mesmas.

    
por 15.11.2011 / 09:26
2

Estou usando um SciTE modificado (windows) que faz uso do Scintilla (portátil do código-fonte) e mudou para fonte proporcional depois de muitos anos como ventilador monoespaçado. O texto é mais compacto (e olho agradável especialmente para o nome de classe longa) tão raramente precisa de quebra de linha. A linha vertical é mantida com a guia, que defini como número de pixels. Adicionando uma rotina 'tabify' e usando uma pequena largura de tabulação (cerca de 3 espaços) você pode alinhar qualquer código de bloco ordenadamente: não apenas no início da linha, mas na estrutura multi-coluna ou multi-linha #define O problema é que seu código parece ruim em outro editor e você precisa reformatar outros códigos de pessoas.

    
por 15.11.2011 / 17:36
0

Os programas do Terminal me permitem definir qualquer tipo de letra, não apenas monoespaçada. Eu acho que eu poderia me acostumar com isso!

Eutenhocertezaquevocêviuaslistasdeoutrosestilosdefontesmonoespaçadastambém... Algumas grátis a> e a página da Wikipedia

    
por 25.09.2013 / 00:09
-1

É possível fazer muitas coisas com fontes com espaçamento variável, mas a história mostrou, assim como a opinião geral de que é uma má idéia. A maioria dos editores destinados a programadores, portanto, não permitem que você os use , e com razão.

Digamos que você tenha "desenhado uma caixa" com os caracteres menores da fonte especificada. E de alguma forma conseguiu alinhar.

Coloque um espaço na frente de uma linha ... já que o espaço é relativamente largo, estraga tudo. Agora você tem que espaçá-lo várias vezes, ... até que as larguras correspondam novamente ou ... é uma má ideia. Não há sequer uma discussão sobre isso.

    
por 15.11.2011 / 09:13
-1

Não há ideia de como o OSX processa suas fontes, mas há o obrigatório Old New Coisa postagem no blog sobre todas as coisas peculiares e históricas entre a computação.

A postagem no blog fala sobre como as fontes TrueType não são desenhadas em pequenas redes agradáveis. Alguns propositalmente saem da grade, enquanto outros não. Para fazer com que a fonte se encaixe de forma programática em uma boa grade, é necessário que você não use fontes TrueType . Daí chegamos ao ciclo completo.

Mas isso está do lado do Windows. Não faço ideia de como o OSX processa fontes TrueType, mas estou disposto a apostar que esta é a razão pela qual todas as fontes não estão disponíveis, além de todo o "Isso suporta todos os caracteres?" coisa.

    
por 15.11.2011 / 09:19