Online Tool Store Online Tool Store

CSV vers Frontmatter Markdown

Convertissez des lignes CSV en frontmatter YAML typé pour Astro, Jekyll, Hugo ou Obsidian, avec délimiteur, guillemets et tableaux inline ou en bloc.

🔒 Cet outil fonctionne entièrement dans votre navigateur. Vos fichiers ne sont jamais envoyés sur un serveur.

Outil navigateur

CSV vers Frontmatter Markdown

Rien n'est envoyé - l'analyse et la génération s'effectuent entièrement dans votre navigateur.

Comment ça marche

  1. Collez des données CSV avec une ligne d'en-tête contenant les noms des champs de frontmatter - séparées par une virgule, un point-virgule ou une tabulation, avec des guillemets doubles ou simples.
  2. Chaque ligne de données devient son propre bloc de frontmatter ---, avec les colonnes associées à des clés et valeurs YAML typées.
  3. Choisissez si les valeurs de type array s'affichent en ligne ([a, b]) ou sous forme de liste indentée en bloc, avec une indentation de 2 ou 4 espaces.
  4. Copiez un seul bloc, appuyez sur Tout copier pour copier tous les blocs à la fois, ou sur Tout télécharger (.md) pour les enregistrer dans un fichier.

La méthode

Chaque colonne du CSV devient une clé YAML. Les valeurs sont typées plutôt que systématiquement entre guillemets : les cellules séparées par des virgules deviennent des arrays, "true"/"false" deviennent des booléens, et les nombres simples deviennent des nombres - tout le reste, y compris les dates, est mis entre guillemets comme une chaîne de texte :

"astro,blog" → key: ["astro", "blog"] true → key: true 42 → key: 42 2026-01-14 → key: "2026-01-14"

Avec le style d'array réglé sur bloc, cette même cellule s'affiche à la place sous forme de liste indentée sous la clé plutôt que sous la forme en ligne - "key:" sur sa propre ligne, puis "- \"astro\"" et "- \"blog\"" indentés en dessous. Les deux styles sont interprétés comme la même valeur d'array ; c'est une préférence de mise en forme, pas un changement de comportement.

FAQ

Quelle structure de CSV est attendue ?

Une ligne d'en-tête avec les noms des champs, suivie d'une ligne par document. Chaque ligne de données devient son propre bloc de frontmatter ---, les en-têtes de colonne servant de clés YAML, dans l'ordre où vos colonnes apparaissent.

Comment les valeurs séparées par des virgules dans une cellule sont-elles traitées ?

Une cellule contenant une liste séparée par des virgules (comme des tags) est convertie en un véritable array YAML, si bien que "astro,blog" devient ["astro", "blog"] plutôt qu'une simple chaîne de texte. Une valeur avec une seule virgule finale, comme "astro,", est laissée telle quelle comme la chaîne de texte qu'elle semble être, plutôt que d'être devinée.

Comment les nombres, booléens et dates sont-ils formatés ?

Une cellule qui vaut exactement "true" ou "false" devient un véritable booléen YAML, et un nombre entier ou décimal simple devient un véritable nombre - tous deux sans guillemets, afin que les outils en aval les lisent comme leur type réel plutôt que comme du texte. Les dates sont entre guillemets comme n'importe quelle autre chaîne : le fait qu'une date sans guillemets devienne un horodatage natif dépend de l'analyseur (l'analyseur Ruby de Jekyll le fait ; de nombreuses librairies YAML JavaScript ne le font pas), donc les guillemets rendent la valeur prévisible partout plutôt que de risquer une supposition. Un nombre avec un zéro initial, comme un code postal "0755", reste également entre guillemets, car certains analyseurs YAML interprètent un zéro initial comme une notation octale et changeraient silencieusement sa valeur.

Que faire si mon CSV utilise des points-virgules ou des tabulations au lieu de virgules ?

Choisissez le délimiteur correspondant dans le menu déroulant. Tout le reste - champs entre guillemets, virgules intégrées dans des guillemets, découpage des listes - fonctionne de la même façon quel que soit le délimiteur qui sépare vos colonnes.

Que faire si mon CSV entoure les champs de guillemets simples au lieu de guillemets doubles ?

