Como nomear um arquivo para ser o primeiro no Nautilus?

16

Novas versões do Nautilus são legais, porque pulam letras não alfanuméricas no início de qualquer nome de arquivo e classificam os arquivos de acordo com a primeira letra alfanumérica (se houver). Mas como nomear um arquivo para classificá-lo antes 0? Suponha que eu tenha uma pasta com estes arquivos:

0apple.conf
apricot.xml
banana
camel.so
cat.py
dog.tar.bz

e quero adicionar um prefixo de uma ou duas letras ao cat.pypara classificá-lo antes do 0apple.confarquivo. Não quero mudar o nome, basta adicionar um prefixo. Eu também não quero mudar o nome dos outros. Eu já tentei:

  1. #cat.pye .cat.pynomes e prefixos do alfabeto grego classificam o arquivo até o final (após o dog.tar.bzarquivo; .altera também a visibilidade)
  2. qualquer um dos ,-";:-–\_(?)*+%=<>!prefixos classifica o arquivo entre camel.soe dog.tar.bz(como sem nenhum prefixo).

Sim, existe uma opção para adicionar mais zeros para estar perto do início, mas quero que o nome do arquivo seja o mais curto possível e na primeira posição.

PS: A minha linguagem é Checa (portanto, o agrupamento deve ser algo como cs, cz, czechou cs_CZ).

aleskva
fonte
@Aurigae desculpe, mas estes não estão relacionados, eles meio deles apenas em ls, mas não em Nautilus
aleskva
e +0cat.py?
21416 Sylvain Pineau
Não, ainda não primeiro
aleskva
Uma resposta pode ser encontrada neste link: Guia do Nautilus, sob o título "Nautilus Sort". É uma maneira de mudar a maneira como o Nautilus lida com caracteres especiais ao classificar nomes de arquivos.
bashBedlam

Respostas:

7

O prefixo 0já faz com que o arquivo seja classificado primeiro no Nautilus. O que pode acontecer antes do primeiro arquivo? Nenhum arquivo pôde, exceto diretórios. Isso ocorre independentemente do código do idioma em uso.

Nomeação de arquivo

No exemplo a seguir, criei primeiro um arquivo de texto vazio com o nome de apple.txtvárias cópias e renomeei cada um dos arquivos adicionando prefixo de caractere único. Eu usei apenas os caracteres alfanuméricos mais compatíveis: 0 A á _ -e (espaço). Isso significa que eu criei 7 arquivos no total, além de um diretório nomeado applepara referência.

Observe que áé a segunda letra do tcheco, encontrada nesta seção do artigo na Wikipedia. A primeira letra parece ser igual ao inglês: Ae a.

Classificação de arquivos

Como o Nautilus classifica esses arquivos em diferentes ambientes de localidade? Acontece que é semelhante, mas um pouco diferente. Veja a captura de tela a seguir para comparação.

Nautilus em ambiente inglês e tcheco

Os arquivos classificados pelo Nautilus no ambiente inglês são os en_US.UTF-8seguintes:

apple <-- directory
0apple.txt
Aapple.txt
áapple.txt
apple.txt <-- original file without prefix
 apple.txt
_apple.txt
-apple.txt

Os arquivos classificados pelo Nautilus no ambiente tcheco cs_CZ.UTF-8assim:

apple <-- directory
0apple.txt
Aapple.txt
áapple.txt
 apple.txt
apple.txt <-- original file without prefix
-apple.txt
_apple.txt

Nos dois locais, não há alterações na ordem do diretório e dos três principais arquivos ao exibir como lista no Nautilus. Isso já mostra que nenhum caractere alfanumérico pode aparecer antes 0apple.txt.

Solução alternativa 1

Uma maneira é criar arquivos com outro nome que não seja "apple" existente com o mesmo prefixo 0que precede o existente. A criação 0aaa.txtvirá antes 0apple.txte assim por diante.

Usando esta solução alternativa, os arquivos são classificados assim:

0.txt
0a.txt
0aaa.txt
0apple.txt
...

Dessa forma, o arquivo 0.txtseria o primeiro a aparecer no Nautilus. Nenhum outro arquivo pode vir antes 0.txt, a menos que o usuário queira criar um nome de arquivo .txt(usando apenas um caractere de espaço).

Solução 2

