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).



@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.


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.


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.


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
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.