Réglez le menu déroulant Caractère de guillemet sur guillemet simple (') avant de générer. L'analyseur traite alors ' comme il traiterait normalement " - pour délimiter un champ, échapper un guillemet intégré en le doublant, et autoriser des virgules ou des sauts de ligne dans une valeur entre guillemets.

Puis-je obtenir les valeurs d'array sous forme de liste YAML plutôt que [a, b, c] ?

Oui - réglez Style d'array sur "Bloc : liste indentée" et les cellules séparées par des virgules s'affichent sous forme de liste "- élément" indentée sous leur clé plutôt qu'en une seule ligne [a, b, c] en ligne, avec un choix d'indentation de 2 ou 4 espaces. Les deux styles sont interprétés comme la même valeur d'array ; c'est une préférence de mise en forme, pas un changement de comportement.

Que se passe-t-il si une ligne a trop ou pas assez de valeurs ?

L'outil génère quand même un bloc pour elle : les valeurs en trop après la dernière colonne sont ignorées, et les valeurs manquantes sont traitées comme vides, avec une note au-dessus des résultats indiquant quels numéros de ligne ont été concernés afin que vous puissiez revenir corriger le CSV source si c'était une erreur.

Est-ce que cela écrit aussi le corps du Markdown ?

Non - cela génère uniquement le bloc de frontmatter --- à partir des colonnes de votre CSV. Le contenu du corps doit encore être écrit ou collé séparément.

Est-ce que "Tout télécharger" me donne un fichier par ligne, ou un fichier combiné ?

Un seul fichier frontmatter.md combiné contenant le bloc de chaque ligne dans l'ordre, séparés par leurs propres délimiteurs ---. Si vous avez besoin de chaque ligne dans son propre fichier, copiez les blocs individuellement et enregistrez-les sous des noms de fichiers séparés.

Est-ce que cela fonctionne pour le frontmatter de Jekyll, Hugo ou Astro ?

Oui - la sortie est du YAML standard entre délimiteurs ---, le même format que ces trois plateformes (et la plupart des autres générateurs de sites statiques) attendent en haut d'un fichier de contenu. Rien ici n'est spécifique à un framework. Le menu déroulant "Charger un exemple" inclut un CSV prêt à l'emploi pour chacun d'Astro, Jekyll, Hugo et Obsidian, utilisant les noms de champs de frontmatter documentés propres à chaque plateforme, afin que vous puissiez voir de vrais noms de colonnes avant de connecter votre propre CSV.

Mes données CSV sont-elles envoyées quelque part ?

Non - l'analyse et la conversion se font entièrement dans votre navigateur. Vos lignes CSV ne sont jamais envoyées à un serveur, ce qui signifie aussi qu'il n'y a aucune limite de taille de fichier ou de nombre de lignes au-delà de ce que votre navigateur peut gérer.

Comparatif

FonctionnalitéOnline Tool Storeonlineyamltools.commarkdownconverters.com
Génère un bloc de frontmatter par ligne de CSV OuiProduit un seul document YAML combiné, pas de blocs par ligneUne entrée à la fois - pas de saisie CSV par lot
Les valeurs de cellule séparées par des virgules deviennent de vrais arrays YAML OuiNon documentéN/A - formulaire à entrée unique
Délimiteur personnalisé (virgule, point-virgule ou tabulation) OuiOuiN/A
Caractère de guillemet CSV personnalisé (guillemet double ou simple) OuiOuiN/A
Choix entre arrays YAML en ligne ou en bloc indenté OuiIndentation configurable, mais pas de sortie par lot par ligne à laquelle l'appliquerN/A - formulaire à entrée unique
Exemples prêts à l'emploi pour Astro, Jekyll, Hugo et Obsidian OuiNon - CSV/YAML générique uniquementMentionne ces plateformes mais est un formulaire à entrée unique, pas un outil de traitement CSV par lot
Gratuit, fonctionne dans votre navigateur, rien n'est envoyé OuiOuiOui

Idéal pour transformer un export de tableur en un lot de blocs de frontmatter prêts à coller - un par ligne - sans écrire de YAML à la main pour chaque entrée.

Découvrir des outils similaires

Intégrer cet outil

Collez ceci sur votre propre site : cela reste gratuit, et chaque fichier reste dans le navigateur de votre visiteur, ni chez vous ni chez nous.