nano - O editor de texto ANOther do Nano, inspirado no Pico
SINTAXE
nano [opções] [[+linha[,coluna]] arquivo]...
nano [opções] [[+[crCR]{/|?}string] arquivo]...
AVISO
Desde a versão 8.0, para ser mais amigável aos novos usuários, ^F inicia uma pesquisa para frente, ^B inicia uma pesquisa para trás, M-F pesquisa a próxima ocorrência para frente e M-B pesquisa a próxima ocorrência para trás. Se você quiser que essas teclas executem o que faziam antes da versão 8.0, adicione as seguintes linhas no final do seu arquivo nanorc:
bind ^F forward main
bind ^B back main
bind M-F formatter main
bind M-B linter main
DESCRIÇÃO
nano é um editor de texto pequeno e amigável. Ele copia a aparência do Pico, mas é um software livre e implementa vários recursos que o Pico não possui, como: abrir vários arquivos, rolagem por linha, desfazer/refazer, realce de sintaxe, numeração de linhas e quebra de linha automática de linhas muito longas.
Ao fornecer um nome de arquivo na linha de comando, o cursor pode ser colocado em uma linha específica, adicionando o número da linha com um sinal de mais (+) antes do nome do arquivo, e até mesmo em uma coluna específica, adicionando-o com uma vírgula. Números negativos contam a partir do final do arquivo ou da linha.
O cursor pode ser colocado na primeira ou última ocorrência de uma string específica, especificando essa string após +/ ou +? antes do nome do arquivo. A string pode ser tornada sensível a maiúsculas e minúsculas e/ou pode ser interpretada como uma expressão regular, inserindo c e/ou r após o sinal de mais. Esses modos de pesquisa podem ser explicitamente desativados usando a variante em maiúsculas dessas letras: C e/ou R. Quando a string contém espaços, ela precisa ser colocada entre aspas. Para dar um exemplo: para abrir um arquivo na primeira ocorrência da palavra "Foo", você faria:
nano +c/Foo arquivo
Como um caso especial: se, em vez de um nome de arquivo, um traço (-) for fornecido, o nano lerá dados da entrada padrão.
EDIÇÃO
Digitar texto e mover-se em um arquivo é simples: digitar as letras e usar as teclas normais de movimento do cursor. Os comandos são inseridos usando as teclas Control (^) e Alt ou Meta (M-). Digitar ^K exclui a linha atual e a coloca no buffer de corte. ^Ks consecutivos colocam todas as linhas excluídas juntas no buffer de corte. Qualquer movimento do cursor ou execução de qualquer outro comando faz com que o próximo ^K substitua o buffer de corte. Um ^U cola o conteúdo atual do buffer de corte na posição atual do cursor.
Quando um trecho de texto mais preciso precisa ser cortado ou copiado, você pode marcar seu início com ^6, mover o cursor para o final (o texto marcado é destacado) e, em seguida, usar ^K para cortá-lo ou M-6 para copiá-lo para o buffer de corte. Você também pode salvar o texto marcado em um arquivo com ^O ou verificar a ortografia com ^T^T.
Em alguns terminais, o texto também pode ser selecionado segurando a tecla Shift enquanto usa as teclas de seta. Segurar as teclas Ctrl ou Alt também aumenta o incremento. Qualquer movimento do cursor sem segurar a tecla Shift cancela a seleção.
Qualquer ponto de código Unicode válido pode ser inserido no buffer digitando M-V seguido pelos dígitos hexadecimais do ponto de código (concluído com
As duas linhas na parte inferior da tela mostram alguns comandos importantes; a ajuda integrada (^G) lista todos os comandos disponíveis. Os atalhos de teclado padrão podem ser alterados por meio de um arquivo nanorc — consulte nanorc(5).
OPÇÕES
-A, --smarthome
Torna a tecla Home mais inteligente. Quando Home é pressionada em qualquer lugar, exceto no início exato de caracteres não espaços em branco em uma linha, o cursor salta para esse início (para frente ou para trás). Se o cursor já estiver nessa posição, ele salta para o início real da linha.
-B, --backup
Ao salvar um arquivo, faça um backup da versão anterior, usando o nome do arquivo atual com o sufixo til (\~).
-C directory, --backupdir=directory
Faça e mantenha não apenas um arquivo de backup, mas faça e mantenha um arquivo numerado exclusivamente sempre que um arquivo for salvo — quando os backups estiverem habilitados (-B). Os arquivos numerados exclusivamente são armazenados no diretório especificado.
-D, --boldtext
Para a interface, use negrito em vez de vídeo reverso. Isso pode ser substituído para elementos específicos, definindo as opções titlecolor, statuscolor, promptcolor, minicolor, keycolor, numbercolor e/ou selectedcolor em seu arquivo nanorc. Consulte nanorc(5).
-E, --tabstospaces
Converta cada tabulação digitada em espaços — para o número de espaços que uma tabulação nessa posição ocuparia. (Observação: as tabulações coladas não são convertidas.)
-F, --multibuffer
Leia um arquivo em um novo buffer por padrão.
-G, --locking
Use o bloqueio de arquivo no estilo Vim ao editar arquivos.
-H, --historylog
Salve as últimas cem strings de pesquisa, strings de substituição e comandos executados, para que possam ser facilmente reutilizados em sessões posteriores.
-I, --ignorercfiles
Não analise o nanorc do sistema nem o nanorc do usuário.
-J number, --guidestripe=number
Desenhe uma faixa vertical na coluna especificada para ajudar a julgar a largura do texto. (A cor da faixa pode ser alterada com o comando set stripecolor em seu arquivo nanorc.)
-K, --rawsequences
Interprete as sequências de escape diretamente, em vez de solicitar que o ncurses as traduza. (Se você precisar desta opção para que algumas teclas funcionem corretamente, isso significa que a descrição do terminal terminfo que está sendo usada não corresponde totalmente ao comportamento real do seu terminal. Isso pode acontecer quando você se conecta via SSH a uma máquina BSD, por exemplo.) Usar esta opção desativa o suporte ao mouse do nano.
-L, --nonewlines
Não adicione automaticamente uma nova linha quando um texto não termina com uma. (Isso pode fazer com que você salve arquivos de texto não POSIX.)
-M, --trimblanks
Remova os espaços em branco à direita da linha formatada quando a quebra de linha automática ocorrer ou quando o texto for justificado.
-N, --noconvert
Desative a conversão automática de arquivos do formato DOS/Mac.
-O, --bookstyle
Ao justificar, trate qualquer linha que comece com espaços em branco como o início de um parágrafo (a menos que a formatação automática esteja ativada).
-P, --positionlog
Para os 200 arquivos mais recentes, registre a última posição do cursor e coloque-o nessa posição novamente ao reabrir esses arquivos. Também salve e restaure as posições de quaisquer âncoras.
-Q "regex", --quotestr="regex"
Defina a expressão regular para corresponder à parte de citação de uma linha. O valor padrão é "^([ \t]*([!#%:;>|}]|//))+". (Observe que \t representa um Tab real.) Isso torna possível rejustificar blocos de texto citado ao compor e-mails e reformatar blocos de comentários de linha ao escrever código-fonte.
-R, --restricted
Modo restrito: não leia ou grave em nenhum arquivo que não seja especificado na linha de comando. Isso significa: não leia ou grave arquivos de histórico; não permita suspensão; não permita verificação ortográfica; não permita que um arquivo seja anexado, pré-anexado ou salvo sob um nome diferente, se já tiver um; e não crie arquivos de backup. O modo restrito também pode ser ativado invocando o nano com qualquer nome que comece com 'r' (por exemplo, "rnano").
-S, --softwrap
Exiba em várias linhas da tela as linhas que excedem a largura da tela. (Você pode fazer com que essa formatação suave ocorra em espaços em branco, em vez de abruptamente na borda da tela, usando também --atblanks.)
-T number, --tabsize=number
Defina o tamanho (largura) de um Tab para number colunas. O valor de number deve ser maior que 8.
-U, --quickblank
Faça com que as mensagens da barra de status desapareçam após 1 pressionamento de tecla em vez de após 20. Observe que a opção -c (--constantshow) substitui isso. Quando a opção --minibar ou --zero estiver em vigor, --quickblank faz com que uma mensagem desapareça após 0,8 segundos em vez dos 1,5 segundos padrão.
-V, --version
Mostre o número da versão atual e saia.
-W, --wordbounds
Detecte os limites das palavras de maneira diferente, tratando os caracteres de pontuação como parte de uma palavra.
-X "characters", --wordchars="characters"
Especifique quais outros caracteres (além dos caracteres alfanuméricos normais) devem ser considerados como parte de uma palavra. Ao usar esta opção, você provavelmente desejará omitir -W (--wordbounds).
-Y name, --syntax=name
Especifique o nome do destaque de sintaxe a ser usado entre os definidos nos arquivos nanorc.
-Z, --zap
Permita que um Backspace ou Delete não modificado apague a região marcada (em vez de um único caractere e sem afetar o buffer de recorte).
-a, --atblanks
Ao fazer a formatação suave de linha, formate as linhas em espaços em branco, em vez de sempre na borda da tela.
-b, --breaklonglines
Quebra automaticamente a linha atual quando ela se torna muito longa. (Esta opção é o
oposto de -w (--nowrap) — a última que for dada tem efeito.)
-c, --constantshow
Exibe constantemente a posição do cursor na barra de status. Observe que isso substitui a
opção -U (--quickblank).
-d, --rebinddelete
Interpreta as teclas Delete e Backspace de forma diferente, para que tanto Backspace quanto
Delete funcionem corretamente. Você deve usar esta opção apenas quando, no seu sistema,
ou Backspace age como Delete, ou Delete age como Backspace.
-e, --emptyline
Não use a linha abaixo da barra de título, deixando-a completamente em branco.
-f arquivo, --rcfile=arquivo
Lê apenas este arquivo para definir as opções do nano, em vez de ler os arquivos nanorc do
sistema e do usuário.
-g, --showcursor
Torna o cursor visível no navegador de arquivos (colocando-o no item destacado) e no
visualizador de ajuda. Útil para usuários de braille e pessoas com baixa visão.
-h, --help
Exibe um resumo das opções de linha de comando disponíveis e sai.
-i, --autoindent
Indenta automaticamente uma nova linha criada para o mesmo número de tabulações e/ou
espaços da linha anterior (ou da linha seguinte, se a linha anterior for o início de um
parágrafo).
-j, --jumpyscrolling
Rola o conteúdo do buffer por metade da tela, em vez de por linha.
-k, --cutfromcursor
Faz com que o comando 'Cortar Texto' (normalmente ^K) corte da posição atual do cursor até
o final da linha, em vez de cortar a linha inteira.
-l, --linenumbers
Exibe os números das linhas à esquerda da área de texto. (Qualquer linha com uma âncora
também recebe uma marca na margem.)
-m, --mouse
Habilita o suporte ao mouse, se disponível para o seu sistema. Quando habilitado, os
cliques do mouse podem ser usados para posicionar o cursor, definir a marca (com um clique
duplo) e executar atalhos. O mouse funciona no X Window System e no console quando o gpm
está em execução. O texto ainda pode ser selecionado arrastando enquanto a tecla Shift é
mantida pressionada.
-n, --noread
Trata qualquer nome fornecido na linha de comando como um novo arquivo. Isso permite que
o nano grave em pipes nomeados: ele começa com um buffer em branco e grava no pipe quando
o usuário salva o "arquivo". Dessa forma, o nano pode ser usado como um editor em
combinação com, por exemplo, o gpg, sem ter que gravar dados confidenciais no disco primeiro.
-o diretório, --operatingdir=diretório
Altera para o diretório especificado e permite ler e gravar arquivos apenas neste diretório
e seus subdiretórios.
-p, --preserve
Preserva as sequências XOFF e XON (^S e ^Q) para que sejam capturadas pelo terminal
(interrompendo e retomando a saída). Observe que a opção -/ (--modernbindings) substitui
isso.
-q, --indicator
Exibe uma "barra de rolagem" no lado direito da janela de edição. Ele mostra a posição
da viewport no buffer e quanto do buffer é coberto pela viewport.
-r número, --fill=número
Define a largura de destino para justificar e quebrar automaticamente em um determinado
número de colunas. Se o valor for 0 ou menor, a quebra ocorre na largura da tela menos o
número de colunas, permitindo que o ponto de quebra varie junto com a largura da tela, se
a tela for redimensionada. O valor padrão é -8.
-s "programa [argumento ...]", --speller="programa [argumento ...]"
Use este comando para executar a verificação e correção ortográfica, em vez de usar o corretor interno que chama hunspell(1) ou spell(1).
-t, --saveonexit
Salve um buffer alterado sem solicitar confirmação (ao sair com ^X).
-u, --unix
Salve um arquivo por padrão no formato Unix. Isso substitui o comportamento padrão do nano de salvar um arquivo no formato em que ele estava. (Esta opção não tem efeito quando você também usa --noconvert.)
-v, --view
Apenas visualize o arquivo e impeça a edição: modo somente leitura. Este modo permite que o usuário também abra outros arquivos para visualização, a menos que também seja fornecida a opção --restricted.
-w, --nowrap
Não faça a quebra automática de linha quando ela se tornar muito longa. Este é o padrão. (Esta opção é o oposto de -b (--breaklonglines) — a última opção fornecida é a que tem efeito.)
-x, --nohelp
Não mostre as duas linhas de ajuda na parte inferior da tela.
-y, --afterends
Faça com que Ctrl+Direita e Ctrl+Delete parem no final das palavras, em vez de no início.
-z, --listsyntaxes
Liste os nomes das sintaxes disponíveis e saia.
-!, --magic
Quando nem o nome do arquivo nem a primeira linha fornecem uma pista, tente usar o libmagic para determinar a sintaxe aplicável.
-@, --colonparsing
Quando um nome de arquivo fornecido na linha de comando termina com dois pontos mais dígitos e este nome de arquivo não existe, remova os dois pontos mais os dígitos e interprete os dígitos como um número de linha. Se o nome de arquivo resultante também não existir, repita o processo e interprete os dois números obtidos como número de linha e coluna. Mas se o nome de arquivo resultante da segunda remoção também não existir, ignore a remoção e aceite o nome de arquivo original como está. Para desativar essa análise de dois pontos para um determinado arquivo, use +1 ou similar antes do nome de arquivo relevante.
-%, --stateflags
Use o canto superior direito da tela para mostrar alguns indicadores de estado: I quando a indentação automática estiver ativa, M quando a marca estiver ligada, L quando a quebra de linha estiver ativa, R quando uma macro estiver sendo gravada e S quando a quebra de linha suave estiver ativa. Quando o buffer for modificado, uma estrela (*) é mostrada após o nome do arquivo no centro da barra de título.
-_, --minibar
Suprima a barra de título e, em vez disso, mostre informações sobre o buffer atual na parte inferior da tela, no espaço para a barra de status. Nesta "mini barra", o nome do arquivo é mostrado à esquerda, seguido de um asterisco se o buffer foi modificado. À direita, são exibidos o número da linha e coluna atuais, o código do caractere sob o cursor (no formato Unicode: U+xxxx), os mesmos indicadores mostrados por --stateflags e uma porcentagem que expressa o quão longe o cursor está no arquivo (em termos de linhas). Quando um arquivo é carregado ou salvo, e também ao alternar entre buffers, o número de linhas no buffer é exibido após o nome do arquivo. Este número é limpo na próxima tecla pressionada ou substituído por um contador [i/n] quando vários buffers estão abertos. Os números de linha e coluna e o código do caractere são exibidos apenas quando --constantshow é usado e podem ser alternados com M-C. Os indicadores de estado são exibidos apenas quando --stateflags é usado.
-0, --zero
Oculta todos os elementos da interface (barra de título, barra de status e linhas de ajuda) e usa todas as linhas do terminal para exibir o conteúdo do buffer. A barra de status aparece apenas quando há uma mensagem importante e desaparece após 1,5 segundos ou após a próxima tecla ser pressionada. Com M-Z, a barra de título mais a barra de status podem ser alternadas. Com M-X, as linhas de ajuda.
-/, --modernbindings
Usa associações de teclas semelhantes às que a maioria dos programas modernos usa: ^X corta, ^C copia, ^V cola, ^Z desfaz, ^Y refaz, ^F pesquisa para frente, ^G pesquisa para a próxima ocorrência, ^S salva, ^O abre um arquivo, ^Q sai e (quando o terminal permite) ^H mostra ajuda. Além disso, ^A define o marcador, ^R faz substituições, ^D pesquisa a ocorrência anterior, ^P mostra a posição, ^T vai para uma linha, ^W grava um arquivo e ^E executa um comando. Observe que isso substitui a opção -p (--preserve).
ALTERNAÇÕES
Várias das opções acima também podem ser ativadas e desativadas enquanto o nano está em execução. Por exemplo, M-L alterna a quebra de linha forçada, M-S alterna a quebra de linha suave, M-N alterna os números de linha, M-M alterna o mouse, M-I alterna a indentação automática e M-X alterna as linhas de ajuda. Veja no final do texto de ajuda ^G para uma lista completa.
A alternância M-X é especial: funciona em todos os menus, exceto o visualizador de ajuda e o verificador de sintaxe. Todas as outras alternâncias funcionam apenas no menu principal.
ARQUIVOS
Quando --rcfile é fornecido, o nano lê apenas o arquivo especificado para definir suas opções e sintaxes e associações de teclas. Sem essa opção, o nano lê dois arquivos de configuração: primeiro o nanorc do sistema (se existir) e, em seguida, o nanorc do usuário (se existir), seja ~/.nanorc ou $XDG_CONFIG_HOME/nano/nanorc ou ~/.config/nano/nanorc, o que for encontrado primeiro. Consulte nanorc(5) para mais informações sobre o conteúdo possível desses arquivos.
Veja /usr/share/nano/ e /usr/share/nano/extra/ para as definições de cores de sintaxe disponíveis.
NOTAS
A suspensão é habilitada por padrão, acessível via ^T^Z. (Se você quiser que um simples ^Z suspenda o nano, adicione bind ^Z suspend main ao seu nanorc.)
Em um prompt Sim-Não, ^Y pode ser usado para "Sim", ^N para "Não" e ^A para "Todos". Essas associações não listadas funcionam em qualquer localidade.
Quando você deseja copiar o texto marcado do nano para a área de transferência do sistema, consulte um dos exemplos na página de manual nanorc(5).
Se nenhum comando alternativo de verificação ortográfica for especificado na linha de comando ou em um dos arquivos nanorc, o nano verifica a variável de ambiente SPELL para obter um.
Em alguns casos, o nano tenta despejar o buffer em um arquivo de emergência. Isso acontece principalmente se o nano receber um SIGHUP ou SIGTERM ou ficar sem memória. Ele grava o buffer em um arquivo chamado nano.save se o buffer não tiver um nome ou adiciona um sufixo ".save" ao nome de arquivo atual. Se um arquivo de emergência com esse nome já existir no diretório atual, ele adiciona ".save" mais um número (por exemplo, ".save.1") ao nome de arquivo atual para torná-lo exclusivo. No modo multibuffer, o nano grava todos os buffers abertos em seus respectivos arquivos de emergência.
Se você tiver alguma dúvida sobre como usar o nano em uma situação específica, pode perguntar em _.
BUGS
A gravação e reprodução de macros de teclado funcionam corretamente apenas em um emulador de terminal, não em um console Linux (VT), porque este último, por padrão, não distingue as teclas de seta modificadas das não modificadas.
Por favor, relate quaisquer outros bugs que encontrar através de: https://savannah.gnu.org/bugs/?group=nano.
Quando o nano falha, ele salva quaisquer buffers modificados em arquivos .save de emergência. Se você conseguir reproduzir a falha e quiser obter um rastreamento, defina a variável de ambiente NANO_NOCATCH.
HOMEPAGE
https://nano-editor.org/
VEJA TAMBÉM
nanorc(5)
/usr/share/doc/nano/ (ou equivalente em seu sistema)