1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PukiWikiAdvent Calendar 2024

Day 4

Better Editを久々に修正して公開した話

Posted at

はじめに

今年にPukiWiki標準プラグインであるedit.inc.phpを改良してbetter_edit.inc.phpを開発したのだが、WikiChree.COMでしか動かないシステムとなっていたため、誰でも使えるように久しぶりに修正してみました。

このプラグインは、WikiChree.COM用にPukiWikiの編集画面を便利にしたいので作ったものでそれを改善して配布できるようにした感じです。利用するには少しだけPukiWiki本体改造をする必要があります。

image.png

プラグインの特徴

  1. プレビューのタブ化
    プレビューをタブで切り替えられるように

  2. 添付ファイルのD&D/Ctrl+V対応
    ファイルをドラッグ&ドロップしたり、クリップボードにある画像をCtrl+Vでそのまま貼り付けてページへ添付できるように

  3. 添付ファイル一覧の表示
    ページ内にある添付ファイルを一覧で確認できるように

導入方法

  1. 上記リンクからプラグインをDL
  2. PukiWikiのpluginフォルダに突っ込む

それだけ! ではなくて、このままじゃ編集ボタンを押してもデフォルトの編集画面になるので以下のように変更しなければならない

  • lib/html.php 59行目
lib/html.php
-	$_LINK['edit']     = "$script?cmd=edit&page=$r_page";
+	$_LINK['edit']     = exist_plugin("better_edit") ? "$script?cmd=better_edit&page=$r_page" : "$script?cmd=edit&page=$r_page";

  • lib/make_link.php 896行目
lib/make_link.php
		// Dangling link
		if (PKWK_READONLY) return $s_alias; // No dacorations
		$symbol_html = '';
		if ($_symbol_noexists !== '') {
			$symbol_html = '<span style="user-select:none;">' .
				htmlsc($_symbol_noexists) . '</span>';
		}
-		$href = $script . '?cmd=edit&amp;page=' . $r_page . $r_refer;
+		$href = $script . '?cmd=' . (exist_plugin("better_edit") ? "better_edit" : "edit") . '&amp;page=' . $r_page . $r_refer;
		if ($link_compact && $_symbol_noexists != '') {
			$retval = '<a href="' . $href . '">' . $_symbol_noexists . '</a>';
			return $retval;
		} else {
			$retval = '<a href="' . $href . '">' . $s_alias . '</a>';
			return '<span class="noexists">' . $retval . $symbol_html . '</span>';
		}

最後に

時間があったらいろいろな機能を付け加えたいと思ってたりします。

リアルタイム編プラグインとか作ったことあるんですけど入力時、毎回サーバーからプレビュー結果を取得するのでサーバーの負荷が多いかなって感じで。
なのでJavaScriptで擬似的にプレビューできたらいいなぁとか思ってたりします。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?