sábado, 14 de novembro de 2026

Como criar uma pasta Favoritos no pcmanfm

O gerenciador de arquivos nemo tem a opção de adicionar arquivos a uma pasta de nome Favoritos, ao utilizar a opção do menu suspenso do mouse "Adicionar aos favoritos", onde na barra lateral a esquerda surgira a pasta Favoritos.
Estes arquivos adicionados aos Favorito do nemo não são links simbólicos e nem copia dos originais, funcionado tipo o recurso do Favoritos do seu navegador de Internet com base em um registro de metadados.

Podemos fazer algo semelhante no gerenciador de arquivos pcmanfm que envolve criar manualmente a pasta Favoritos no seu HOME e adicionar a mesma ao marcadores e depois criar um script em zenity para criar um link simbólico e criar uma ação personalizada para isto.

Passos:

1- Criação da pasta .Favoritos

No pcmanfm estando no seu HOME, clique em um espaço vazio com o botão direito do mouse e escolha a opção Criar novo(a)... e depois Pasta, digite o seguinte tendo um ponto na frente do nome: .Favoritos onde a pasta ficará oculta no seu HOME.

Agora no pcmanfm acesse o menu Ver e marque a opção "Mostrar Ocultos".
Estando na sua pasta HOME, selecione a pasta oculta .Favoritos e usando o botão direito no mouse sob a mesma escolha a opção "Adicionar aos marcadores" depois de feito, você pode ir no menu Ver e desmarcar a opção "Mostrar ocultos".
Sua pasta Favoritos estará sendo exibida nos Marcadores (barra lateral a esquerda da tela).

Nota:
A opção de tornar a pasta Favoritos oculta ou não fica ao seu critério, eu fiz para menos arquivos visíveis na pasta do HOME.

2- Criar a ação personalizada no pcmanfm

Abra uma janela de terminal e acesse a pasta ~/.local/share/file-manager/actions/ mas caso a mesma não exista ainda basta criar ela manualmente com o seguinte comando: mkdir -p ~/.local/share/file-manager/actions/

Crie o arquivo da ação personalizada com o seguinte nome: criar_link.desktop 

Conteúdo do arquivo criar_link.desktop que pode ser criado com qualquer editor de texto ASCII puro da usa preferência.

[Desktop Entry]
Type=Action
Name=Criar Link Simbólico aqui...
Icon=link
Profiles=profile_criar_link

[X-Action-Profile profile_criar_link]
MimeTypes=inode/directory;
Exec=bash -c '/usr/local/bin/criar_link_zenity.sh "%f"'
Name=Default profile


Nota:
Você pode criar a ação personalizada, arquivo, pasta, edição do arquivo todo o processo diretamente pelo pcmanfm sem precisar de janela de terminal para isto, mas no terminal fica mais prático para criar a mesmo principalmente ser a pasta ~/.local/share/file-manager/actions/ ainda não existir onde você deverá criar ela manualmente neste caso.

3- Criar o script em zenity que será utilizado para criação do link simbolo

Crie o script em /usr/local/bin com o nome de criar_link_zenity.sh
Conteúdo do script criar_link_zenity.sh:

#!/bin/bash

# A pasta atual é passada pelo PCManFM como o primeiro argumento ($1)
PASTA_ATUAL="$1"

# 1. Abre a caixa do Zenity para o usuário colar o caminho do arquivo original
CAMINHO_ORIGINAL=$(zenity --entry \
    --title="Criar Link Simbólico" \
    --text="Cole o caminho completo do arquivo original (Ctrl+V):" \
    --entry-text="" \
    --width=500)

# Se o usuário cancelar ou deixar em branco, encerra
if [ $? -ne 0 ] || [ -z "$CAMINHO_ORIGINAL" ]; then
    exit 0
fi

# Remove aspas simples ou duplas caso o caminho tenha sido colado com elas
CAMINHO_ORIGINAL=$(echo "$CAMINHO_ORIGINAL" | sed "s/['\"]//g")

# 2. Verifica se o arquivo/pasta de origem realmente existe
if [ ! -e "$CAMINHO_ORIGINAL" ]; then
    zenity --error --title="Erro" --text="O caminho de origem não existe:\n$CAMINHO_ORIGINAL"
    exit 1
fi

# 3. Extrai apenas o nome do arquivo/pasta para sugerir como nome do link
NOME_PADRAO=$(basename "$CAMINHO_ORIGINAL")

# 4. Pergunta o nome que o link simbólico deve ter
NOME_LINK=$(zenity --entry \
    --title="Nome do Link" \
    --text="Digite o nome para o link simbólico:" \
    --entry-text="$NOME_PADRAO" \
    --width=400)

if [ $? -ne 0 ] || [ -z "$NOME_LINK" ]; then
    exit 0
fi

# Define o caminho completo onde o link será criado
DESTINO_LINK="$PASTA_ATUAL/$NOME_LINK"

# 5. Cria o link simbólico (ln -s)
if ln -s "$CAMINHO_ORIGINAL" "$DESTINO_LINK"; then
    zenity --info --title="Sucesso" --text="Link simbólico criado com sucesso:\n$NOME_LINK -> $CAMINHO_ORIGINAL" --timeout=3
else
    zenity --error --title="Erro" --text="Não foi possível criar o link simbólico."
fi

Após salvar o arquivo coloque a permissão x nele.
$ sudo chmod +x criar_link_zenity.sh

Está tudo, pronto, agora feche a janela do pcmanfm e execute novamente o pcmanfm para ele carregar as configurações feita.


                Colocando links na pasta .Favoritos pelo pcmanfm

- Usando o pcmanfm basta selecionar o arquivo desejado não importa em qual pasta o mesmo esteja usando o botão direito do mouse escolha a opção "Copiar caminho".

- Na barra lateral do pcmanfm clique no item .Favoritos e dentro de .Favoritos clique em qualquer parte vazia da janela usando o botão direito do mouse e escolha a opção "Criar Link Simbólico aqui...", e nas duas janelas seguintes do zenity basta apenas confirmar em OK.

Pronto arquivo de link criado com sucesso.


IMPORTANTE

- Não clique em cima de nenhum arquivo ou pasta dentro de .Favoritos que não funcionará para criar o link.

- Se você criar link diretamente para arquivos em .Favoritos e excluir estes link de arquivos, os arquivos originais não serão excluído da origem real.

- Mas se você criar links de pasta dentro de .Favoritos e dentro da pasta link você excluir arquivos, os arquivos da origem será excluído da pasta real da origem. 

- Excluindo o link de pasta dentro de .Favoritos a pasta original não será excluída e nem os arquivos dela.


Shot do pcmanfm com a pasta .Favoritos na barra  lateral e com emblema nela.

















Nenhum comentário:

Postar um comentário