Linha de 80 caracteres / margem direita no Texto Sublime 3

Respostas:

549

Sim, é possível no Sublime Text 2 e 3 (para o qual você realmente deve atualizar se ainda não o fez - não se preocupe com o nome " beta ", é sólido). Selecione View → Ruler → 80(também existem várias outras opções). Se você deseja quebrar o texto em 80 colunas, selecione View → Word Wrap Column → 80. Verifique se View → Word Wrapestá selecionado.

Para tornar suas seleções permanentes (o padrão para todos os arquivos ou visualizações abertos), abra Preferences → Settings—Usere use uma das seguintes regras:

{
    // set vertical rulers in specified columns.
    // Use "rulers": [80] for just one ruler
    // default value is []
    "rulers": [80, 100, 120],

    // turn on word wrap for source and text
    // default value is "auto", which means off for source and on for text
    "word_wrap": true,

    // set word wrapping at this column
    // default value is 0, meaning wrapping occurs at window width
    "wrap_width": 80
}

Essas configurações também podem ser usadas em um .sublime-projectarquivo para definir padrões por projeto ou em um arquivo específico de sintaxe, .sublime-settings se você desejar que eles se apliquem aos arquivos gravados em um determinado idioma ( Python.sublime-settingsvs. JavaScript.sublime-settings, por exemplo). Acesse esses arquivos de configuração abrindo um arquivo com a sintaxe desejada e selecionando Preferences → Settings—More → Syntax Specific—User.

Como sempre, se você tiver várias entradas no arquivo de configurações, separe-as com vírgulas, ,exceto após a última. Todo o conteúdo deve estar entre chaves { }. Basicamente, verifique se é JSON válido .

Se você deseja que uma combinação de teclas defina automaticamente a régua em 80 para uma visualização / arquivo específico, ou esteja interessado em aprender como definir o valor sem usar o mouse, consulte minha resposta aqui .

Por fim, como mencionado em outra resposta , você realmente deve usar uma fonte monoespaçada para que seu código seja alinhado corretamente. Outros tipos de fontes têm letras de largura variável, o que significa que uma linha de 80 caracteres pode não parecer ter o mesmo comprimento que outra linha de 80 caracteres com conteúdo diferente, e seus recuos parecerão todos confusos. O Sublime possui fontes monoespaçadas definidas por padrão , mas é claro que você pode escolher qualquer uma que desejar. Pessoalmente, eu realmente gosto do Liberation Mono . Possui glifos para suportar muitos idiomas e caracteres Unicode diferentes, fica bem em vários tamanhos diferentes e (o mais importante para uma fonte de programação) diferencia claramente entre 0eO(dígito zero e letra maiúscula oh) e 1e l(dígito um e letra minúscula ell), que nem todas as fontes monoespaçadas fazem, infelizmente. A versão 2.0 e posterior da fonte são licenciadas sob a licença de fonte aberta SIL de código-fonte 1.1 1.1 (aqui está a FAQ ).

MattDMo
fonte
4
Obrigado. Removido sua ousadia, porque chuta meus olhos! :] Além disso, adicionou algumas informações extras, embora toda a glória vá para você, é claro.
Trejder
3
É possível embrulhar aqui? por exemplo, o equivalente a ele automaticamente fazendo edit-> wrap> parágrafo envoltório pelo governante, mas sem ter que passar por este processo (ou o atalho de teclado equivalente?)
evolvedmicrobe
3
ótimo, tx! Eu só quero uma régua nos meus arquivos python; você pode adicionar configurações específicas de sintaxe, abrindo um arquivo .py e, em seguida Preferences>Settings More>Syntax Specific - User.
PTIM
3
Por que diabos uma largura de 80 caracteres após o 79º caractere? Estou fazendo algo estúpido ?!
Bobby Jack
1
@BobbyJack eu percebi isso também. :) Basta usar 81 para a largura do envoltório. :)
Koray Tugay
16

Para que isso funcione, sua fonte também precisa ser definida como monoespaço.
Se você pensar bem, as linhas não podem se alinhar perfeitamente perfeitamente.

Esta resposta está detalhada no fórum de texto sublime:
http://www.sublimetext.com/forum/viewtopic.php?f=3&p=42052
Esta resposta possui links para a escolha de uma fonte apropriada para o seu sistema operacional
e fornece uma resposta a uma vantagem caso de fontes não alinhadas.

Outro site que lista ótimas fontes grátis monoespaçadas para programadores. http://hivelogic.com/articles/top-10-programming-fonts

No stackoverflow, consulte:

A resposta de Michael Ruth aqui: Como fazer com que a régua sempre seja mostrada no texto sublime 2?

Resposta de MattDMo aqui: Qual é a fonte padrão do Texto Sublime?

Eu tenho réguas definidas da seguinte forma:
30
50 (os títulos das mensagens de confirmação do git devem ser limitados a 50 caracteres)
72 (os detalhes da mensagem de confirmação do git devem ser limitados a 72 caracteres)
80 (a janela do console de comando do Windows atinge o limite de 80 caracteres)

Outros ambientes de visualização que se beneficiam de linhas mais curtas: github: não há quebra de linha ao exibir um arquivo on-line.
Então, tento manter .js .md e outros arquivos com 70 a 80 caracteres.
Console do Windows: 80 caracteres.

SherylHohman
fonte
2
Obrigado pela sua resposta. Para ser sincero, não consigo imaginar a codificação no ST3 com fonte não espacial. É por isso que isso era bastante óbvio para mim, que a fonte monoespaçada é necessária.
Trejder