mdbook serve : Utilisation avancée
Si nous travaillons sur plusieurs projets simultanément, ou si nous utilisons déjà le port 3000 pour un autre usage, nous pouvons attribuer un numéro de port différent au serveur mdbook serve avec l’option -p numdeport.
Travailler sur plusieurs projets mdBook simultanément
Nous pouvons par exemple valider cette commande en nous plaçant dans le dossier du projet mdBook 1 :
mdbook serve -o -p 7777
et, une fois dans le dossier du projet mdBook 2, valider la commande :
mdbook serve -o -p 7778
Nous accédons alors aux sites Web mdBook (locaux non sécurisés) correspondants en local avec les deux adresses :
http://localhost:7777
http://localhost:7778
Optimisation avec un petit script shell
Voici un exemple de script shell que nous pouvons ajouter dans notre dossier ~/bin.
Le script démarre les services mdbook serve et ouvre une fenêtre de notre navigateur web sur chacun des deux sites web mdBook (locaux).
Nous en profitons pour lui faire ouvrir notre gestionnaire de fichiers (ici nautilus de GNOME) directement dans des deux dossiers sources où nous devons intervenir.
cd ~/mdbooks/projet-mdBook-1/
mdbook serve -o -p 7777 &
cd ~/mdbooks/projet-mdBook-2/
mdbook serve -o -p 7778 &
nautilus ~/mdbooks/projet-mdBook-1/src &
nautilus ~/mdbooks/projet-mdBook-2/src &
Rassembler les fenêtres du navigateur web
Si notre navigateur web par défaut est Mozilla Firefox, nous pouvons utiliser l’extension Merge Windows (fusionner les fenêtres) : https://addons.mozilla.org/fr/firefox/addon/merge-window.
Pour nous en servir, nous cliquons sur le bouton droit dans une fenêtre de Mozilla Firefox puis sur le menu contextuel Merge all windows.
Toutes les fenêtres Mozilla Firefox ouvertes sont alors rassemblées sous forme d’onglets dans la même fenêtre.
Fermeture des services
Sous Linux, lorsque nous avons terminé de travailler sur nos projets mdBook, un simple killall mdbook ferme toutes les instances mdbook serve en cours d’exécution.
Si tant est que nous en ayons besoin (mdbook serve consomme peu de ressources systèmes).
Transférer les contenus avec un script shell
De même, nous pouvons écrire un script shell pour charger les nouvelles versions sur notre serveur web.