Como abrir arquivos com um aplicativo de vinhos do mc?

2

Eu quero usar o PDF-XChange Editor para abrir arquivos pdf de dentro de mc . Eu tentei definir

Open=wine ~/PDFXEdit6_Portable/PDFXEdit.exe %f

em mc.ext , mas abre apenas o aplicativo, não o arquivo.

[editar]

Parece-me que a sintaxe deste campo é próxima da dos arquivos exec in .desktop , então tentei adaptar algumas das soluções propostas em Como passar o arquivo como argumento no arquivo .desktop para o aplicativo wine , mas sem sucesso ainda.

    
por Arch Stanton 20.12.2016 / 22:43

1 resposta

1

Resposta curta.

Você está usando %f , mas o nome do arquivo que deseja passar é armazenado na variável ${MC_EXT_FILENAME} .

Resposta longa.

Como abrir / visualizar arquivos PDF usando o Midnight Commander + wine + PDF-XChange Viewer / Editor Portátil

note: Eu suponho que os aplicativos portáteis do windows estejam armazenados em "~ / MyApps / *"

  • abra o Midnight Commander extension file para edição: F9 - > Comando - > Edite o arquivo de extensão
  • navegue até a seção do arquivo em que a configuração do PDF está gravada: Digite / pdf Digite
  • comente as seguintes linhas (apenas para um backup):


# PDF
#type/^PDF
#       Open=/usr/lib/mc/ext.d/doc.sh open pdf
#       View=%view{ascii} /usr/lib/mc/ext.d/doc.sh view pdf
  • adicione / substitua pelas seguintes linhas:


# PDF
type/^PDF
        Open=~/MyApps/start-pdf-mc.sh
        View=%view{ascii} ~/MyApps/start-pdf-mc.sh
  • saia e salve as alterações: : wq
  • crie o arquivo ~/MyApps/start-pdf-mc.sh com o seguinte conteúdo:


#!/bin/bash
Filename="z:"${MC_EXT_FILENAME//\//\}
App='eval wine "~/MyApps/PDF-XChange_Viewer/PDFXCview.exe" "'$Filename'" > /dev/null 2>&1 &'
$App

nota: você pode querer criá-lo em /usr/lib/mc/ext.d/*.sh (em vez de ~/MyApps/ como eu fiz)

  • verifique se o arquivo start-pdf-mc.sh é executável (use chmod )

explicação do arquivo start-pdf-mc.sh

  • o nome do arquivo que estamos tentando abrir é armazenado em ${MC_EXT_FILENAME} variável

  • ao usar o vinho, use a letra da unidade z:

  • converta o caminho do arquivo no estilo Linux ( / ) para o estilo do Windows ( \ ) com o seguinte: ${MC_EXT_FILENAME//\//\} para passá-lo como um argumento para PDF-XChange Viewer mais tarde

  • > /dev/null 2>&1 e & são necessários para descartar a saída do programa e executá-la como um processo em segundo plano; caso contrário, você não poderá usar o Midnight Commander até que você fechar PDF-XChange Viewer, que obviamente não é desejável

testado com o seguinte software

  • Linux Debian de 32 bits

  • GNU Midnight Commander 4.8.13

  • wine-1.6.2

  • PDF-XChange Viewer v2.5.316.1

AND

  • Linux Debian de 32 bits

  • GNU Midnight Commander 4.8.13

  • wine-1.6.2

  • Editor do PDF-XChange v6.0.321.0

atualizar de acordo com o seu comentário

Parece que ainda há algum erro no caminho do arquivo ... Vamos tentar corrigi-lo.

1.

  • Abra um arquivo pdf problemático com o PDFXChange Editor (como você costuma fazer, NÃO com o Midnight Commander)

  • Arquivo - > Copie o nome completo do arquivo

  • Cole em qualquer arquivo de texto (apenas para referência futura)

  • Feche o Editor PDFXChange

  • Abra o mesmo arquivo com o Midnight Commander + PDFXChange Editor (que mostra sua mensagem de erro)

  • Compare se os caminhos dos arquivos são idênticos (aquele que você acabou de colado para referência e aquele em sua mensagem de erro)

  • Se os caminhos NÃO forem idênticos - corrija o caminho de acordo com o arquivo .sh OU cole-os aqui para ajudar (basta substituir seu nome de usuário no caminho com <username> por segurança)

2.

Além disso, isso não é muito provável, MAS se os caminhos forem idênticos, pode haver um problema com as permissões definidas no arquivo que você está tentando abrir. Assim, verifique se as permissões do seu arquivo são pelo menos:

sudo chmod 644 your-file-name-here.pdf

atualização 2

É possível ter acesso a todos os arquivos de todas as unidades, incluindo aqueles que NÃO estão localizados no ~/* (diretório de usuários domésticos) ou até mesmo armazenados em outros HDs apenas usando Z:\ (não usando H:\ e outras letras de unidade).

Verifique o mapeamento de sua unidade no vinho:

  • executado no terminal

    $ winecfg

  • abra a guia Drives

  • os seguintes registros devem estar lá por padrão

    Letter | Drive Mapping
    C:     | ../drive_c
    Z:     | /
    

Até onde eu sei, qualquer caminho começa com / (para qualquer arquivo em qualquer HDD acessado no Linux) e assim pode ser acessado usando o Z:\ , por causa do mapeamento descrito acima.

Por exemplo, a configuração acima me permite acessar um arquivo pdf

  • de /home/<username>/*.pdf ( ~/*.pdf ), se estiver em casa diretório do usuário
  • de /media/<drive-label>/*.pdf OR /mnt/<drive-label>/*.pdf , se estiver localizado em alguma unidade externa ou disco rígido, que eu montei; (nas janelas, a mesma unidade pode ser acessada usando o H:\ , por exemplo)

Os mapeamentos de unidade, no entanto, seriam outra pergunta específica para sua configuração. : -)

BTW, mais uma coisa para verificar . O diretório inicial do usuário é ~/* mapeado para a pasta wine My Documents ?

  • no terminal: $ wine explorer
  • clique duas vezes na pasta My Documents
  • Você deve ver o conteúdo do diretório inicial ~/* do Linux
por 21.04.2017 / 04:02

Tags