EasyTAGを使ってmp3のID3タグの文字化けを解消する

  • Windowsで作成したmp3ファイルのID3タグの文字コードはShift_JISになっていることが多いので、Ubuntuの音楽プレーヤーで再生すると文字化けする。それを解決するために音楽ファイルのタグ編集ソフト『EasyTAG』でID3タグの文字コードを変更する。

    EasyTAGを起動し、EasyTAGのメニューバーの『設定』 > 設定をクリック、「参照」タブをクリック、サブフォルダも参照するのチェックを外す。

    次に「ID3 タグの設定」タブをクリック、設定を以下のようにする。

    1. ID3v2 でタグを書き込むにチェックを入れる
    2. バージョンはID3v2.3にする(v2.4は互換性が低いらしいので)。文字セットはUTF-16
    3. ID3 タグ読み込み時の文字セット規格外にチェックを入れ、日本語(Shift_JIS)にする。
    4. ID3 Ver1.x でタグを書き込むのチェックを外す。

    後は対象の音楽ファイルを選択し、EasyTAGのメニューバーの『ファイル』 > ファイルの強制保存を実行すれば文字コードが変換される。

    参考:MP3ファイルのID3タグの文字コードを変換するには

更新:2008年

Hyper Estraierをインストールする

  • Hyper Estraierは全文検索システム。今回は~/Documents以下を全文検索できるようにしてみる。

    まず端末を起動して、

    sudo apt-get install hyperestraier

    と実行し、インストールする。

    sudo gedit /etc/default/hyperestraier

    と実行してHyper Estraierの設定ファイルを開き、NO_START=1NO_START=0に変更して保存。これで自動的に起動するようになる。手動での起動は、

    sudo /etc/init.d/hyperestraier start

    と実行すればOK。http://localhost:1978/にアクセスするとブラウザで色々設定できるらしい(よく分からんので未確認。初期ユーザ名とパスワードはadmin)。

    Hyper Estraierで検索するにはWebサーバが必要なのでlighttpdをインストールする。端末で、

    sudo apt-get install lighttpd lighttpd-doc

    としてインストールし、Firefoxなどのウェブブラウザでhttp://localhost/にアクセスできればOK。cgiを利用するため、

    sudo lighty-enable-mod cgi

    とコマンドを実行して設定を変更しておく必要があるらしい。他にも設定の変更が必要なので、

    sudo gedit /etc/lighttpd/lighttpd.conf

    と実行してlighttpdの設定ファイルを開き、最下部に

    cgi.assign += (
        ".pl"  => "/usr/bin/perl",
        ".cgi" => "/usr/bin/perl",
        ".php" => "/usr/bin/php-cgi",
        ".py"  => "/usr/bin/python",
        ".rb" => "/usr/bin/ruby",
        ".bin" => ""
    )
    

    という文字列を追加しておく。

    Hyper Estraierをlighttpdで動かすためには、いくつかのファイルを別の場所にコピーする必要があるので、まず

    sudo mkdir /var/www/search
    sudo ln -s /home/$USER/Documents/ /var/www/

    と端末で実行してフォルダとシンボリックリンクを作っておき、

    /var/www/以下にDocumentsへのシンボリックリンクを作っておく事で、Documents以下のファイルにhttpでアクセスできる。

    sudo cp /usr/lib/estraier/estseek.cgi /var/www/search/estseek.bin

    とコマンドを打ってestseek.cgiをestseek.binに名前を変えてコピーする(そのままだと設定を変更しないと動かない)。さらに、

    sudo cp /usr/share/hyperestraier/locale/ja/estseek.* /var/www/search/

    とコマンドを打ってestseek.conf、estseek.help、estseek.tmpl、estseek.topの4つのファイルをコピーする。

    sudo gedit /var/www/search/estseek.conf

    と実行して設定ファイルを開き、indexnamereplaceを変更する。

    indexname: /var/hyperestraier_index/casket
    中略
    
    replace: ^file:///home/ユーザ名/Documents/{{!}}http://localhost/Documents/
    
    省略
    
    sudo mkdir /var/hyperestraier_index

    と実行してインデックスを置くフォルダを作成し、

    cd /var/hyperestraier_index

    でそのフォルダに移動、

    sudo estcmd gather -cl -il ja -lf -1 -lt -1 -pc UTF-8 -sd casket ~/Documents/

    と実行することでcasketというフォルダが作成され、その中に~/Documents以下のテキストファイル等がインデックスとして作成・追加される。オプションに-pc UTF-8を付けないと日本語ファイル名が文字化けする。

    ※テキストファイルやHTMLファイルの文字コードがShift_JISでも問題なし。

    次いでPDFファイルをインデックスに追加する場合、

    sudo estcmd gather -cl -fx ".pdf" "H@estfxpdftohtml" -fz -ic UTF-8 -pc UTF-8 -il ja -lf -1 -lt -1 -sd -cm casket ~/Documents/

    と実行する。-fxオプションで指定したファイルのみインデックスに追加される(この場合はファイルの末尾が.pdfとなっているファイルのみ)。MS-Officeファイル(Word、Excel、PowerPoint)をインデックスに追加する場合は、

    estcmd gather -cl -fx ".doc,.xls,.ppt" "H@estfxmsotohtml" -fz -ic UTF-8 -pc UTF-8 -il ja -lf -1 -lt -1 -sd -cm casket ~/Documents/

    と実行する。-fxオプションで指定したファイルのみインデックスに追加される(Excel 5.0やWord 6.0など古いファイルは文字化けする様子)。あとは、

    sudo /etc/init.d/lighttpd restart
    sudo /etc/init.d/hyperestraier restart

    と実行してサービスを再起動し、ウェブブラウザでhttp://localhost/search/estseek.binにアクセスすれば検索ページが表示される。

    また、削除したファイルをインデックスから取り除きたい場合は、

    sudo estcmd purge -cl -pc UTF-8 casket

    と実行すればOK。

    このままだと全てのユーザが検索できるので、lighttpdの認証機能を利用してみる。端末で、

    sudo apt-get install apache2-utils

    と実行して設定ツールをインストールし、

    sudo htpasswd -c /etc/lighttpd/lighttpd.user.htpasswd ユーザ名

    と実行するとパスワードの作成を求められるので二度入力(ユーザ名、パスワードはアルファベットで)、

    sudo lighty-enable-mod auth

    と実行してモジュールを有効にし、

    sudo gedit /etc/lighttpd/lighttpd.conf

    と実行してファイルを開き、末尾に以下を追加。

    auth.backend = "htpasswd"
    auth.backend.htpasswd.userfile = "/etc/lighttpd/lighttpd.user.htpasswd"
    auth.require = ( "/search/" =>
                     (
                       "method"  => "basic",
                       "realm"   => "Secret Zone",
                       "require" => "valid-user"
                     )
    )
    
    sudo /etc/init.d/lighttpd restart

    と実行してサービスを再起動すればOK。(Digest認証を利用しようとしたが上手くいかなかった。ローカルで使う分にはBasic認証で問題ないと思うが。)

    ※server.modulesに"mod_auth"を追記しなくても動いた。

    参考ページ:User's Guide of Hyper Estraier Version 1 (Japanese)
    参考ページ:UbuntuにHyperEstraierをインストール
    参考ページ:ぷちWiki - Hyper Estraier
    参考ページ:Apacheの代わりにLighttpdを入れる
    参考ページ:lighttpdでユーザー認証を行うには(Basic認証編)

