見出し毎に編集出来るプラグイン

バージョン1.4.7
投稿者又三郎?
状態完了
投稿日2007-10-08 (月) 18:26:20

メッセージ

既存の物では1.4.7に導入出来ないようなので、 よろしくお願いします。

コメント

  • できますけど・・・ -- 2007-10-08 (月) 19:47:09
  • できませんけど・・・ -- 2007-10-10 (水) 16:19:59
  • できますけど・・・の人は paraedit.diff 、できませんけど・・・の人は paraedit.inc.php のことを言ってると思われます。
    関連記事dev:BugTrack/585 -- 2007-10-10 (水) 16:42:29
  • 1.4.7になってから、Diffも破棄されてるようなので、現状、どちらも使用不可では? -- 2007-10-10 (水) 16:50:06
  • 大見出しから大見出し、小見出しから小見出し、を出来るようにしてほしい、と言いだした人がかき回して、どちらも破棄、っていう感じの流れみたいで、とても残念…。 -- 2007-10-10 (水) 16:54:03
  • paraedit v0.6のソースでも、出来ましたよ。 -- 2007-10-12 (金) 11:31:12
  • 破棄というのは、PukiWikiオフィシャルとしての対応ですよね。上記関連記事に書いてある問題点を認識した上での使用なら問題ないはず。Diffは現在でもokkezさんのところからダウンロードできますしね。 -- 2007-10-12 (金) 12:44:16
  • dev:BugTrack/585は、途中から「大見出しから大見出し…」の人達に完全にジャックされてしまって、見出し毎のは完全に破棄されてしまっていますよね。
    それに加えて、ファイル構成が変化した1.4.7では編集箇所が存在していないようですから、やはり既存の物は使用不可能のように見受けられますが。 -- 2007-10-12 (金) 14:48:19
  • okkez:memo/改造/paraedit.diffについて
    うちはこれで1.4.7でも1.4.8_alphaでも運用しています。dev:BugTrack/585のコメント内からもここにリンクしてますよ。 -- 2007-10-12 (金) 22:06:15
  • うーん、このリンク先のdiffは、「大見出しから大見出し…」になる物では? 見出し毎のが欲しいのですが…。
    (加えて、diffの導入方法dev:diffも理解不能だったりして…orz)
    かと言って、phpの方は、編集箇所が1.4.7には対応していないので、使えそうに無いですし…。*1 -- 2007-10-12 (金) 23:59:19
  • dev:PukiWiki/1.4/ちょっと便利に/見出しごとの編集(fixed_anchor版)に載っているparaedit.diff は、dev:BugTrack/585が提案される前からあったので、たぶん「見出し毎の編集」。 -- 2007-10-13 (土) 00:59:44
  • いま自分のサイトで動作確認しましたが、okkezさんのとこのは見出し毎でしたよ -- 2007-10-13 (土) 10:10:39
  • diffって、どうやって適用すると良いのでしょう?一応、こちらを一通り読み、紹介されているツールを使おうとしたけれど、
    cygwinはインストール時にエラーが出てダメっぽいし、他2つも使えず…。UTF8版なんか、使わなければ良かった…。orz
    って、それを言ったら、そもそもがPlusを使えば良かった、という話になるのかな? -- 2007-10-15 (月) 05:40:48
  • dev:PukiWiki/1.3/自作プラグイン/ParaEditから辿れるtaru様が公開されているものを試されましたか? -- 774RR? 2007-10-15 (月) 11:10:50
  • 一番最初に確認したサイトです。
    よくよく見てみると、skinファイルの書き換え前の検索文字列、$bodyと?>の間に、半角スペースが抜けていたのですね。
    改めて、半角スペースを追記して検索してみた所、無事にスキンの編集箇所が見つかりました。
    で、残りの編集箇所も、ここを見ながらやってみているのですが、「lib/pukiwiki.php に次のコードを追加」の指示通りに編集した所、
    Fatal error: Call to undefined function _plugin_paraedit_parse_postmsg() in \lib\pukiwiki.php on line 73
    と表示されてしまいます。 -- 2007-10-15 (月) 18:52:44

lib/pukiwiki.php

71 /////////////////////////////////////////////////
72 include_once(PLUGIN_DIR . 'paraedit.inc.php');
73 $post["msg"] = _plugin_paraedit_parse_postmsg ($post["msg_before"], $post["msg"], $post["msg_after"]);
74 // Main
  • 馬鹿正直に投入してしまいましたが、位置が間違っているだけなのでしょうか?
    71行めの前に投入しても、結局、元73行目の文の行に変わるので、どうやら追加文自体に問題があるようです。 -- 2007-10-15 (月) 18:57:00
