Aviso:
Isso envolve mexer com um dos arquivos principais do Sublime. Não continue se estiver desconfortável com isso.
Dito isto, as mudanças que você vai fazer não são tão drásticas, e são facilmente reversíveis. Não se preocupe, vou facilitar as coisas.
A primeira coisa que você precisa fazer é instalar o Package Control se ainda não o fez. Em seguida, instale PackageResourceViewer
. Abra a Paleta de Comandos, digite prv
para exibir as opções PackageResourceViewer:
e escolha PackageResourceViewer: Open Resource
. Role um pouco para baixo, selecione Default
, role um pouco mais e selecione comment.py
para abrir o arquivo no Sublime. Agora você pode clicar em Esc para fechar a Paleta de Comandos. As duas primeiras definições de funções são assim:
import sublime, sublime_plugin
def advance_to_first_non_white_space_on_line(view, pt):
while True:
c = view.substr(pt)
if c == " " or c == "\t":
pt += 1
else:
break
return pt
def has_non_white_space_on_line(view, pt):
while True:
c = view.substr(pt)
if c == " " or c == "\t":
pt += 1
else:
return c != "\n"
Primeiro, comente todas as linhas de advance_to_first_non_white_space_on_line()
, exceto a declaração final return
:
def advance_to_first_non_white_space_on_line(view, pt):
# while True:
# c = view.substr(pt)
# if c == " " or c == "\t":
# pt += 1
# else:
# break
return pt
Continuando para has_non_white_space_on_line()
, comente todas as linhas:
def has_non_white_space_on_line(view, pt):
# while True:
# c = view.substr(pt)
# if c == " " or c == "\t":
# pt += 1
# else:
# return c != "\n"
Em seguida, crie uma nova linha após a instrução return
, indente 4 espaços e cole o seguinte:
return view.substr(pt) != "\n"
fazendo a coisa toda parecer assim:
def has_non_white_space_on_line(view, pt):
# while True:
# c = view.substr(pt)
# if c == " " or c == "\t":
# pt += 1
# else:
# return c != "\n"
return view.substr(pt) != "\n"
E é isso! Salve o arquivo e, apenas por diversão, tente comentar algumas linhas nele - você verá todos os caracteres de comentário #
na coluna 1.
Agora, isso obviamente mudará o comportamento de todas linguagens, não apenas do Python, então esteja preparado para isso. Para desfazer as alterações, basta substituir as duas definições de funções pelas do primeiro bloco de código acima. Ah, para chegar ao arquivo novamente, você não precisa passar pelo PackageResourceViewer. Em vez disso, selecione Preferences -> Browse Packages...
(ou Sublime Text -> Preferences -> Browse Packages...
se estiver no OS X) para abrir a pasta Packages
no gerenciador de arquivos do sistema operacional (Windows Explorer, Finder, Nautilus, etc.). Em Packages/Default
, você encontrará comment.py
, assim como você alterou. Se você quiser voltar ao estado original, basta excluir esse arquivo e tudo estará pronto (o original será armazenado em outro local, mas será substituído quando houver um arquivo com nome idêntico em Packages
).
Se você é realmente aventureiro, pode clonar o arquivo, renomeá-lo e modificá-lo para incluir lógica apenas para recuar assim com determinados idiomas, mas isso está além do escopo desta resposta. Pergunte sobre o estouro de pilha se você quiser saber como fazer isso.