不定期日記
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|