更新:2010年6月5日

Ubuntuを家族で共有しているパソコンで使う場合の注意点

  • Windowsだと制限ユーザは他のユーザのマイドキュメントを見たり出来ないが、Ubuntuだと見放題なので複数のユーザで使用する場合は注意が必要。
    872 :login:Penguin [sage] :2008/05/16(金) 00:43:00 ID:aIjgqy8s
    デフォルトで /home/ユーザ名 のアクセス権が755ってのと、
    updatedbが有効なのは、デスクトップ用途では欠点だな。
    他のユーザの~/Documentsが見れたり、locateで検索できたりすると、
    あんなファイルやこんなファイルが身内にバレちゃってさぁ大変なことに。
    
    
    873 :login:Penguin [sage] :2008/05/16(金) 00:55:24 ID:MWAuQhQt
    >>872
    linuxでは基本的にユーザ同士で情報を共有しようというのもあったんだよね。
    ~/.bashrcや~/.emacsを観れるようにしてノウハウを公開する意図があったりして。
    でもまあ、これからのデスクトップユーザ、Windowsから流れてくる人たちにとっては、
    デフォルトで見えないほうがいいのかもねえ・・・
    
    
    874 :login:Penguin [] :2008/05/16(金) 01:42:48 ID:kgd04gO/
    >>872
    最初は755でいいんだよ、そこでアクセス拒否られると、
    「ああ、何かかくしてる」
    ってことになるんだよ。
    あんなのやこんなのをかくしたいなら、その方法を探ればOK
    .systemほにゃららとかにしてアクセス権変えといたらいいんだよ。
    

