Prism- 輕巧,健壯,優雅的語法高亮顯示

    Prism是一個輕量,健壯,優雅的語法高亮庫。

    Prism是一種輕量級的,可擴展的語法突出顯示工具,其構建考慮了現代Web標準。它已在數千個網站中使用,其中包括您每天訪問的網站。

    本站下載:

    來源于Github,于2019年11月19號下載。

    [zrz_file link="https://cdn.getimg.net/npc/2019/github/prism-v20191119.zip" name="prism-v20191119.zip" code=""]
    Prism- 輕巧,健壯,優雅的語法高亮顯示
    • 簡單了,包括prism.css和prism.js,使用正確的HTML5代碼標簽(code.language-xxxx),完成!
    • 直觀語言類是繼承的,因此您只能為多個代碼段定義一次語言。
    • 輕如羽毛核心縮小并壓縮為2KB。每種語言添加0.3-0.5KB,主題大約1KB。
    • 快速燃燒支持Web Workers的并行性(如果有)。
    • 可擴展定義新語言或擴展現有語言。借助Prism的插件架構,添加新功能。
    • 易造型的所有造型是通過CSS完成的,用理智的類名一樣.comment.string.property

    第三方教程:

    社區成員編寫了一些教程,以幫助您將Prism集成到多種不同的網站類型和配置中:

    請注意,此處列出的教程未經過驗證以包含正確的信息。請自擔風險,如果有任何問題,請務必在此處檢查官方文檔:)

    基本用法:

    您需要在頁面中包含您下載的prism.cssprism.js文件。例:

    <!DOCTYPE html>
    <html>
    <head>
    	...
    	<link href="themes/prism.css" rel="stylesheet" />
    </head>
    <body>
    	...
    	<script src="prism.js"></script>
    </body>
    </html>

    棱鏡會盡力鼓勵良好的創作習慣。因此,它僅適用于元素,因為標記沒有元素的代碼在語義上是無效的。?根據HTML5規范,定義代碼語言的推薦方法是類,這是Prism使用的類。另外,Prism還支持較短的版本:。<code><code>language-xxxxlang-xxxx

    為了使事情變得更容易,Prism假定此語言定義是繼承的。因此,如果多個元素具有相同的語言,則可以將類添加到它們的共同祖先之一上。這樣,還可以通過在或元素上添加一個類來定義文檔范圍的默認語言。<code>language-xxxxlanguage-xxxx<body><html>

    如果要選擇不突出顯示是使用已聲明代碼語言的元素的后代的元素的突出顯示,則可以向其添加類(或實際上是任何不存在的語言)。<code>language-none

    來標記碼塊推薦的方法?(無論是語義和棱鏡)是與元件元件內部,像這樣:<pre><code>

    <pre><code class="language-css">p { color: red }</code></pre>

    如果您使用該模式,則會自動獲取該類(如果尚不具備該類),并將其樣式化為代碼塊。<pre>language-xxxx

    如果你想阻止自動突出顯示的任何元素,而使用的API,可以設置到了之前觸發事件。通過在包含Prism核心的元素上設置屬性,此操作將自動完成。例:Prism.manualtrueDOMContentLoadeddata-manual<script>

    <script src="prism.js" data-manual></script>

    要么

    <script>
    window.Prism = window.Prism || {};
    window.Prism.manual = true;
    </script>
    <script src="prism.js"></script>

    CDN的用法

    與CDN結合使用時,我們建議使用Autoloader插件,該插件會在必要時自動加載語言。

    自動裝帶器的設置如下所示。當然,您也可以自己定義主題。

    <!DOCTYPE html>
    <html>
    <head>
    	...
    	<link  rel="stylesheet" />
    </head>
    <body>
    	...
    	<script src="https://myCDN.com/prism@v1.x/components/prism-core.min.js"></script>
    	<script src="https://myCDN.com/prism@v1.x/plugins/autoloader/prism-autoloader.min.js"></script>
    </body>
    </html>

    提供PrismJS的CDN例如cdnjsjsDelivr

    與Webpack,Browserify和其他捆綁軟件一起使用

    如果要將Prism與捆綁器一起使用,請使用npm以下命令安裝Prism?:

    $ npm install prismjs

    然后,您可以import進入捆綁包:

    import Prism from 'prismjs';

    為了僅使用所需的語言和插件輕松配置Prism實例,請使用babel插件?babel-plugin-prismjs。這將允許您加載最少數量的語言和插件,以滿足您的需求。有關配置詳細信息,請參見該插件的文檔。

    節點使用

    如果要在服務器上或通過命令行使用Prism,Prism也可以與Node.js一起使用。如果您嘗試針對不支持瀏覽器端JS的環境(例如AMP pages)生成帶有突出顯示代碼的靜態HTML頁面,則可能會很有用。

    例:

    const Prism = require('prismjs');
    
    // The code snippet you want to highlight, as a string
    const code = `var data = 1;`;
    
    // Returns a highlighted HTML string
    const html = Prism.highlight(code, Prism.languages.javascript, 'javascript');

    需要prismjs將加載默認的語言:markupcss,?clikejavascript。您可以使用該實用程序加載更多語言,該?實用程序將自動處理任何必需的依賴項。loadLanguages()

    例:

    const Prism = require('prismjs');
    const loadLanguages = require('prismjs/components/');
    loadLanguages(['haml']);
    
    // The code snippet you want to highlight, as a string
    const code = `= ['hi', 'there', 'reader!'].join " "`;
    
    // Returns a highlighted HTML string
    const html = Prism.highlight(code, Prism.languages.haml, 'haml');

    注意:不要使用帶有的WebPack或其他打捆,因為這將導致的WebPack包括所有的語言和插件。使用上述的babel插件。loadLanguages()

    資源

    Highlight.js - Javascript的Web語法高亮

    2019-11-20 16:24:00

    資源

    DPlayer - 可愛的HTML5 danmaku視頻播放器

    2019-11-23 6:45:16

    ??
    Npcink上的部份代碼及教程來源于互聯網,僅供網友學習交流,若您喜歡本文可附上原文鏈接隨意轉載。
    無意侵害您的權益,請發送郵件至 1355471563#qq.com 或點擊右側 私信:Muze 反饋,我們將盡快處理。
    0 條回復 A文章作者 M管理員
      暫無討論,說說你的看法吧
    ?
    個人中心
    購物車
    優惠劵
    今日簽到
    有新私信 私信列表
    搜索
    主站蜘蛛池模板: 日本一区二区在线免费观看| 免费萌白酱国产一区二区三区 | 精品一区二区三区四区在线| 精品一区精品二区| 成人区精品一区二区不卡| 国产中文字幕一区| 合区精品久久久中文字幕一区| 精品一区二区久久| 精品人无码一区二区三区| 国内精品视频一区二区三区| 精品久久国产一区二区三区香蕉 | 无码精品人妻一区二区三区漫画 | 99在线精品一区二区三区| 福利一区二区三区视频午夜观看| 乱码精品一区二区三区| 日本强伦姧人妻一区二区| 国产精品一区二区久久精品涩爱| 精品人妻少妇一区二区| 亚洲一区免费视频| 好爽毛片一区二区三区四| 国产成人欧美一区二区三区| 亚洲日本精品一区二区| 国产精品一区二区av不卡| 国产伦精品一区二区三区免费下载| 无码aⅴ精品一区二区三区浪潮| 精品一区中文字幕| 无码少妇一区二区三区芒果| 亚洲AV乱码一区二区三区林ゆな| 亚洲av无码天堂一区二区三区| 亚洲大尺度无码无码专线一区 | 精品视频无码一区二区三区| 色婷婷AV一区二区三区浪潮| 精品国产亚洲一区二区三区在线观看 | 亚洲一本一道一区二区三区| 亚洲国产精品一区第二页| 精品成人一区二区三区四区| 国产av成人一区二区三区| 日产精品久久久一区二区| 欧美日韩精品一区二区在线视频| 国产在线精品一区二区| 国产一区二区三区精品久久呦|