Diga se applejá é o primeiro arquivo que pode existir e o usuário insiste em não renomear apple, existe outra maneira: renomeie o arquivo existente com o prefixo de número mais alto de 0apple.txtpara 9apple.txt. Isso permitirá que outros arquivos com menor número do prefixo 0*para 8*a comparecer perante 9apple.txt.

Usando esta solução alternativa, os arquivos são classificados assim:

0mango.txt
1kiwi.txt
2orange.txt
...
9apple.txt
...

A solução alternativa 2 é inadequada, se o 0apple.txttodo não puder ser renomeado por qualquer motivo. A solução alternativa 1 será mais eficaz, pois 0.txtsempre aparecerá antes 0mango.txtou em outros nomes de arquivo nos quais o usuário possa pensar.

Como eu testei

Nos meus testes, apenas pacotes essenciais de localidade foram instalados para preparar o ambiente tcheco para a execução do Nautilus no Ubuntu. A maneira rápida de executar o programa em outro local por LANG=<LOCALENAME> nautiluscomando não funcionou. Portanto, as seguintes etapas.

  • Instale esses pacotes language-pack-gnome-cs language-pack-gnome-cs-base language-pack-cs language-pack-cs-basevia APT no Terminal

  • Vá para Configurações do sistema> Idioma e suporte

  • Em Idioma - Idioma para menus e janelas , arraste a entrada denominada čeština(palavra para "tcheco" anotada pela Wikipedia ) acimaEnglish

  • Sair e entrar novamente para entrar em vigor

Testado usando o Nautilus 3.14.3 no Ubuntu 16.04 LTS (Live).

TL; DR Nome do arquivo com prefixo 0cria o primeiro arquivo no Nautilus. Nenhum outro arquivo, exceto os diretórios, pode aparecer antes do primeiro arquivo.

clearkimura
fonte
Quanto à insanidade e desrespeito ao comportamento de classificação do Nautilus em relação à variável ambiental, consulte este post anterior .
clearkimura
11
Como pessoa tcheca nativa, devo corrigi-lo: Áou áé a segunda letra do alfabeto tcheco após Aou a. Veja a coluna da esquerda na tabela vinculada da Wikipedia. A coluna da direita está escrita da letra na coluna da esquerda.
Melebius
@Melebius Corrigido em conformidade. Meu mal, eu tinha lido errado na coluna "Nome" em vez de "Carta" na tabela.
clearkimura
Outra coisa menor é que Áou ánão é o mesmo que Aou a. Mas você answerred maior parte da minha pergunta, graças
aleskva
Pretendia usar uma carta do tcheco que possa substituir letras ou números romanos típicos, mas interpretei errado a tabela na Wikipedia. Tenho vergonha do meu erro bobo ... Mas ainda não tentei com outro local.
clearkimura
2

Você já tentou o espaço zero como prefixo?

[0cat.py]

Os outros caracteres que você mencionou também não funcionam para mim, mas o espaço zero funciona bem.

Você também pode tentar outras combinações de caracteres espaciais e zero, coisas como: -0cat.pay, _0cat.py etc. também devem funcionar.

Ravexina
fonte
Legal, mas isso é bom se eu quiser operar com esse arquivo usando o terminal?
aleskva
Eu acho que deveria codificar o nome do arquivo e o preenchimento automático não funcionaria, o que não é tão conveniente.
aleskva
Também não consigo renomear nenhum arquivo com esse nome no Nautilus (só posso fazer isso com o terminal), o que também não é tão conveniente.
aleskva
2
Tente outra combinação de caracteres espaciais e zero, algo como -0cat.py ou! 0cat.py ou qualquer outra coisa, eles também devem funcionar. Eu editei minha resposta.
Ravexina
Para não me, 00apple.conf é ainda antes -0cat.py: /
aleskva
0

Tenho sucesso em nomear arquivos usando o prefixo aa. Digamos que o nome do arquivo original seja info.txt - o nome seria aa.info.txt. Pode-se estender isso com "aaa". ou "bb". etc. Evitaria caracteres e espaços especiais, alguns dos quais poderiam tornar a composição dos scripts complicada demais.

Roger
fonte
Isso não responde à pergunta do OP.
edwinksl
Que tal, referindo-se ao seu exemplo, aa.00apple.conf?
Roger
E o 000apple.conf?
userDepth
A única coisa ruim é 00apple é depois 0apple e se você adicionar mais zeros, você não está no início
aleskva