不定期日記
J2千葉観戦記, ライブの感想を中心とした備忘録
2010-12-30 (Thu) [長年日記]
_ phpBBの日本語化
- 日本語版をインストールすればOK
- 日本語ランゲージパック と Japanese search mod を後からインストールしてもOK。ただし、掲示板の設定前にインストールしないといけない
Japanese search mod のインストールについて
手でインストールする場合、 search.php と viewtopic.php を手修正する必要があるため、パッチを作成した。
diff -ur phpBB3.orig/search.php phpBB3/search.php --- phpBB3.orig/search.php 2010-12-30 10:05:29.000000000 +0900 +++ phpBB3/search.php 2010-12-30 10:04:03.000000000 +0900 @@ -543,7 +543,7 @@ } // define some vars for urls - $hilit = implode('|', explode(' ', preg_replace('#\s+#u', ' ', str_replace(array('+', '-', '|', '(', ')', '"'), ' ', $keywords)))); + $hilit = jsm_highlight($search->search_query); //Japanese search mod // Do not allow *only* wildcard being used for hilight $hilit = (strspn($hilit, '*') === strlen($hilit)) ? '' : $hilit; @@ -869,7 +869,7 @@ $posts_unapproved = ($row['topic_approved'] && $row['topic_replies'] < $row['topic_replies_real'] && $auth->acl_get('m_approve', $forum_id)) ? true : false; $u_mcp_queue = ($topic_unapproved || $posts_unapproved) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=queue&mode=' . (($topic_unapproved) ? 'approve_details' : 'unapproved_posts') . "&t=$result_topic_id", true, $user->session_id) : ''; - $row['topic_title'] = preg_replace('#(?!<.*)(?<!\w)(' . $hilit . ')(?!\w|[^<>]*(?:</s(?:cript|tyle))?>)#is', '<span class="posthilit">$1</span>', $row['topic_title']); + $row['topic_title'] = $ja_search->highlight($hilit, $row['topic_title'], 'class="posthilit"'); //Japanese search mod $tpl_ary = array( 'TOPIC_AUTHOR' => get_username_string('username', $row['topic_poster'], $row['topic_first_poster_name'], $row['topic_first_poster_colour']), @@ -960,8 +960,8 @@ if ($hilit) { // post highlighting - $row['post_text'] = preg_replace('#(?!<.*)(?<!\w)(' . $hilit . ')(?!\w|[^<>]*(?:</s(?:cript|tyle))?>)#is', '<span class="posthilit">$1</span>', $row['post_text']); - $row['post_subject'] = preg_replace('#(?!<.*)(?<!\w)(' . $hilit . ')(?!\w|[^<>]*(?:</s(?:cript|tyle))?>)#is', '<span class="posthilit">$1</span>', $row['post_subject']); + $row['post_text'] = $ja_search->highlight($hilit, $row['post_text'], 'class="posthilit"'); //Japanese search mod + $row['post_subject'] = $ja_search->highlight($hilit, $row['post_subject'], 'class="posthilit"'); //Japanese search mod } $tpl_ary = array( diff -ur phpBB3.orig/viewtopic.php phpBB3/viewtopic.php --- phpBB3.orig/viewtopic.php 2010-12-30 10:05:35.000000000 +0900 +++ phpBB3/viewtopic.php 2010-12-30 10:04:36.000000000 +0900 @@ -1373,8 +1373,8 @@ // Highlight active words (primarily for search) if ($highlight_match) { - $message = preg_replace('#(?!<.*)(?<!\w)(' . $highlight_match . ')(?!\w|[^<>]*(?:</s(?:cript|tyle))?>)#is', '<span class="posthilit">\1</span>', $message); - $row['post_subject'] = preg_replace('#(?!<.*)(?<!\w)(' . $highlight_match . ')(?!\w|[^<>]*(?:</s(?:cript|tyle))?>)#is', '<span class="posthilit">\1</span>', $row['post_subject']); + $message = $ja_search->highlight($highlight_match, $message, 'class="posthilit"'); //Japanese search mod + $row['post_subject'] = $ja_search->highlight($highlight_match, $row['post_subject'], 'class="posthilit"'); //Japanese search mod } // Editing information
_ [FreeBSD] MediaWiki で数式を使う
MediaWikiで数式(Latex)を使う - tuedaの日記 を参考にしました。 結論から書くと、 /usr/ports/www/mediawiki の依存先を latex から teTeX-base に変更してついでに dvips も入れてしまうのが正解。
--- www/mediawiki/Makefile.orig 2010-12-30 11:50:51.000000000 +0900 +++ www/mediawiki/Makefile 2010-12-30 11:57:48.000000000 +0900 @@ -42,7 +42,8 @@ .endif .if defined(WITH_TEXVC) -RUN_DEPENDS+= latex:${PORTSDIR}/print/latex +RUN_DEPENDS+= dvipng:${PORTSDIR}/print/teTeX-base \ + dvips:${PORTSDIR}/print/dvipsk-tetex BUILD_DEPENDS+= ocaml:${PORTSDIR}/lang/ocaml USE_GMAKE=yes
要は、上記リンク先に書いてある通り、
- dvips
- latex
- convert
- dvipng
の4つのコマンドが必要となりますが、 dvipng が入っているパッケージは teTeX-base のみであり、また dvips も入ってくれないのです。 なお、 teTeX-base にも latex が含まれているため、 print/latex とはバッティングします。
2020|07|