#author("2023-11-12T02:05:40+09:00","","")
#author("2024-01-25T03:41:19+00:00","","")
EUC-JP の PukiWikiサイトを UTF-8 に変換するツール pw_convert_eucjp_utf8 です。

ツール動作の妥当性確認のため、事例を集めています。ツールを利用した方は、このページに「変換に成功した」「失敗した/うまくいかなかった」等のコメントをお願いします。

* ダウンロード [#n4776cbc]

[[pw_convert_eucjp_utf8_2.zip>https://ftp.iij.ad.jp/pub/osdn.jp/pukiwiki/77085/pw_convert_eucjp_utf8_2.zip]]

%%[[pw_convert_eucjp_utf8_2.zip>https://ja.osdn.net/projects/pukiwiki/downloads/77085/pw_convert_eucjp_utf8_2.zip/]]%%

* 注意点 [#h895f2d0]

- 必ず、事前にバックアップを取得しておいてください。変換に失敗やファイルの破損・紛失が起きる可能性があります。
- <変換元PukiWikiディレクトリ> と <出力先ディレクトリ> は必ず異なるディレクトリをしてしてください。
- 変換後は十分な動作確認を行ってから利用を行ってください。
- 期待しない動作が発生した場合はこのページにコメントをお寄せください。

* 使い方 [#v1dfa57e]

ターミナル (Windowsではコマンドプロンプト) から実行するツールです。
(Webブラウザから利用するツールではありません。)

(1) ファイル名の長さチェック

 php -r "include('pw_convert_eucjp_utf8.php'); convert_eucjp_to_utf8('<変換元PukiWikiディレクトリ>', '<出力先ディレクトリ>');"


実行例:

 $ php -r "include('pw_convert_eucjp_utf8.php'); convert_eucjp_to_utf8('../pukiwiki_dir', '../converted_utf8');"
 DETECTED: 20605 files to convert.
 PASS - file name length check.
 Please execute convert with '$filename_check_only=false'.

(2) 変換の実行

 php -r "include('pw_convert_eucjp_utf8.php'); convert_eucjp_to_utf8('<変換元PukiWikiディレクトリ>', '<出力先ディレクトリ>', false);"

**補足 [#qd36e43b]

日本語のページ名をEUC-JPからUTF-8に変換すると、内部ファイル名の長さが1.5倍になります。

このツールではUTF-8でのファイル名がシステムの制限を超えないことのチェックを行います。

- ページ名長さがUTF-8での上限115bytes (すべて日本語文字の場合39文字まで)
- 添付ファイルの内部ファイルの長さ240bytes

この制限にかかって変換できない場合、あらかじめ(変換前のEUC-JPの状態で)ページのリネームや添付ファイルのリネームで、ファイル名を短くする対応を行ってください。

* EUC-JPのURLをUTF-8のURLにリダイレクトする [#redirect]

EUC-JPからUTF-8に変換すると、日本語を含むページのURLが変わります。

[[BugTrack/2195]] UTF-8に移行したサイトに、移行前のページ名(URL)に対するアクセスがあった場合のケア

に、PukiWiki 1.5.4 での対処法の記載があります。

例:

https://pukiwiki.osdn.jp/dev/?%B3%AB%C8%AF%C6%FC%B5%AD (EUC-JP時代のURL) にアクセスすると、&br;
https://pukiwiki.osdn.jp/dev/?%E9%96%8B%E7%99%BA%E6%97%A5%E8%A8%98 にリダイレクトされます。(PukiWiki-devサイトでこの仕組みを導入済み)

----
- ファイルが見つかりません -- [[dex]] &new{2022-03-31 (木) 16:41:42};
-- すみません。期待通りに動いていなくていったん公開を止めました。しばらくお待ちください -- [[umorigu]] &new{2022-04-01 (金) 00:22:48};
-- version 2として再公開しました。 -- [[umorigu]] &new{2022-04-03 (日) 20:07:02};
- [実績1] PukiWiki 1.4.7_notb, 1.5.0, 1.5.1, 1.5.2, 1.5.3, 1.5.4 の各EUC-JP版をこのスクリプトでそれぞれUTF-8版に変えることができます -- [[umorigu]] &new{2022-04-05 (火) 00:56:01};
- [実績2] このサイトPukiWiki-devの2015年当時のEUC-JP版のアーカイブをこのツールでUTF-8に変換することができます -- [[umorigu]] &new{2022-04-05 (火) 00:58:05};
- 昔、【他のツール】でEUC-JP→UTF-8に変換失敗した事例として、環境依存文字(①➀Ⅱ~∼~)などの考慮漏れがありました。念のため確認事項の1つとして情報提供しておきます。 -- [[rondo]] &new{2022-04-08 (金) 21:37:54};
-- 情報ありがとうございます。pw_convert_eucjp_utf8 のツールは CP51932→UTF-8 の変換をしているので、いわゆるWindowsの機種依存文字に対応しています -- [[umorigu]] &new{2022-04-09 (土) 00:58:23};
- お礼とご報告:スクリプト大変助かります.ありがとうございます.(1)非常に小規模な個人利用pukiwikiサイトでは問題なくチェック→変換できました.EUC版では動かなかった検索機能が使えるようにもなりました.(2)34700超のファイルがあるもう一つのpukiwikiサイトでは,チェックの段階でファイル名が長くなるものが検出されてエラーとして表示されました.対処はこれから考えます. -- [[mouri]] &new{2022-04-28 (木) 16:26:39};
-- 続・ご報告:上記(2)も,attachの名前変更を手作業でできたので問題なく行けました.検索機能が使えるようになるのが大変うれしい! -- [[mouri]] &new{2022-04-28 (木) 17:50:33};
-- レポートありがとうございます。34700というとかなりページ数多いですね。検索機能は [[official:TextSearch]] ですね。ページ数が多いとかなり便利になっています。ファイル名長さは自分でもハマったところなので期待通りに動いていてよかったです -- [[umorigu]] &new{2022-04-29 (金) 23:15:05};
- 2003年より運用してきたEUC-JPのコンテンツを問題なくUTF-8に変換できました。使用バージョンはPukiWiki-1.5.4です。 → fuguita.org&br;UTF-8に変換したことによりFaceBookやSlackに張ったリンクから正常に飛べるようになりました。&br;このサイトは海外からの閲覧者が多いので、日本語のドキュメントを参照してもらうためにGoogle TranslateへのURL貼り付けが正常に動作するようになったのは非常に助かります。&br;ありがとうございました! -- [[kaw]] &new{2023-02-05 (日) 12:24:37};
- 色々なサイトやブログ記事を検索しても上手く見つけられなかった為こちらで質問致します。提供されているツールを使うには、前もってUTF-8版のpukiwikiを導入する必要があるのでしょうか。元々EUC版を長年使用してきましたが、コンテンツの移行に伴い文字コードもUTF-8へ変換したいと考えております。 -- [[140]] &new{2023-10-20 (金) 18:32:04};
-- 質問ありがとうございます。前もってUTF-8版のpukiwikiを導入する必要はありません。ツールを実行すると、PHPスクリプト部分とデータ部分が丸ごと、EUCからUTF-8に変わります。別の書き方をすると、配布しているEUC版にこのツールを適用すると、UTF-8版そのものになります -- [[umorigu]] &new{2023-11-03 (金) 13:46:42};
- ver2 クリックしてもDL始まりません -- [[tohru]] &new{2023-11-09 (木) 18:01:49};
-- リンクをミラーサイトのURLに変更しました。再度ダウンロードを試してみてください -- [[umorigu]] &new{2023-11-12 (日) 02:05:40};
- PukiWiki 1.5.2 から 1.5.4 への移行の際、こちらのツールを使いEUCからUTF-8に変換できました。ありがとうございました。 -- [[Nan]] &new{2024-01-25 (木) 12:41:19};

#comment

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 8.2.12. HTML convert time: 0.062 sec.

SourceForge