#!/usr/bin/perl
#Convertisseur latex + bibtex -> ce qu'on veut (html, odt, docx, epub, etc.)
#devenu un outil pour utiliser pandoc de façon automatique (http://pandoc.org/)
#Attention: ne fonctionne que pour des pages (web, texte...) en utf8
#Quelques lacunes restent: appels de biblio bizarres pour un .odt, 
#titre et encodage pour un .html, etc.
#Mais ces soucis se règlent aisément. 

#Option future: penser à changer le nom du fichier de sortie 
#pour éviter les doublons avec Calibre

###PARAMETRES POUR LES UTILISATEURS
$ficouURLdentree="/chemin/versfichier/pointex/ou/URL";
 #avec http au début si page web!

$ficbiblio="/chemin/complet/vers/fichier/biblioword.bib"; 
#avec chemin d'accès complet si on veut
#A priori inutile si non usage de LaTeX
$ficcsl="/chemin/menant/vers/un/fichier.csl"; #idem
$extensionsortie="epub"; #ex.: odt rtf...
#On peut évidemment mettre $ficbiblio=""; idem pour $ficcsl;

###FIN PARAMETRES  POUR LES UTILISATEURS
#A partir de là, vous n'avez plus rien à intégrer/modifier 

($extensionentree)=($ficouURLdentree=~/^.*\.(.*$)/);
print $extensionentree,"\n\n";

$formulecsl=" --filter pandoc-citeproc --csl=".$ficcsl." ";
$formulecsl=" " if ($ficcsl eq "" || $extensionentree ne "tex"); 
$formulebiblio=" --bibliography=".$ficbiblio." ";
$formulebiblio=" " if ($ficbiblio eq ""|| $extensionentree ne "tex");
#Brutal: on vire csl et biblio si on ne part pas d'un .tex
$formule="pandoc $formulecsl $formulebiblio -t $extensionsortie ";
#On essaie sans guillemets pour les fics biblio et csl

$ficsortie= $ficouURLdentree;
($cheminentree, $ficentree)=($ficouURLdentree=~/(^.*\/)(.*$)/);

if ($ficouURLdentree=~/^http/) #si on récupère une page web
	{
	$cheminentree="" ; #Dans ce cas, le fichier résultat est
#dans le dossier où se trouve ce programme. 
	$ficsortie=$ficentree.".$extensionsortie";
	#On ne vire donc pas le .html en cas de récupération d'une page web.
	#Si la commande est brève: http://www.lemonde.fr, le fichier final sera
	#donc www.lemonde.fr.odt ou autre.
	}
else #hors web
	{
	#$cheminentree contient le / final
	$ficentree=~s/\.$extensionentree$//;
	$ficsortie=$cheminentree.$ficentree."-fromPerl.$extensionsortie";
	}
$formule.=$ficouURLdentree." -o $ficsortie ";
print $formule,"\n";
system (" $formule");
#Fin du programme 




