大阪国際大学では、Moodle の全利用者のフリガナおよび英字綴りを登録し、fullname 表示の際はそれらを全て表示していたのですが、あまりにも表示が長すぎて可読性が落ちていました。
そこで、ルビ表示 (傍字表示) がなされるように (そして英字綴りが緑で表されるように) 改変してみました。
改変部分 (lib/moodlelib.php) は以下の通りです。patch も添付します。ただし、汎用性が非常に低い、美しくない改変です。
--- moodle/lib/moodlelib.php Thu Jan 08 19:00:28 2015
+++ moodle/lib/moodlelib.php Fri Jan 09 18:24:47 2015
@@ -3657,6 +3657,15 @@
// Trimming $displayname will help the next check to ensure that we don't have a display name with spaces.
$displayname = trim($displayname);
+
+ // ルビ表示
+ $displayname = str_replace('_beginruby_', '<ruby>', $displayname);
+ $displayname = str_replace('_endruby_', '</ruby>', $displayname);
+ $displayname = str_replace('_beginrt_', '<rp>(</rp><rt>', $displayname);
+ $displayname = str_replace('_endrt_', '</rt><rp>)</rp>', $displayname);
+ $displayname = str_replace(' // ', '<br><span style="color: hsl(135, 100%, 40%)">', $displayname);
+ $displayname = str_replace(' ///', '</span>', $displayname);
+
if (empty($displayname)) {
// Going with just the first name if no alternate fields are filled out. May be changed later depending on what
// people in general feel is a good setting to fall back on
また、「サイト管理」→「ユーザ」→「パーミッション」→「ユーザポリシー」→「フルネームフォーマット」は次のように設定してあります。
_beginruby_ lastname _beginrt_ lastnamephonetic _endrt_ _endruby_ _beginruby_ firstname _beginrt_ firstnamephonetic _endrt_ _endruby_ // alternatename ///
もっと時間があればじっくり調べてちゃんとした改変をしたい (そして Moodle Tracker で提案したい) のですが、現時点ではここまでしかできませんでした。どなたか興味がありましたらもっと汎用性が高い形にしてもらえると嬉しいのですが... (最後まで自分でやれよ、という声が聞こえてきそうです)。