Journal d'un Terrien

Web log de Serge Boisse

On line depuis 1992 !

Publicité
Si cette page vous a plu, Copiez son adresse et partagez-la !
http://sboisse.free.fr/programmation/Publier des notes Obsidian sur le web/Perlite.php
Savez-vous quels sont les articles les plus vendus sur Amazon.fr ?
Perlite

Perlite

Logiciel en php pour publier des notes obsidian sur le web. Créateur de site. Il part des mages markdown et les convertit en html (mais la plupart des plugins obsidian ne marchent pas)

Semble assez complet. Supporte les wikilinks, MathJax, thèmes,...
Avantage : marche sur n'importe quel serveur web avec php !

Perlite utilise le plugin obsidian metadata extractor pour le graph view

  • Only dark mode ? En fait on peut avoir un thème light, cf light mode
  • pas de backlink

of course il faut créer un serveur web local pour tester. cf Wampserver.

Attention aux problèmes de sécurité, il va falloir jouer du .htaccsess.. cf https://secure77.de/perlite/

Documentation :

installation

Just put the content of the perlite directory in your web root directory, your notes should reside as a subfolder of perlite..

C'est pas vraiment clair... En fait il faut cloner perlite sur Github, récupérer le fichier .zip, et extraire le contenu du sous-dossier "perlite" (pas le dossier lui-même) vers la racine du serveur web (pour moi en local : D:/wamp64/www/essai-perlite). essai-perlite (Répertoire sur D)(lien privé)Il faut y ajouter le fichier README.md, et si on veut, le dossier "démo".

Ensuite on ajoute des notes .md, et on peut créer des sous-dossiers pour ça, par exemple "démo" et "coffre".

Enfin, il faut modifier la ligne 15 de "helper.php" pour y mettre le chemin de la racine du coffre ($rootDir) relativement à celle du serveur, dans mon cas "coffre-test-perlite" au lieu de "".
Du coup le thème est pris en compte !

light mode

il faut remplacer "dark" par "light" dans le ligne 51 de "index.php"
<body class="theme-light mod-windows is-frameless is-hidden-frameless obsidian-app show-inline-title show-view-header is-maximized" style="--zoom-factor:1; --font-text-size:15px;">

thèmes

on peut changer de thème, choix par le modal de la roue dentée à gauche en bas)
perlite-modal.jpg

Requirements

perlite demande des extensions php :
  • Web server (of course)
  • Php-fpm (FastCGI Process Manager, pas sûr que compatible avec php 5 et free pages perso !) ; c'est un module apache. A priori OK pour moi.
  • Php module mb_strings for the parsedown (apt install php-mbstring). j'ai un module mbstring, je suppose que c'est le même. OK
  • Php module yaml_parse for the metadata (apt install php-yaml)
    comment ça s'installe ? J'ai essayé la méthode https://stackoverflow.com/questions/23927847/how-to-install-yaml-extension-on-wamp : il faut télécharger un DLL (la version thread-safe) depuis pecl (page web) pour chaque version de PHP... et il n'y en a pas pour php v < 7.3 ! J'ai donc mis php en 7.4... 😭

Required Obsidian Options

  • In the options Files & Links you need to set the New link format to Relative path to file !
    Ca c'est très énervant...😡

affichage du graphe, metadata extractor

Il faut créer si nécessaire créer le coffre là ou le site web pointera...
il faut dans ce coffre le plugin Obsidian Metadata Extractor (page web)

Ce plugin crée trois fichiers JSON :

  • tags.json
  • metadata.json
  • allExceptMd.json

il faut configurer le plugin métadata extractor en lui disant où mettre les fichiers json, c'est à dire la racine du serveur web
cf README (page web)

Enfin Perlite créée le graphe à partir de ces trois fichiers :

The Graph is implemented with vis.js, so there are many options you can play on with, you can adjust them via the options object in the perlite.js

enfin...

L'icône "aide" en bas du ruban gauche appelle la note .about.md, qu'il faut bien sûr avoir configurée...

test

C'est le fichier index.php qui lance tout (évidemment il fau tujn serveur local, j'ai utilisé wampserver et j'ai créé un virtualhost "essai-perlite")
essai_perlite (page web locale)

Bon ça marche, plutôt pas mal :

test-perlite.jpg

  • affichage de tous les panneaux, masquables, redimensonnables...
  • frontmatter non affiché. OK car généralement privé.
  • tous les tags obsidian, tables, callouts,
  • les pièces jointes (si placées dans le même répertoire que la note)
  • LaTex
  • Mermaid (qq problèmes de CSS)
  • Champ de recherche par mot clef avec preview
  • Graphe pas aussi beau que Obsidian mais correct.
  • Possibilité de changer le thème ! (mais pas clair/sombre) !

mais il y a des

problèmes...

  • Les thèmes sont uniquement sombres. CORRIGE
  • Où placer le .obsidian ? racine du coffre ? Mais à quoi il sert ? OK pour les thèmes
  • Le changement de thème ne fait rien ? OK
  • la largeur des colonnes n'est pas géniale même si c'est responsive. Version mobile pas géniale. (testée uniquement avec le débugger Chrome)
  • Les plugins ne marchent pas... (sauf MathJax et Mermaid)
  • les attachements, images..., ils doivent être dans le sous-dossier "doc" de chaque dossier du coffre... Il faut laisser la possibilité d'avoir un dossier global des pièces jointes.
  • Les accents dans le titre des notes avec PHP5 (OK avec PHP 7)
  • l'icône copy to clipboard plante... en fait toutes les icônes "externes"
  • Le graphe ne s'affiche pas OK, c'étaient les fichier JSON qui étaient incorrects
  • augmenter la "profondeur" (le nombre de backlinks) sur le graphe..
  • Icône "développer" tout en haut à gauche du site déplacée...
  • bouton clair/sombre à implémenter
  • Dans le bandeau de droite on peut voir le plan ou le graphe local mais pas les deux

Je vais essayer de déconstruire le résultat, cf Recréer Perlite en html

Publicité
Commentaires

Commentaires (0) :

Page :



Ajouter un commentaire (pas besoin de s'enregistrer)

Pseudo :
Message :


image de protection
En cliquant sur le bouton "Envoyer" vous acceptez les conditions suivantes : Ne pas poster de message injurieux, obscène ou contraire à la loi, ni de liens vers de tels sites. Respecter la "netiquette", ne pas usurper le pseudo d'une autre personne, respecter les posts faits par les autres. L'auteur du site se réserve le droit de supprimer un ou plusieurs posts à tout moment. Merci !
Ah oui : le bbcode et le html genre <br>, <a href=...>, <b>b etc. ne fonctionnent pas dans les commentaires. C'est voulu.
< Retour en haut de la page