zoukankan      html  css  js  c++  java
  • PmWiki的中文乱码改造

    PmWiki的中文乱码改造

    Rocket(居然是校友,隔壁化学系的)发来封信,讲了“让PmWiki侧底支持中文gb2312”,受益不少。

    以下内容转自Chinix.net

    对PmWiki.php程序修改如下(基于0.5.5,其他版本应能类推):

      1)将Line 185~187
    $Newline = "\262";
    $KeepToken = "\263";
    $LinkToken = "\264";
      改为
    $Newline = "\x81"; //$Newline = "\262"; //Modi by Rocket. 2003.6.25
    $KeepToken = "\x82"; //$KeepToken = "\263"; //Modi by Rocket. 2003.6.25
    $LinkToken = "\x83"; //$LinkToken = "\264"; //Modi by Rocket. 2003.6.25

      2)程序中涉及阅读的子程序有两个:
      Line 764
    function HandleBrowse($pagename)
      作用是阅读文件。

      Line 802
    function HandleEdit($pagename)
      作用是读入文件供编辑本页。


      做子函数Patch_GB2312()和Patch_BackOld()
    function Patch_GB2312($pagefilename){
    //add by Rocket. 2003.6.25
    global $Newline,$KeepToken,$LinkToken;
    if (file_exists('wikilib.d/'.$pagefilename)&!file_exists('wiki.d/'.$pagefilename)){
    $Newline = "\262";
    $KeepToken = "\263";
    $LinkToken = "\264";
    }
    }

    function Patch_BackOld(){
    //add by Rocket. 2003.6.25
    global $Newline,$KeepToken,$LinkToken;
    $Newline = "\262";
    $KeepToken = "\263";
    $LinkToken = "\264";
    }
      加入队尾Line 997.

      修改HandleBrowse()的 Line769 和HandleEdit()的 Line 806
    if (!$page) { Abort("Invalid page name"); }
      改为
    if (!$page) { Abort("Invalid page name"); } else Patch_GB2312($pagename); //Modi by Rocket. 2003.6.25

      3)由于HandleEdit后还要输出PmWiki.EditQuickReference,快速编辑参考,这是一个老文档,需要不管三七二十一,变回老的分隔符,所以修改Line 812,强制变量赋值:
    $HTMLTitle = "Edit $pagename"; $GCount = 0;
      改为:
    $HTMLTitle = "Edit $pagename"; $GCount = 0;Patch_BackOld();//Modi by Rocket. 2003.6.25

      4)剩下一些小打小闹的修改,有的您可能前面已经做了:
      将Line57
    "Content-Type: text/html; charset=iso-8859-1;");
      改为:
    "Content-Type: text/html; charset=gb2312;"); //"Content-Type: text/html; charset=iso-8859-1;");Modi by Rocket. 2003.6.25

    Never giveup. Thanks the world.
  • 相关阅读:
    JqueryQrcode生成二维码不支持中文的解决办法
    [转载]浅析海量用户的分布式系统设计
    [转载]大型网站应用中 MySQL 的架构演变史
    CSS3变形记(上):千变万化的Div
    JavaScript进阶之路——认识和使用Promise,重构你的Js代码
    Visual Studio Code预览版Ver 0.3.0试用体验
    Apache Spark 2.3.0 正式发布
    Apache Spark 2.2.0 新特性详细介绍
    Apache Spark 2.2.0 正式发布
    Spark 论文篇-论文中英语单词集
  • 原文地址:https://www.cnblogs.com/cnsoft/p/172669.html
Copyright © 2011-2022 走看看