PukiWiki Advanceプロジェクトにマージされました。

PukiWiki Advanced Skin Project

PukiWiki Advとは?

PukiWikiの仕様を超えない範囲(本体改造しない)でajaxなどといった最新のWeb技術を極限まで取り入れるプロジェクトです。現在の所フレームワークにjQuery+jQueryUIを用いていますが、将来的にはdojo+dijit、Ext(煎茶)などをベースとしたスキンなどを使うことも考えています。

現在の仕様

動的書き換え
すべて、jQueryによるイベント割り当てを上書きで行っているため、JavaScript無効でも影響がありません。言い換えると特殊なタグなどを使っていないため、本体改造が不要である上、SEOになんら影響を与えません。
ポップアップ目次
Plus!でおなじみのポップアップ目次機能です。/キーを押すとページの見出し一覧が表示されクリックするとその場所へ移動します。
ページ内ダイアログ
ソースやバックアップ、検索画面などをjQuery UIを用いたページ内ダイアログで表示します。ページ遷移によるストレスを減らすことができます。
スムーズスクロール
jQuery.scrollToを用いたスムーズスクロールです。しかも、リンクした先の要素がハイライトします。アドレスが#で汚れることがありません。
tablesorterによるテーブルソート機能
テーブルが使用されているページで、ヘッダーが指定されている場合はヘッダー部分をクリックすると項目別に自動的にソートします。なお、テーブルソーと機能を使う場合は以下のようにテーブルを指定する必要があります。
|~項目1|~項目2|h // <- 末尾にhを入れてヘッダーとする
|値1|値2|
|値3|値4|
画像にリンクが貼られていた場合インラインダイアログで表示
インラインダイアログによる画像表示を行います。画像の大きさに応じてウィンドウがアニメーションしながらリサイズします。
画像の遅延ロード
画像を一度に読み込むのではなく、ページがスクロールしたときに画像を読み込みます。これによりサーバーへの負荷が減るだけでなくクライアントの描画も軽くなります。
ツールチップ拡張
ツールチップがなめらかに動きます。
パスワードのcookie保存
FireFoxで閲覧したようにパスワードをcookieに保存します。
Webkit系ブラウザ(Safari、Chrome)でも入力補助(Plus!のみ)
Webkit系ブラウザでも、リアルタイムエディットが使えます。
テキストエリアリサイズ
テキストエリアの高さを調整できます。(現在はtextarearesizerを使用していますが、容量の兼ね合いからjQueryUIのリサイザに変更する予定です)
多言語対応
Plus!の特徴の一つで有る多言語化をさらに推進し、より柔軟に言語を追加できるようにします。(Plus!の現仕様の場合、JavaScriptで指定する言語は、文章がすべて定義されていないとエラーになります。)

今後の予定

jQueryの場合は概ねjQuery UIに準拠、dojoの場合は、dijit+dojoxに準拠したものになります。

swfuploadによるファイルアップロード
ページを移動することなく複数のファイルをアップロードできるようになります。JavaScript無効時は通常の添付フォームが表示されます。
編集画面拡張
Plus!でなくてもリアルタイムプレビュー以外の機能が使えるようにします。
PukiWiki/Plus!クロスコンパチブル
PukiWikiとPlus!で修正なしでネイティブで使用可能にします。PukiWIki本家に含まれないPlus!依存のコードは分割し、読み込まないようにします。
jQTouchによるiPhone Safari/ Android Chrome(モバイル向けWebkit系ブラウザ)対応
treeviewをマージ
編集画面をmarkItUpを使ったものにする。将来的にはjQuery UIのToolbar(dojoの場合、dijit.toolbar)
すでにクラブスキンで実装済み。Plus!標準のエディッタよりも使い易いと思う。+添付ファイル選択画面を用意。