特定のフォルダをupdatedbの対象外に設定する

  • updatedbはファイル名データベース。locateコマンドでファイル名を検索することができる。デフォルトでは、/tmp/var/spool/mediaは検索の対象外となっている。他のフォルダを対象外にしたい場合は、sudo gedit /etc/updatedb.confなどのコマンドを実行するなりしてupdatedbの設定ファイルを管理者権限で開き、PRUNEPATHS=の行に対象外にしたいフォルダのパスを記述すればOK。

GNOMEでファイルを中ドラッグすると『移動』『コピー』『リンクの作成』が出来る

  • 87 :login:Penguin [] :2008/03/09(日) 11:42:17 ID:zU6E/6CB
    GNOMEの不満は右ドラッグができない事くらいだな
    
    
    88 :login:Penguin [sage] :2008/03/09(日) 13:56:27 ID:lifvAjWQ
    中ドラッ
    

ATOK X3 for Linuxでgoo流行語辞書2005を利用する

  • 配布ページからgootrend2005.darをダウンロードし、~/.iiim/le/atokx3/users/ユーザ名にコピー。ATOKのプロパティ > 入力・変換 > 省入力・推測変換 > 省入力データの追加・削除ボタンを押し、goo流行語辞書2005データを選択して追加すると利用できるようになる。

    ※.iiimは隠しフォルダ

更新:2008年

ATOK X3 for Linuxの辞書に単語を登録するには

  • 辞書に単語を登録するには、ATOKのツールバーを右クリックして、辞書メンテナンス > 辞書ユーティリティ > 登録 > 単語登録の『ATOK辞書』で辞書を選び、単語・読み等を入力して実行ボタンを押せばOK。

更新:2008年

ATOK X3 for LinuxでMS-IMEの辞書を使う

  • まずテキスト形式で出力されたMS-IMEの辞書を用意する。

    次にATOKのツールバーを右クリックして、辞書メンテナンス > 辞書ユーティリティ > 辞書ファイル > 辞書作成 で『ATOK辞書』『タイトル』の欄に記入し実行を押して辞書を作成し、辞書ユーティリティの一括処理 > 単語一括処理でそれぞれ参照ボタンを押して、『ATOK辞書』に先に作成した辞書を、『単語ファイル』にMS-IMEの辞書を(文字コードはシフトJIS)、出力ファイルには任意のテキストファイルを指定し、登録ボタンを押すと辞書のインポートが始まる。

    出力ファイルにはインポートできなかった単語が出力される。

    『単語ファイル』『出力ファイル』のパスに日本語が含まれていると動作しないので注意。

    追加した辞書を使用するには、ATOKのツールバーを右クリックして、プロパティ > 辞書・学習の標準辞書セットを選択して追加・削除ボタンを押し、作成した辞書を選んで追加する。

更新:2008年

ATOK X3 for Linuxの辞書はどの場所にあるか

  • ~/.iiim/le/atokx3/users/ユーザ名にある、拡張子がdicのファイルが辞書ファイル。

更新:2008年