/var/svn/SandBox 70
MIMEMultipartメールなのだが、Becky 2.30でみると差出人が化けて表示されるようだ。
Fromの部分だけエンコーディングされていないのが原因。
デフォルトでは以下のようにプロジェクト名+差出人となっている。
msg['From'] = '%s <%s>' % (projname, self.from_email)
+++ Notify.py 2007-03-14 15:21:24.000000000 +0900 @@ -132,7 +132,7 @@ msg['X-Trac-Project'] = projname msg['X-URL'] = self.config.get('project','url') msg['Subject'] = Header(self.subject, 'utf-8') - msg['From'] = '%s <%s>' % (projname, self.from_email) + msg['From'] = '%s' % (self.from_email) msg['Sender'] = self.from_email msg['Reply-To'] = self.replyto_email msg['To'] = rcp ---- # service httpd graceful
Mar 13 22:04:49 ts01x036 postfix/smtpd[30163]: connect from localhost.localdomain[127.0.0.1] Mar 13 22:04:49 ts01x036 postfix/smtpd[30163]: lost connection after CONNECT from localhost.localdomain[127.0.0.1] Mar 13 22:04:49 ts01x036 postfix/smtpd[30163]: disconnect from localhost.localdomain[127.0.0.1]
22:04:49 Trac[web_ui] ERROR: Failure sending notification on change to ticket #21: (-2, 'Name or service not known') Traceback (most recent call last):
# vi conf/trac.ini ---- [logging] log_file = trac.log log_level = DEBUG log_type = file ---- # service httpd graceful
標準では画像ファイル(.png, .gif, .jpg)へリンクすると自動的に展開し、表示されます。
これを抑制したい場合、末尾に/を付けると良いようです。
ちなみにリンク[]では使えませんでした。イリーガルな使い方のようです。
source:trunk/〜/foo.jpg/
sqlite> .output report_ja.sql sqlite> .dump report sqlite> .exit
$ su # sqlite -init report.sql /var/trac/mappl/db/trac.db Loading resources from report.sql SQLite version 2.8.16 Enter ".help" for instructions sqlite> .exit
SQLiteの3.xと2.xにはファイルフォーマットに互換性が無い。以下のエラーの場合は、データベースのバージョンが異なるので、エクスポート/インポートしなくてはいけない。
Unable to open database "trac.db": file is encrypted or is not a database
# cd /trac-repository/db # sqlite trac.db .dump | sqlite3 trac.db.3
# cd /trac-repository/db # sqlite3 trac.db .dump | sqlite trac.db.2
# mv trac.db.x trac.db
「/etc/init.d/httpd restart」だとエラー、「service httpd restart」だと正常に起動する場合の対策。
起動ユーザのホームディレクトリにキャッシュディレクトリを作成しようとする模様。
「/root/.python-eggs」にキャッシュディレクトリを作成しようとして失敗している。
<Location /projects> ... SetEnv PYTHON_EGG_CACHE /var/www/.python-eggs </Location>
# trac-admin /path/to permission add developers TICKET_CREATE LOG_VIEW TICKET_MODIFY # trac-admin /path/to permission add spy developers
v0.9からPageOutlineマクロが標準添付されたので、ページの先頭でこれを記述すれば良い。
[[PageOutline]]
その他標準マクロは、tracのヘルプの「wiki/WikiMacros」に記述がある。
/usr/share/trac/wiki-macros/
/var/trac/SandBox/wiki-macros/
wget -O ParentWiki.py http://trac.edgewall.org/attachment/wiki/MacroBazaar/ParentWiki.py?format=raw
wget -O SubWiki.py http://trac.edgewall.org/attachment/wiki/MacroBazaar/SubWiki.3.py?format=raw
以下、リポジトリに格納しなくともよいファイル
拡張子 | 説明 |
*.opt | 開発環境で使用されるワークスペースのオプションファイル。 |
*.clw | ClassWizard で使用されるファイル。自動生成される。 |
*.ncb | コンパイルされないブラウザファイル。自動生成される。 |
*.aps | 現在のリソーススクリプトファイルのバイナリバージョン。 |
*.plg | プロジェクトログ。コンパイル結果などが記録される。 |
[[TracGuideToc]]
defect | 不具合 |
enhancement | 新機能/拡張 |
task | タスク |
blocker | 極めて重大 |
critical | 重大 |
major | 中 |
minor | 低 |
trivial | 最低 |
fixed | 修正済み |
invalid | 無効 |
wontfix | 修正しない |
duplicate | 重複 |
worksforme | 再現しない |
pythonの内部コードがUTF-8なので、通常UTF-8のみ表示可能。
JapaneseCodecsを追加すれば、他文字セットも表示可能になる。
[trac] default_charset = japanese.euc-jp
[trac] default_charset = japanese.shift_jis
default_charset = utf-8 default_charset = japanese.ms932 default_charset = japanese.iso-2022-jp
subversionのソースから、以下のようにインストールする。
# configure # make swig-py # make install-swig-py # ln -s /usr/local/lib/svn-python/libsvn /usr/lib/python2.3/site-packages/libsvn # ln -s /usr/local/lib/svn-python/svn /usr/lib/python2.3/site-packages/svn
Subversion リポジトリに格納しているファイルのエンコードが、ファイルごとに違う場合、svnのmime-type属性にcharsetを追加する。
$ svn propset 'svn:mime-type' 'text/plain; charset=Shift_JIS' *.txt $ svn propset 'svn:mime-type' 'text/x-csrc; charset=Shift_JIS' *.c
ただし、以下のように[auto-props]では利用できない。「;」と「=」がデリミタとして指定されてる模様。以下のようにすると「charset=Shift_JIS」として登録されてしまう。
*.csv = svn:eol-style=CRLF;svn:mime-type=text/plain;charset=Shift_JIS
<Location /var/www/projects/trac.cgi> SetHandler mod_python PythonHandler trac.web.modpython_frontend </Location>
/var/lib/trac/trac.htpasswd
# mkdir /var/www/projects # cp /usr/share/trac/cgi-bin/trac.cgi /var/www/projects/ # cp index.php /var/www/projects/ # mkdir /var/lib/trac # vi /etc/httpd/conf/trac.conf ---------------------------------------------------------- RewriteEngine on RewriteRule ^/projects/+$ /projects/index.html [L] RewriteCond /var/lib/trac/$1 -d RewriteRule ^/projects/([[:alnum:]]+)(/?.*) /projects/trac.cgi$2 [S=1,E=TRAC_ENV:/var/lib/trac/$1] RewriteRule ^/projects/(.*) /projects/index.html <Directory "/var/www/projects"> AllowOverride None Options ExecCGI -MultiViews +SymLinksIfOwnerMatch AddHandler cgi-script .cgi Order allow,deny Allow from all </Directory> <LocationMatch "/projects/[[:alnum:]]+/login"> AuthType Basic AuthName "trac" AuthUserFile /var/lib/trac/trac.htpasswd Require valid-user </LocationMatch> ----------------------------------------------------------
# vi /etc/httpd/conf/httpd.conf ---------------------------------------------------------- <VirtualHost 対象> Include "/etc/httpd/conf/trac.conf" </VirtualHost> ---------------------------------------------------------- # svnadmin create --fs-type fsfs /var/svn/testproj # trac-admin /var/lib/trac/testproj initenv # chown -R apache:apache /var/lib/trac/testproj # service httpd restart