wiki:TracIni

バージョン 1 (更新者 trac、2014/11/09 19:58:15) (diff)

--

The Trac Configuration File

Trac configuration is done by editing the trac.ini config file, located in <projectenv>/conf/trac.ini. Changes to the configuration are usually reflected immediately, though changes to the [components] or [logging] sections will require restarting the web server. You may also need to restart the web server after creating a global configuration file when none was previously present.

The trac.ini configuration file and its parent directory should be writable by the web server, as Trac currently relies on the possibility to trigger a complete environment reload to flush its caches.

Global Configuration

In versions prior to 0.11, the global configuration was by default located in $prefix/share/trac/conf/trac.ini or /etc/trac/trac.ini, depending on the distribution. If you're upgrading, you may want to specify that file to inherit from. Literally, when you're upgrading to 0.11, you have to add an [inherit] section to your project's trac.ini file. Additionally, you have to move your customized templates and common images from $prefix/share/trac/... to the new location.

Global options will be merged with the environment-specific options, where local options override global options. The options file is specified as follows:

[inherit]
file = /path/to/global/trac.ini

Multiple files can be specified using a comma-separated list.

Note that you can also specify a global option file when creating a new project, by adding the option --inherit=/path/to/global/trac.ini to trac-admin's initenv command. If you do not do this but nevertheless intend to use a global option file with your new environment, you will have to go through the newly generated conf/trac.ini file and delete the entries that will otherwise override those set in the global file.

There are two more entries in the [inherit] section, templates_dir for sharing global templates and plugins_dir, for sharing plugins. Those entries can themselves be specified in the shared configuration file, and in fact, configuration files can even be chained if you specify another [inherit] file there.

Note that the templates found in the templates/ directory of the TracEnvironment have precedence over those found in [inherit] templates_dir. In turn, the latter have precedence over the installed templates, so be careful about what you put there, notably if you override a default template be sure to refresh your modifications when you upgrade to a new version of Trac (the preferred way to perform TracInterfaceCustomization being still to write a custom plugin doing an appropriate ITemplateStreamFilter transformation).

Reference for settings

This is a brief reference of available configuration options, and their default settings.

[attachment]

max_size

添付ファイルの上限サイズを指定します (バイト単位)

262144
max_zip_size

.zip ダウンロードを許可する合計に対する上限サイズ (バイト単位) です。-1 を指定した場合は .zip でのダウンロード機能を無効にします。(1.0 以降)

2097152
render_unsafe_content

添付ファイルをブラウザ上で表示するか、単にダウンロード可能にしておくかどうかを指定します。

ブラウザはほとんどのファイルを HTML として解釈するため、悪意のあるユーザにクロスサイトスクリプティング攻撃を行うファイルの作成を許すことになります。

匿名ユーザが添付ファイルを作成できるような公開サイトでは、このオプションを無効 (これがデフォルトです) のままにしておくことを推奨します。

false

[browser]

color_scale

時期列の色付けを行うかどうかを指定します。

これにはソースコードの注釈と同じカラースケールを使います。青が古く、赤が新しいものとなります。 (0.11 以降)

enabled
downloadable_paths

ダウンロードできるようにするリポジトリのパスをリストで指定します。

ダウンロードを無効にしたい場合は空にします。そうでない場合は、許可するパスをカンマ区切りで指定します (ワイルドカードとして "*" が使えます)。 マルチリポジトリ環境でパスがデフォルトのリポジトリを指していない場合には、そのパスはリポジトリ名付きで指定する必要があります (例えば /reponame/trunk)。 また、パスのプレフィックスマッチング処理はシンプルhもので、自動でエイリアスの解決は行わないことに注意してください。 (0.10 以降)

