Mediawiki 開發擴展
出自六年制學程
視覺化編輯器(visual editer)
- 需要 Parsoid
- 設 $wgVisualEditorParsoidPrefix = 'localhost';
- 設 $wgVisualEditorParsoidURL = 'http://localhost:8000'; // Debian,port是8142
- 設 $wgDefaultUserOptions['visualeditor-enable'] = 1;
- $wgHiddenPrefs[] = 'visualeditor-enable'; // 不許關閉,若要用 wiki 碼編,不用此行
- 設 require_once "$IP/extensions/VisualEditor/VisualEditor.php";
- MediaWiki 1.23,還需要額外的 PHP Parsoid 插件,之後的版本不用。
texvc
- 準備工作須先裝好以下軟件:
- ocaml
- OCaml 下載:http://caml.inria.fr/pub/distrib/ocaml-3.11/ocaml-3.11.1.tar.gz
- 下載後解壓,將整個目錄拷貝至/wiki/math/下,然後進入ocaml目錄編譯安裝:
./configure生成配置文件"Makefile", "m.h" and "s.h"
make world(要等很久)
make opt(要等很久)
umask 022(這個很重要,讓make取得執行權,少這步不會成功)
make install(現在才是安裝)
make clean - 執行一下ocaml命令,能看到版本號就說明OK了。
- LaTeX and dvips
- 有的Linux也有這個套件,不過我還是安裝了Tex Live 2008 ,免費的: http://www.tug.org/texlive/。按照提示安裝即可
- imagemagick
- ocaml
- gs
- cjk-latex (now called latex-cjk-all)
- tetex-extra
- binutils (“/usr/bin/as” is needed by make job)
- gcc
- cd 到 MediaWiki 安裝目錄下的 math/ 子目錄,執行 make 開始安裝 texvc。
- 在 LocalSettings.php 中設置 $wgUseTeX = true;
- 生成圖片需要創建目錄和檔案,若伺服器權限不允許,會出現錯誤。
使用外部的 Mimetex
這種方法實質上是利用外部的 cgi 鏈接來幫我們生成公式圖片,比較靈活,我們可以使用自定義的標籤或者修改代碼來實現。
自定義標籤方法見:Extension:Mimetex alternative
修改代碼使 math 也能過濾到使用 mimetex 見:利用外鏈CGI為Mediawiki添加數學公式支援
第二種方法是修改 includes/Math.php 下的 renderMath 方法:
public static function renderMath( $tex, $params=array() ) { # global $wgUser; # $math = new MathRenderer( $tex, $params ); # $math->setOutputMode( $wgUser->getOption('math')); # return $math->render(); return "<img class='tex' src='http://www.forkosh.dreamhost.com/mathtex.cgi?".rawurlencode($tex)."' alt='LaTeX:".htmlspecialchars($tex)."'>"; }