User:
Pass:
Keep:   
Xoops Cube Project
XOOPS Cube Project Site
Powered by Google


Powered by XOOPS Cube Legacy 2.1.8
PukiWikiMod 1.5.1
WordPress Module 0.6.0 Alpha

2004年8月28日(土曜日)

PukiWikiのスマイリー

カテゴリー: - nobunobu @ 23時41分48秒

PukiWikiのスマイリーも使用可能に

PukiWiki :D :p XD ;) ;( &heart;

PukiWiki :D :p XD ;) ;( [heart]


コメント

このコメントのRSS

  1. 今朝、CVSを見たら更新されていたので、早速入れてみました。 :)

    PukiWikiModの静的ページ風URLに対応していただいたのは、とっても助かりました!

    aタグの target 属性なんですが、XOOPSのサニタイザは "_blank" が指定されています。 そこで、統一性をとるために、class PukiWikiLink_url をいじってみました。 link_target というオプションを追加しています。

    class PukiWikiLink_url extends PukiWikiLink
    {
    	function PukiWikiLink_url($start)
    	{
    		parent::PukiWikiLink($start);
    	}
    	function get_pattern()
    	{
    		$s1 = $this->start + 1;
    		return <<<EOD
    ([[             # (1) open bracket
     ((?:(?!]]).)+) # (2) alias
     (>|:)            # (3) separator
    )?
    (                 # (4) url
     (?:https?|ftp|news)://[!~*'();/?:@&=+$,%#w.-]+
    )
    (?($s1)]])      # close bracket
    EOD;
    	}
    	function get_count()
    	{
    		return 4;
    	}
    	function set($arr,$page)
    	{
    		list(,,$alias,$separator,$name) = $this->splice($arr);
    		$this->separator = $separator;
    		return parent::setParam($page,htmlspecialchars($name),'','url',$alias == '' ? $name : $alias);
    	}
    	function toString()
    	{
    		if ($this->separator == ">")
    			return "<a href="{$this->name}">{$this->alias}</a>";
    		else
    		{
    			$target = "";
    			if ($target = PukiWikiConfig::getParam('link_target'))
    				$target = " target="{$target}"";
    			return "<a href="{$this->name}"{$target}>{$this->alias}</a>";
    		}
    	}
    }

    あと気になる点がひとつありました。これは以前からあったのですが、PukiWikiRander.php 中の _fix_table_br()関数の中に

    $string = preg_replace("/^<p>([^<>]*)</p>$/m","$1",$string);

    がありますが、この場合だと

    <p>aaa</p>
    <p>bbb</p>

    とレンダリングされた場合に

    aaabbb

    となってしまうので、私は次のようにしてみました。

    $string = preg_replace("/^<p>([^rn]*)</p>$/","$1",$string);

    ※ r はいらないかも?

    Comment by nao-pon — 2004年8月29日(日曜日) @ 10時20分28秒

  2. すみません。表示が変になってしまいました。 ;(

    Comment by nao-pon — 2004年8月29日(日曜日) @ 10時26分05秒

  3. わざわざの投稿ありがとうございます。 投稿フォームのメッセージを修正していないのですが、コメントもPukiWiki書式での投稿になっています。 という事で、コメントの内容を見やすいように修正させてもらいました。

    Comment by のぶのぶ — 2004年8月29日(日曜日) @ 10時47分02秒

  4. nao-ponさんの書込をじっくりと検討させてもらいました。

    $string = preg_replace("/^<p>([^<>]*)</p>$/m","$1",$string);

    の件については、XOOPSのサニタイザの置き換えHACKをすると単純なキャプション文字列などもPukiWikiレンダーを通って<p></p>が付いてしまい、場合によるとレイアウトが狂うという不具合が生じる事への対応でした。
    変換結果に一番外の<p></p>以外には<>を使用したHTMLタグが存在しない場合に外側の<p></p>をはずしてやるという事をやりたかったのですが、実は正規表現の指定子が間違っておりました。ということで、

    $string = preg_replace("/^<p>([^<>n]*)</p>$/sD","$1",$string);

    に変更します。 あと、XOOPSのmodule.textsanitizer.phpでは、

    function &displayTarea(&$text, $html = 0, $smiley = 1, $xcode = 1, $image = 1, $br = 1)

    の$xcodeをPukiWikiレンダーを有効にするかどうかの判断材料にする様に変更するつもりです。= PukiWikiLink_url に関しては、確かにPukiWikiModでは無意識のうちにアライアスのあとの:と>を使い分けていましたが、 この様なロジック変更をされていたのですね!早速取り込ませていただきました。
    なお、この機能のテスト最中に、小生のXOOPSサニタイザHackで使用していたautourllinkパラメータによる処理の切り分け方が間違っておる事に気が付いたのでこのあたりも修正するつもりです。

    ありがとうございました!

    Comment by のぶのぶ — 2004年8月29日(日曜日) @ 16時35分55秒

  5. お邪魔します。 wpME0.3.1を使わせていただいています。 ここでは、コメントにpukiwikiの埋め込みが出来ていますね。…。 [smile]

    Comment by tororin — 2004年9月5日(日曜日) @ 09時44分04秒

  6. ううぅぅぅ…失敗しています。 もし、問題でしたらお手数ですが、削除をお願い致します。 ;( 

    Comment by tororin — 2004年9月5日(日曜日) @ 09時47分15秒

コメントの投稿

ごめんなさい、現在コメントを付けることは出来ません

113 queries. 0.012 sec. - Mem:4488bytes
Powered by WordPress Module based on WordPress ME & WordPress

WordPress1 カレンダー
2004年 8月
    9月 »
1234567
891011121314
15161718192021
22232425262728
293031  
WordPress1 月別過去ログ
WordPress1 カテゴリ一覧
WordPress1 投稿者ブロック
WordPress1 検索