少年幃禿的煩惱


心情也微微的...凸

最近的學習心得 都改放到 少年幃禿的煩惱@Google Sites

2008/06/27

Prettify - syntax highlight

mikesamuel 做的 syntax highlight 也是使用 Javascript & CSS 完成的 - google-code-prettify
支援的語言包含 C系列, Java, Python, Bash, SQL, HTML, XML, CSS, Javascript, 還有Makefiles. 而 Ruby, PHP, Awk, Perl 表現也還可以, 但是因為註解符號的關係無法使用在 Smalltalk, Lisp-like, CAML-like上.

使用方法 :
1. include .js & .css

&lt;link href="prettify.css" type="text/css" rel="stylesheet"/> <script type="text/javascript" src="prettify.js"></script> 2. 在 document.onload 的時候加上 prettyPrint(); 就可以了 <script type="text/javascript"> $(function() { prettyPrint(); }); </script> 3. 喔, 差點忘了說, 把要 highlight 的 syntax 放在 <pre class="prettyprint"> // 這裡 </pre> <code class="prettyprint"> // 或是這裡 </code> 範例 :
<pre class="prettyprint"/> (有框框):
#!/bin/bash

# Fibonacci numbers
# Writes an infinite series to stdout, one entry per line
function fib() {
  local a=1
  local b=1
  while true ; do
    echo $a
    local tmp=$a
    a=$(( $a + $b ))
    b=$tmp
  done
}

# output the 10th element of the series and halt
fib | head -10 | tail -1
<code class="prettyprint"/> (沒有框框): /** * nth element in the fibonacci series. * @param n >= 0 * @return the nth element, >= 0. */ function fib(n) { var a = 1, b = 1; var tmp; while (--n >= 0) { tmp = a; a += b; b = tmp; } return a; } document.write(fib(10));