【譯】使用json2md將JSON轉換爲Markdown

我喜歡在個人項目中同時使用JSON和Markdown。每一個npm包都須要一個package.json文件,該文件先讓是用JSON格式編寫的。另外,好的項目須要配套好的文檔。我喜歡使用Markdown寫文檔。git

但我真的不寫Markdown文件,我寫的是文檔,但他們存儲在代碼中(JSDoc註釋)。我使用Blah自動生成Markdown文檔的,然而有時候這些文檔模版不夠。github

這就是我建立json2md的緣由,它是JSON和Markdown語言之間的橋樑,此包與個人Blah模版集成,我能夠使用JSON 在個人package.json (或其餘JSON文件)中編寫自定義內容,來定製輸入在最終文檔結果。npm

如何使用 使用npm i json2md在本地下載並安裝json2md軟件包。而後你能夠在Node.js應用程序中,甚至客戶端(瀏覽器)中使用它。json

例如,要建立Markdown 圖片 標籤,你須要執行一下操做:瀏覽器

var json2md = require("json2md");

var myImg = json2md({
    img: {
        source: "http://example.com/image.png"
      , title: "My image"
    }
});
console.log(myImg);
複製代碼

輸出結果爲![My image](http://example.com/image.png)bash

這是另一個更復雜的示例:markdown

// Dependencies
var json2md = require("json2md");

console.log(json2md([
    { h1: "JSON To Markdown" }
  , { blockquote: "A JSON to Markdown converter." }
  , { img: [
        { title: "Some image", source: "https://example.com/some-image.png" }
      , { title: "Another image", source: "https://example.com/some-image1.png" }
      , { title: "Yet another image", source: "https://example.com/some-image2.png" }
      ]
    }
  , { h2: "Features" }
  , { ul: [
        "Easy to use"
      , "You can programatically generate Markdown content"
      , "..."
      ]
    }
  , { h2: "How to contribute" }
  , { ol: [
        "Fork the project"
      , "Create your branch"
      , "Raise a pull request"
      ]
    }
]));
複製代碼

這將產生:ui

# JSON To Markdown
> A JSON to Markdown converter.

![Some image](https://example.com/some-image.png)

![Another image](https://example.com/some-image1.png)

![Yet another image](https://example.com/some-image2.png)

## Features

 - Easy to use
 - You can programatically generate Markdown content
 - ...

## How to contribute

 1. Fork the project
 2. Create your branch
 3. Raise a pull request
複製代碼

但這不是所有! 您能夠建立自定義轉換器。 假設你有一個像{sayHello:「World」}這樣的輸入。 若是你想生成一個Hello World!輸出,你能夠這樣作:spa

json2md.converters.sayHello = function (input) {
     return "Hello " + input "!";
};
複製代碼

這基本上擴展了轉換器對象並添加了自定義轉換器。code

在GitHub上查看json2md。 我確信有不少事情須要改進。 隨意提問,解決問題並作出貢獻!

原文地址

相關文章
相關標籤/搜索