*** pukiwiki.php に追加
メイン処理の直前に次の二行を追加。
$post[msg] = $post[msg_before] . $post[msg] . $post[msg_after];
$post["msg"] = preg_replace("/((\x0D\x0A)|(\x0D)|(\x0A))/","\n",$post["msg"]);
  • またまた、よくよく見てみると、paraedit.inc.php内に追加する文についてありましたね…。orz
    下の文でエラーは解消されました。 -- 2007-10-15 (月) 19:14:10
  • …しかし、一番上の見出しから↑矢印が消えてしまっただけで、それ以外に、これといった変化が無いような…?
    「編集リンクの挿入箇所の指定」に書かれているような文も見当たらず…。 -- 2007-10-15 (月) 19:23:57
  • もっと落ち着いてやりなさいよ。関連ページをじっくり読んでやると問題なくできるから、何かおかしいのなら読み落としているか勘違いをしているはず。手順をメモしながらやってみるといいよ。あとで質問する時も状況を提示しやすい。 -- 2007-10-15 (月) 20:53:24
  • スキンも書き換えているわけだから、他のプラグインのように「#paraedit」みたいに書かなくても大丈夫…なんですよね?
    一応、ここに書かれている変更箇所を触ってみましたが、↑以上の変化が現れないのですが…。 -- 2007-10-15 (月) 20:55:18
  • もう一度、落ち着いて当該ページを最初からご確認下さい。paraedit.inc.phpファイル内にもインストール方法が記載されています。少なくとも"編集リンクの挿入箇所を指定"については106行目あたりにあるはずです。(追記:書き込みがかぶったようですね:D) -- 774RR? 2007-10-15 (月) 21:01:48
  • この文字列「PARAEDIT_LINK_POS」でparaedit.inc.phpファイル内の検索をかけていますが、何も掛かりません。→「編集リンク」 -- 2007-10-15 (月) 21:12:55
    • ご覧になっているparaedit.inc.phpのバージョンはいくつですか? -- 774RR? 2007-10-15 (月) 21:20:11
  • lib/pukiwiki.php ここ&paraedit.inc.phpファイル内より
$post[msg] = $post[msg_before] . $post[msg] . $post[msg_after];
$post["msg"] = preg_replace("/((\x0D\x0A)|(\x0D)|(\x0A))/","\n",$post["msg"]);
  • skin/pukiwiki.skin.php
<?php echo $body ?>の検索で掛かった2箇所
<?php include_once 'plugin/paraedit.inc.php'; echo _plugin_paraedit_mkeditlink($body); ?>
  • lib/convert_html.php
「return $this->msg_top.」の検索で掛かった行とその次の行
$paraedit_flag = (preg_match("/^content_1_/", $this->id)) ? ' paraedit_flag=on' : '';
return $this->msg_top.
	$this->wrap(parent::toString(),'h'.$this->level," id=\"{$this->id}\"$paraedit_flag");
  • paraedit.inc.php
