Conversion TXT -> PDF via AppleScript

6 réponses
Avatar
newsSP
Bonjour,

À la recherche d'un script qui me permette à la volée de convertir
des fichiers (principalement *.txt) en PDF (sans passer par
Fichier->Imprimer->PDF.

Suis tombé sur ce script ancien :
<https://github.com/github/linguist/blob/master/samples/AppleScript/Conv
ert%20To%20PDF.applescript>

Mais qui génère l'erreur :
--> error "sh: /System/Library/Printers/Libraries/./convert: No such
file or directory" number 127

Quelqu'un ici connaitrait-il le bon chemin (sous Mountain Lion)?

Et accessoirement, quelles instructions ajouter dans le code pour
protéger les PDFs par mot de passe

D'avance, merci,

--
(\_/) Jo
°o°
m m "Don't suffer from insanity, enjoy every minute of it."

6 réponses

Avatar
pehache
Le 16/05/13 16:04, Jo a écrit :
Bonjour,

À la recherche d'un script qui me permette à la volée de convertir
des fichiers (principalement *.txt) en PDF (sans passer par
Fichier->Imprimer->PDF.

Suis tombé sur ce script ancien :
<https://github.com/github/linguist/blob/master/samples/AppleScript/Conv
ert%20To%20PDF.applescript>

Mais qui génère l'erreur :
--> error "sh: /System/Library/Printers/Libraries/./convert: No such
file or directory" number 127

Quelqu'un ici connaitrait-il le bon chemin (sous Mountain Lion)?



Dans le Finder tu recherche "convert" sur "ce Mac" comme "nom de fichier"

Sinon Tu ouvres un Terminal et tu tapes :

sudo find /System -name convert

tu valides, il te demande ton mot de passe, et il cherche (ça peut être
un peu long)
Avatar
newsSP
pehache wrote:

Sinon Tu ouvres un Terminal et tu tapes :

sudo find /System -name convert

tu valides, il te demande ton mot de passe, et il cherche (ça peut être
un peu long)



et il revient bredouille :(

cherché sur une machine sous Snow Leo, "convert" est un alias vers
"/usr/sbin/cupsfilter" qui existe aussi sous ML

changé le chemin dans le script, qui produit alors :
--> error "cupsfilter: Invalid job ID 0." number 1

Merci pour la piste, je cherche dans "man cupsfilter"

--
(_/) Jo
°o°
m m "Don't suffer from insanity, enjoy every minute of it."
Avatar
benoit
Jo wrote:

À la recherche d'un script qui me permette à la volée de convertir
des fichiers (principalement *.txt) en PDF (sans passer par
Fichier->Imprimer->PDF.

Suis tombé sur ce script ancien :
<https://github.com/github/linguist/blob/master/samples/AppleScript/Conv
ert%20To%20PDF.applescript>



Essaye celui-là qui fonctionne par D&D :

on open theFiles
set oldTID to AppleScript's text item delimiters
repeat with thisFile in theFiles
-- get file path as posix path
set inputFilePath to POSIX path of thisFile

-- create output path - same name with .pdf extension
set AppleScript's text item delimiters to "."
set outputFilePathBits to text items of inputFilePath
set last text item of outputFilePathBits to "pdf"
set outputFilePath to outputFilePathBits as text

-- create convert command and send to shell
set AppleScript's text item delimiters to " "
set cmdList to {"/System/Library/Printers/Libraries/convert", "-f",
quoted form of inputFilePath, "-o", quoted form of outputFilePath}
do shell script (cmdList as text)
end repeat
set AppleScript's text item delimiters to oldTID
end open

Source : <http://hints.macworld.com/article.php?story 110605113316760>
daté de 2011.

--
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La
pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
Ici, nous avons réuni théorie et pratique : Rien ne fonctionne... et
personne ne sait pourquoi !" [ Albert Einstein ]
Avatar
benoit
Jo wrote:

--> error "sh: /System/Library/Printers/Libraries/./convert: No such
file or directory" number 127



Le chemin est /System/Library/Printers/Libraries/convert


--
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La
pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
Ici, nous avons réuni théorie et pratique : Rien ne fonctionne... et
personne ne sait pourquoi !" [ Albert Einstein ]
Avatar
pehache
Le 20/05/13 00:14, Benoit a écrit :
Jo wrote:

--> error "sh: /System/Library/Printers/Libraries/./convert: No such
file or directory" number 127



Le chemin est /System/Library/Printers/Libraries/convert





C'est pareil
Avatar
newsSP
Benoit wrote:

Essaye celui-là qui fonctionne par D&D :



Je l'avais essayé aussi, même motif, même punition :(

(cf. ma réponche à Pehache
<1l2zayh.ky7fh11w1401sN%)

du coup, je suis parti sur ce script, qui "marche" mais dont le
résultat est perfectible du point de vue cosmétique :

8<---
#!/bin/bash
for file in *.txt ; do
filename=$(basename "$file")
/usr/sbin/cupsfilter "$file" > "$filename.pdf"
done
8<---

Merci des pistes et bone journée,

--
(_/) Jo
°o°
m m "Don't suffer from insanity, enjoy every minute of it."