description des modifications à implémenter
This commit is contained in:
parent
c659159188
commit
039009af82
54
TODO.md
54
TODO.md
|
@ -1,3 +1,57 @@
|
|||
# TODO
|
||||
|
||||
il faudrait pouvoir mettre au téléchargement des fichiers générés dynamiquement.
|
||||
* soit à la mode -E c'est à dire qu'ils ne sont pas listés mais téléchargeables
|
||||
* soit à la mode -e c'est à dire qu'ils sont inclus dans la liste retournée
|
||||
|
||||
dans tous les cas, quand le fichier est demandé, la commande associée est lancée
|
||||
avec certains paramètres. il faudrait peut-être supporter la notion de fichier
|
||||
dérivé, ce qui implique que le script est lancé avec la référence du fichier de
|
||||
base, à partir duquel est généré le contenu effectif
|
||||
|
||||
donc on pourrait avoir:
|
||||
* -E "spec:;command args..." lance la commande avec des arguments parmi lesquels
|
||||
on peut mentionner les variables %s == spec, %f == le fichier demandé, etc.
|
||||
* -e "spec:;command args..." lance la commande avec des arguments parmi lesquels
|
||||
on peut mentionner les variables %s == spec, %f == le fichier demandé, %b le
|
||||
fichier de base qui correspond au pattern spec, etc.
|
||||
|
||||
à réfléchir: comme les fichiers sont générés dynamiquement, avec l'option '-e'
|
||||
la valeur 'spec' n'a pas de signification, parce qu'il n'y a pas de fichier avec
|
||||
lesquels faire la correspondance... il faut donc trouver une syntaxe pour
|
||||
spécifier comment transformer des fichiers existant en modèles de fichiers que
|
||||
l'on peut demander. ensuite, il faut pouvoir faire un lien entre un fichier
|
||||
physique et le nom qui a été généré pour la construction dynamique.
|
||||
|
||||
il faut aussi supporter le cas où le nom de fichier est généré sans fichier
|
||||
physique associé.
|
||||
|
||||
peut-être "-e spec:[basespec:];command" ? exemples:
|
||||
|
||||
-e "\1\.pdf:(.*)\.doc:;convert-to-pdf %b -o %f"
|
||||
|
||||
et pour un fichier généré dynamiquement:
|
||||
|
||||
-e "rand.*\.dat:;gen-random %f"
|
||||
|
||||
si la commande ne contient pas la variable %f, on assume que les données sont
|
||||
écrite sur la sortie standard. sinon, il faut préparer un fichier temporaire et
|
||||
le fournir comme valeur %f. la commande est censée provisionner le fichier.
|
||||
|
||||
si une variable %f ou %b est spécifiée telle quelle, les caractères spéciaux
|
||||
sont mis en échappement automatiquement. si elle est spécifiée à l'intérieur
|
||||
d'une autre valeur, aucun quoting n'est effectué.
|
||||
|
||||
e.g. si %f vaut "file with space.txt" alors
|
||||
~~~
|
||||
la commande cmd %f
|
||||
donnera effectivement cmd "file with space.txt" (un seul argument)
|
||||
|
||||
alors que la commande cmd prefix/%f
|
||||
donnera cmd prefix/file with space.txt (3 arguments)
|
||||
|
||||
donc la commande cmd "prefix/%f"
|
||||
donnera cmd "prefix/file with space.txt" (1 argument)
|
||||
~~~
|
||||
|
||||
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary
|
Loading…
Reference in New Issue