パーソナルツール
現在の場所: ホーム plone 日本語 pootle セットアップ
書いた本
Plone 完全活用ガイド の Chapter 1, 2, 3, 11 を執筆しました。
plone のインストール、使い方から、機能・デザインのカスタマイズ、プロダクトの作り方まで、 plone のすべてがぎゅっと詰まっている書籍になっていると思います。
plone に興味がある人から、すでに使いこなしている方まで、ぜひ読んでみてください。
Plone 完全活用ガイドのサポートページ
ナビゲーション

 
文書操作

pootle セットアップ

作成者 takanori 最終変更日時 2006年08月09日 00時06分

po ファイルの翻訳を web でよってたかって行うシステム pootle というものがあることを知ったので、セットアップしてみます。

目次

インストール[install]

まず最初に、Pootle をインストールするのに必要な、Translate Toolkit, jToolit と Kid, ElementTree をダウンロードしてインストールします。

# wget http://translate.sourceforge.net/snapshots/jToolkit-0.7.8/jToolkit-0.7.8.tar.gz
# tar xfz jToolkit-0.7.8.tar.gz
# cd jToolkit-0.7.8
# python jToolkitSetup.py install
# cd ..
# wget http://translate.sourceforge.net/snapshots/translate-toolkit-0.10rc1/translate-toolkit-0.10rc1.tar.gz
# tar xfz translate-toolkit-0.10rc1.tar.gz
# cd translate-toolkit-0.10rc1
# python setup.py install
# cd ..
# wget http://effbot.org/downloads/elementtree-1.2.6-20050316.tar.gz
# tar xfz elementtree-1.2.6-20050316.tar.gz
# cd elementtree-1.2.6-20050316
# python setup.py install
# cd ..
# wget http://www.kid-templating.org/dist/0.9.3/kid-0.9.3.tar.gz
# tar xfz kid-0.9.3.tar.gz
# cd kid-0.9.3
# python setup.py install

次に Pootle 本体をインストールします。

ここでは 0.10rc1 というバージョンをインストールします。

なお、これらのツールはデフォルトでは python の site-packages の下にインストールされます。また、PootleServer コマンドが /usr/bin にインストールされます。

# wget http://translate.sourceforge.net/snapshots/Pootle-0.10rc1/Pootle-0.10rc1.tar.gz
# tar xfz Pootle-0.10rc1.tar.gz
# cd Pootle-0.10rc1
# python pootlesetup.py install

インストールが正常に終了すると、PootlerServer コマンドが実行できるようになります。 また、PootleServer --help とすることでヘルプが表示されます。

設定ファイル[prefs]

実際に PootleServer を動かす前に、設定ファイルを編集します。 設定ファイルには以下の二つがあります。

  • pootle.prefs 立ち上げる Pootle サーバ全体に対する設定ファイルです。
  • users.prefs Pootle を利用するユーザに関する設定ファイルです。

このうち主に pootle.prefs を編集する必要があります。

具体的な編集の箇所としては、以下の部分になると思います。

  • title, description サイトの名前や説明などを指定します。
  • defaultlanguage デフォルトの言語を英語以外にしたい場合は指定します。
  • fromaddress ユーザ登録するときの From となるメールアドレスを指定します。
  • smtpserver ユーザ登録するときのメールを送るためのサーバを指定します。
  • projects 翻訳を行うプロジェクトの情報を指定します。
  • languages 利用可能な言語を指定します。

ちなみに私が使っている設定ファイルから重要な部分を抜粋するとこんな感じです。:

    title = "Pootle in takanory.net"
    description = "Pootle server for plone 2.1 japanese translation"
    defaultlanguage = "ja"

    registration:
      fromaddress = "XXXXXX@takanory.net"
      smtpserver = "localhost"

    podirectory = "po"

    projects:
      pootle:
        fullname = "Pootle"
        description = "Web translation software"
        checkstyle = "standard"
      plone:
        fullname = "Plone"
        description = ""
        checkstyle = "standard"

    languages:
      templates.fullname = 'Templates'
      en.fullname = 'English'
      ja.fullname = 'Japanese'

apache の proxy 経由でアクセス[proxy]

Pootle サーバを立ち上げるとデフォルトでは8080番ポートを使って立ち上がります。 (ここでは -p オプションでポート番号を 8180 に変更しています。)

それはいまいちなので、apache のバーチャルホスト機能と proxy 機能を使って、 http://pootle.takanory.net/ でアクセスできるようにします。

そのために、httpd.conf に以下のように記述します。:

    <VirtualHost *>
      ServerName pootle.takanory.net
      ProxyPass /images !
      ProxyPass /js !
      ProxyPass /pootle.css !
      ProxyPass /favicon.ico !
      ProxyPass / http://localhost:8180/
      ProxyPassReverse / http://localhost:8180/
      <Directory proxy:http://localhost:8180/*>
        Order deny,allow
        Allow from all
      </Directory>
      ErrorLog logs/pootle_error_log
      CustomLog logs/pootle_log combined
      # Fallback for static html content
      DocumentRoot "/usr/lib/python2.3/site-packages/Pootle/html/"
      <Directory "/usr/lib/python2.3/site-packages/Pootle/html/">
        Order deny,allow
        Allow from all
      </Directory>
    </VirtualHost>

PootleServer 起動[server]

さて、ここまできたら PootleServer を起動します。

ここではバックグラウンドで実行、ポート番号を 8180 に変更、ログファイルを出力、また標準出力をファイルに書き出すようにして起動しています。

# PootleServer -B -p8180 -o/var/log/pootle.log > /var/log/pootle.out 2>&1

po ファイルを配置[pofiles]

しかしこれだけでは翻訳を行うことはできません。

設定ファイルに指定したプロジェクト用の po ファイルを配置する必要があります。

po ファイルは po/プロジェクト/言語 というディレクトリを作成して、そこに配置しなければなりません。 例えば plone-ja.po というファイルは po/plone/ja というディレクトリに配置することによって初めて翻訳できるようになります。

実際に http://pootle.takanory.net/ にアクセスして、試しに翻訳してみてください。 なお、翻訳を行うためにはユーザの登録が必要です。

最初に各プロジェクトのページにアクセスしたときは、po ファイルの中身を解析して、どのくらい翻訳されているか調べたりするので少し表示に時間がかかります。気長に待ってあげてください。

関連サイト[site]

pootle に関連する(参考にした)サイトです。

AttributeError等の対応

投稿者 jack 投稿日時: 2005年09月29日 21時45分

AttributeError: tuple object has no attribute split の件

pootlefile.pyの85行目くらい for failure in failures: + try: ! functionname = failure.split(":",2)[0] + except: + functionname = failure[0]

-o のログが効かない件

PootleServer -p9999 -B -opootle.log --autorestart > log.pootle 2>&1

とかやって乱暴に対応(麦


Powered by vine linux, python, zope, plone, coreblog