「テキスト整形のルールを表示する」のリンクでエラー対策用?
$body = preg_replace("/cmd=edit(&amp;help=true)/", "plugin=paraedit&amp;parnum=$vars[parnum]$1&amp;refer=" . rawurlencode($vars[page]), $body);
  • paraedit.inc.phpファイルは、こちらにあった、0.6でやってみています。(他に無いようですし…) -- 2007-10-15 (月) 21:26:47
  • 被りそうだけど突込み入れておくと、
    ○このページの修正を見るとpukiwiki.phpの変更に0.5用のものを使ってます。0.6用の変更方法を使ってください。
    ○検索使わないでも_PARAEDIT_LINK_POSは簡単に見つける事ができます。見つからないのは私のサイトでダウンロードしたものではないようです。
    ○ダウンロード後、paraedit[1].inc.phpとなっているのでparaedit.inc.phpとファイル名を変更して下さい。
    ○PHP編集未対応の編集ソフトをお使いでしたらC/C++編集モードにすると色分けされて見やすいかもしれません。(間違ってもメモ帳等のプログラム編集目的ではないソフトで編集する事はやめてください。)
    -- taru 2007-10-15 (月) 21:51:48
  • まさか…と思いつつDLしてみた所、ファイルサイズが倍以上…。で、今まで触っていたファイルの入手元を探してみたら、ファイルサイズ的にこちらの物だったようです。
    大変お騒がせを…。orz
    という事で、lib/pukiwiki.phpを修正し直し、プラグインも置き換えてみましたが、やはり状態は変わらず…。 -- 2007-10-15 (月) 22:18:01
    • paraedit.inc.phpのソース文字コードはUTF-8に変更しましたか? -- taru 2007-10-15 (月) 22:24:15
      • 変更してみても、やはりダメなようです。…Wordのエンコードではダメでしょうか? -- 2007-10-15 (月) 22:29:32
  • えっと、それってMs Wordの事ですか?もしそうならPukiWikiのダウンロードからやり直してください。プログラムの変更は初心者にも簡単なTeraPadもしくはサクラエディタ等の編集ソフトをお使いください。 -- taru 2007-10-15 (月) 23:07:23
  • こちらを参考にエンコードしてみましたが、やはりダメみたいですね。
    …で、よく見てみたら*2、スキンファイルが書き換えたつもりで書き換わっていなかったというオチが…。orz
    書き直したら、無事に出てきました。大変、お騒がせしました。 -- 2007-10-16 (火) 06:17:33
  • 今回の件、何気に@ITの文字コード変換術が、とても大きな収穫だったかも…。 -- 2007-10-16 (火) 06:53:59
  • paraedit.inc.phpの変更で 「[parnum]&$1&amp」 が 「[parnum]$1&amp」 と、&が抜けています。 これが抜けてると「テキスト整形のルールを表示する」でエラーが起きる様です(1.4.7_notbで確認) -- へろへろ? 2008-01-30 (水) 10:09:23
  • pukiwiki1.4.7(UTF-8)+PHP5.2.3の環境下で導入しようとしているのですが、「EDIT」から編集ページへ飛んでも、編集エリアが出現しない状態になってしまっています。どうすると編集エリアが出現するようになるのでしょうか?どうぞよろしくお願いします。 -- 2008-09-23 (火) 11:04:34

PukiWiki1.4.7版_編集箇所まとめ

  • 編集ファイル群
    • lib/pukiwiki.php
//mainの前に書き足す。
include_once(PLUGIN_DIR . 'paraedit.inc.php');
$post["msg"] = _plugin_paraedit_parse_postmsg($post["msg_before"], $post["msg"], $post["msg_after"]);
  • skin/pukiwiki.skin.php
<?php echo $body ?>が2箇所あるので、2箇所とも↓に書き換える。
<?php include_once 'plugin/paraedit.inc.php'; echo _plugin_paraedit_mkeditlink($body); ?>
  • lib/convert_html.php
return $this->msg_top.で検索をかけ、
return $this->msg_top.
	$this->wrap(parent::toString(),'h'.$this->level," id=\"{$this->id}\"");

↑の2行を、↓の3行に書き換える。

$paraedit_flag = (preg_match("/^content_1_/", $this->id)) ? ' paraedit_flag=on' : '';
return $this->msg_top.
	$this->wrap(parent::toString(),'h'.$this->level," id=\"{$this->id}\"$paraedit_flag");
  • paraedit.inc.php
$body = preg_replace("/(cmd=edit&amp;help=true)/", "plugin=paraedit&amp;parnum=$vars[parnum]&$1&amp;refer=" . rawurlencode($vars[page]), $body);

↑のままだと、「テキスト整形のルールを表示する」のリンクでエラーが発生するそうなので、↓に書き換える。

$body = preg_replace("/cmd=edit(&amp;help=true)/", "plugin=paraedit&amp;parnum=$vars[parnum]$1&amp;refer=" . rawurlencode($vars[page]), $body);
  • 編集」と「上に戻る」を1行にまとめる場合
    • paraedit.inc.php
define(_EDIT_LINK, '<div style="text-align: right; font-size: x-small; padding: 0px; "><a href="%s">[edit]</a></div>');

↑を↓に書き換える。

define(_EDIT_LINK, '<div class="jumpmenu"><a href="%s">EDIT</a> <a href="#navigator">TOP</a></div>');

*EDITとTOPの所を「編集」や「上に戻る」などと置き換えることで、表示される文字列を変更出来る。

  • en.lng.php&ja.lng.php
$_msg_content_back_to_top = '<div class="jumpmenu"><a href="#navigator">&uarr;</a></div>';

↑から↓に書き換えることで、標準装備の「上に戻る」を消す事が出来る。

$_msg_content_back_to_top = '';
  • スペシャルサンクス 回答してくださった方々&Taruさん&Tsuruさん&ITメディアさん、ありがとうございます。mm

*1 どのファイルでファイル内検索しても、該当箇所が見つからないのには参りましたw
*2 またまた

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

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

OSDN