Editeur markdown type sdz pour mon blog/site

a marqué ce sujet comme résolu.

J'envisage de me faire un petit blog perso (probablement codé par mes soins) et je cherche un éditeur de texte à intégrer afin de pouvoir rédiger mes articles depuis la partie administration du site (et pouvoir réutiliser cet éditeur sur d'autres projets).

Dans un premier temps je pensais utiliser une solution comme CK Editor mais après réflexion je le trouve peu pratique pour un contenu un peu complexe et à force d'utiliser le markdown ici je me suis dis qu'un éditeur markdown serait vraiment plus adapté.

De plus je voudrais pouvoir publier mes articles (des articles d'économie) à la fois sur blog et sur zds sans avoir à modifier le texte, c'est à dire en ayant le même markdown. J'aimerai aussi avoir la possibilité d'ajouter des blocs type "attention" ou "information" comme sur zds.

J'ai regardé vite fait sur le git de zds et j'ai bien trouvé un fichier editor.js mais je ne sais absolument pas comment l'intégrer de manière fonctionnelle dans mon projet, comment gérer le css associé pour le rendu etc…

Du coup je voulais savoir si l'éditeur de zds était disponible quelque part avec une documentation minimale, ou si il était spécifique au site. Dans ce dernier cas, avez vous des idées de comment je pourrait l'intégrer à mon site qui sera en angular pour le front avec un petit serveur php pour stocker les articles (donc pas de python comme zds car je ne maitrise pas ce langage).

Merci d'avance pour vos réponses !

PS : si vous connaissez un autre éditeur markdown gratuit (ou pas cher^^) qui offre quasi les même fonctionnalités que celui de zds je suis preneur !

+0 -0

Pourquoi ne pas utiliser un generateur statique de blog comme Pelican, Octopress ou Jekyll ? Il me semble repondre a tes besoins, a savoir du blog, avec ecriture en Mardown.

L'interet de ces generateurs est que tu n'as pas de partie dynamique: l'ensemble du site est genere localement puis deploye sur un serveur. Tu peux ecrire des brouillons ou tes articles localement, surtout machine, en Markdown, regenerer le site, et tu deploies le contenu genere sur ton serveur de production.

Je dois avouer Höd que je n'ai pas trop regarder du coté des générateurs pour le moment. A priori j'y vois quand même plusieurs souçis :

  • Je n'ai jamais utilisé Python ou Gem et Pelican/Octopress/Jekyll utilisent l'un ou l'autre… ça ne me met pas trop à l'aise^^

  • Est-ce que je peux personnaliser mon design de façon simple avec ces outils ? Sachant que je n'ai jamais utilisé les langages/technos associées…

  • Je vais probablement re inventer la roue, mais au moins ça me permettra de m'améliorer en design/css/html au passage et je n'ai pas spécialement de contrainte de productivité : je préfère faire mon petit truc dans mon coin quitte à galérer un peu qu'utiliser un truc tout fait dont je ne comprendrait rien (sachant que je compte pas utiliser python ou ruby à court/moyen voir long terme…).

  • Et surtout j'aimerai utiliser un éditeur de type markdown dans d'autres futurs projets, donc si je n'en trouve pas un de satisfaisant là il m'en faudra un plus tard…

Donc je penses rester sur mon idée de trouver un éditeur markdown à intégrer à mon site, même si je vais faire quelques recherche du coté des générateurs de blogs par acquis de conscience (on ne sait jamais je trouverait peut être quelque chose qui me convient).

+0 -0

En fait, pas besoin de connaitre les langages sous-jacents. Pour ma part, je ne connais pas le Ruby et j'ai utilise Octopress pendant des annees. Evidemment, on configurer un peu il faut ouvrir quelques fichiers mais c'est generalement des structures de donnees a remplir (du type nom du site, bref, plus un fichier de configuration que du vrai code).

Le principe de ces generateurs c'est de fournir des outils pour generer le site et non pas des outils qui font le site. C'est pour cela que tu n'as pas besoin de connaitre le Ruby ou le Python le langage sous-jacent (meme si connaitres deux trois trucs peu eventuellement etre interessants).

La verite c'est que sur Pelican, tu as un un fichier de configuration ou lorsque tu veux ajouter un pluggin, tu clones son depots dans le dossier des pluggins, tu ajoutes le nom du pluggin dans le fichier de configuration, et BASTA.

Par exemple, pour Octopress, la procedure pour ecrire est la suivante:

1
rake new_post["title"]

Ensuite tu ajoutes dans le fichier markdown une entete destinee a etre parsee:

1
2
3
4
5
6
7
8
---
layout: post
title: "Zombie Ninjas Attack: A survivor's retrospective"
date: 2011-07-03 5:59
comments: true
external-url:
categories:
---

Tu regeneres le site et enventuellement regarde en local ce que cela donne:

1
2
3
rake generate   # Generates posts and pages into the public directory
rake watch      # Watches source/ and sass/ for changes and regenerates
rake preview    # Watches, and mounts a webserver at http://localhost:4000

Et si c'est cool, tu deploies (via github, heroku, ou rsync directement):

La premiere fois tu modifies le fichier Ruby:

1
2
3
4
ssh_user       = "user@domain.com"
document_root  = "~/website.com/"
rsync_delete   = true
deploy_default = "rsync"

Puis simplement:

1
rake deploy     # Syncs your blog via ssh

Bref, en 5 minutes c'est configure et pret a etre mis en production. Tu peux te concentrer sur l'ecriture, et tu peux rediger localement.

Concernant les themes, en realite tu n'as pas besoin non plus de connaitre les langages sous-jacents. La plupart du temps, tu as un micro-langage de template associe a un moteur de template. Par exemple, pour Pelican c'est Jinja et globalement, tu as besoin de savoir que les tags se mettent entre {% %}, la liste des tags disponibles etant disponible dans la doc (genre article.title, etc.).

Enfin, les themes sont dont majoritairement du pur HTML et CSS avec JS et consort, donc au final personnalisable avec ces seules connaissances. Tu peux toujours partir d'un theme interessant si tu veux vraiment quelque chose de personnalise, puis le modifier a ta guise (Pelican propose des dizaines de themes, tout comme Jekyll ou Octopress, de quoi trouver une bonne base).

Les generateurs statiques sont tres a la mode en ce moment parce qu'ils sont tres legers pour le serveur de production (tout est statique), qu'ils sont extremement simples a mettre en place, de l'installation a la production, et que la simplicite d'utilisation dans la vie de tous les jours permets de se concentrer sur la production de textes.

Si ton objectif est de te tourner vers la production d'ecrit de maniere rapide, en ayant un minimum de maintenance a faire, alors c'est clairement une bonne solution. Si ton objectif c'est de faire du HTML / CSS pour du design, alors ca me semble aussi interessant.
Si ton objectif c'est de developper un nouveau moteur de blog, statique ou non, alors oui, il vaudrait mieux passer ton chemin. :)

+2 -2

Si jamais Pelican ne te plaît pas ou que tu veux utiliser l'éditeur de ZdS pour d'autres projets, voici une petite aide.

Comme tu l'as dit le code JS est disponible ici. Le code SCSS est disponible ici (si tu ne connais pas SCSS, c'est ce qu'on appelle un pré-processeur ; c'est-à-dire une surcouche de CSS). Je peux éventuellement donner le CSS généré si besoin. :)

Une fois le JS (pur, sans jQuery) importé dans une page web, il transforme automatiquement en éditeur tous les <textarea class="md-editor"></textarea>. Tu peux modifier ça dans le code de la fonction init.

La transposition du ZdSMarkdown (c'est-à-dire un Markdown avec les blocs info, attention, erreur, secret ainsi que les vidéos et peut-être d'autres choses) en HTML est gérée en Python via ce paquet.

Si tu as d'autres questions, n'hésite pas ! ;)

+3 -1
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte