English Français
Fanfix est un petit programme Java qui peut télécharger des histoires sur internet et les afficher hors ligne.
Vous pouvez aussi utiliser : - le client graphique Fanfix-swing - le client en mode TUI Fanfix-jexer
fanfix
–import [URL]fanfix
–export [id] [output_type] [target]fanfix
–convert [URL] [output_type] [target] (+info)fanfix
–read [id] ([chapter number])fanfix
–read-url [URL] ([chapter number])fanfix
–searchfanfix
–search [where] [keywords] (page [page]) (item [item])fanfix
–search-tagfanfix
–search-tag [index 1]… (page [page]) (item [item])fanfix
–listfanfix
–server [key] [port]fanfix
–stop-server [key] [port]fanfix
–remote [key] [host] [port]fanfix
–help(Si vous voulez juste voir les derniers changements, vous pouvez regarder le Changelog – remarquez que le programme affiche le changelog si une version plus récente est détectée depuis la version 1.4.0.)
Le fonctionnement du programme est assez simple : il converti une URL venant d'un site supporté en un fichier .epub pour les histoires ou .cbz pour les comics (d'autres options d'enregistrement sont disponibles, comme du texte simple, du HTML…)
Pour vous aider à organiser vos histoires, il peut aussi servir de bibliothèque locale vous permettant :
Pour le moment, les sites suivants sont supportés :
Nous supportons les types de fichiers suivants (aussi bien en entrée qu'en sortie) :
Par
, De
ou ©
) doit être sur la deuxième ligne, optionnellement suivi de la date de publication entre parenthèses (i.e., Par Quelqu'un (3 octobre 1998)
)Chapitre x
ou Chapitre x: NOM DU CHAPTITRE
, où x
est le numéro du chapitreindex.html
pour afficher le tout – nous ne supportons en entrée que les fichiers HTML créés par FanfixToute plateforme supportant Java 1.6 devrait suffire.
Le programme a été testé sur Linux (Debian, Slackware et Ubuntu), MacOS X et Windows pour le moment, mais n'hésitez pas à nous informer si vous l'essayez sur un autre système.
Si vous avez des difficultés pour le compiler avec une version supportée de Java (1.6+), contactez-nous.
Vous pouvez démarrer le programme de deux façons :
java -jar fanfix.jar
fanfix
(si vous avez utilisé make install)Les arguments suivants sont supportés :
--import [URL]
: importer une histoire dans la librairie--export [id] [output_type] [target]
: exporter l'histoire “id” vers le fichier donné--convert [URL] [output_type] [target] (+info)
: convertir l'histoire vers le fichier donné, et forcer l'ajout d'un fichier .info si +info est utilisé--read [id] ([chapter number])
: afficher l'histoire “id”--read-url [URL] ([chapter number])
: convertir l'histoire et la lire à la volée, sans la sauver--search
: liste les sites supportés (where
)--search [where] [keywords] (page [page]) (item [item])
: lance une recherche et affiche les résultats de la page page
(page 1 par défaut), et de l'item item
spécifique si demandé--tag [where]
: liste tous les tags supportés par ce site web--tag [index 1]... (page [page]) (item [item])
: affine la recherche, tag par tag, et affiche si besoin les sous-tags, les histoires ou les infos précises de l'histoire demandée--list
: lister les histoires presentes dans la librairie et leurs IDs--server [key] [port]
: démarrer un serveur d'histoires sur ce port--stop-server [key] [port]
: arrêter le serveur distant sur ce port (key doit avoir la même valeur)--remote [key] [host] [port]
: contacter ce server au lieu de la librairie habituelle (key doit avoir la même valeur)--help
: afficher la liste des options disponibles--version
: retourne la version du programmeCertaines variables d'environnement sont reconnues par le programme :
LANG=en
: forcer la langue du programme en anglaisCONFIG_DIR=$HOME/.fanfix
: utilise ce répertoire pour les fichiers de configuration du programme (et copie les fichiers de configuration par défaut si besoin)NOUTF=1
: essaye d'utiliser des caractères non-unicode quand possible (cela peut avoir un impact sur les fichiers générés, pas uniquement sur les messages à l'utilisateur)DEBUG=1
: force l'option DEBUG=true
du fichier de configuration (pour afficher plus d'information en cas d'erreur)./configure.sh && make
Vous pouvez aussi importer les sources java dans, par exemple, Eclipse, et faire un JAR exécutable depuis celui-ci.
Quelques tests unitaires sont disponibles :
./configure.sh && make build test run-test
Si vous faites tourner les tests unitaires, sachez que certains fichiers flags peuvent les impacter:
test/VERBOSE
: active le mode verbeux pour les erreurstest/OFFLINE
: ne permet pas au programme de télécharger des donnéestest/URLS
: permet au programme de tester des URLstest/FORCE_REFRESH
: force le nettoyage du cacheNotez que le répertoire test/CACHE
peut rester en place; il contient tous les fichiers téléchargés au moins une fois depuis le réseau par les tests unitaires (si vous autorisez les tests d'URLs, lancez les tests au moins une fois pour peupler le CACHE, puis activez le mode OFFLINE, ça marchera toujours).
Les fichiers de test seront:
test/*.url
: des URLs à télécharger en fichier texte (le contenu du fichier est l'URL)test/*.story
: des histoires en mode texte (le contenu du fichier est l'histoire)Nécessaires :
libs/unbescape-sources.jar
: une librairie sympathique pour convertir du texte depuis/vers beaucoup de formats ; utilisée ici pour la partie HTMLlibs/jsoup-sources.jar
: une libraririe pour parser du HTMLlibs/JSON-java-20190722-sources.jar
: une libraririe pour parser du JSONOptionnelles :
libs/jexer-sources.jar
: une petite librairie qui offre des widgets en mode TUIpandoc
: pour générer les man pages depuis les fichiers READMESubmodules:
src/be/nikiroo/utils
: quelques utilitaires partagés depuis https://github.com/nikiroo/nikiroo-utils.git – branche subtree
src/be/nikiroo/fanfix
: le code principal, sur le même dépôt mais dans la branche subtree
Rien d'autre, si ce n'est Java 1.6+.
À noter : make libs
exporte ces librairies dans le répertoire src/.
Fanfix a été écrit par Niki Roo niki@nikiroo.be