Mediawiki 開發擴展

出自六年制學程
在2015年9月26日 (六) 21:22由丁志仁對話 | 貢獻所做的修訂版本

跳轉到: 導覽搜尋

視覺化編輯器(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

  • 準備工作須先裝好以下軟件:
    1. 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了。
    2. LaTeX and dvips
      • 有的Linux也有這個套件,不過我還是安裝了Tex Live 2008 ,免費的: http://www.tug.org/texlive/。按照提示安裝即可
    3. imagemagick
    1. gs
    2. cjk-latex (now called latex-cjk-all)
    3. tetex-extra
    4. binutils (“/usr/bin/as” is needed by make job)
    5. 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)."'>";
}