質問箱/3323

カテゴリ
サマリAutoLink(自動リンク)を停止する書き方
バージョン1.4
投稿者Repy?
状態保留
投稿日2006-02-07 (火) 14:08:33

質問

既にあるページ名に対するAutoLink(自動リンク)をその部分だけしないようにする書き方はありますか? 見出しでのAutoLinkがダサいときがあります。

回答

  • こんな感じでどうでしょうか。-- teanan 2006-02-07 (火) 15:14:35
    • 下記を nop.inc.php というファイル名でpluginフォルダに入れておきます。
      <?php
      function plugin_nop_inline()
      {
      	return htmlspecialchars(array_shift(func_get_args()));
      }
      ?>
    • AutoLinkしたくない単語を、下記のようにくくります。
      ここに&nop(AutoLink);したくない単語を書く
  • やっぱりUnicode数値参照エンコードしちゃうしかないんですね -- Repy? 2006-02-07 (火) 16:39:37
    簡単な記号でくくるとかもっと他の方法があればいいんですけどね
    ||でくくるとか。また実装してほしいですね。
  • えっと・・・ただのechoするだけのプラグインです (^^; -- teanan 2006-02-07 (火) 18:48:00
  • それは解ってます。行頭スペースみたいに、wikiのコアの部分での実装がほしいなあ~って。 -- Repy? 2006-02-08 (水) 14:37:17
  • 微妙にわかってないような。。。 -- 2006-02-08 (水) 15:56:28
  • さらにこうすると、&&AutoLink&& のように書くだけで回避できるようになります。 -- teanan 2006-02-08 (水) 17:06:16
    rules.ini.php : 40行目付近
    	'&fpage;'	=> $vars['page'],
    	'&t;'   	=> "\t",
    +	'&&(.+?)&&'   	=> "&nop($1);",
      );
  • 余談ですが、本家WikiWikiWebには、WikiNameに対する自動レンダリングの有効/無効をコントロールする方法として、「six single quotes を単語に織り交ぜる」というのがあります。これは「強調する」記法(PukiWikiの場合はイタリック)を空文字列に対して適用する、ということで実現されているようです。WalWikiには実装されているようですね。(See WikiWikiWeb:SixSingleQuotes) -- henoheno 2006-02-08 (水) 22:26:00
       WikiWikiWebでは:
       '''文字列を強調する''' <= 普通の使い方。太字になる
       ''''''          <= 空の文字列を強調(Webブラウザには何も表示されない)
       WikiName''''''s <= "WikiName" の部分だけWikiNameとして認識される
       W''''''ikiNames <= "W" も "ikiNames" も WikiNameであるとは認識されない。
                          すなわちリンクにはならない
    • ・・・試した事がありませんでしたが、PukiWikiだと six single quotes はいまいち本家の意図通りには動かないようですね (^^; これはエンジン部分の成立過程から違うので仕方ないでしょう。調整の余地があるかは不明です。 -- henoheno 2006-02-08 (水) 22:40:11
         PukiWikiでは:
         '''文字列を強調する''' <= イタリックになる
         ''''''          <= そのまま表示されてしまう
         WikiName''''''s <= そのまま表示されてしまう
                            同じページ名があれば、AutoLinkが稼動する!
         W''''''ikiNames <= そのまま表示されてしまう。
         WikiWikiName''''''s W''''''ikiNames <= おしい(?)、中央が強調されてしまう
    • ずいぶん裏技ちっくですね (^^; -- teanan 2006-02-09 (木) 07:19:54
  • &#0;を入れるのが簡単な解決法のようです。例えば、 Wiki&#0;Name とすれば、 Wiki�Name になります。ただし、「Name」と「になります」の間には必ず半角空白が必要になるようです。 -- oru? 2008-06-11 (水) 17:41:14

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2013-01-16 (水) 20:00:46
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.496 sec.

OSDN