実体参照を使うと日本語のWebページにハングルを表記する事が出来ます。
<span lang="ko">로</span>
などとタグを使うと
HTML로 일본어와 한글의 혼재
という表示になります。
ハングルfontが無いと表示できないです。
Install MovableType on OS X Serverを読んでみると、Mac OS X ServerはDBI Bundleを入れれば稼働するみたいです。
普通のMac OS XだとMySQLを入れたりする必要がありそう。
いままで手動での日本語化の修正方法が提示されていましたが。あるていど自動的に行うツールが公開されています。
Windowsの実行形式で配付されています。
UNIXのシェル権限がつかえる人は、単純にpatchコマンドで適用できるdiffファイルがあれば良いので、すぐに公開されそう。
Mac OS 9は、考えないとまずいでしょうけど。
blogrollingにそのまま登録すると文字化けしてしまいます。
その場合は「質問箱」を実体参照に変換して
質問箱
と書き換えると文字化けしません。
半角カナ実体参照生成ではJavaScriptを使って実態参照に変換するフォームを作っています。
ソースを見て自サイトのhtmlに設置すれば、ローカルでも使えます。
tDiaryテーマを適用できるようにMain Indexの改造中
とりあえずざっとできた。
tDiaryのCSS構造と今日のなんでMovableTypeやねんを参考にしてテンプレートをIndexだけ改造しました。
Main Index (tDiaryテーマ)を保存してください。
使い方は、ほぼ同じで。MTを設置したところにthemeというディレクトリを作って、その中にtDiaryのテーマを入れます。(今はcloverを設置しています)
<MTSetVar name="Theme" value="clover">
のvalueの名前をテーマ名に書き換えれば使えます。
ただtDiaryのテーマの中には、作者のライセンスとしてtDiary以外で使用をしてほしくないものも有ります。
はてな日記もtDiaryテーマを使えるように作られていますが、同様の問題のため一部テーマはつかえません。
tDiary-theme MLに、選択できないようにしているテーマの一覧があります。ただ、Nanaさんのテーマはその後GPLに変えた様子です。最新情報はtDiary.orgのテーマ集をダウンロードして、READMEを確認してください。
movabletypeでもこれらのテーマを使用しないようにしましょう。
MTを設置しているサーバーがqmailを使っていて「.qmail-localaddress」などで転送が出来るか。
もしくはsendmailを使っていて「.forward」によるメール転送を許可している場合は、前に説明したqmail2mt.plでメールによる日記更新が出来るのですが。
メール転送を許していない場合でも方法がありました。
www.y4su0.com 日記 その5に説明があります。
簡単に言うと、Perlを使いPOP3でメールを読むスクリプトを設置して、専用メールアドレスにきたメールを更新用スクリプト(前述のqmail2mt.plなど)に渡すという動作をします。
MTを使ってみたい。というときに実際に有った誤解などを解消するためにメモしておきます。
この機能があるサーバーで無いと動作しない必須項目
この機能があったほうが便利な推奨項目
CSSやHTMLによるWeb制作のスキルもあったほうがいいです。
文字コード変換機能の付いた日本語エディターも設定を書き換えたりするのに便利です。必須では有りません。Macであれば「miエディタ」がおすすめです。
index.rdfをチェック先URLに指定すると、はてなアンテナもサーバーも負荷が低いし、デザインにも左右されないのでお勧めです。
大抵のmovabletype使用サイトで「Syndicate this site (XML) 」としてリンクされているところです。
ここだったら
http://www.otsune.com/mt/index.rdf
です。
はてなアンテナの「チェックするページのURL」に「http://チェックしたいサイト/ディレクトリ/index.rdf」を入力して登録。
そのままだと使いにくいので、はてなアンテナの編集メニューから詳細を選択し「リンクURL」の欄をindex.htmlに書き換えると良いでしょう。
はてな詳細編集の設定例
また他のmovabletype以外のサイトでも、RSSを提供しているばあいは、それを更新チェックに使うと確実で楽です。
日本で配布されているRSS(RDF Site Summary)ファイルの一覧も参考に。
はてなアンテナやWWWC、WWWDなどの更新チェックツールからアクセスがある場合。
index.htmlをチェックされるとサーバーの負荷が大きくなります。
まぁWWWDなどはHEADリクエストに、ちゃんとLast-modifiedで更新時間をサーバーが答えれば、コンテンツの本文は転送しないので、それほど神経質になる必要は無いと思いますが。
サーバーがapacheを使用していて、mod_rewriteが使える場合、.htaccessに以下のように記述すれば任意のURLに書き換えることが出来ます。
RewriteEngine on
RewriteBase /mt #ディレクトリ指定
RewriteCond %{HTTP_USER_AGENT} ^WWWC/.*
RewriteRule ^$ index.rdf [L]
もっと良い方法があったみたい(携帯で更新)
とか
Clouder::Blogger: qmail2mt.pl part 3
とかで話題になっているPerlスクリプトを使えば、メールからMTに投稿することが出来ます。
つまり携帯から更新が可能に。
Joi Ito's Web - JP: mail2entry for posting images from mail to MT
にはPythonスクリプトで、画像添付のメール。つまり携帯の写真メールから更新する方法が公開されています。
ただ、Pythonが使えてJcodeも使えて……などという日本の貸しサーバーはそれほどないというのがネック。
Perlだけ動きます。というサーバーでも使えるようにするのが普及の鍵だと思います。
MTを動作させているサーバーに、メールアドレスがあり、かつ貸しサーバーがqmailでメール配信を行っていれば非常に簡単にqmail2mt.plは動かせます。
ホームディレクトリに.qmail-hogehogeなどというテキストファイルを設置します。
"| /usr/home/自分のID/cgi-bin/qmail2mt.pl"
また、メール配信がsendmailだというサーバーもまだ多いと思います。
その場合は.forwardに
自分のID, "| /usr/home/自分のID/cgi-bin/qmail2mt.pl"
参考URL:
hns のメールによる日記の更新
Dejimah 詣で。w
日本語でmovabletypeを使ってサイト運営しているサイトをわかる限り集めてみました。
という記事。
meshの人たちが入っていないのはなんででしょ?
総本山だからみんな知っているってことかも。
Linux Magazineを読んで知ったのだが、Perl2Exeというソフトが有るようだ。
PerlでかかれたスクリプトをWindowsの実行形式である.exeに変換するコンバーター。
実際にインストールしてみた。
C:\perlというフォルダに各種ライブラリが入り、Perlが実行できるように。
Windows環境で実行ファイルを配ろうとすると、J BuilderとかDelphi Personalなどの手段が有るけど。
これはPerlに慣れた人ならば使いやすいかもしれない。
ちなみに完全に何でも動作するわけではないみたい。
mt.cgiとかをコンバートしてみたが、上手く動作させることは出来なかった。
もしmovabletypeを改造して、Windowsのローカル環境でindex.htmlやらarchivesやらを生成できるのなら、ftpしか使えないプロバイダでもblogが公開できるねぇ。
(他のローカル起動のblogツールを使ったほうがよさそうだけど)
また単にWindowsでperlを実行させるだけならば、ActivePerlやCygwinをインストールするという手段も有る。
特にUNIXの環境が手に入るCygwinはおすすめ。cygwin日本語化を参考に。
NN4.xにだけCSSを読ませない方法
MacでNetscape4を使ってブラウズすると表示レイアウトがそろわない。
この方法で回避する。
追加。
あとUser-Agent Netscape4.xへの対応のように、LINK RELにmediaを指定するだけでも対処できるみたい。
どうもxreaの設定が変わったらしく、/work/アカウント名/のsite pathを/virtual/アカウント名/に変える必要があるみたい。
blogの設定でLocal site pathとLocal archive pathを変更。
日本語化patchに関しては自動化するツールが出来ました。それを使って下さい。
How to BLOG日本語を参考にxrea.comへのインストールをしてみる。
おまけにBerkleyDBを使わずにMySQLをデータベースにすることにも挑戦。
xrea.comのperlパスやパーミッションなどはスペックを参照。
インストール自体はmovabletype本家のここを参照。
xrea.comへのインストールで気をつけるのは、*.cgiのパーミッションがrwx---r-x(705)もしくはrwx------(700)じゃないとダメだということ。
mt-check.cgi単独でチェックしたところ、必要なモジュールはインストール済み。MT2.51のダウンロードは、ライブラリの無いバージョンでかまわない。
あらかじめxrea.comの登録メールに載っていたユーザー管理用urlから、MySQLとSSHを有効化しておく。(SSHは必須ではない)
mt.cgiなどは、公開するものではないので、広告が入らないようにpublic_html/x/ディレクトリ以下に設置することにする。(コメント感謝)
参考
public_html/x/以外でも、とりあえずpublic_html/cgiを置いたフォルダ/.htaccessに
LayoutIgnoreURI *.cgi*
LayoutIgnoreURI *.rdf
LayoutIgnoreURI *.xml
●mt.cfgがブラウザから見えてしまうので、パーミッションを600(所有者のみ読み書き可能)に変える
もしくは上記のpublic_html/x/.htaccessかpublic_html/mt/.htaccessに追加する
<Files mt.cfg>
Order allow,deny
Deny from all
</Files>
●ftpで自分の登録したxrea.comにログインし、public_htmlの下に「mt」(コンテンツを置くフォルダ)と「x」(.cgiを置くフォルダ)というフォルダを作る。「archives」フォルダもここで作っておいてもかまわない。
●ローカルでMT-2.51.tar.gzを解凍してmt.cfgを以下のように設定する。解凍にはWinRARなどの解凍ソフトを使う。
14:
CGIPath http://アカウント名.サーバー名.xrea.com/public_html/x/
CGIPath http://アカウント名.サーバー名.xrea.com/x/
ObjectDriver DBI::mysql
Database アカウント名
DBUser アカウント名
DBSocket /var/lib/mysql/mysql.sock
35:
StaticWebPath /virtual/アカウント名/public_html/mt/
StaticWebPath /mt/
115:
HTMLUmask 0072
UploadUmask 0072
DirUmask 0072
198:
NoHTMLEntities 1
PublishCharset EUC-JP
●x(cgiをおいた)ディレクトリに.htaccessを設置する
●mt-db-pass.cgiにMySQLのパスワード(xreaの場合はアカウントパスワードと同じ)を書き込む。
●Japanease Language Packをダウンロードしてくる。
lang-jaをimagesフォルダの下に移動する。
ja.pm.euc-jpをja.pmと名前を変えてextlib/MT/L10N/の下に移動する。
●さまよえる Movable Typeスレッド その1にも日本語化について記述あり。
まず
lib/MT/App.pm
47:
if (my $charset = $app->{cfg}->PublishCharset) {
●あらかじめデフォルトテンプレートのcharsetをEUC-JPに変更しておく。下記のテンプレート修正のようにヘッダーを変更しておくと楽。
lib/MT/default-templates.pl
<?xml version="1.0" encoding="euc-jp"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=euc-jp" />
●検索用テンプレートも修正が必要かも?
search_templates/comments.tmpl
search_templates/default.tmpl
ここによると、headタグを閉じていない模様。
上記ヘッダーと置き換えて、</head>を<body>の前の行に入れる。
●Macintoshブラウザの管理画面が文字化けするのを修正する。
MT-2.51.tar.gzを解凍した直下にあるstyle.cssを修正。
font-familyの行頭に#をいれてコメントアウトするか、font-family:にOsakaを入れたりする。
ここまで出来たら、xreaのftpサーバーのpublic_html/x/フォルダ以下に転送する。(容量を少しでも削りたいときは、不要なファイルをあとで削除する)
imagesフォルダ,docsフォルダ,style.cssは、StaticWebPathで指定したmtフォルダに転送する。
●アップロードできたらパーミッションを設定する。
SSHを使う場合。自分のxrea.comにログインし、chmod 705 public_html/x/*.cgiを実行する。(xreaは、このパーミッション以外ではCGIを実行できない)
またMySQLのパスワードが見えてしまうのでchmod 600 public_html/x/mt-db-pass.cgiを実行する。
ftpから操作するときは右クリックで、プロパティを実行する。
mt*.cgiの9個のファイルを設定します。
所有者は「読み取り、書き込み、実行」の全部をチェック。
グループは全てオフ。
すべてのユーザーは「読み取り、実行」だけチェック。
mt-db-pass.cgiは所有者の「読み取り、書き込み」だけチェック。
●ブラウザから「http://アカウント名.サーバー名.xrea.com/x/mt-load.cgi」にアクセスし、成功したらpublic_html/x/mt-load.cgiを削除する。
失敗した場合はパーミッションやディレクトリ、ftpのアスキー/バイナリーモードなどをチェックする。
●mt.cgiでMelody,Nelsonでログインし自分のアカウントを設定します。
「Japanese」の設定も忘れずに。
●mtの下か、おなじ階層にarchivesフォルダを忘れずに作ります。
●管理画面からTemplateの編集を選び、Main Index、Master Archive Index、Category Archive、Date-Based Archive、Individual Entry Archive、下の「その他のTemplate」のヘッダーが
<?xml version="1.0" encoding="euc-jp"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=euc-jp" />
●管理画面からTemplateの編集を選び、RSS 1.0 IndexとRSS 0.9 Indexの一行めを変更する。
<?xml version="1.0" encoding="euc-jp"?>
<dc:language>ja</dc:language>
●設定用cgiに広告を出さない設定をする。
公開しないcgiのテンプレートに<!--nobanner-->を入れる。
tmpl/cms/の下にあるファイルをいじる。
●TrackBack文字化け対策
lib/MT/App/TrackBack.pmを修正。
53:
sub no_utf8 {
require Jcode;
for (@_) {
next if !defined $_;
$_ = pack 'C0A*', $_;
$_ = Jcode->new($_)->euc;
}
}
2chスレのpatchだと
lib/MT/App/Trackback.pm
16:
use Jcode;
if ($app->{cfg}->PublishCharset eq 'SHIFT_JIS') {
$title = Jcode->new($title)->sjis;
$excerpt = Jcode->new($excerpt)->sjis;
$blog_name = Jcode->new($blog_name)->sjis;
} elsif ($app->{cfg}->PublishCharset eq 'EUC-JP') {
$title = Jcode->new($title)->euc;
$excerpt = Jcode->new($excerpt)->euc;
$blog_name = Jcode->new($blog_name)->euc;
} else {
$title = Jcode->new($title)->utf8;
$excerpt = Jcode->new($excerpt)->utf8;
$blog_name = Jcode->new($blog_name)->utf8;
}
●Bookmarkletの文字化け対策
lib/MT/App/CMS.pmの修正。
584:
if ($q->param('is_bm')) {
require Jcode;
$param{selected_text} = $param{text};
$param{text} = sprintf qq(<a title="%s" href="%s">%s</a>\n\n%s),
Jcode->new(scalar $q->param('link_title'))->euc,
Jcode->new(scalar $q->param('link_href'))->euc,
Jcode->new(scalar $q->param('link_title'))->euc,
Jcode->new($param{text})->euc;
patch修正したらpublic_html/x/以下の該当するファイルと置き換える。
●文字コード宣言は行いましょう(CSS)
によると、styles-site.css(Stylesheetテンプレート)の先頭に
@charset "euc-jp";
●style-sheet.cssを管理画面からカスタマイズ。
これは個人のデザインの好みで。
ただfont-sizeをポイント指定やsmall指定などにすると、Internet Explorerでは読める大きさでもNetscape7などで小さすぎるという現象があります。
movabletype-Stylesheet 002を参考に。
配色を決めるのも個人の好き好きに。
配色ツール(Mari's IROEMPITSU)が便利です。
また男性の20人に1人は色覚異常で見えにくい色の組み合わせがあるそうです。
カラーバリアフリーガイド Ver.1.01を参考に。
●メール文字化け対策
lib/MT/Mail.pmに追加
22:
require Jcode;
$body = Jcode->new($body)->jis;
$hdrs->{Subject} = Jcode->new($hdrs->{Subject})->mime_encode;
$hdrs->{'Content-type'} = "text/plain; charset=\"ISO-2022-JP\"";
●Atsushi Sanoさんの翻訳ドキュメントも参考にしてください。
●もっと良い方法があったみたい(携帯で更新)
携帯からmovabletypeを更新するスクリプト。
●手動挿入広告タグの書き換えについて
XREAの自動挿入される広告が、XHTML 1.0 Strictではないので、手動でタグを作り違反しないように設定する方法。