「利用者:No.name2/tablesort」の版間の差分

提供:エケペディア
ナビゲーションに移動 検索に移動
(MediaWiki:Gadget-tablesort.jsのテストページ)
 
(説明文を若干修正)
 
(他の1人の利用者による、間の2版が非表示)
1行目: 1行目:
このページは、[[MediaWiki:Gadget-tablesort.js]]用のテストページです。
[[MediaWiki:Gadget-tablesort.js]]は、MediaWiki標準のソートライブラリの読み込みを阻止して、
[http://mottie.github.io/tablesorter/docs/ tablesorter]によるソートを実行するガジェットです。


; 概要
; tablesorterで使用できるようになる機能
Gadget-tablesort.jsは、MediaWikiのソート用スクリプトより先に読み込まれる事で、各セルのdata-sort-valueを補完し正しくソートされるようにします。
* data-lockedorder - 昇順・降順の固定[http://mottie.github.io/tablesorter/docs/example-options-headers-locked.html]
* rtクラス要素({{[[テンプレート:ルビ|ルビ]]}}が作成する要素)を基に濁点・半濁点・スペースを除去してdata-sort-valueを生成します
* data-empty - 空白セルの並び位置を指定[http://mottie.github.io/tablesorter/docs/example-option-sort-empty.html]
* <code>data-sort-type="date"</code>では、「XXXX年XX月XX日」形式の記述でdata-sort-valueを生成します
* data-string - 数値によるソートで文字列のセルをどう扱うか[http://mottie.github.io/tablesorter/docs/example-options-headers-digits-strings.html]
* ソート・ルールの拡張 - [[#カタカナ・濁音を含むソートキー]]


; TODO
; tablesorterで使用できなくなる機能
* 「colspan」「rowspan」を使用した表で正しい列を認識しない為、適切な処理がされない可能性がある
* 複数行のヘッダー - ソートボタンを表示させないようにするには、各セルまたは行にunsortableを指定しなくてはいけません
* 長音を処理するかどうか
 
'''再実装''': 標準のソートライブラリで独自実装された機能が無効となる為、いくつかの機能を再実装しています。
* unsortableクラス - tr要素でのunsortable指定に追加対応
* sortbottom
* data-sort-type(<code>number</code>のみ)
* data-sort-value
 
== カタカナ・濁音を含むソートキー ==
カタカナ・濁音・半濁音を清音(ひらがな)として評価させる事で、{{[[テンプレート:ルビ|ルビ]]}}によるソートをDEFAULTSORTに似たソート順にします。
* 長音を変換しないため、完全なDEFAULTSORT相当となりません


; サンプル
{| class="wikitable sortable" style="text-align:center;"
{| class="wikitable sortable" style="text-align:center;"
! class="unsortable" |
! class="unsortable" |
! DEFAULTSORT
! DEFAULTSORT
! <nowiki>{{ルビ}}</nowiki>
! <nowiki>{{ルビ}}</nowiki>
! data-sort-type="date" | 昇格
! <nowiki>{{年月日}}</nowiki>
|-
|-
| [[ファイル:2013年AKB48プロフィール 兒玉遥.jpg|50px]]
| [[ファイル:2013年AKB48プロフィール 兒玉遥.jpg|50px]]
| こたまはるか
| こたまはるか
| {{ルビ|[[兒玉遥]]|こだま はるか}}
| {{ルビ|[[兒玉遥]]|こだま はるか}}
| 2013年4月28日<br>(兼任発表)
| {{年月日|2013|4|28}}<br>(兼任発表)
|-
|-
| [[ファイル:2013年AKB48プロフィール 小林茉里奈.jpg|50px]]
| [[ファイル:2013年AKB48プロフィール 小林茉里奈.jpg|50px]]
| こはやしまりな
| こはやしまりな
| {{ルビ|[[小林茉里奈]]|こばやし まりな}}
| {{ルビ|[[小林茉里奈]]|こばやし まりな}}
| 2012年6月24日
| {{年月日|2012|6|24}}
|-
|-
| [[ファイル:2014年AKB48プロフィール 後藤萌咲.jpg|50px]]
| [[ファイル:2014年AKB48プロフィール 後藤萌咲.jpg|50px]]
| ことうもえ
| ことうもえ
| {{ルビ|[[後藤萌咲]]|ごとう もえ}}
| {{ルビ|[[後藤萌咲]]|ごとう もえ}}
|
| {{年月日}}
|-
|-
| [[ファイル:2013年AKB48プロフィール 小林香菜.jpg|50px]]
| [[ファイル:2013年AKB48プロフィール 小林香菜.jpg|50px]]
| こはやしかな
| こはやしかな
| {{ルビ|[[小林香菜]]|こばやし かな}}
| {{ルビ|[[小林香菜]]|こばやし かな}}
| 2006年4月1日<br>(チームKお披露目)
| {{年月日|2006|4|1}}<br>(チームKお披露目)
|-
|-
| [[ファイル:2013年AKB48プロフィール 込山榛香.jpg|50px]]
| [[ファイル:2013年AKB48プロフィール 込山榛香.jpg|50px]]
| こみやまはるか
| こみやまはるか
| {{ルビ|[[込山榛香]]|こみやま はるか}}
| {{ルビ|[[込山榛香]]|こみやま はるか}}
| 2014年2月24日
| {{年月日|2014|2|24}}
|-
|-
| [[ファイル:2012年AKB48プロフィール サイード横田絵玲奈.jpg|50px]]
| [[ファイル:2012年AKB48プロフィール サイード横田絵玲奈.jpg|50px]]
| さいいとよこたえれな
| さいいとよこたえれな
| {{ルビ|[[サイード横田絵玲奈]]|サイードよこた えれな}}
| {{ルビ|[[サイード横田絵玲奈]]|サイードよこた えれな}}
|
| {{年月日}}
|-
|-
| [[ファイル:2013年AKB48プロフィール 佐々木優佳里.jpg|50px]]
| [[ファイル:2013年AKB48プロフィール 佐々木優佳里.jpg|50px]]
| ささきゆかり
| ささきゆかり
| {{ルビ|[[佐々木優佳里]]|ささき ゆかり}}
| {{ルビ|[[佐々木優佳里]]|ささき ゆかり}}
| 2013年4月28日
|}
| {{年月日|2013|4|28}}
 
== sortmiddleクラス・sorthiddenクラス ==
「sortmiddle」「sorthidden」は独自クラスであり、ガジェットなしでは動作しないため「sortbottom」を合わせて指定する事を推奨します。
* sorthiddenクラスを持つtr要素は、ソート後に削除されます
* sortmiddleクラスを持つtr要素は、ソート後も初期位置を保持します
* sortmiddle > sorthidden > sortbottom の順で優先されます
 
{| class="wikitable sortable" style="text-align:center;font-size:90%;"
! # !! A !! B !! C
|- class="sorthidden"
! colspan="4" | sorthidden
|-
| 1 || 1 || 10 || 5
|-
| 2 || 3 || 2 || 10
|- class="sortmiddle sortbottom"
! colspan="4" | sortmiddle + sortbottom
|-
| 3 || 2 || 4 || 8
|-
| 4 || 5 || 9 || 4
|-
| 5 || 9 || 1 || 2
|- class="sortbottom"
! colspan="4" | sortbottom
|-
| 6 || 8 || 3 || 1
|-
| 7 || 7 || 5 || 9
|- class="sortmiddle"
! colspan="4" | sortmiddle
|-
| 8 || 4 || 6 || 3
|-
| 9 || 6 || 8 || 7
|-
| 10 || 10 || 7 || 6
|}
|}

2014年4月15日 (火) 18:12時点における最新版

MediaWiki:Gadget-tablesort.jsは、MediaWiki標準のソートライブラリの読み込みを阻止して、 tablesorterによるソートを実行するガジェットです。

tablesorterで使用できるようになる機能
tablesorterで使用できなくなる機能
  • 複数行のヘッダー - ソートボタンを表示させないようにするには、各セルまたは行にunsortableを指定しなくてはいけません

再実装: 標準のソートライブラリで独自実装された機能が無効となる為、いくつかの機能を再実装しています。

  • unsortableクラス - tr要素でのunsortable指定に追加対応
  • sortbottom
  • data-sort-type(numberのみ)
  • data-sort-value

カタカナ・濁音を含むソートキー

カタカナ・濁音・半濁音を清音(ひらがな)として評価させる事で、{{ルビ}}によるソートをDEFAULTSORTに似たソート順にします。

  • 長音を変換しないため、完全なDEFAULTSORT相当となりません
DEFAULTSORT {{ルビ}}
2013年AKB48プロフィール 兒玉遥.jpg こたまはるか 兒玉遥 こだま はるか
2013年AKB48プロフィール 小林茉里奈.jpg こはやしまりな 小林茉里奈 こばやし まりな
2014年AKB48プロフィール 後藤萌咲.jpg ことうもえ 後藤萌咲 ごとう もえ
2013年AKB48プロフィール 小林香菜.jpg こはやしかな 小林香菜 こばやし かな
2013年AKB48プロフィール 込山榛香.jpg こみやまはるか 込山榛香 こみやま はるか
2012年AKB48プロフィール サイード横田絵玲奈.jpg さいいとよこたえれな サイード横田絵玲奈 サイードよこた えれな
2013年AKB48プロフィール 佐々木優佳里.jpg ささきゆかり 佐々木優佳里 ささき ゆかり

sortmiddleクラス・sorthiddenクラス

「sortmiddle」「sorthidden」は独自クラスであり、ガジェットなしでは動作しないため「sortbottom」を合わせて指定する事を推奨します。

  • sorthiddenクラスを持つtr要素は、ソート後に削除されます
  • sortmiddleクラスを持つtr要素は、ソート後も初期位置を保持します
  • sortmiddle > sorthidden > sortbottom の順で優先されます
# A B C
sorthidden
1 1 10 5
2 3 2 10
sortmiddle + sortbottom
3 2 4 8
4 5 9 4
5 9 1 2
sortbottom
6 8 3 1
7 7 5 9
sortmiddle
8 4 6 3
9 6 8 7
10 10 7 6