Prism轻量级原生JavaScript语法高亮插件

发布于 2017-05-04 11:07:00 字数 9535 浏览 2558 评论 0

说到语法高亮,很多做技术出身的博主应该不陌生,就是对特定的关键词使用不同的颜色,让我们能够更加清晰的看懂代码,可以说语法高亮是技术类博客的标配,让代码看起来更优雅。

Prism轻量级原生JavaScript语法高亮插件

Prism介绍

Prism 是一个轻量级并且简单易用的 JavaScript 类库,压缩版本只有 1.5kb 大小左右,即使添加了语言定义的CSS代码文件,最大也不会超过 2kb,是我目前使用过的最小的代码高亮 JavaScript 类库。

Prism 使用非常简单,只需添加 Javascript 和 CSS 就能够轻易的将其整合进项目中使用。目前它已内置了 HTML\CSS\Javascript 三种语言的高亮支持,你也可以添加新的语法高亮配置文件,只需修改 Javascipt 和 CSS 文件就行。除此之外,它也提供了额外的插件功能,让你可以新增其它功能,比如自动转换链接等,你也可以自己撰写插件。

目前 Prism 唯一的缺点就是不支持 IE8,看作者的博客介绍,也不想支持 IE8。

使用Prism

1、首先在页面的 head 中引入 Prism 的 CSS 样式文件

<link href="prism.css" rel="stylesheet" />

2、然后在 </body> 标签之前引入 Prism 类库:

<script src="prism.min.js"></script>

3、添加要高亮显示的代码,要放在 pre 标签中,设置 code 标签的样式类型为代码的类别,如下:

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

上面添加的 language-xxx 是需要代码高亮的类选择器,比如如果是PHP,那么就可以添加 language-php ,使用起来是不是很方便,详细的语言参数如下:

Markup - markupCSS - cssC-like - clike
JavaScript - javascriptABAP - abapActionScript - actionscript
Ada - adaApache Configuration - apacheconfAPL - apl
AppleScript - applescriptAsciiDoc - asciidocASP.NET (C#) - aspnet
AutoIt - autoitAutoHotkey - autohotkeyBash - bash
BASIC - basicBatch - batchBison - bison
Brainfuck - brainfuckBro - broC - c
C# - csharpC++ - cppCoffeeScript - coffeescript
Crystal - crystalCSS Extras - css-extrasD - d
Dart - dartDjango/Jinja2 - djangoDiff - diff
Docker - dockerEiffel - eiffelElixir - elixir
Erlang - erlangF# - fsharpFortran - fortran
Gherkin - gherkinGit - gitGLSL - glsl
Go - goGraphQL - graphqlGroovy - groovy
Haml - hamlHandlebars - handlebarsHaskell - haskell
Haxe - haxeHTTP - httpIcon - icon
Inform 7 - inform7Ini - iniJ - j
Jade - jadeJava - javaJolie - jolie
JSON - jsonJulia - juliaKeyman - keyman
Kotlin - kotlinLaTeX - latexLess - less
LiveScript - livescriptLOLCODE - lolcodeLua - lua
Makefile - makefileMarkdown - markdownMATLAB - matlab
MEL - melMizar - mizarMonkey - monkey
NASM - nasmnginx - nginxNim - nim
Nix - nixNSIS - nsisObjective-C - objectivec
OCaml - ocamlOz - ozPARI/GP - parigp
Parser - parserPascal - pascalPerl - perl
PHP - phpPHP Extras - php-extrasPowerShell - powershell
Processing - processingProlog - prolog.properties - properties
Protocol Buffers - protobufPuppet - puppetPure - pure
Python - pythonQ - qQore - qore
R - rReact JSX - jsxReason - reason
reST (reStructuredText) - restRip - ripRoboconf - roboconf
Ruby - rubyRust - rustSAS - sas
Sass (Sass) - sassSass (Scss) - scssScala - scala
Scheme - schemeSmalltalk - smalltalkSmarty - smarty
SQL - sqlStylus - stylusSwift - swift
Tcl - tclTextile - textileTwig - twig
TypeScript - typescriptVerilog - verilogVHDL - vhdl
vim - vimWiki markup - wikiXojo (REALbasic) - xojo
YAML - yaml

相关链接

官网:http://prismjs.com/

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84960 人气
更多

推荐作者

沧笙踏歌

文章 0 评论 0

山田美奈子

文章 0 评论 0

佚名

文章 0 评论 0

岁月无声

文章 0 评论 0

暗藏城府

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文