不用插件實(shí)現(xiàn)WordPress代碼高亮顯示
Posted on 2012-08-20 00:30 韓麥斯 閱讀(155) 評(píng)論(2) 編輯 收藏 所屬分類(lèi): wordpress偶爾在日志中加入一些代碼,感覺(jué)完全沒(méi)必要安裝代碼高亮插件,萬(wàn)一某天不用插件了,頁(yè)面可能會(huì)很亂。其實(shí)大部分插件都是在代碼中強(qiáng)行加入一些標(biāo)簽,然后用CSS定義樣式,通過(guò)查看頁(yè)面源文件可以清楚地看到。
有一個(gè)叫“發(fā)芽網(wǎng)”的在線(xiàn)代碼高亮轉(zhuǎn)換網(wǎng)站。通過(guò)在線(xiàn)程序同樣是向代碼中加入不同的標(biāo)簽,然后定義樣式,如果感興趣可以到發(fā)芽網(wǎng)試試,但每次轉(zhuǎn)換都需打開(kāi)網(wǎng)址操作略顯麻煩,不是本篇介紹的重點(diǎn)。
今天推薦的是一款本地轉(zhuǎn)換代碼高亮顯示的小工具:CodeRender,本程序是基于 dp.SyntaxHighlighter 寫(xiě)的代碼語(yǔ)法著色的工具。支持的語(yǔ)言有:
java/xml/sql/jscript/css/cpp/c#/python/vb/perl/php/ruby/delphi。
可方便用于你的博客中粘貼代碼,只要自定相應(yīng)的樣式 (highlight.css 的內(nèi)容,.Text 支持自定義樣式或在模板里加上語(yǔ)法樣式),然后復(fù)制用這個(gè)工具生成的 HTML 代碼就能讓你的代碼著高亮顯示。 可以加入更多語(yǔ)種的支持,本程序就是在 dp.SyntaxHighlighter 的基礎(chǔ)上擴(kuò)展了對(duì) Perl 語(yǔ)言的支持,網(wǎng)上可以找到相應(yīng)語(yǔ)法的 JS 代碼和 CSS。語(yǔ)言擴(kuò)展支持通過(guò)在 shCore.js 和 highlight.css 加入相應(yīng)代碼即可。
程序界面
操作很容易,Source Code 中貼上你要著色的代碼,然后選擇語(yǔ)種,點(diǎn)擊 Render 按鈕就會(huì)在 HTML Code 中生成相應(yīng)的 HTML 代碼,同時(shí)在 HTML Preview 中可以預(yù)覽到效果。
簡(jiǎn) 要說(shuō)明:Lang 下拉框可以選擇所支持的語(yǔ)法,Options 右邊的 Gutter、Controls、CollapseAll、FirstLine、Columns 是控制生成的額外的元素,逐一點(diǎn)試試就知道了。每個(gè)內(nèi)容顯示(輸入)區(qū)都提供了 Copy/Paste/Clear 快捷操作鏈接,還有一個(gè)總的 Clear 按鈕。
Copy生成 的HTML 代碼,在日志編輯窗口切換到HTML源代碼編輯模式,粘貼就可以了。
不過(guò)要想正確顯示代碼高亮還需在WordPress主題中加載樣式文件“highlight.css”(在下載的壓縮包中)
方法:
首先,把highlight.css上傳到所使用主題目錄中;
其次:打開(kāi)header.php,查找:
<link rel="stylesheet" type="text/css" href="<?php bloginfo('template_directory'); ?>/style.css" /> |
在后面添加:
<link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/highlight.css" /> |
當(dāng)然,你也可以復(fù)制highlight.css中的所有代碼到你主題style.css中,以上步驟就免了!
如認(rèn)為默認(rèn)的樣式不符合自己的要求,可以通過(guò)修改“highlight.css”中的樣式改變代碼高亮、邊框、背景等顏色,更個(gè)性化。
但需要注意的是WordPress會(huì)自動(dòng)把半角符號(hào)替換為全角,別人復(fù)制下來(lái)的函數(shù)代碼標(biāo)點(diǎn)是全角的,無(wú)法使用,切記!
解決辦法:
|
效果如下:
PHP:
CSS: