#author("2023-11-22T16:46:09+00:00","","")
#author("2023-11-22T16:46:32+00:00","","")
*見だし編集機能を本体に組み込んで欲しい [#v30c1769]

-ページ: BugTrack
-投稿者: [[ari]]
-優先順位: 普通
-状態: 保留
-カテゴリー: 本体新機能
-投稿日: 2004-04-21 (水) 10:36:23
-バージョン: 

----
#contents
----
** 関連(別実装?) [#p03444a0]
- [[official:自作プラグイン/paraedit.inc.php]]
-- [[PukiWiki/1.3/自作プラグイン/ParaEdit]]

** 現在のステータス: 冒険者向け、要見直し [#u0ca4899]

- 1.4.4向けの(最新の)パッチ: &ref(pw-1.4.4-paraedit-2.zip);
 cd pukiwiki-1.4.4_php5
 cp ../pw-1.4.4-paraedit-2/paraedit.png image/.
 patch -p1 < para-144-cvs20040919-1358.diff
 最後に pukiwiki.ini.php にて: $fixed_heading_edited = 1;

- pw-1.4.4-paraedit-2.zip の一部を1.4.5_alphaに取り込んだ残り: &ref(paraedit_2004-11-23.tgz);
-- [[開発日記/2004-12-12]] で触れている通り、編集機能に関する根本的なところでもう少しケアがいりそうな予感。[[保留予定>開発日記/2005-01-03]](2005-01-03 (月) 22:11:18現在)。

- tDiaryのテーマでparaedit_2004-11-23.tgzを有効にしたいパッチ (by [[okkez]])
-- [[okkez:memo/改造/paraedit.diffについて]]
-- "デフォルトの状態ではpukiwiki.dev:BugTrack/585にあるparaedit_2004-11-23.tgz はちゃんとあたりません。..."
-- "''1.4.5_rc1対応のdiffも作ってみた。''"
--"''上記のものでHunkは出るけど1.4.5にも正常にパッチが当たります。''"
--ウチのサイトCVS版PukiWikiにparaeditを適用してみました。paraeditの編集マークをちゃんと見せられるようにtdiary.skin.phpを少し改造しました。良かったら[[ココ>okkez:memo/改造/paraedit.diffについて]]に置いてあるので持っていってください。devサイトの関連ページにそのままあげて頂いても構いません。よろしくお願いします。 -- [[okkez]] &new{2005-01-18 (火) 06:56:45};


**メッセージ [#nd15e4b5]

- 関連あり: 
-- [[official:続・質問箱/238]] 見出し毎に編集できるようにしたい。
-- [[BugTrack/609]] $edit_auth = 1 のときにパラグラフ毎にパスワードを保存しなければならない (para_edit.diff)
-- [[BugTrack/752]] 見出しのアンカーは7桁固定?


[[PukiWiki/1.4/ちょっと便利に/見出しごとの編集(fixed_anchor版)]] にある &ref(PukiWiki/1.4/ちょっと便利に/見出しごとの編集(fixed_anchor版)/para_edit.diff); を、本体に組み込んでほしいと考えています。

pukiwiki.ini.php のオプションとして、見出しごとの編集を有効にするような形で組み込めないでしょうか?

-オプションの例
 // 見出し行に固有のアンカーを自動挿入する
 $fixed_heading_anchor = 1;
 // 見出しごとの編集を可能にする(見出し行の固有のアンカ自動挿入されているときのみ有効とか、、)
 $fixed_heading_edited   =  0;       // ←既定値無効

編集アンカーの位置は好みもあるかと思いますが、[[PukiWiki-official>official:FrontPage]]にあるような位置がよいと考えています。  
----
**コメント [#nb7c4a1e]
-追加の要望ですが、menuプラグインで見出し編集アンカーを表示しない対応も必要(欲しい)と考えています。 &br; 詳細は[[本家質問箱132>pukiwiki:続・質問箱/132]]を参照ください。 &br; 要望ばかりですが、宜しくお願いします。 -- [[ari]] &new{2004-05-06 (木) 19:42:50};
-当機能をぜひ実現していただけないでしょうか? -- [[roz]] &new{2004-05-08 (土) 11:46:06};
-自分は大見出し、小見出しにかかわらず見出しから見出しまでよりも、大見出しから大見出しまで、小見出しから小見出しまで、のほうが使いやすいと思っているのですが、皆さんはどうですか?ぱんださんに教わって自分は改造して使っています。 [[しろくろのへや:質問箱/74]] 参照。 --  &new{2004-05-27 (木) 14:18:37};
-使い方に依るでしょう。各ページに大見出しが1つしかないページが多い場合((多くのPukiWikiサイトはこの傾向にあるようです。))、現状のpara_edit.diffのほうが便利です。 -- [[reimy]] &new{2004-05-27 (木) 19:02:26};
-para_edit.diff をみなさん使っているのは編集箇所を探すのがいやだからですよね?自分の考えではページの頭のほうは普通の編集ですらも十分すぐに編集できる(頭なので探すまでもない)のでこの Bugtrack のようなページでも使い勝手は悪くならないと考えています。さらに、中見出し、小見出しが例えば以下のように
 **中見出し
 ***小見出し
 .....
 ***小見出し
 .....
 **中身だし
 .....
 ****小見出し
 .....
となっていたとしても2番目の中見出しも編集箇所は先頭にでてくるので使い勝手は悪くならないと思っています。1番目に到っては本領発揮だと思います。--  &new{2004-05-29 (土) 01:34:33};
-入れ子になっていることと、「大見出しから大見出しまで、小見出しから小見出しまで、のほうが使いやすい」かどうかはまったく関係がありません。
 *大見出し1
 前書き(1)
 **中見出し1
 解説(1)
 ***小見出し1
 記事(1)
 ***小見出し2
 記事(2)
 **中見出し2
 解説(2)
 ***小見出し3
 記事(3)
 ***小見出し4
 記事(4)
 *大見出し2
 前書き(2)
 **中見出し3
 解説(3)
 ***小見出し5
 記事(5)
 ***小見出し6
 記事(6)
 **中見出し4
 解説(4)
 ***小見出し7
 記事(7)
 ***小見出し8
 記事(8)
~このような場合、「大見出しから大見出しまで、小見出しから小見出しまで」にしてしまうと、前書き(2)だけを編集しようとしても、大見出し2~記事(8)まですべてが読み込まれてしまいます。現状であれば、前書き(2)だけを編集することが可能です。 -- [[reimy]] &new{2004-05-29 (土) 01:46:45};
-「para_edit.diff をみなさん使っているのは編集箇所を探すのがいやだから」では必ずしもありません。編集部分を小さくすることによる軽快さも重要な要素です。「大見出しから大見出しまで、小見出しから小見出しまで」にしてしまうと、この重要な要素が損なわれる場合があります。 -- [[reimy]] &new{2004-05-29 (土) 01:55:07};
-そこでみなさんに意見をお伺いしているのですが。また、軽快という点では、連続した小見出しを複数個編集しなければならないときは、現状のpara_edit よりも軽快に編集できると思います。現状ではまとめて編集したいときは、通常の編集を行い、編集箇所を探さなければいけません。両方ともできるようになると一番良いとは思いますけどね。 --  &new{2004-05-29 (土) 01:56:44};
--両方を充たすために、従来どおり差分でいいんじゃないの? --  &new{2004-05-29 (土) 02:18:02};
--「大見出しから大見出しまで、小見出しから小見出しまで、のほうが使いやすい」と思う人が差分を公開しておけばすむ話 --  &new{2004-05-29 (土) 06:24:36};
--差分は本体がバージョンアップするたびに不整合がおきる可能性があるからなぁ。 --  &new{2004-05-29 (土) 16:45:38};
-「編集箇所を探すのがいや」という理由以外に、最初にざっと見出しだけでページ構造(アウトライン)を作成し、各見出し毎の内容を編集していく使い方もしています。&br; この場合でも、今のpara_edit の大見出し~大見出し、小見出しから小見出しの方が嬉しいです。(あくまで個人的な感性ですが、、) -- [[ari]] &new{2004-06-04 (金) 16:26:33};
--だから差分を作って公開すれば? --  &new{2004-06-04 (金) 16:41:16};
---システムをよくわかってないのですが、自分で作っていいということでしょうか?&br; ちょっとこのサイトを熟読して手順を確認しなおします。 -- [[ari]] &new{2004-06-08 (火) 15:36:58};
-あ、ちょっと見ない間に「保留」になってますね。。。悲しい。。 &br; つたない腕で差分を作ってみました。 &ref(para_edit_withoption.diff); &br; 単にところどころにif文をかましただけなので、自分でもどうかと思うのですが、、&br; is_paraedit なんて関数を作ればもう少しすっきりするような、たいして変わらんような、、 -- [[ari]] &new{2004-06-23 (水) 20:12:32};
-すごく便利な機能ですよね :) うまく本家にマージするための折り合いが付けば良いのですが。 -- [[henoheno]] &new{2004-06-27 (日) 21:53:36};
--ちょっと間が空いてしまいましたが、、折り合いはどうやって付けていけばいいのでしょう??henohenoさんの活動には頭がさがる思いです。&br; 私も para_edit.diff の本家合流実現に微力でも協力したいのですが、なにをすれば協力できるのか勝手がわかってません。&br; 1) 最新CVSに対する 差分を毎回提供すれば、喜ばれる? &br; 2) もうちょっとスマートな実現方法を考え出す? -- [[ari]] &new{2004-08-05 (木) 11:15:16};
-今まで、あまり興味なかったので、本気で考えていなかったのですが、機能は常にONにしておいて、編集用のリンクにclassを付けてCSSでON/OFFするっていうのもありですよね。CSSが切り替えられる環境であれば、利用者が機能をON/OFFできるし。見出し階層単位の編集(大見出し~大見出し、小見出し~小見出し方式)と任意見出し単位の編集の両方共リンクを作っておいて、好みの方をCSSで表示してやればよいのでは。ただ、paraedit使ったことが無く、上の議論を読んだだけなので、的外れかも。ちなみに、現在のCVS版にpatch当てようとしたら、edit.inc.phpがconflictしてダメでした。 -- [[三浦克介]] &new{2004-07-08 (木) 00:41:00};
-なるほど、そこでconflictをどうにかした、新しいパッチを作られるというのですね? :) などと言ってみるテスト。 -- [[henoheno]] &new{2004-07-08 (木) 19:28:42};
--そーですねー、暇があればねー。次期PukiWikiで本家合流できそうな目処が立てば、作ろうかと思います(ほんとか?)。 -- [[三浦克介]] &new{2004-07-08 (木) 22:56:41};
--最新CVSに対するパッチ(差分)を作るくらいなら、お手伝いできます。オプションで切り分けるヤツじゃなく、おおもとのパッチが最新CVSに対する差分になったものがあればいいですか?それとも1.4.3 に対する差分のほうがいいですか? -- [[ari]] &new{2004-08-05 (木) 11:15:16};
-今のタイミングであれば、1.4.4rc1に対する差分にされると、目印としてはっきりしている上に、今後の労力的にも(1.4.3よりは)良いのではないかと思います :) -- [[henoheno]] &new{2004-08-05 (木) 22:59:50};
--とりあえず作ってみました。 henohenoさんのスピードに追いつけてませんが、r1.4.4rc1 への差分です&br; &ref(para_edit-1.4.4rc1.diff); &br; 修正ファイルは &br; ・ ja.lng &br; ・en.lng &br; ・lib/html.php &br; ・lib/convert_html.php &br; ・plugin/edit.inc.php &br; ・plugin/menu.inc.php &br;おおもとの &ref(PukiWiki/1.4/ちょっと便利に/見出しごとの編集(fixed_anchor版)/para_edit.diff);  をベースに[[本家質問箱132>pukiwiki:続・質問箱/132]]のメニューには見出し編集を適用しないパッチも含めています。 -- [[ari]] &new{2004-08-16 (月) 12:41:06};
-お疲れ様でした :) -- [[henoheno]] &new{2004-08-23 (月) 20:54:25};
-r1.4.4rc2 への差分です &ref(para_edit-1.4.4_rc2.diff);  -- [[ari]] &new{2004-09-01 (水) 20:04:54};
-- この機能の取り込みがなされると私も嬉しいです。&br;かなりタイムリーにパッチが提供されたので、diffの内容を実際にあてて確認してみたのですが、ひとつ要望があります。このページでおおいに議論されていた「見出しのレベルによる範囲指定(大見出し~大見出しまで、小見出し~小見出) を実現させる部分」を切り替えるロジックを入れてもらえないでしょうか?元ネタは、ぱんだ さんのところの [[しろくろのへや:質問箱/74]](para_edit で見出しのレベルによる範囲指定)ページです。(すいません、上にあった para_edit_withoption.diff はまだ試してませんでした)-- [[jjyun]] &new{2004-09-01 (水) 22:59:54};
--みてみました。。ちょっと理解に時間がかかりそうです (^^; &br; ちらっと見た限り、オプションで切替えるのじゃなく、*の次の行にすぐに**などが来た時のみなどの判定で、その見出し全部という動きにしているのですかね?? &br; そういう方向で可能かどうかも考えてみます。。&br;でも、あまり期待しないでください。 (^^; -- [[ari]] &new{2004-09-02 (木) 18:17:31};
-menuページに限定せず、 #noparaedit のような ものをページに入れて それが有る場合は、見出し編集しないようにするというのはどうでしょう? -- [[merlin]] &new{2004-09-06 (月) 12:21:06};
-(merlinさんの提案を見て思ったのですが)先に提案させていただいた編集範囲の切替えが、(#wideparaeditのようなオプションをページに記述することで)ページ単位で動作を切替えられるならその方が幸せです。&br;ところで、見出毎の編集が終わったあとはページの先頭が表示されますが、編集した場所に飛んで欲しいとも思うのですがどうでしょう? -- [[jjyun]] &new{2004-09-06 (月) 19:40:12};
-ariさん、いつもありがとうございます。現状の「折り合い」に関する見解はこんな感じです。このパッチを取り込む前に、本体側に受け入れ態勢を作る必要があると考えています。誤解があればツッコミ歓迎です ;)  => [[開発日記/2004-09-07]] -- [[henoheno]] &new{2004-09-07 (火) 22:43:34};
--「折り合い」の見解は了解しました。あせらず、本体側の受け入れ態勢が整うまでこの件が陳腐化しないような行動&協力をしていきたいと思います。(^^;  -- [[ari]] &new{2004-09-09 (木) 13:12:53};
-r1.4.4 への差分です &ref(para_edit-1.4.4.diff);  menu.inc以外はrc2への差分 と全く同じです。 -- [[ari]] &new{2004-09-09 (木) 13:09:59};
-上の差分をほんの少しいじった程度なんですが、かなり前に、editのアイコンの鉛筆だけを切り出して作ったアイコンと、凍結時には、アイコンを表示しないようにしたものを、&ref(pw-1.4.4-paraedit.zip); で添付しておきました。もう、ぼちぼち、本体に取り込むっていうのは、どうですかね? -- [[upk]] &new{2004-09-16 (木) 00:26:24};
-こんにちは。すぐ上の話題や [[開発日記/2004-09-07]] をチェックしていただいているなら現状は「待ち」の状態だということは伝わっていますよね? ただ、それすら乗り越えたパッチがあるならばすぐです。誤解しているのであれば指摘して下さい。例えばその差分はpara-edit自体ののON/OFFができますか?その実現方法はHACKですか?複数のパッチに分けるべきものが分けられていますか?追加した要素を追加している場所は適切ですか?条件は時間ではなく質です(本体側のそれも含む) -- [[henoheno]] &new{2004-09-16 (木) 07:32:47};
-あと足りないのは、アイコンだけかなぁ、って思ってました。[[開発日記/2004-09-07]]は、チェックしていましたが失念していました。(つい最近なのに)失礼。read-only とSWの部分、ちょっと見てみますね。-- [[upk]]
-SW 機能を入れたのと、1つプラグインを作っていれてあります。&ref(pw-1.4.4-paraedit-2.zip); また、簡単に書きますが、以下の視点でテスト済です。
--認証は、閲覧・編集のそれぞれpagename,contents でのテスト。
--URLを覚えておき、readプラグインに変えてみたテストとか。
--文書凍結時の不整合の回避。
---凍結された文書で include プラグイン使用していると、読み込んだ文書の段落には、編集アイコンが出てしまいます。また、これに限った不整合ではなく、あのオベリスクのアンカーも、オリジナル文書となるので、根本的に include プラグインの設計思想の違いだという認識です。ということで、include プラグインに、これを回避する仕組み入れず、プラグインを1つ作ることで回避しています。(includeプラグインについては、これとは切り離したところで、議論すべきと思っています。)
--ということで、[[henoheno]]さんの対応部分の、穴確認テストを行った結果、穴は確認できませんでしたので、今回のパッチは、SWを追加した程度の結果となっています。--[[upk]] &new{2004-09-19 (日) 14:14:53};

-[[開発日記/2004-11-17]]、[[開発日記/2004-11-20]]にて、上記 pw-1.4.4-paraedit-2.zip に含まれている独立した要素を消化中です。 -- [[henoheno]] &new{2004-11-20 (土) 16:13:13};
-- edit inlineプラグインは一人前のプラグインとして作り直しました。paraeditのためのエスケープ処理も実装してあります。 -- [[henoheno]] &new{2004-11-20 (土) 16:14:58};
-- 凍結したページがincludeしたページが未凍結の場合、paraeditの編集アイコンは出ます。これは確かにそれぞれのプラグインの考え方の違いですね。回避方法については、setlinebreak プラグインをもっと抽象化させた set プラグインを用意して、そこに集約させるような方法はどうかと思っています。 -- [[henoheno]] &new{2004-11-20 (土) 16:17:53};
-- 明日にでも、パッチの残りの部分を一旦ここに返します。page=page#anchor ではなく page=page&id=anchor としている部分など、もう少し大掛かりに直したいと思う部分がありますので即コミットはできなそうです(もちろん現状でも立派に動作します :) )。 -- [[henoheno]] &new{2004-11-20 (土) 16:20:58};
-- para-editを有効にするとちょっと重くなりますが、is_freeze() を叩き直したくなりますね (^^; -- [[henoheno]] &new{2004-11-20 (土) 16:22:24};
--「複数行のプラグイン引数を可能に」のところでもコメントしましたが、抽象しすぎると(おそらく収拾がつかなくなるくらい)ハックされまくりますよ (^^; -- [[みこ]] &new{2004-11-21 (日) 22:13:43};
-- んー、変更できる変数はもちろん制限させるべきですが、そういうことでしょうか? (^^; -- [[henoheno]] &new{2004-11-21 (日) 22:34:31};
--オープンソースにおける制限なんてあって無きがごとし((あっと言う間に制限解除的なパッチがいかにもでそう (^^;>set ))ですからねぇ (^^; とくに、setでその制限を解除されるとあっという間に、wiki source(=コンテンツソース)が文書でなくてプログラムのソースコードのようになっちゃいますよ &huh; -- [[みこ]] &new{2004-11-22 (月) 00:08:03};
--  ちょっと改造で制限解除できるからアレだ、という方向は、setlinebreak  が存在する現時点ですでに終わっていると思いますよ (^^; 書き換えれば間違いなく別の変数を操作する用途に使えるでしょう。しかしそれ以前にプラグインシステムがあるから、とかそれ以前にPukiWikiがあるから、とかどんどん遡れそうです。杞憂かと思いますよ。 -- [[henoheno]] &new{2004-11-22 (月) 22:24:56};
-できたらこういう風にしたいな~って思ってたり。 -- [[Logue]] &new{2004-11-23 (火) 00:19:20};
#ref(見出し.gif,nolink)
-- これは「見出し2に属する文章」が肝でしょうか。「見出し2」を編集したいと思ったときに、その断片の中に見出し3を含めて欲しいということですか? -- [[henoheno]] &new{2004-11-23 (火) 09:51:28};
--そうなるとシステム的には、見出し1を編集する際には、常に通常編集と同じを意味するということかな? なら、欲しくないなぁ。 -- [[upk]] &new{2004-11-23 (火) 13:26:00};
-- 見出し1の上部に何か項目があるときや、見出し1と同レベルの見出しが見出し4の下にあるときは違うのでしょうね -- [[henoheno]] &new{2004-11-23 (火) 15:26:14};

-というわけで、[[開発日記]] で述べていたとおり、一旦パッチを返します &ref(paraedit_2004-11-23.tgz); 残っているのはパラグラフ編集の(現状の)根幹の部分と、paraedit_offプラグインだけです。現時点で最新のCVSにパッチを当てるだけで、すぐにparaeditが動く様になっています(paraedit_offは使いません)。 -- [[henoheno]] &new{2004-11-23 (火) 22:14:18};
-- 後は、page=pagename&id=anchor というスタイルをどうにか page=pagename#anchor という書き方に持っていけたなら、この戦いは終わると思っています。anchor_explode() で分解してやればいいと思っているのですが・・・ちょっとここで休憩 :) -- [[henoheno]] &new{2004-11-23 (火) 22:20:00};
-編集認証が必要なページの場合、Cookieを持っている人だけアイコンを表示ってことはできるでしょうか? -- [[sas]] &new{2004-11-25 (木) 06:26:00};
-paraeditオプションの例外事項の中にそれを盛り込んでみてください。 -- [[henoheno]] &new{2004-11-25 (木) 21:56:21};
-paraedit_2004-11-23 を 使って運用しているのですが、pentium 225 のマシン(sarge,apache2,php4.3.9)では重くて時間切れになります。((状況を確認してみます))-- [[merlin]] &new{2004-11-27 (土) 09:04:12};
--paraeditを切ると動くのですか? そうであるなら、ボトルネックと思われるis_freeze() にキャッシュを仕込んでみるのはいかがでしょう。書き直すのもアリ :) -- [[henoheno]] &new{2004-11-27 (土) 09:15:33};
--正確には編集後に時間切れになるページもあるということです。単に表示するだけの場合も重くなっているようです。大見出し 1 中見出し 7 小見出し 4 のページ表示時のPHP変換時間を paraedit=ON,paraedit=OFF,patch未適用で比較してみました。(単位秒です) -- [[merlin]] &new{2004-11-29 (月) 13:23:20};~
10%ぐらいづつ重くなっているような感じ。
|回数|ON|OFF|patch無し|h
|1|1.221|1.132|1.020|
|2|1.448|1.103|1.011|
|3|1.231|1.115|1.011|
|4|1.230|1.106|1.010|
|5|1.352|1.095|1.009|
|6|1.222|1.190|1.020|
|7|1.227|1.109|1.024|
|8|1.361|1.128|1.022|
|9|1.235|1.109|1.022|
|10|1.232|1.186|1.022|
|AVERAGE|1.276|1.127|1.017|
|patch無しに対する比率|1.25|1.11|1.0|
-- is_freeze() などが影響するのは表示時ですね。書き込み時に止まるというのであれば、paraedit込みの編集処理が重たいということだと思います :) -- [[henoheno]] &new{2004-11-29 (月) 23:15:25};
-- パッチを当てただけで遅くなるのは、「なかったことに :)」周りの豪華な処理が原因ではないかと思います。もう少し整理できると良いのですが。 -- [[henoheno]] &new{2004-11-29 (月) 23:18:22};
-ページ+アンカーにリンクを張るときに [[ページ名#アンカー]] と書けるわけなのでその延長線で編集リンクを作ることができるようにしたわけですが、その辺の違和感(統一感)はどうですか? -- [[henoheno]] &new{2004-11-29 (月) 23:21:27};
-[[merlin]]さん、もしまだ上の評価環境があるのなら、もうひとつ「素の1.4.4」のデータも追加していただけませんか? それで1.4.4を基準にすると良いと思います。 -- [[henoheno]] &new{2004-12-02 (木) 22:16:00};
-考えてみたら、この図の見出し3の部分は、>を使えば済む事だった。無視してください。まぁ、個人的には見出し1と見出し2の本文が同じ位置にあるのはなぁ・・・って考えていたんですけど、CVS版のスタイルシートで一応見出しごとにデザインが変えてあったので解決しました。インデントのためだけに<blockquote>使っていいのかなぁ。 -- [[Logue]] &new{2004-12-04 (土) 03:28:54};

**状態を保留にした後のコメント [#y308a502]
保留になった経緯は、[[現在のステータス: 冒険者向け、要見直し>#u0ca4899]] を参照

-これって結局は今どうなっているのでしょうか。結構期待している機能だけに心配・・・ --  &new{2005-03-19 (土) 11:45:23};
-今は「待ち」の状態なのかな? --  &new{2005-03-23 (水) 14:05:49};
-PukiWiki Plus! にて挙がった疑問に答える者がまだおりません。しかしこのまま捨て置くよりは苦しみを背負った方が良いでしょうね。 -- [[henoheno]] &new{2005-03-23 (水) 21:58:19};
--「PukiWiki Plus! にて挙がった疑問」って何ですか? --  &new{2005-04-09 (土) 07:52:20};
--- [[plus:BugTrack/12]] パラグラフ編集すると他の部分が消えてしまう。
-- 時には見切り発車も必要かと。実装してみないことには問題点も見つかりにくいでしょうし。 --  &new{2005-04-05 (火) 08:02:05};
-paraedit_2004-11-23で使用させてもらいましたが、tDiaryのタイトル置き換え部分の対応も必要ですね。 -- [[Yuu]] &new{2005-06-29 (水) 13:10:34};
--上の方をちゃんと見てくださいな --  &new{2005-06-29 (水) 19:01:11};
---完全に見逃してました。申し訳ないです。 -- [[Yuu]] &new{2005-06-30 (木) 13:06:03};
-[[BugTrack2/96]] アンカーIDの重複する可能性について --  &new{2005-07-24 (日) 18:38:19};

- paraedit_2004-11-23.tgzを、1.4.6に当てようとしましたが、機械的には当たらないようです。少し考えれば編集できるかもしれませんが頭が動いてないので、また後日。 -- [[coco]] &new{2006-05-09 (火) 03:11:25};
--- ウチのサイトで公開してるパッチなら当たると思います。お試しください。 -- [[okkez]] &new{2006-05-09 (火) 23:24:34};
- 手パッチで当ててたんですが、edit.inc.phpの仕様が変わったせいか一筋縄にはいかないようです。 --  &new{2006-05-13 (土) 16:32:26};
-- 少し待っててくださいな。元気があれば14日の晩には現CVS版に追従したパッチを出します。 -- [[okkez]] &new{2006-05-14 (日) 03:28:38};
-- 期待しております^^; --  &new{2006-05-17 (水) 03:21:14};
--- [[出しました>okkez:memo/改造/paraedit.diffについて]] 詳しいことはリンク先を参照してください。 -- [[okkez]] &new{2006-05-28 (日) 00:54:04};
--- ありがとうございました --  &new{2006-06-04 (日) 02:13:01};

- 次期バージョンには見出し編集も取り込むべきではないでしょうか?&br; 見出し編集を利用したいユーザはokkezさんのパッチもしくはparaedit.inc.phpを利用していると思いますが、中には設置技術が無いため諦めている方もいると思います。(現状、okkezさんのパッチやparaedit.inc.phpのファイルダウンロード先を見つける事はなかなか難しいのですが、それでも500件以上のダウンロードが行われているようです。)&br; 見出し編集が抱えている問題については初期設定を利用しないにして、利用する場合の注意点を記載したドキュメントを作ればとりあえずは良いと思います。&br; -- [[taru]] &new{2007-03-01 (木) 16:23:34};
- 見出し編集を取り込んでください。私は設置できない事も無いと思うのですが、修正箇所がちょっと多いミスなどが多そうなのが心配ですので設置を諦めている感じです。またココまで情報にたどり着くのもちょっと大変だったのです。ウィキペディアなんかをよく利用してると当然のごとく設置してあったりしてそういう機能が当然標準であるんだと思っていて標準でなかったのでカルチャーギャップを覚えました。 -- [[one]] &new{2007-03-28 (水) 13:11:03};
- 私も taru さんに賛成です。
--技術的なことをすべて理解しているわけではないのですが,taru さんがおっしゃるように,default では利用不可にして,利用者が自分で危険を判断した上で,利用できるようにしていただけると助かります。
--ただ,wiki 設置者と利用者が一致していない場合は,利用者側が安心して利用できないように思います。この問題は,aname プラグインのPLUGIN_ANAME_ID_MUST_UNIQUE を 1 として運用すれば,解決できないでしょうか? -- [[thinkingforest]] &new{2007-04-14 (土) 12:09:08};
- 実装するならPC/ケータイで独立したON/OFFが欲しい --  &new{2007-04-15 (日) 17:28:37};
- [[official:欲しいプラグイン/315]] ニーズは複数あるという話題 -- [[henoheno]]  &new{2007-10-13 (土) 20:14:21};
- 正直な所、見出し毎の編集を導入する場合、まず全ての見出しを編集出来るようになる事が先決で、それ以上の機能が必要なら、後から改造するなり何なりで良いんでないのかな、と思う次第。 --  &new{2007-10-16 (火) 07:00:44};
- [[plus:BugTrack/152]] : $id をエスケープせずに、正規表現パターンとして使っている、という話 --  &new{2007-11-10 (土) 13:32:33};
-- この件は上のdiffの話題かな --  &new{2007-11-11 (日) 01:21:18};

- 誰かが「大見出しから大見出しまで、小見出しから小見出しまで」に拘った事でグダグダになった感じだけれど、[[official:自作プラグイン/areaedit.inc.php]]使えば良いだけの話だったような? --  &new{2008-02-13 (水) 11:00:27};
-- それはプラグインだもの。違うもの。 --  &new{2008-02-13 (水) 22:29:18};
--- 何が違うん? --  &new{2008-02-14 (木) 22:43:36};
--- 便利さがもっとも違う点。一々コマンドを手で書かなければならないのは、一部の知っている者しかコマンドを書いてくれない。共同でWikiを作るには不便すぎます。どちらかが有るからもう片方は要らないということにはならないですね。 --  &new{2008-02-15 (金) 08:59:10};
-- 両者は併用可能なのだし、片方がプラグインならば、別にどちらかに絞る必要は無いような?&br;まして、見出し編集において必要なのは、まずは各見出し毎に編集出来る事。それに、「大見出しから大見出しまで、小見出しから小見出しまで」は、全てのページがそうでないとならないのか?という事を考えた場合、見出し毎に編集、という機能と比べると、遥かに用途が限られる事になるのでは?&br;まして、編集範囲を指定しようとする場合、プラグインである方が、余程使い勝手が良いのではなかろうか?&br;そう考えると、ここで「大見出しから大見出しまで、小見出しから小見出しまで」に拘った誰かさんは、引っ掻き回して方向性を見失わせただけ、と言えるね。&br;それから、「一部の知っている者しかコマンドを書いてくれない」と言う点に関しては、導入したプラグインを練習用ページなりに編集例を載せるとかして周知すれば良いだけでは?&br;編集例を載せるまでやらなくとも、最低限、プラグインマニュアルに追加するくらいはしない?&br;大体、使用箇所が限られている「大見出しから大見出しまで、小見出しから小見出しまで」を実現するコマンドを書くのに、どれだけの労力が掛かると言うんだか?&br;別に、各見出し毎に書かなくてはならないという程、頻繁に使う物ではないのだから、プラグインでも不便だとは思わないけれどね。 --  &new{2008-02-16 (土) 02:01:50};
--- ?なぜ「大見出しから大見出しまで、小見出しから小見出しまで」の仕様だと使用箇所が限られるのでしょう?全ページで使いますよ?頻繁に使うものではない?全ページで使いますよ?ただ2つの仕様が提案されていて、その2つを両方実装、どこかの設定で好きなほうを選択すればOKだっただけでしょう。ちなみに PukiWiki Plus! には両方の仕様が実装されており、設定で切り替えられるようになっています。つまり段落編集が実装されなかった経緯は「大見出しから大見出しまで、小見出しから小見出しまで」を要望した人が悪いわけではなく、中の人が働かなかったに尽きます。「ユーザは要望を出さないでください」なんていう主張はわけがわからないですよ。そんな主張をして何をどうしたいのでしょう? --  &new{2008-02-16 (土) 08:16:27};
--- プラグインは使い方によっては便利ですが、便利さの頻度が違うでしょう。見出し編集は私を含め、多分、多くの大きめのページを作る方は毎回使いますが、同様ことを実現するのにareaeditコマンドを毎回かかせるのは見出し編集に比べて不便なのです。areaeditは気が向いた箇所(例えば表のセル)に使うのが便利なのであって、定常的に必要な場面では不向きです。それを性善説的に周知してやらせるというのは困難だとおもいますが。 --  &new{2008-02-16 (土) 10:32:23};
-- ところで MediaWiki の部分編集は 「大見出しから大見出しまで、小見出しから小見出しまで」 ですよね。 --  &new{2008-02-16 (土) 08:32:59};
-- 元々は、「見出し編集を標準実装するか否か」という話だったのに、「大見出しから大見出しまで、小見出しから小見出しまで」に拘った連中が大暴れしたお蔭で話が摩り替わってしまった。&br;その結果、見出し編集の標準実装自体も、まとめて見送られてしまう結果になってしまった。&br;見出し編集を標準実装してもらいたかった人間からすると、不満以外の何者でも無い。つまり、そういう事。 --  &new{2008-02-16 (土) 19:19:48};
--- まず、不満を聞いたからといって何がどうなるわけでもないのでスルーをしてもいいのですが、そもそも「大見出しから大見出しまで、小見出しから小見出しまで」の要望のおかげて止まったわけではないですよ。[[開発日記/2004-11-17]] [[開発日記/2004-11-20]] [[開発日記/2004-11-23]] [[開発日記/2004-12-12]] 別にそんなことは書いてないですよね?単純に実装があまりうまくなかったので取り込んでなかったのだと思います。引用:「# paragraph-edit: 実装の根本的な部分に色々気になる点が残っており、微妙。」 --  &new{2008-02-21 (木) 10:06:44};
- [[okkez:memo/改造/paraedit.diffについて]] にアクセスできなくなっていますね。(一時的?)&br;1.4.7_notb 用や、CVS版向けのパッチとかも、載っていたように記憶していますが。 --  &new{2009-03-26 (木) 21:07:42};
-- InterWikiName を移転先に修正したので、アクセスできるようになっているはず。 --  &new{2009-05-03 (日) 14:44:12};
- ibpmDtvg -- [[fkypidgh]] &new{2014-11-13 (木) 14:35:23};

#comment


-------------------
** PukiWiki Plus! [#vb8e649a]
-ありゃ(^^; ちょうどタイムリーにはいっちゃった(^^; 本家に合流できない機能を公開してみました。[[PukiWiki Plus!>http://pukiwiki.cafelounge.net/plus/]] -- [[みこ]] &new{2004-08-05 (木) 13:50:54};
-動く環境というのは素晴らしいですね。三浦さんのWikiFarm叩き台もそうでしたけれど、動くからこそ、広く様々な利用者に理解を促す(機能のアピールでも何でも)事ができると思います。 -- [[henoheno]] &new{2004-08-05 (木) 23:03:05};
-こっそり Plus! にはマージの上 公開しました(r2004-09-18) (^^; ついでにアドレスも変更。 -- [[みこ]] &new{2004-09-18 (土) 09:21:07};

//#comment


-------------------
** pukiwiki-1.4.7_notb 用パッチ [#d113b144]

- pukiwiki-1.4.7_notb 用に、fixed_header_anchor_edit を利用したブロック単位機能を有効にするパッチを作成しました。自サイトにおいてありますのでよろしければどうぞ。[[パッチおよび説明へ>http://infobsession.net/wiki/index.php?PukiWiki%2F%C0%BD%C2%A4%CA%AA%2FParaEdit]] ( 見出しブロック単位での編集に関する現状がいまいち不明だったのですが、fixed_header_anchor_edit 版で pukiwiki-1.4.7_notb に対応したものが見つかりませんでしたので作成しました。paraedit.inc.php は使えるのかな?) -- [[ryu1k]] &new{2009-03-21 (土) 20:46:34};
-- コメントありがとうございます。説明もあり、diff -u もあり、問題点にも触れられており、とてもいい仕事の気配を感じます。その一方で、大きな問題点は当時のまま残っていそうである様にも見えます。こうしたパッチについて、以前は下記3~4あたりの領域で工夫が足りなかったのでそれらを避けた気がしますが、もし可能であれば「将来/本来どうあるべきか」について、ご意見いただければ幸いです。 -- [[henoheno]] &new{2009-03-25 (水) 00:47:44};
--- (1) ParaeditId: という部分にはどんな意図がありますか?
--- (2) インデントの手段についてタブと半角スペースが混在(略)
--- (3) はしばしに(ページを全部読む、といった)重たい処理を挿入する事になってしまいそうですが、何かうまい手は無いでしょうか? ((重たい部分ですよね))
--- (4) この機構には暗にanchor idの保護機構や標準エラー出力機構のようなものを要求している様にも見えますが、どうお考えになりますか? ((かなり重たい部分ですよね))
//--- (5) 内容については省略((Extraceとは))

-- 早速の反応ありがとうございます。また、日々メンテお疲れ様です。PukiWiki には、個人的にも社内業務でも大変助けられております。以下、とりあえずの返答です。 [[ryu1k]] -- 2009-03-26
--- (1) 消してもよいものです。パッチ管理のため Subversion を内部的に利用しており、その $Id$ を表示していたのですが、パッチ生成時にリビジョンが消えてしまいました。PukiWiki 自身の $Id$ が  $_Id$ とされ、日時情報などが変更されずに保存されているのもパッチ管理上の都合です。仮に、3, 4 などの課題がクリアされるなどして PukiWiki 本体へのマージが可能となるのであれば、消されるべきものです。
--- (2) 公開優先、本体への取り込みをとりあえず想定してなかった、php は年に数回も書かないので emacs の設定が。・・・(略)。言い訳はさておき、修正しておきます。
--- (3), (4) このパッチの元となった para_edit.diff が過去の PukiWiki においてとりあえず動作していたことをよいことに、1.4.7_notb に適用するための最低限の修正だけを行い、無批判に取り込んでいます。なのでこの場ではコメントできません。検討してから再度コメントさせてください。時間がかかるかもしれませんがその点はできれば気長にお待ちいただけるとありがたく思います。
//--- (5) 半ば言い訳ですが、これも para_edit.diff にあったもので、おそらく Extract の typo かと。
--- (6) 実装上の潜在的な問題点として、編集対象を指定するために form で利用している識別子((name属性に日本語、英語などの特別な呼称はあるんでしょうか。RFC に CGI の仕様でもあればそこに書いてあるかな?))に "id" という、他の場所で使われていても不思議ではない短い識別子が利用されています。((使っているプラグインがあれば、それはそれでお行儀がよろしくないと思いますが))仮に他のプラグインで "id" が利用され、その "id" の値が存在する anchor id と一致した場合、ユーザーの想定しない形で当該ブロックが編集されてしまう可能性があります。この点については form での識別子の変更のみで問題が軽減されますので、早めに修正したいと考えています。もし、既存のプラグインなどで id を識別子に利用しているものがあれば教えていただければと思います。併用に関して注意喚起が出来ると思いますので。
- (6) の問題があまりわからない。form が入れ子になったりしていない限り、
  <form action="$script" method="post" style="margin-bottom:0px;">
   <input type="hidden" name="cmd"    value="edit" />
   <input type="hidden" name="page"   value="$s_page" />
   <input type="hidden" name="digest" value="$s_digest" />
   <input type="hidden" name="id"     value="$s_id" />
  </form>
は、「$script&cmd=edit&page=$s_page&digest=$s_digest&id=$s_id」と同じ((本当は、get メソッドじゃなくてpost メソッドですし、変数は展開されるのですが、見やすくするためにそうしてあります)) になると思うのですが。&br;comment プラグインを1つのページに複数置いても動きますし。(((オプションやどのページの何番目かを示す)value の値が違うだけで、name の値が同じform が複数ある場合の例)) --  &new{2009-03-26 (木) 18:31:03};

- [[ryu1k]] : (6) についてコメントどうもです。ただ、どうも意図が伝わっていないようにも思えます。あるいは、問題が実際には発生し得なく私の勘違い、または杞憂なのかもしれません。以下にもう少し詳しい説明を試みます。
-- まず、現在のブロック編集機能は "id" を、単に編集対象ブロックの識別子としてのみではなく、現在のリクエストがブロック編集モードであるか否かの判別にも利用します。
-- また、ページ編集機能を持つプラグイン(のほとんどか全て)はおそらく page, digest をパラメータとして利用すると思われます。
-- 仮に、そのプラグインが内部で、または直接に cmd=edit を呼び、anchor id を用いたブロックの置換とは異なる目的で "id" を識別子として利用し、さらに、それが(偶然であっても) anchor id と一致した場合、利用者の意図しないところで当該の anchor をもつブロックが編集(実質的には更新)されることになるのではないかと思います。
-- 言い換えると、例えば、「$script?cmd=hoge&page=$s_page&digest=$s_digest&foo=$var&hoge=$fuga&id=$s_id」となって、hoge が内部にて edit を呼び出し、$s_id に一致する anchor id が存在した場合、当該の anchor id をもつブロックが更新されます。
-- なお、edit.inc.php 内部では form の id を $vars["id"] として参照しています。
-- この状況にならないためには以下のような条件のいずれかが満たされていれば良いと思います。
+++ plugin のシステム的にこのような事象は発生しえない
+++ ブロック編集機能は (Puki)Wiki の基本的な機能なので、id は edit.inc.php のブロック編集機構が利用しても良い。("id" は非常に短く、広い意味を持たせうる識別子ですので、その利用はある種の特権を行使しているように思います。なお、意味の面から見れば、"id" という識別子は適切だと思います。)
-- また、単純に、広域で参照されうる識別子は短かすぎると危険、というのが私の基本的な感覚としてあるので、長くしても問題ない識別子ならば、ある程度長くし名前空間を明確に分割しておきたい、と、感じます。(通信量=通信料に直結するのであまりに長いのもどうかとは思いますが、もうちょっと長くても、と。)
- editが$vars['id']を利用する仕様にするのであれば、上記のようなケースはプラグインhogeがeditを呼ぶ際にidを渡すかどうか判断して処理するべきでしょう。offidialに仕様を決めるのが早ければ早いほど、ユーザー(&その他の開発者)にとって有利になるでしょう。なので見出し編集を実装しても問題ないでしょう。((つまり、現状発生しない不安事項のために実装を遅らせている現状は自分にとっては不便だなぁ、と。そのせいで、というか、そのおかげで、というか、派生したシステムが出来てきていますが。)) -- [[ぃぉぃぉ]] &new{2009-03-28 (土) 16:50:08};
- ぃぉぃぉさんのコメントから(ありがとうございます)、私の心配は完全な杞憂ではない、と、とりあえず判断します。その場合、((PukiWiki での、こういった、影響が大きい仕様の決定過程を知らないのですが)) fixed_heading_anchor_edit を利用する人にコストを払ってもらうという意味で、私としては、$vars['edit_tgt_id'] など、$vars['id'] ではない識別子をブロック編集が有効であるか否かを判別するキーとする実装としたいと思います。edit_tgt_id 自体の値を id とするかについては、上のほうで henoheno さんが、「page=pagename&anchor=anchorid」があまりイケてない「page=pagename#achorid」の法が良い、と書いていらっしゃったりするので、議論や皆さんのアドバイスで変わるかもしれません。場合によっては、id の指定は上記のうち後者の形式を取り、さらに、'&anchor_edit=[1|0]' のような、ブロック編集が有効か否か(または'&edit_mode=[0-3]'などとして、編集モード)を明示するような変数を追加するほうが適切もしれません。 -- [[ryu1k]] &new{2009-03-28 (土) 17:49:45};
- 1.4.7版がダウンロードできなくなっているようですが、もうパッチあてはできませんか? -- [[匿名]] &new{2016-05-08 (日) 20:12:41};
- 1.5.2にこちらの機能を盛り込んで欲しいです -- [[poison]] &new{2017-11-15 (水) 10:40:51};
-- こちら、完全に忘れてました。今なJavaScriptを使ってうまいこと出来ないかなぁと考えてはいました。いい手があるかな… -- [[umorigu]] &new{2017-11-15 (水) 22:21:29};
- このページや公式ページの「自作プラグイン/paraedit.inc.php」からリンクされている「taruのメモ帳ページ - リンク切れ・消失 自作プラグイン」を参考に、paraeditプラグインをPHP 7.1上のPukiWiki 1.5.1に組み込んで、見だし編集が無事に使えるようになりました。 -- [[いち]] &new{2018-03-07 (水) 11:54:00};
- ただ、プレビューは全ページが対象で、その際また再編集しようとした時も全ページ編集になってしまい使いづらかったので、同様な機能のある別のプラグイン「secedit.inc.php」を組み込んだところ、見出し編集と部分プレビューができるようになりました。 -- [[いち]] &new{2018-03-07 (水) 12:01:50};
- ただしphp7.1上ではこのままだと動かなかったので、「secedit.inc.php」の48行目、172行目、210行目の「= &new」を「= new」に修正すると動きました。 参考になるかどうか分かりませんが、報告します。  -- [[いち]] &new{2018-03-07 (水) 12:02:40};
- 「secedit.inc.php」プラグインのページpukibook.osdn.jp:80/?secedit.inc.phpは消失していたためインターネットアーカイブから、ファイル自体はja.osdn.net/projects/pukibook/releases/37320からダウンロードしました。うまく投稿できず、連投になってしまいすみません。 -- [[いち]] &new{2018-03-07 (水) 13:07:03};
- そろそろ1.5.3に更新しようと思いますが1.5.3では標準でできますでしょうか -- [[見だし編集機能を本体に組み込んで欲しい]] &new{2021-07-10 (土) 11:50:46};
-- このあたり1.5.3でも変更ありません -- [[umorigu]] &new{2021-10-31 (日) 11:39:51};
- 1.5.4でできるようになると嬉しいです!!! -- [[PuKiWiKi]] &new{2022-03-05 (土) 14:23:23};
- 出来たらseceditの方でお願いしたいです。 -- [[K]] &new{2022-03-06 (日) 16:10:07};
- すみません。 1.5.4 には間に合わなさそうです。 secedit ってどこにあるプラグインでしょうか? -- [[umorigu]] &new{2022-03-22 (火) 01:20:04};
- seceditに関しては少し上のいち氏のコメントでダウンロード先や導入、paraeditとの違いに関して触れられています。 -- [[kanateko]] &new{2022-03-22 (火) 23:06:04};
- 1.5.5で組み込みたいと考えてますが、デフォルト設定は有効でpukiwiki.ini.phpでの有効/無効の切り替えが可能だとよさそうです。 -- [[はいふん]] &new{2023-09-19 (火) 21:15:50};
- bugtrack_585_seceditという名前のブランチを作成してseceditをphp8へ対応させてその他設定項目なども追加し、コミットしてみました。 -- [[はいふん]] &new{2023-09-20 (水) 16:54:13};
-- 次バージョンで組み込むのか私が決めていいのかわかりませんので他のコミッターさんの判断のもと、1.5.5リリース前あたりでマージするかもしれません -- [[はいふん]] &new{2023-09-20 (水) 16:58:17};
-- 見出し編集seceditプラグインについては [[official:Plugins]] にもありませんし、オリジナル作者からのリクエストでもないですし、取り込むのは難しいです。そもそも、外部プラグインの取り込み自体、2005年リリースの1.4.5以来行っていません。サーバー側ロジックは変更せずにJavaScriptで動作するようなロジックであれば取り込みやすいとは思いますが、どうでしょうね -- [[umorigu]] &new{2023-11-03 (金) 14:22:45};
-- paraeditとseceditはライセンス的には組み込んでも問題ないですが、プラグインのファイルが存在する場合にプラグインを読み込んで動作するように本体改造を不要にするのはどうですか? -- [[はいふん]] &new{2023-11-21 (火) 12:59:39};
- 「プラグインのファイルが存在する場合にプラグインを読み込んで動作するように本体改造を不要にする」はよいアイディアと思います。それを可能にする仕組みは考えてみてください。スパムフィルタもその仕組みがいいんじゃないかと考えていました [[BugTrack/2454]] -- [[umorigu]] &new{2023-11-23 (木) 01:46:09};
-- 「プラグインのファイルが存在する場合にプラグインを読み込んで動作するように本体改造を不要にする」はよいアイディアと思います。それを可能にする仕組みは考えてみてください。スパムフィルタもその仕組みがいいんじゃないかと考えていました [[BugTrack/2454]] -- [[umorigu]] &new{2023-11-23 (木) 01:46:09};

#comment

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 8.2.12. HTML convert time: 0.030 sec.

SourceForge