/trunk, /branches/*, /tags/*
hide_properties

リポジトリブラウザで非表示にするバージョン管理のプロパティをカンマ区切りで指定します。 (0.9 以降)

svk:merge
intermediate_color

カラースケールの2つの線形補間を行う場合の中間部分に対応する色を (r,g,b) で指定します (intermediate_point 参照)。指定しない場合は、oldest_colornewest_color の中間色を使います。 (0.11 以降)

(デフォルトなし)
intermediate_point

0より大きく1未満の値を設定すると、カラースケールの補間処理で設定した位置で intermediate_color の色を使うようになります。 (0.11 以降)

(デフォルトなし)
newest_color

最新のものに対応する色を (r,g,b) で指定します。color_scale が有効の場合に、注釈履歴やソースブラウザの時期列で使います。 (0.11 以降)

(255, 136, 136)
oldest_color

最古のものに対応する色を (r,g,b) で指定します。color_scale が有効の場合に、注釈履歴やソースブラウザの時期列で使います。 (0.11 以降)

(136, 136, 255)
oneliner_properties

リポジトリブラウザで1行スタイルの Wiki として描画するバージョン管理のプロパティをカンマ区切りで指定します。

(0.11 以降)

trac:summary
render_unsafe_content

ファイルをそのままブラウザで表示するか、単にダウンロードになるようにするかどうかを指定します。

ブラウザはほとんどのファイルを HTML として解釈するため、悪意のあるユーザにクロスサイトスクリプティング攻撃を行うファイルの作成を許すことになります。

誰でもファイルをチェックインできる公開リポジトリでは、この設定を無効のままにすることを推奨します。(これがデフォルトです)

false
wiki_properties

リポジトリブラウザで Wiki として描画するバージョン管理のプロパティをカンマ区切りで指定します。

(0.11 以降)

trac:description

[changeset]

max_diff_bytes

チェンジセットページで差分をインラインで表示するファイルの合計の上限バイト数 (旧サイズと新サイズの和) を指定します。(0.10 以降)

10000000
max_diff_files

チェンジセットページで差分をインラインで表示するファイルの最大数を指定します。(0.10 以降)

0
wiki_format_messages

チェンジセットのメッセージに Wiki フォーマットを適用するかどうかを指定します。

この設定を無効にすると、チェンジセットのメッセージは pre フォーマットのテキストとして表示します。

true

[components]

このセクションは、プラグインが提供するコンポーネント、および、Trac 自身のコンポーネントを有効または無効にするのに使います。有効/無効にするコンポーネントは、オプションの名前で特定します。オプションの値で有効なのかどうかを決定します。値を enabled または on に設定するとそのコンポーネントは有効になります。その他の値 (通常は disabled または off) だとそのコンポーネントは無効になります。

オプション名は、コンポーネントの完全修飾名、または、コンポーネントに対するモジュール/パッケージのプレフィックスのどちらかです。前者は特定のコンポーネントを有効/無効にし、後者は特定のパッケージ/モジュールのコンポーネントを有効/無効にします。

次にあげる設定 (抜粋) を考えてみます。

[components]
trac.ticket.report.ReportModule = disabled
webadmin.* = enabled

1つ目のオプションは、レポートモジュールを無効にするように指定しています。 2つ目のオプションは、webadmin パッケージのすべてのコンポーネントを有効にするように指定しています。注意することは、末尾のワイルドカードはモジュール/パッケージにマッチさせるのに必要であることです。

アクティブなコンポーネントの一覧を参照するには、Trac についてプラグインページにアクセスします (CONFIG_VIEW 権限が必要です)。

関連項目: TracPlugins

[header_logo]

alt

ヘッダロゴ画像の代替テキストを指定します。

(please configure the [header_logo] section in trac.ini)
height

ヘッダロゴ画像の高さをピクセル単位で指定します。

-1
link

ヘッダロゴからリンクする URL を指定します。

(デフォルトなし)
src

ヘッダロゴに使う画像の URL を指定します。これには完全 URL、サーバ相対 URL、または、相対 URL が指定できます。

相対 URL の場合、/chrome URL 配下に対するものとなります。site/your-logo.png にすると、環境中にある htdocs フォルダにある your-logo.png を指します。common/your-logo.png にすると、htdocs_location URL に対応したフォルダにある your-logo.png を指します。単に your-logo.png を指定した場合は、後者と同じになります。

site/your_project_logo.png
width

ヘッダロゴ画像の幅をピクセル単位で指定します。

-1

[inherit]

htdocs_dir

共有する htdocs ディレクトリのパスを指定します。

このディレクトリの静的リソースを common と site URL に対して追加で、環境配下の URL である /chrome/shared にマッピングします。

複数の Trac 環境のインターフェイスに対して共通のカスタマイズを site.html で行うのに便利です。

(1.0 以降)

(デフォルトなし)
plugins_dir

共有させるプラグインディレクトリへのパスを指定します。

このディレクトリのプラグインは、この環境にある plugins ディレクトリのものに加えて、優先してロードします。

(0.11 以降)

(デフォルトなし)
templates_dir

共有するテンプレートディレクトリのパスを指定します。

このディレクトリのテンプレートを環境中の templates ディレクトリにあるテンプレートに加えてロードしますが、後者を優先して使用します。

(0.11 以降)

(デフォルトなし)

[intertrac]

このセクションは InterTrac プレフィックスを設定します。名前に "." を含んでいる設定は、"." までの設定名に対する InterTrac プレフィックスを定義します。名前に "." を含んでいない設定はエイリアスを定義します。

.url は他の Trac の URL を示すのに必ず指定します。同じサーバにある Trac 環境を示すのに相対 URL にすることもできます。

.title 情報は InterTrac リンクの上にカーソルを持っていたときのツールチップを表示するのに使います。

.compat互換モードを有効または無効にするのに使います。

  • 対象の Trac が 0.10 以下のバージョン (正確には r3526) で動作している場合、InterTrac リンクを処理する方法を知らないのでローカルの Trac が正しいリンクを用意します。すべてのリンクが機能するとは限らないが、大抵は動作します。これを互換モードと呼んでいて false を設定します。これがデフォルトです。
  • リモートの Trac が InterTrac リンクを処理する方法を知っている場合は、明示的にこの互換モードを無効にすることができ、そのときは any を設定して TracLinksInterTrac リンクにすることができます。

設定例:

[intertrac]
# -- エイリアスの設定例:
t = trac

# -- 外部 Trac へのリンク:
trac.title = Edgewall's Trac for Trac
trac.url = http://trac.edgewall.org

[interwiki]

[interwiki] セクションのオプションは、各々で InterWiki プレフィックスを定義します。オプションの名前はプレフィックスを定義し、値は URL と任意で説明を定義します。空白で区切った URL の続きが説明となります。パラメータ付きの URL をサポートしています。

例:

[interwiki]
MeatBall = http://www.usemod.com/cgi-bin/mb.pl?
PEP = http://www.python.org/peps/pep-$1.html Python Enhancement Proposal $1
tsvn = tsvn: TortoiseSvn に渡します

[logging]

log_file

log_typefile の場合、ログファイルのパスを指定します。相対パスは、Trac 環境にある log ディレクトリから相対的に解釈します。

trac.log
log_format

ログフォーマットを指定します。

何も設定しない場合は、以下のものを使用します。

Trac[$(module)s] $(levelname)s: $(message)s

Python logging ライブラリ (http://docs.python.org/library/logging.html 参照) がサポートしている標準のキー名に加えて、使えるものがあります。

  • $(path)s 現在の Trac 環境のパス
  • $(basename)s 現在の Trac 環境のパスのベース名
  • $(project)s プロジェクト名

%(...)s の代わりに $(...)s を使っていることに注意してください。後者の形式は ConfigParser 自身が解釈を行います。

例: ($(thread)d) Trac[$(basename)s:$(module)s] $(levelname)s: $(message)s

(0.10.5 以降)

(デフォルトなし)
log_level

ログレベルを指定します。

(CRITICAL, ERROR, WARN, INFO, DEBUG) のうちのどれかを指定します。

DEBUG
log_type

ロギングに使用する出力先を指定します。

(none, file, stderr, syslog, winlog) のうちのどれかを指定します。

none

[milestone]

stats_provider

ITicketGroupStatsProvider を実装しているコンポーネントの名前を指定します。 これはマイルストーンの表示でチケットのグループごとに集計を行うのに使います。

DefaultTicketGroupStatsProvider

[milestone-groups]

チケットのワークフローは現在設定できるようになっているため、たくさんのチケットステータスを用意できますが、単純にクローズしているチケットとそれ以外のチケットで表示することは大抵の場合で適切ではありません。このセクションでは、マイルストーンのプログレスバーで個々の配色で表示されるようにステータスのグループを作成することができます。

チケットのステータスでのみグループ化し、それ以外ではグループ化できないことに注意してください。特に、クローズしているチケットを解決方法で分類することはできません。

3つのグループ closednewactive の設定例 (デフォルトでは closed と active のみです)

# 'closed' グループは 'closed' チケットに対応
closed = closed

# .order: プログレスバーでの順序
closed.order = 0

# .query_args: 対応するクエリの任意のパラメータです。
#              この例では2つの列 ('作成' と '変更') を追加し
#              '作成' でソートするようにデフォルトを変更しています。
closed.query_args = group=resolution,order=time,col=id,col=summary,col=owner,col=type,col=priority,col=component,col=severity,col=time,col=changetime

# .overall_completion: 完了として割合を計算するグループを示します
closed.overall_completion = true

new = new
new.order = 1
new.css_class = new
new.label = 新規

# ※ このグループは他のステータスをひとまとめにする
active = *
active.order = 2

# .css_class: この区間に対する CSS クラス
active.css_class = open

# .label: このグループに表示するラベル
active.label = in progress

この定義に含めるステータスをカンマ区切りで指定します。また、'*' は任意のステータスを意味し、残りのすべてのステータスを1つのグループに関連付けるのに使用することができます。

CSS クラスは new (黄色)、open (無色)、closed (緑色) のいずれかにできます。それ以外のスタイルはカスタム CSS ルールを使って簡単に追加できます。例えば table.progress td.<class> { background: <color> }site/style.css ファイルに追加します。

(0.11 以降)

[mimeviewer]

max_preview_size

HTML プレビューするファイルの上限サイズを指定します。(0.9 以降)

262144
mime_map

追加する MIME タイプとキーワードのマッピングのリストを指定します。 マッピングはカンマ区切りで、MIME タイプごとに関連するキーワードまたはファイル拡張子のコロン区切り (":") のリストを持ちます。(0.10 以降)

text/x-dylan:dylan, text/x-idl:ice, text/x-ada:ads:adb
mime_map_patterns

追加する MIME タイプとそれに対応させるファイルパターンを指定します。マッピングはカンマ区切りで、マッピングごとに MIME タイプとファイルマッチングに使う Python 正規表現をコロン (:) で区切るようにします。(1.0 以降)

text/plain:README|INSTALL|COPYING.*
tab_width

ファイルのプレビューで表示するタブの幅を指定します。(0.9 以降)

8
treat_as_binary

バイナリデータとして扱わせる MIME タイプをカンマ区切りで指定します。(0.11.5 以降)

application/octet-stream, application/pdf, application/postscript, application/msword, application/rtf

[notification]

admit_domains

メールアドレス (localdomain のような) として有効だと判定させたいドメイン名をカンマ区切りで指定します。

(デフォルトなし)
always_notify_owner

常にチケット担当者に通知を送信するかどうかを指定します。( 0.9 以降)

false
always_notify_reporter

常に報告者フィールドにあるアドレスに通知を送信するかどうかを指定します。

false
always_notify_updater

チケットを変更した人とこれまでにそのチケットを変更した人に常に通知を送信するかどうかを指定します。

true
ambiguous_char_width

通知メールのテーブルで使用する ambiguous 文字の幅 ('single' または 'double') を指定します。

'single' の場合、US-ASCII 文字と同じ幅となります。これは大部分のユーザが期待するものです。'double' の場合、US-ASCII 文字の倍の幅になります。これは CJK ユーザが期待するものです。 (0.12.2 以降)

single
batch_subject_template

ticket_subject_template に似ていますが一括更新用のものです。

デフォルトでは $prefix Batch modify: $tickets_descr になります (1.0 以降)

$prefix Batch modify: $tickets_descr
email_sender

IEmailSender を実装しているコンポーネントの名前を指定します。

このコンポーネントは、メール送信による通知処理で使います。Trac は今のところ SMTP サーバと接続を行う SmtpEmailSendersendmail と互換性のあるコマンドを実行する SendmailEmailSender を用意しています。(0.12 以降)

SmtpEmailSender
ignore_domains

メールアドレスだと判定させたくないドメイン名をカンマ区切りで指定します。(Kerberos ドメイン付きのユーザ名のため)

(デフォルトなし)
message_id_hash

Hash algorithm to create unique Message-ID header. (since 1.0.13)

md5
mime_encoding

メールの MIME エンコーディングを指定します。

有効な設定は、Base64 エンコーディングの base64、Quoted-Printable の qp、エンコーディングなしの none で内容がすべて ASCII コードなら 7bit、そうでないなら 8bit として送信します。(0.10 以降)

none
sendmail_path

Path to the sendmail executable.

The sendmail program must accept the -i and -f options. (since 0.12)

sendmail
smtp_always_bcc

通知を常に送信するメールアドレスを指定します。メールアドレスは見えないようになります (Bcc:)。 (0.10 以降)

(デフォルトなし)
smtp_always_cc

通知を常に送信するメールアドレスを指定します。メールアドレスはすべての受信者が見ることができます (Cc:)。

(デフォルトなし)
smtp_default_domain

ドメインがないアドレスに付加するデフォルトのホスト名/ドメイン名を指定します。

(デフォルトなし)
smtp_enabled

メール通知機能を有効にするかどうかを指定します。

false
smtp_from

通知メールに使用する送信者アドレスを指定します。

trac@localhost
smtp_from_author

通知メールの送信者として実行者の名前を使うかどうかを指定します。(1.0 以降)

false
smtp_from_name

通知メールに使用する送信者名を指定します。

(デフォルトなし)
smtp_password

SMTP サーバのパスワードを指定します。(0.9 以降)

(デフォルトなし)
smtp_port

メール通知に使用する SMTP サーバのポート番号を指定します。

25
smtp_replyto

通知メールに使用する返信先アドレスを指定します。

trac@localhost
smtp_server

メール通知に使用する SMTP サーバのホスト名を指定します。

localhost
smtp_subject_prefix

通知メールの件名の先頭に追加するテキストを指定します。

設定が定義されていない場合は、[$project_name] プレフィックスとなります。 プレフィックスが必要ない場合は、空を指定すると無効になります。(0.10.1 以降)

__default__
smtp_user

SMTP サーバのユーザ名を指定します。(0.9 以降)

(デフォルトなし)
ticket_subject_template

通知メールの件名を生成するのに使う Genshi テキストテンプレートを指定します。

デフォルトでは、件名のテンプレートは $prefix #$ticket.id: $summary です。 $prefixsmtp_subject_prefix の設定値になります。 (0.11 以降)

$prefix #$ticket.id: $summary
use_public_cc

受信者アドレスを Cc で他の更新者から見えるようにするかどうかを指定します。

このオプションに無効 (デフォルト) を設定している場合、受信者アドレスは Bcc に列挙します。(0.10 以降)

false
use_short_addr

ホスト名/ドメイン名なし (つまりユーザ名のみ) のメールアドレスを許可するかどうかを指定します。

SMTP サーバはそれらのアドレスを受け入れて、FQDN を追加する、またはローカル配送のどちらかを行うべきです。(0.10 以降)

false
use_tls

SMTP 接続により通知を送信する際に SSL/TLS を使用するかどうかを指定します。(0.10 以降)

false

[project]

admin

プロジェクト管理者のメールアドレスを指定します。

(デフォルトなし)
admin_trac_url

この Trac で発生したエラーの報告先になる Trac サイトのベース URL を指定します。

これには、完全 URL または相対 URL、もしくはこの Trac を指す '.' を指定できます。空の値にすると報告用のボタンは使えなくなります。 (0.11.3 以降)

.
descr

プロジェクトの概要を指定します。

My example project
footer

ページフッタのテキストを指定します (右揃え)。

Visit the Trac open source project at<br /><a href="http://trac.edgewall.org/">http://trac.edgewall.org/</a>
icon

プロジェクトアイコンの URL を指定します。

common/trac.ico
name

プロジェクトの名前を指定します。

My Project
url

プロジェクトに対するメインの Web サイトの URL を指定します。通常は base_url のサイトにあります。通知メールでこれを使います。

(デフォルトなし)

[query]

default_anonymous_query

匿名ユーザ向けのデフォルトのクエリを指定します。このクエリは、クエリ言語 シンタックス、または query: Trac リンクで使う ? で始まる URL クエリ文字列のどちらかを指定します。 (0.11.2 以降)

status!=closed&cc~=$USER
default_query

認証しているユーザ向けのデフォルトのクエリを指定します。このクエリは、クエリ言語 シンタックス、または query: Trac リンクで使う ? で始まる URL クエリ文字列のどちらかを指定します。 (0.11.2 以降)

status!=closed&owner=$USER
items_per_page

チケットクエリで1ページあたりに表示するチケット数のデフォルトを指定します (0.11 以降)

100
ticketlink_query

チケットの値にリンクを作成するときに使用するベースのクエリを指定します。これは query: Trac リンク で使う ? で始まる URL クエリ文字列です。 (0.12 以降)

?status=!closed

[report]

items_per_page

チケットのレポートで1ページあたりに表示するチケット数のデフォルトを指定します (0.11 以降)

100
items_per_page_rss

レポートの RSS フィードに表示するチケット数を指定します (0.11 以降)

0

[repositories]

リポジトリを新規登録するやり方の1つは、trac.ini[repositories] セクションに追加することです。 これは便利なエイリアスや一時的なリポジトリの設定、インストール時の初期段階中に特に適しています。

このセクションで使用する書式の詳細については TracRepositoryAdmin を、他の方法についてはこのページの続きを参照してください。

(0.12 以降)

[revisionlog]

default_log_limit

TracRevisionLog の limit 引数に対するデフォルト値を指定します。 (0.11 以降)

100
graph_colors

TracRevisionLog のグラフ表示に使う配色をカンマ区切りで指定します。(1.0 以降)

#cc0,#0c0,#0cc,#00c,#c0c,#c00

[roadmap]

stats_provider

ITicketGroupStatsProvider を実装しているコンポーネントの名前を指定します。 これはロードマップの表示でチケットのグループごとに集計を行うのに使います。

DefaultTicketGroupStatsProvider

[search]

default_disabled_filters

検索ページのフィルタをデフォルトで無効にするものを指定します。クイック検索機能のフィルタにも適用します。デフォルトのコンポーネントが定義しているフィルタ名は wikiticketmilestonechangeset です。プラグインについては、ISearchSource インターフェイスの実装を探してください。get_search_method() メソッドが返すタプルの最初の要素になります。無効にしても、検索ページでユーザが手動でフィルタを有効にすることができます。(0.12 以降)

(デフォルトなし)
min_query_length

検索の実行を許可する検索文字列の最小の長さを指定します。

3

[sqlite]

extensions

SQLite 拡張のパスを Trac 環境ディレクトリからの相対パス、または、絶対パスで指定します。(0.12 以降)

(デフォルトなし)

[svn]

branches

ブランチとして分類させるパスをカンマ区切りで指定します。 パスが '*' で終わっている場合は、そのパス配下にあるすべてのエントリになります。 例: /trunk, /branches/*, /projectAlpha/trunk, /sandbox/*

trunk, branches/*
eol_style

svn:eol-style プロパティが native の場合の改行文字列を指定します。

native (デフォルト) の場合、サーバ上での改行コードに展開されます。それ以外の LF, CRLF, CR の場合、指定した改行コードに展開されます。

(1.0.2 以降)

native
tags

タグとして分類させるパスをカンマ区切りで指定します。

パスが '*' で終わっている場合は、そのパス配下にあるすべてのエントリになります。 例: /tags/*, /projectAlpha/tags/A-1.0, /projectAlpha/tags/A-v1.1

tags/*

[svn:externals]

Subversion に対する TracBrowser はフォルダの svn:externals プロパティを解釈できるようになっています。Trac はリモートにあるリポジトリを参照できないため、デフォルトでは単に URL をリンクに変換するだけです。

しかし、対象のリポジトリを参照できるようにしている Trac (または ViewVC などのリポジトリブラウザ) がある場合は、外部参照の URL に対してそのリポジトリブラウザを使うように設定することができます。このマッピングは TracIni[svn:externals] セクションで行います。

例:

[svn:externals]
1 = svn://server/repos1                       http://trac/proj1/browser/$path?rev=$rev
2 = svn://server/repos2                       http://trac/proj2/browser/$path?rev=$rev
3 = http://theirserver.org/svn/eng-soft       http://ourserver/viewvc/svn/$path/?pathrev=25914
4 = svn://anotherserver.com/tools_repository  http://ourserver/tracs/tools/browser/$path?rev=$rev

上記では、外部参照 svn://anotherserver.com/tools_repository/tags/1.1/toolshttp://ourserver/tracs/tools/browser/tags/1.1/tools?rev= にマッピングするようになります。(また外部参照がリビジョン番号を指定している場合 rev にはリビジョン番号が割り当てられます。詳細は SVN Book on externals を参照してください)。

注意事項として、設定ファイルのパーサーの制限により URL 自体をキーにすることができないため、上記セクションのキーに単なるプレースホルダとして数字を使っています。

最後に、Subversion 1.5 から導入された相対 URL はまだサポートしていません。

(0.11 以降)

[ticket]

default_cc

新規登録チケットに対するデフォルトの関係者を指定します。

(デフォルトなし)
default_component

新規登録チケットに対するデフォルトのコンポーネントを指定します。

(デフォルトなし)
default_description

新規登録チケットに対するデフォルトの詳細を指定します。

(デフォルトなし)
default_keywords

新規登録チケットに対するデフォルトのキーワードを指定します。

(デフォルトなし)
default_milestone

新規登録チケットに対するデフォルトのマイルストーンを指定します。

(デフォルトなし)
default_owner

新規登録チケットに対するデフォルトの担当者を指定します。

< default >
default_priority

新規登録チケットに対するデフォルトの優先度を指定します。

major
default_resolution

解決 (クローズ) になるチケットに対するデフォルトの解決方法を指定します (0.11 以降)。

fixed
default_severity

新規登録チケットに対するデフォルトの重要度を指定します。

(デフォルトなし)
default_summary

新規登録チケットに対するデフォルトの概要 (タイトル) を指定します。

(デフォルトなし)
default_type

新規登録チケットに対するデフォルトの分類を指定します。(0.9 以降)

defect
default_version

新規登録チケットに対するデフォルトのバージョンを指定します。

(デフォルトなし)
max_comment_size

コメントの最大文字数で指定します。(0.11.2 以降)

262144
max_description_size

チケットの詳細の最大文字数を指定します。(0.11 以降)

262144
max_summary_size

概要の最大文字数で指定します。(1.0.2 以降)

262144
preserve_newlines

Wiki フォーマッタが Wiki テキスト中の改行を考慮するかどうかを指定します。 'default' を設定した場合、新規作成した環境下では 'yes' となりますが、アップグレードしてきた環境では以前の挙動のまま (つまり 'no') となります。 (0.11 以降)

default
restrict_owner

チケットの担当者フィールドにドロップダウンメニューを使うようになります。 このオプションを有効にする前にパフォーマンスに対する影響を把握するようにしてください。ドロップダウンで担当振り分けを参照。

ドロップダウンメニュー中ではメールアドレスを隠せないことに注意してください。そのため、メールアドレスを保護したままにしないといけない場合には、このオプションを使用するべきではありません。 (0.9 以降)

false
workflow

チケットのアクションに使用するワークフローコントローラを順番に指定します。(0.11 以降)

ConfigurableTicketWorkflow

[ticket-custom]

このセクションでは、チケットに追加したいフィールドを定義することができます。詳細については TracTicketsCustomFields を参照してください。

[ticket-workflow]

チケットのワークフローはプラグインで制御します。デフォルトで制御しているのは ConfigurableTicketWorkflow コンポーネントのみです。 そのコンポーネントは trac.ini ファイルのこのセクションでワークフローを設定するようになっています。詳細については TracWorkflow を参照してください。

(0.11 以降)

[timeline]

abbreviated_messages

Wiki フォーマットしたイベントメッセージを切り詰めるかどうかを指定します。

これは描画のみに有効でイベントプロバイダは無視することができます。詳細は個々のドキュメントを参照してください。 (0.11 以降)

enabled
changeset_collapse_events

同じ更新者で完全に同じメッセージを持っている連続したチェンジセットを1つのイベントになるようにするかどうかを指定します。このイベントは、更新履歴ページでのチェンジセットの範囲にリンクするようになります。 (0.11 以降)

false
changeset_long_messages

Wiki フォーマットになっているチェンジセットのメッセージを複数行になるようにするかそうでないようにするかを指定します。

この設定を指定しないか false にして wiki_format_messages を true にすると、チェンジセットのメッセージは1行スタイルになり、箇条書きなどの書式は反映されないようになります。

false
changeset_show_files

表示するファイル数を指定します。(-1は無制限、0は無効になります)

location を指定することもできます。変更ファイルの共通しているプレフィックスを表示するようになります。(0.11 以降)

0
default_daysback

タイムラインに表示する日数のデフォルトを指定します。 (0.9 以降)

30
max_daysback

タイムラインに表示できる最大日数 (-1 は無制限) を指定します。(0.11 以降)

90
newticket_formatter

新規登録チケットの詳細を表示する際にどのフォーマッタを使用するかを指定します (例えば 'html' や 'oneliner')。 'oneliner' の場合は、[timeline] abbreviated_messages の設定内容を適用します。 (0.11 以降)

oneliner
ticket_show_details

タイムラインにチケットの登録と解決だけでなくすべてのチケットの変更を表示するかどうかを指定します。(0.9 以降)

false

[trac]

auth_cookie_lifetime

認証用クッキーの生存期間を秒単位で指定します。

この値を使って、ブラウザは認証情報をどれくらいの間キャッシュするか、つまり、ユーザのアクセスがどれくらいない時には再度ログインする必要があるか、を決めます。デフォルト値は0で、ブラウザの終了時にクッキーは期限切れになります。(0.12 以降)

0
auth_cookie_path

認証用クッキーのパスを指定します。クッキーを他の Trac インスタンスと共有したい場合には、共通になるベースのパスを設定します。(0.12 以降)

(デフォルトなし)
authz_file

Subversion authz ファイル のパスを指定します。 authz 権限チェックを有効にするには、AuthzSourcePolicy 権限ポリシーを [trac] permission_policies に追加してください。

(デフォルトなし)
authz_module_name

authz_file で使うデフォルトのリポジトリに対応するモジュール名を指定します。空の場合はグローバルセクションを使用します。

(デフォルトなし)
auto_preview_timeout

操作のないときに実行する Wiki プレビューの自動更新の時間を秒で指定します。この設定には浮動小数点を指定できます。値を小さくするとサーバが大量のリクエストを処理することになります。0を指定すると自動プレビューを無効にします。デフォルトは2.0秒です。(0.12 以降)

2.0
auto_reload

テンプレートの変更後に自動でリロードするかどうかを指定します。

disabled
backup_dir

データベースバックアップの場所を指定します。

db
base_url

Trac の展開先を指す URL を指定します。

これは Web アクセスではないところからドキュメントを提示する場合に使用するベース URL です。例えば、通知メールで Trac のリソースを指し示す URL を入れる場合などです。

(デフォルトなし)
check_auth_ip

認証チェックに IP アドレスを使用するかどうかを指定します。(0.9 以降)

false
database

このプロジェクトのデータベース接続文字列を指定します。

sqlite:db/trac.db
debug_sql

DEBUG レベルのときに SQL クエリをログに表示するかどうかを指定します。(0.11.5 以降)

disabled
default_charset

文字コードが不明な場合に使用する文字コードを指定します。

utf-8
default_date_format

日付書式を指定します。有効な設定は ISO 8601 形式になる 'iso8601' で、空のままにするとブラウザの言語設定に基づいたデフォルト日付書式となります。(1.0 以降)

(デフォルトなし)
default_dateinfo_format

日付情報の書式を指定します。有効な設定は相対書式で表示する 'relative' と絶対書式で表示する 'absolute' です。(1.0 以降)

relative
default_handler

ベース URL へのリクエストを処理するコンポーネントの名前を指定します。

選択肢には TimelineModuleRoadmapModuleBrowserModuleQueryModuleReportModuleTicketModuleWikiModule があり、デフォルトは WikiModule です。(0.9 以降)

WikiModule
default_language

個人設定がない場合に使う言語を指定します。(0.12.1 以降)

(デフォルトなし)
default_timezone

デフォルトで使うタイムゾーンを指定します。

(デフォルトなし)
genshi_cache_size

テンプレートローダがメモリにキャッシュするテンプレートの最大数を指定します。デフォルト値は128です。もっと多くのテンプレートを使っていてメモリに余裕がある場合は、大きな値にすることもできます。メモリが少ない場合には、小さくすることもできます。

128
htdocs_location

/chrome/common/ 配下の静的リソースを処理するベース URL を指定します。

空のままにすることもでき、Trac が自分で単にそのリソースを処理するようになります。

上級者は trac-admin ... deploy <deploydir> を一緒に使って Web サーバが直接 Trac の静的リソースを処理するようにできます。しかし、<deploydir>/htdocs/common ディレクトリにしか適用されず、デプロイしているリソース (例えばプラグインのリソース) に対してはこの方法は有効ではありません。Web サーバに対し、追加でリライトルールが必要になります。

(デフォルトなし)
ignore_auth_case

ログイン名を小文字に変換するかどうかを指定します。(0.9 以降)

false
jquery_location

jQuery JavaScript ライブラリ (バージョン 1.7.2) の URL を指定します。

空の値を指定すると、Trac にバンドルしているコピーを使って jQuery をロードします。

もしくは、jQuery を CDN からロードすることができます。例えば http://code.jquery.com/jquery-1.7.2.min.jshttp://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.2.min.js または https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js を指定します。

(1.0 以降)

(デフォルトなし)
jquery_ui_location

jQuery UI JavaScript ライブラリ (バージョン 1.8.21) の URL を指定します。

空の値を指定すると、Trac にバンドルしているコピーを使って jQuery UI をロードします。

もしくは、jQuery UI を CDN からロードすることができます。例えば https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.21/jquery-ui.min.js または http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.21/jquery-ui.min.js を指定します。

(1.0 以降)

(デフォルトなし)
jquery_ui_theme_location

jQuery UI JavaScript ライブラリ (バージョン 1.8.21) で使用するテーマの URL を指定します。

空の値を指定すると、Trac にバンドルしているコピーからカスタムの Trac jQuery UI テーマをロードします。

もしくは、jQuery UI テーマを CDN からロードすることができます。例えば https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.21/themes/start/jquery-ui.css または http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.21/themes/start/jquery-ui.css を指定します。

(1.0 以降)

(デフォルトなし)
mainnav

mainnav ナビゲーションバーに表示する項目の順番を ID で指定します。TracNavigation も参照してください。

wiki, timeline, roadmap, browser, tickets, newticket, search
metanav

metanav ナビゲーションバーに表示する項目の順番を ID で指定します。TracNavigation も参照してください。

login, logout, prefs, help, about
mysqldump_path

MySQL データベースのバックアップに使う mysqldump の場所を指定します。

mysqldump
never_obfuscate_mailto

show_email_addresses が false、または、EMAIL_VIEW 権限がない場合でも、Wiki 中に明示的に記述してある mailto: リンクを隠さないようにするかどうかを指定します。(0.11.6 以降)

false
permission_policies

適用する順番で IPermissionPolicy を実装しているコンポーネントのリストを指定します。それらのコンポーネントは Trac のソリースに対して細かい粒度のアクセス制御を行います。 DefaultPermissionPolicy (0.11 以前の挙動) と LegacyAttachmentPolicy (ATTACHMENT_* 権限を個々のレルムの権限にマッピング) がデフォルトです。

DefaultPermissionPolicy, LegacyAttachmentPolicy
permission_store

IPermissionStore を実装しているコンポーネントの名前を指定します。これはユーザとグループの権限を管理するのに使います。

DefaultPermissionStore
pg_dump_path

Postgres データベースのバックアップに使う pg_dump の場所を指定します。

pg_dump
repository_dir

デフォルトのリポジトリへのパスを指定します。これは相対パスにすることもできます。(0.11 以降)

このオプションは非推奨で、リポジトリは repositories セクションで定義、もしくは「リポジトリ」管理パネルを使うようにしてください。(0.12 以降)

(デフォルトなし)
repository_sync_per_request

ページのリクエストのたびに同期を行うリポジトリのリストを指定します。

post-commit フックから trac-admin $ENV changeset added を実行するようにすべてのリポジトリで設定しているなら、このオプションを空にしてください (推奨)。そうでないのであれば、リポジトリの名前をカンマ区切りで指定します。注意事項として、これはパフォーマンスに悪影響があり、チェンジセット・リスナーが指定したリポジトリからのイベント取得を妨げることになります。デフォルトは、下位互換のためデフォルトのリポジトリと同期を行います。(0.12 以降)

(default)
repository_type

デフォルトになるリポジトリの接続方法を指定します。(0.10 以降)

TracIni#repositories-section repositories セクションで定義するリポジトリや「リポジトリ」管理パネルなどでも使用します。(0.12 以降)

svn
request_filters

リクエストに適用するフィルタを順番に指定します。 (0.10 以降)

(デフォルトなし)
resizable_textareas

<textarea> フィールドをリサイズできるようにするかどうかを指定します。JavaScript が必要になります。 (0.12 以降)

true
secure_cookies

HTTPS 接続でのみ Cookie を使用するかどうかを指定します。

true に設定すると、すべての Cookie に secure フラグを設定することでサーバへ HTTPS 接続でのみ Cookie を送信するようにします。Trac を HTTPS 経由でだけアクセス可能にする場合、これを指定します。(0.11.2 以降)

disabled
show_email_addresses

ユーザ名の代わりにメールアドレスを表示するかどうかを指定します。false の場合、EMAIL_VIEW 権限を持たないユーザにはメールアドレスを表示しないようになります。(0.11 以降)

false
show_ip_addresses

リソース編集時の IP アドレスを表示するかどうかを指定します (例えば Wiki)。 1.0.5 でこのオプションは非推奨となり 1.3.1 で削除予定です。(0.11.3 以降)

false
timeout

データベース接続のタイムアウトを秒単位で指定します。 タイムアウトなしを指定するには '0' を使います。(0.11 以降)

20
use_base_url_for_redirect

[trac] base_url の設定値をリダイレクトに使用するかどうかを指定します。

HTTP プロキシの背後で Trac を実行するような環境では、アクセスに使用した URL を自動で再構成することはできません。強制的に base_url 設定値にリダイレクトさせるこのオプションを設定しなければいけないかも知れません。これにより、リダイレクトに使われるこの URL からだけこの環境を利用できるような制限が設けられます。(0.10.5 以降)

disabled
use_chunked_encoding

有効の場合、HTTP/1.1 の chunked エンコーディングでコンテンツを送信します。そうでない場合には、コンテンツの全体を描画してから Content-Length ヘッダ付きでコンテンツを送信します。(1.0.6 以降)

false
use_xsendfile

true の場合、Web サーバがファイルの中身を処理できるように、ファイル送信時に X-Sendfile ヘッダを送信し中身を送信しません。Apache の mod_xsendfile や lighttpd のように、このようなヘッダを処理できるようにする必要があります。(1.0 以降)

false
wiki_toolbars

Wiki <textarea> の上部にシンプルなツールバーを追加するかを指定します。(1.0.2 以降)

true
xsendfile_header

use_xsendfile が有効の場合に使用するヘッダを指定します。Nginx を使用している場合には、X-Accel-Redirect を設定してください。(1.0.6 以降)

X-Sendfile

[versioncontrol]

allowed_repository_dir_prefixes

リポジトリ管理パネルで追加や変更の際に、リポジトリのディレクトリとして許可するプレフィックスをカンマ区切りで指定します。このリストが空の場合は、すべてのディレクトリを許可します。 (0.12.1 以降)

(デフォルトなし)

[wiki]

ignore_missing_pages

存在しないページを指す CamelCase リンクをハイライトするかどうかを指定します。 (0.9 以降)

false
max_size

Wiki ページの最大文字数を指定します。(0.11.2 以降)

262144
render_unsafe_content

危険性のある <script><embed> のような HTML タグを HTML WikiProcessor で有効にするかどうかを指定します。(0.10.4 以降) 匿名ユーザが Wiki を編集できるような公開サイトでは、このオプションは無効のまま (デフォルト) にしておくことを推奨します。

false
safe_schemes

「安全」とみなす URI スキームのリストを指定します。[wiki] render_unsafe_contentfalse の場合に、外部リンクとして表示します。 (0.11.8 以降)

cvs, file, ftp, git, irc, http, https, news, sftp, smb, ssh, svn, svn+ssh
split_page_names

WikiPageNames を空白文字で分割するかどうかを指定します。(0.10 以降)

false

Reference for special sections

  1. [components]
  2. [extra-permissions]
  3. [milestone-groups]
  4. [repositories]
  5. [svn:externals]
  6. [ticket-custom]
  7. [ticket-workflow]

[components]

This section is used to enable or disable components provided by plugins, as well as by Trac itself. The component to enable/disable is specified via the name of the option. Whether its enabled is determined by the option value; setting the value to enabled or on will enable the component, any other value (typically disabled or off) will disable the component.

The option name is either the fully qualified name of the components or the module/package prefix of the component. The former enables/disables a specific component, while the latter enables/disables any component in the specified package/module.

Consider the following configuration snippet:

[components]
trac.ticket.report.ReportModule = disabled
webadmin.* = enabled

The first option tells Trac to disable the report module. The second option instructs Trac to enable all components in the webadmin package. Note that the trailing wildcard is required for module/package matching.

See the Plugins page on About Trac to get the list of active components (requires CONFIG_VIEW permissions.)

See also: TracPlugins

[extra-permissions]

(since 0.12)

Custom additional permissions can be defined in this section when ExtraPermissionsProvider? is enabled.

[milestone-groups]

(since 0.11)

As the workflow for tickets is now configurable, there can be many ticket states, and simply displaying closed tickets vs. all the others is maybe not appropriate in all cases. This section enables one to easily create groups of states that will be shown in different colors in the milestone progress bar.

Example configuration (the default only has closed and active):

closed = closed
# sequence number in the progress bar
closed.order = 0
# optional extra param for the query (two additional columns: created and modified and sort on created)
closed.query_args = group=resolution,order=time,col=id,col=summary,col=owner,col=type,col=priority,col=component,col=severity,col=time,col=changetime
# indicates groups that count for overall completion percentage
closed.overall_completion = true

new = new
new.order = 1
new.css_class = new
new.label = new

# one catch-all group is allowed
active = *
active.order = 2
# CSS class for this interval
active.css_class = open
# Displayed label for this group
active.label = in progress

The definition consists in a comma-separated list of accepted status. Also, '*' means any status and could be used to associate all remaining states to one catch-all group.

The CSS class can be one of: new (yellow), open (no color) or closed (green). New styles can easily be added using the following selector: table.progress td.<class>

[repositories]

(since 0.12 multirepos)

One of the alternatives for registering new repositories is to populate the [repositories] section of the trac.ini.

This is especially suited for setting up convenience aliases, short-lived repositories, or during the initial phases of an installation.

See TracRepositoryAdmin for details about the format adopted for this section and the rest of that page for the other alternatives.

[svn:externals]

(since 0.11)

The TracBrowser for Subversion can interpret the svn:externals property of folders. By default, it only turns the URLs into links as Trac can't browse remote repositories.

However, if you have another Trac instance (or an other repository browser like ViewVC) configured to browse the target repository, then you can instruct Trac which other repository browser to use for which external URL.

This mapping is done in the [svn:externals] section of the TracIni

Example:

[svn:externals]
1 = svn://server/repos1                       http://trac/proj1/browser/$path?rev=$rev
2 = svn://server/repos2                       http://trac/proj2/browser/$path?rev=$rev
3 = http://theirserver.org/svn/eng-soft       http://ourserver/viewvc/svn/$path/?pathrev=25914
4 = svn://anotherserver.com/tools_repository  http://ourserver/tracs/tools/browser/$path?rev=$rev

With the above, the svn://anotherserver.com/tools_repository/tags/1.1/tools external will be mapped to http://ourserver/tracs/tools/browser/tags/1.1/tools?rev= (and rev will be set to the appropriate revision number if the external additionally specifies a revision, see the SVN Book on externals for more details).

Note that the number used as a key in the above section is purely used as a place holder, as the URLs themselves can't be used as a key due to various limitations in the configuration file parser.

Finally, the relative URLs introduced in Subversion 1.5 are not yet supported.

[ticket-custom]

In this section, you can define additional fields for tickets. See TracTicketsCustomFields for more details.

[ticket-workflow]

(since 0.11)

The workflow for tickets is controlled by plugins. By default, there's only a ConfigurableTicketWorkflow component in charge. That component allows the workflow to be configured via this section in the trac.ini file. See TracWorkflow for more details.


See also: TracGuide, TracAdmin, TracEnvironment