Anonymous avatar Anonymous committed f0a8c6d

Synced docs with wiki.

Comments (0)

Files changed (34)

wiki-default/TracAccessibility

 
 Not every user has a graphic environment with a mouse or other pointing device. Some users rely on keyboard, alternative keyboard or voice input to navigate links, activate form controls, etc. In Trac, we work to assure users may interact with devices other than a pointing device.
 
-Trac supports accessibility keys for the most common operations. On Windows and Linux platforms, press any of the keys listed below in combination with the `<Ctrl>` key; on a Mac, use the `<alt>` key instead.
+Trac supports accessibility keys for the most common operations. On Windows and Linux platforms, press any of the keys listed below in combination with the `<Alt>` key; on a Mac, use the `<ctrl>` key instead.
+
+''Note that when using Internet Explorer on Windows, you need to hit enter after having used the access key.''
 
 == Global Access Keys ==
 
  * `2` - [wiki:TracTimeline Timeline]
  * `3` - [wiki:TracRoadmap Roadmap]
  * `4` - [wiki:TracSearch Search]
- * `5` - TracFaq
- * `6` - TracGuide / Documentation
+ * `6` - [wiki:TracGuide Trac Guide / Documentation]
  * `7` - [wiki:TracTickets New Ticket]
- * `9` - About Trac
- * `0` - TracAccessibility 
+ * `9` - [../about About Trac]
+ * `0` - This page
 
 ----
 See also: TracGuide

wiki-default/TracCgi

 
 To install Trac as a CGI script, you need to make the `trac.cgi` executable as a CGI by your web server. If you're using [http://httpd.apache.org/ Apache HTTPD], there are a couple ways to do that:
 
- 1. Use a `ScriptAlias` to map an URL to the `trac.cgi` script
+ 1. Use a `ScriptAlias` to map a URL to the `trac.cgi` script
  2. Copy the `trac.cgi` file into the directory for CGI executables used by your web server (commonly named `cgi-bin`). You can also create a symbolic link, but in that case make sure that the `FollowSymLinks` option is enabled for the `cgi-bin` directory.
 
 The first option is recommended as it also allows you to map the CGI to a friendly URL.
 {{{
 ScriptAlias /trac /usr/share/trac/cgi-bin/trac.cgi
 
-# Trac need to know where the database is located
+# Trac needs to know where the database is located
 <Location "/trac">
   SetEnv TRAC_ENV "/path/to/projectenv"
 </Location>
 </Directory>
 }}}
 
-Note that whatever URL path you mapped the `trac.cgi` script to, the path `/chrome/common` is the path you have to append to that location to intercept requests to the static resources.
+Note that whatever URL path you mapped the `trac.cgi` script to, the path `/chrome/common` is the path you have to append to that location to intercept requests to the static resources. 
 
 For example, if Trac is mapped to `/cgi-bin/trac.cgi` on your server, the URL of the Alias should be `/cgi-bin/trac.cgi/chrome/common`.
 
+Alternatively, you can set the `htdocs_location` configuration option in [wiki:TracIni trac.ini]:
+{{{
+[trac]
+htdocs_location = /trac-htdocs
+}}}
+
+Trac will then use this URL when embedding static resources into HTML pages. Of course, you still need to make the Trac `htdocs` directory available through the web server at the specified URL, for example by copying (or linking) the directory into the document root of the web server.
+
 == Adding Authentication ==
 
 The simplest way to enable authentication with Apache is to create a password file. Use the `htpasswd` program to create the password file:
 For better security, it is recommended that you either enable SSL or at least use the “Digest” authentication scheme instead of “Basic”. Please read the [http://httpd.apache.org/docs/2.0/ Apache HTTPD documentation] to find out more.
 
 ----
-See also:  TracGuide, TracInstall, TracFastCgi, TracModPython
+See also:  TracGuide, TracInstall, TracFastCgi, TracModPython

wiki-default/TracEnvironment

 postgres://johndoe:letmein@localhost/trac
 }}}
 
-If PostgreSQL is running on a non-standard port (for example 9431), use:
+If PostgreSQL is running on a non-standard port (for example 9342), use:
 {{{
 postgres://johndoe:letmein@localhost:9342/trac
 }}}

wiki-default/TracFastCgi

 
 The FastCGI front-end was developed primarily for use with alternative webservers, such as [http://www.lighttpd.net/ lighttpd].
 
-lighttpd a secure, fast, compliant and very flexible web-server which has been optimized for high-performance
+lighttpd is a secure, fast, compliant and very flexible web-server that has been optimized for high-performance
 environments.  It has a very low memory footprint compared to other web servers and takes care of CPU load.
 
 For using `trac.fcgi` with lighttpd add the following to your lighttpd.conf:

wiki-default/TracGuide

    * TracImport -- Importing tickets from other bug databases.
    * TracIni -- Trac configuration file reference. 
    * TracPermissions -- Access control and permissions.
+   * TracInterfaceCustomization -- Customizing the Trac interface.
    * TracPlugins -- Installing and managing Trac extensions.
    * TracWiki -- How to use the built-in Wiki.
    * TracBrowser -- Browsing source code with Trac.

wiki-default/TracImport

   * bugs
   * bug activity (field changes)
   * bug attachments
+  * user names and passwords (put into a htpasswd file)
 
 The script provides a number of features to ease the conversion, such as:
 
 {{{
 mantis2trac - Imports a bug database from Mantis into Trac.
 
-Usage: mantis2trac.py [options]
+Usage: mantis2trac.py [options] 
 
 Available Options:
   --db <MySQL dbname>              - Mantis database
 Additional configuration options can be defined directly in the script.
 }}} 
 
-
 == Other ==
 
 Since trac uses a SQL database to store the data, you can import from other systems by examining the database tables. Just go into [http://www.sqlite.org/sqlite.html sqlite] command line to look at the tables and import into them from your application.

wiki-default/TracIni

-= trac.ini Reference =
+= The Trac Configuration File =
 [[TracGuideToc]]
 
-Trac configuration is done by editing the ''trac.ini'' config file, located in {{{<projectenv>/conf/trac.ini}}}.
+Trac configuration is done by editing the '''`trac.ini`''' config file, located in `<projectenv>/conf/trac.ini`.
+
+== Global Configuration ==
+
+Since version 0.9, Trac can also read the configuration from a global `trac.ini` file. These global options will then be merged with the environment-specific options, where local options override global options.
+
+The global configuration is by default localted in `$prefix/share/trac/conf/trac.ini`. It can be moved to a different location (for example, `/etc/trac.ini`), but that requires changing the file `trac/siteconfig.py` which gets created when Trac is installed. 
+
+== Reference ==
 
 This is a brief reference of available configuration options.
 
 || `default_handler` || Name of the component that handles requests to the base URL (default is `WikiHandler`) (''since 0.9'') ||
 || `repository_dir`  || Path to local Subversion repository ||
 || `authz_file`      || Path to Subversion [http://svnbook.red-bean.com/en/1.1/ch06s04.html#svn-ch-6-sect-4.4.2 authorization (authz) file]. ||
+|| `authz_module_name` || The module prefix used in the `authz_file` (See FineGrainedPermissions)||
 || `check_auth_ip` || Whether the IP address of the user should be checked for authentication (true, false) (''since 0.9'') ||
 || `ignore_auth_case` || Whether case should be ignored for login names (true, false) (''since 0.9'') ||
 || `templates_dir`   || Path to the !ClearSilver templates ||
 || `alt`    || ''alt'' text for header logo ||
 || `width`  || Header logo width in pixels ||
 || `height` || Header logo height in pixels ||
+See also: TracInterfaceCustomization.
 
 == [logging] ==
 || `log_type`  || Logging facility to use. (none, file, stderr, syslog, winlog) ||
 || `restrict_owner`    || Make the owner field of tickets use a drop-down menu (''since 0.9'') ||
 
 == [ticket-custom] ==
-Creates user-defined ticket fields.
-See TracTicketsCustomFields.
+Creates [wiki:TracTicketsCustomFields user-defined ticket fields].
 
 == [timeline] ==
+|| `default_daysback` || Default "depth" of the Timeline, in days (''since 0.9'') ||
 || `changeset_show_files` || Number of files to show (-1 for unlimited, 0 to disable) ||
-|| `default_daysback` || Default "depth" of the Timeline, in days (''since 0.9'') ||
+|| `ticket_show_details` || Enable the display of all ticket changes in the timeline ||
 
 == [browser] ==
 || `hide_properties` || List of subversion properties to hide from the repository browser (''since 0.9'') ||
 == [wiki] ==
 || `ignore_missing_pages` || enable/disable highlighting CamelCase links to missing pages (''since 0.9'') ||
 
-== [disabled_components] ==
-You can disable any Trac component by listing its name in this section and assigning a truth value (e.g. ''yes''). See the ''Plugins'' page on ''About Trac'' to get the list of active components.
+== [components] ==
 (''since 0.9'')
 
+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 [wiki:TracReports 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` [wiki:TracPermissions permissions].)
+
+See also: TracPlugins
+
+  ''Note that prior to Trac r2335 (that applies to 0.9b1 and 0.9b2), you would use a `[disabled_components]` section instead. See a [http://projects.edgewall.com/trac/wiki/TracIni?version=42 previous version] of this page for the details.''
+
 ----
-See also: TracGuide, TracAdmin, TracEnvironment
+See also: TracGuide, TracAdmin, TracEnvironment

wiki-default/TracInstall

    * Trac uses the [http://www.swig.org/ SWIG] bindings included in the Subversion distribution, '''not''' [http://pysvn.tigris.org/ PySVN] (which is sometimes confused with the standard SWIG bindings).
    * If Subversion was already installed without the SWIG bindings, you'll need to re-`configure` Subversion and `make swig-py`, `make install-swig-py`.
  * [http://www.clearsilver.net/ ClearSilver], version >= 0.9.3
+   * With python-bindings (`./configure --with-python=/usr/bin/python`)
 
 === For SQLite ===
 
    * version 1.0.x (for SQLite 2.8.x)
    * version 1.1.x or 2.x (for SQLite 3.x)
 
-''Note: Versions of Trac prior to 0.9 do '''not''' work with PySQLite 2.x.''
-
 === For PostgreSQL ===
 
  * [http://www.postgresql.org/ PostgreSQL]
  * [http://initd.org/projects/psycopg1 psycopg1], [http://initd.org/projects/psycopg2 psycopg2], or [http://pypgsql.sourceforge.net/ pyPgSQL]
 
-''Note: PostgreSQL support requires Trac version 0.9 or later.''
-
 === Optional Requirements ===
 
  * A CGI-capable web server (see TracCgi), or
  * a [http://www.fastcgi.com/ FastCGI]-capable web server (see TracFastCgi), or
  * [http://httpd.apache.org/ Apache] with [http://www.modpython.org/ mod_python 3.1.3+] (see TracModPython)
+ * [http://peak.telecommunity.com/DevCenter/setuptools setuptools], version >= 0.5a13 for using plugins (see TracPlugins)
  * [http://docutils.sourceforge.net/ docutils], version >= 0.3.3 for WikiRestructuredText.
- * [http://peak.telecommunity.com/DevCenter/setuptools setuptools], version >= 0.5a13 for using plugins (see TracPlugins)
+ * [http://silvercity.sourceforge.net/ SilverCity] and/or [http://www.gnu.org/software/enscript/enscript.html Enscript] for [wiki:TracSyntaxColoring syntax highlighting].
 
 '''Attention''': The various available versions of these dependencies are not necessarily interchangable, so please pay attention to the version numbers above. If you are having trouble getting Trac to work please double-check all the dependencies before asking for help on the [http://projects.edgewall.com/trac/wiki/MailingList MailingList] or [http://projects.edgewall.com/trac/wiki/IrcChannel IrcChannel].
 
 
 == Installing Trac ==
 
-Like most Python programs, install the Trac Python package by running the following command at the top of the source directory:
+Like most Python programs, the Trac Python package is installed by running the following command at the top of the source directory:
 {{{
 $ python ./setup.py install
 }}}
 ''Note: you'll need root permissions or equivalent for this step.''
 
 This will byte-compile the python source code and install it in the `site-packages` directory
-of your Python installation. The directories `cgi-bin`, `templates`, `htdocs` and `wiki-default` are all copied to `$prefix/share/trac/.`
+of your Python installation. The directories `cgi-bin`, `templates`, `htdocs`, `wiki-default` and `wiki-macros` are all copied to `$prefix/share/trac/.`
 
 The script will also install the [wiki:TracAdmin trac-admin] command-line tool, used to create and maintain [wiki:TracEnvironment project environments], as well as the [wiki:TracStandalone tracd] standalone server.
 
 
 A new environment is created using [wiki:TracAdmin trac-admin]:
 {{{
-$ svnadmin create --fs-type=fsfs /path/to/svn_project_env
- (in some environments leave out the parameters "--fs-type=fsfs" )
 $ trac-admin /path/to/trac_project_env initenv
 }}}
 
-[wiki:TracAdmin trac-admin] will prompt you for the information it needs to create the environment, such as the name of the project, the [wiki:TracEnvironment#DatabaseConnectionStrings database connection string], and so on. If you're not sure what to specify for one of these options, just leave it blank to use the default value. The database connection string in particular will always work as long as you have SQLite installed. The only option where the default value is likely to not work is the path to the Subversion repository, so make sure that one's correct.
+[wiki:TracAdmin trac-admin] will prompt you for the information it needs to create the environment, such as the name of the project, the path to an existing subversion repository, the [wiki:TracEnvironment#DatabaseConnectionStrings database connection string], and so on. If you're not sure what to specify for one of these options, just leave it blank to use the default value. The database connection string in particular will always work as long as you have SQLite installed. The only option where the default value is likely to not work is the path to the Subversion repository, so make sure that one's correct.
 
 Also note that the values you specify here can be changed later by directly editing the [wiki:TracIni] configuration file.
 
 
 Trac provides three options for connecting to a “real” web server: [wiki:TracCgi CGI], [wiki:TracFastCgi FastCGI] and [wiki:TracModPython mod_python]. For decent performance, it is recommended that you use either FastCGI or mod_python.
 
+== Configuring Authentication ==
+
+The process of adding, removing, and configuring user accounts for authentication depends on the specific way you run Trac.  To learn about how to accomplish these tasks, please visit one of the following pages:
+
+ * TracStandalone if you use the standalone server, `tracd`.
+ * TracCgi if you use the CGI or FastCGI methods.
+ * TracModPython if you use the mod_python method.
 
 == Using Trac ==
 

wiki-default/TracInterfaceCustomization

+= Customizing the Trac Interface =
+[[TracGuideToc]]
+
+== Introduction ==
+This page is meant to give users suggestions on how they can customize the look of Trac.  Topics on this page cover editing the HTML templates and CSS files, but not the program code itself.  The topics are intended to show users how they can modify the look of Trac to meet their specific needs.  Suggestions for changes to Trac's interface applicable to all users should be filed as tickets, not listed on this page.
+
+== Project Logo and Icon ==
+The easiest parts of the Trac interface to customize are the logo and the site icon.  Both of these can be configured with settings in [wiki:TracIni trac.ini].
+
+The logo or icon image should be put in a folder named "htdocs" in your project's environment folder.  (''Note: in projects created with a Trac version prior to 0.9 you will need to create this folder'')
+
+Now configure the appropriate section of your [wiki:TracIni trac.ini]:
+
+=== Logo ===
+Change the `src` setting to `site/` followed by the name of your image file.  The `width` and `height` settings should be modified to match your image's dimensions.
+
+{{{
+[header_logo]
+src = site/my_logo.gif
+alt = My Project
+width = 300
+height = 100
+}}}
+
+=== Icon ===
+Icons should be a 16x16 image in `.gif` or `.ico` format.  Change the `icon` setting to `site/` followed by the name of your icon file.  Icons will typically be displayed by your web browser next to the site's URL and in the `Bookmarks` menu.
+
+{{{
+[project]
+icon = site/my_icon.ico
+}}}
+
+Note though that this icon is ignored by Internet Explorer, which only accepts a file named ``favicon.ico`` at the root of the host. To make the project icon work in both IE and other browsers, you can store the icon in the document root of the host, and reference it from ``trac.ini`` as follows:
+
+{{{
+[project]
+icon = /favicon.ico
+}}}
+
+== Site Header & Footer ==
+In the environment folder for each Trac project there should be a directory called {{{templates}}}.  This folder contains files {{{site_header.cs}}} and {{{site_footer.cs}}}.  Users can customize their Trac site by adding the required HTML markup to these files.  The content of these two files will be placed immediately following the opening {{{<body>}}} tag and immediately preceding the closing {{{</body>}}} tag of each page in the site, respectively.
+
+These files may contain static HTML, though if users desire to have dynamically generated content they can make use of the [http://www.clearsilver.net/ ClearSilver] templating language from within the pages as well. When you need to see what variables are available to the template, append the query string `?hdfdump=1` to the URL of your Trac site. This will display a structured view of the template data.
+
+== Site CSS ==
+The primary means to adjust the layout of a Trac site is by add [http://www.w3.org/TR/REC-CSS2/ CSS] style rules that overlay the default rules. This is best done by editing the `site_css.cs` file in the enviroment's `templates` directory. The content of that template gets inserted into a `<style type="text/css></style>` element on every HTML page generated by Trac.
+
+While you can add your custom style rules directory to the `site_css.cs` file, it is recommended that you simply reference an external style sheet, thereby enabling browsers to cache the CSS file instead of transmitting the rules with every response.
+
+The following example would import a style sheet located in the `style` root directory of your host:
+{{{
+@import url(/style/mytrac.css);
+}}}
+
+You can use a !ClearSilver variable to reference a style sheet stored in the project environment's `htdocs` directory:
+{{{
+@import url(<?cs var:chrome.href ?>/site/style.css);
+}}}
+
+== Main Templates ==
+
+It is also possible to use your own modified versions of the Trac [http://www.clearsilver.net/ ClearSilver] templates. Note though that this technique is not recommended because it makes upgrading Trac rather problematic: there are unfortunately several dependencies between the templates and the application code, such as the name of form fields and the structure of the template data, and these are likely to change between different versions of Trac.
+
+If you absolutely need to use modified templates, copy the template files from the default templates directory (usually in found in `$prefix/share/trac/templates`) into the `templates` directory of the project environment. Then modify those copies to get the desired results.
+
+
+----
+See also TracGuide, TracIni

wiki-default/TracModPython

 
 Trac supports [http://www.modpython.org/ mod_python], which speeds up Trac's response times considerably and permits use of many Apache features not possible with [wiki:TracStandalone tracd]/mod_proxy.
 
-Be sure to grab mod_python 3.1.3 and later for ''SetHandler'' ''mod_python'' directive to work.  Also, older versions may generate an internal error (see [http://projects.edgewall.com/trac/ticket/1090 #1090])
-
 == Simple configuration ==
 
 If you just installed mod_python, you may have to add a line to load the module in the Apache configuration:
 {{{
 <Location /projects/myproject>
    SetHandler mod_python
-   PythonHandler trac.ModPythonHandler
+   PythonHandler trac.web.modpython_frontend 
    PythonOption TracEnv /var/trac/myproject
    PythonOption TracUriRoot /projects/myproject
 </Location>
 </Location>
 }}}
 
+
 == Setting up multiple projects ==
 
 The Trac mod_python handler handler supports a configuration option similar to Subversion's `SvnParentPath`, called `TracEnvParentDir`:
 {{{
 <Location /projects>
   SetHandler mod_python
-  PythonHandler trac.ModPythonHandler
+  PythonHandler trac.web.modpython_frontend 
   PythonOption TracEnvParentDir /var/trac
   PythonOption TracUriRoot /projects
 </Location>
 </LocationMatch>
 }}}
 
+== Virtual Host Configuration ==
+
+Below is the sample configuration required to set up your trac as a virtual server (i.e. when you access it at the URLs like
+!http://trac.mycompany.com):
+
+{{{
+<VirtualHost * >
+    DocumentRoot /var/trac/myproject
+    ServerName trac.mycompany.com
+    <Directory />
+        SetHandler mod_python
+        PythonHandler trac.web.modpython_frontend
+        PythonOption TracEnv /var/trac/myproject
+        PythonOption TracUriRoot /
+    </Directory>
+    <Location /login>
+        AuthType Basic
+        AuthName "MyCompany Trac Server"
+        AuthUserFile /var/trac/myproject/.htusers
+        Require valid-user
+    </Location>
+</VirtualHost>
+}}}
+
 == Troubleshooting ==
 
 === Form submission problems ===
 
 === Win32 Issues ===
 
-If you run trac with mod_python on Windows, attachments will not work.
+If you run trac with mod_python (3.1.3 or 3.1.4) on Windows, 
+uploading attachments will '''not''' work.
+This is a known problem which we can't solve cleanly at the Trac level.
 
-There is a (simple) workaround for this which is to apply the patch attached to 
-ticket [http://projects.edgewall.com/trac/ticket/554 #554].
+However, there is a workaround for this at the mod_python level, 
+which is to apply the following patch [http://projects.edgewall.com/trac/attachment/ticket/554/util_py.patch attachment:ticket:554:util_py.patch] 
+to the (Lib/site-packages)/modpython/util.py file.
+
+If you don't have the `patch` command, that file can be replaced with the [http://svn.apache.org/viewcvs.cgi/httpd/mod_python/trunk/lib/python/mod_python/util.py?rev=103562&view=markup  fixed util.py] (fix which, although done prior to the 3.1.4 release, is ''not'' 
+present in 3.1.4).
 
 === OS X issues ===
 

wiki-default/TracNotification

 
 == Configuring SMTP Notification ==
 
-=== Config Options ===
+=== Configuration Options ===
 These are the available options for the ''[notification]'' section in trac.ini.
- * '''smtp_enabled''': Enable notification.
+ * '''smtp_enabled''': Enable email notification.
  * '''smtp_server''': SMTP server used for notification messages.
  * '''smtp_user''': (''requires [milestone:0.9 0.9]'') user name for authentication SMTP account.
  * '''smtp_password''': (''requires [milestone:0.9 0.9]'') password for authentication SMTP account.

wiki-default/TracPermissions

-== Trac Permissions ==
+= Trac Permissions =
 [[TracGuideToc]]
 
 Trac uses a simple but flexible permission system to control what users can and can't access.
 In addition to these privileges users can be granted additional individual 
 rights in effect when authenticated and logged into the system.
 
-=== Available privileges ===
+== Available Privileges ==
 
- * {{{TRAC_ADMIN}}}
- * {{{LOG_VIEW}}}
- * {{{FILE_VIEW}}}
- * {{{CHANGESET_VIEW}}}
- * {{{BROWSER_VIEW}}}
- * {{{TICKET_VIEW, TICKET_CREATE, TICKET_APPEND, TICKET_CHGPROP, TICKET_MODIFY, TICKET_ADMIN}}}
- * {{{REPORT_VIEW, REPORT_CREATE, REPORT_MODIFY, REPORT_DELETE, REPORT_ADMIN, REPORT_SQL_VIEW}}}
- * {{{WIKI_VIEW, WIKI_CREATE, WIKI_MODIFY, WIKI_DELETE, WIKI_ADMIN}}}
- * {{{MILESTONE_VIEW, MILESTONE_CREATE, MILESTONE_MODIFY, MILESTONE_DELETE}}}
- * {{{ROADMAP_VIEW, ROADMAP_ADMIN}}}
- * {{{TIMELINE_VIEW}}}
- * {{{SEARCH_VIEW}}}
- * {{{CONFIG_VIEW}}}
+To enable all privileges for a user, use the `TRAC_ADMIN` permission. Having `TRAC_ADMIN` is like being `root` on a *NIX system, it will let you do anything you want.
 
-The {{{something_ADMIN}}} privileges are just shortcuts that can be used to grant a user all the ''something'' privileges in one go. Having {{{TRAC_ADMIN}}}
-is like being {{{root}}} on a *NIX system, it will let you do anything you want.
+Otherwise, individual privileges can be assigned to users for the various different functional areas of Trac:
 
-=== Granting privileges ===
+=== Repository Browser ===
 
-Currently the only way to grant privileges to users is by using the
-{{{trac-admin}}} script. The current set of privileges can be listed
-with the following command:
+|| `BROWSER_VIEW` || View directory listings in the [wiki:TracBrowser repository browser] ||
+|| `LOG_VIEW` || View revision logs of files and directories in the [wiki:TracBrowser repository browser] ||
+|| `FILE_VIEW` || View files in the [wiki:TracBrowser repository browser] ||
+|| `CHANGESET_VIEW` || View [wiki:TracChangeset repository check-ins] ||
 
+=== Ticket System ===
+
+|| `TICKET_VIEW` || View existing [wiki:TracTickets tickets] and perform [wiki:TracQuery ticket queries] ||
+|| `TICKET_CREATE` || Create new [wiki:TracTickets tickets] ||
+|| `TICKET_APPEND` || Add comments or attachments to [wiki:TracTickets tickets] ||
+|| `TICKET_CHGPROP` || Modify [wiki:TracTickets ticket] properties ||
+|| `TICKET_MODIFY` || Includes both `TICKET_APPEND` and `TICKET_CHGPROP`, and in addition allows resolving [wiki:TracTickets tickets] ||
+|| `TICKET_ADMIN` || All `TICKET_*` permissions, plus the deletion of ticket attachments. ||
+
+=== Roadmap ===
+
+|| `MILESTONE_VIEW` || View a milestone ||
+|| `MILESTONE_CREATE` || Create a new milestone ||
+|| `MILESTONE_MODIFY` || Modify existing milestones ||
+|| `MILESTONE_DELETE` || Delete milestones ||
+|| `MILESTONE_ADMIN` || All `MILESTONE_*` permissions ||
+|| `ROADMAP_VIEW` || View the [wiki:TracRoadmap roadmap] page ||
+|| `ROADMAP_ADMIN` || Alias for `MILESTONE_ADMIN` (deprecated) ||
+
+=== Reports ===
+
+|| `REPORT_VIEW` || View [wiki:TracReports reports] ||
+|| `REPORT_SQL_VIEW` || View the underlying SQL query of a [wiki:TracReports report] ||
+|| `REPORT_CREATE` || Create new [wiki:TracReports reports] ||
+|| `REPORT_MODIFY` || Modify existing [wiki:TracReports reports] ||
+|| `REPORT_DELETE` || Delete [wiki:TracReports reports] ||
+|| `REPORT_ADMIN` || All `REPORT_*` permissions ||
+
+=== Wiki System ===
+
+|| `WIKI_VIEW` || View existing [wiki:TracWiki wiki] pages ||
+|| `WIKI_CREATE` || Create new [wiki:TracWiki wiki] pages ||
+|| `WIKI_MODIFY` || Change [wiki:TracWiki wiki] pages ||
+|| `WIKI_DELETE` || Delete [wiki:TracWiki wiki] pages and attachments ||
+|| `WIKI_ADMIN` || All `WIKI_*` permissions, plus the management of ''readonly'' pages. ||
+
+=== Others ===
+
+|| `TIMELINE_VIEW` || View the [wiki:TracTimeline timeline] page ||
+|| `SEARCH_VIEW` || View and execute [wiki:TracSearch search] queries ||
+|| `CONFIG_VIEW` || Enables additional pages on ''About Trac'' that show the current configuration or the list of installed plugins ||
+
+== Granting Privileges ==
+
+Currently the only way to grant privileges to users is by using the `trac-admin` script. The current set of privileges can be listed with the following command:
 {{{
   $ trac-admin /path/to/projenv permission list
 }}}
 
-This command will let the user ''bob'' delete reports:
-
+This command will allow the user ''bob'' to delete reports:
 {{{
   $ trac-admin /path/to/projenv permission add bob REPORT_DELETE
 }}}
 
-=== Permission groups ===
+== Permission Groups ==
 
-Permissions can be grouped together to form roles such as
-''developer'', ''admin'', etc.
-
+Permissions can be grouped together to form roles such as ''developer'', ''admin'', etc.
 {{{
   $ trac-admin /path/to/projenv permission add developer WIKI_ADMIN
   $ trac-admin /path/to/projenv permission add developer REPORT_ADMIN
   $ trac-admin /path/to/projenv permission add john developer
 }}}
 
-=== Default permissions ===
+== Default Permissions ==
 
-Granting privileges to the special user ''anonymous'' can be used to control
-what an anonymous user can do before they have logged in.
+Granting privileges to the special user ''anonymous'' can be used to control what an anonymous user can do before they have logged in.
 
 In the same way, privileges granted to the special user ''authenticated'' will apply to any authenticated (logged in) user.
 

wiki-default/TracPlugins

 = Trac Plugins =
+[[TracGuideToc]]
 
 Since version 0.9, Trac supports plugins that extend the built-in functionality. The plugin functionality is based on the [http://projects.edgewall.com/trac/wiki/TracDev/ComponentArchitecture component architecture].
 
 == Requirements ==
 
-To use plugins in Trac, you need to have [http://peak.telecommunity.com/DevCenter/setuptools setuptools] (version 0.5 or 0.6) installed.
+To use plugins in Trac, you need to have [http://peak.telecommunity.com/DevCenter/setuptools setuptools] (version 0.6) installed.
 
 To install `setuptools`, download the bootstrap module [http://peak.telecommunity.com/dist/ez_setup.py ez_setup.py] and execute it as follows:
 {{{
 
 Alternatively, you can just drop the `.egg` file in the Python `site-packages` directory.
 
+Unlike plugins installed per-environment, you'll have to explicitly enable globally installed plugins via [wiki:TracIni trac.ini]. This is done in the `[components]` section of the configuration file, for example:
+{{{
+[components]
+webadmin.* = enabled
+}}}
+
+The name of the option is the Python package of the plugin. This should be specified in the documentation of the Plugin, but can also be easily find out by looking at the source (look for a top-level directory that contains a file named `__init__.py`.)
+
 == Setting up the Plugin Cache ==
 
 Some plugins will need to be extracted by the Python eggs runtime (`pkg_resources`), so that their contents are actual files on the file system. The directory in which they are extracted defaults to the home directory of the current user, which may or may not be a problem. You can however override the default location using the `PYTHON_EGG_CACHE` environment variable.
 For [wiki:TracFastCgi FastCGI], you'll need to `-initial-env` option, or whatever is provided by your web server for setting environment variables.
 
 ----
-See also TracGuide, [wiki:TracDev/ComponentArchitecture component architecture]
+See also TracGuide, [http://projects.edgewall.com/trac/wiki/PluginList plugin list], [http://projects.edgewall.com/trac/wiki/TracDev/ComponentArchitecture component architecture]

wiki-default/TracQuery

 
 To configure and execute a custom query, switch to the ''View Tickets'' module from the navigation bar, and select the ''Custom Query'' link.
 
-== New Interface For 0.9 ==
-
-The query interface has been totally revamped for Trac [milestone:0.9] to be simpler and easier to use.  Users of Trac 0.8 should skip down to the sections below covering the previous interface.
-
-=== Filters ===
+== Filters ==
 When you first go to the query page the default filters will display all open tickets, or if you're logged in it will display open tickets assigned to you.  Current filters can be removed by clicking the button to the right with the minus sign on the label.  New filters are added from the pulldown list in the bottom-right corner of the filters box.  Filters with either a text box or a pulldown menu of options can be added multiple times to perform an ''or'' of the criteria.
 
 You can use the fields just below the filters box to group the results based on a field, or display the full description for each ticket.
 
 Once you've edited your filters click the ''Update'' button to refresh your results.
 
-=== Navigating Tickets ===
+== Navigating Tickets ==
 Clicking on one of the query results will take you to that ticket.  You can navigate through the results by clicking the ''Next Ticket'' or ''Previous Ticket'' links just below the main menu bar, or click the ''Back to Query'' link to return to the query page.  
 
 You can safely edit any of the tickets and continue to navigate through the results using the ''Next/Previous/Back to Query'' links after saving your results.  When you return to the query any tickets you edited will be displayed with italicized text.  If one of the tickets was edited such that it no longer matches the query criteria the text will also be greyed.  The query results can be refreshed and cleared of these status indicators by clicking the ''Update'' button again.
 
-=== Saving Queries ===
-You may want to save some queries so that you can come back to them later.  You can do this by making a link to the query from any Wiki page.  First, select the criteria from the URL line in your web browser, starting at the "?" to the end of the line.  This can be pasted into a Wiki link in the following format:
+== Saving Queries ==
 
+While Trac does not yet allow saving a named query and somehow making it available in a navigable list, you can save references to queries in Wiki content, as described below.
+
+=== Using TracLinks ===
+
+You may want to save some queries so that you can come back to them later.  You can do this by making a link to the query from any Wiki page.
 {{{
-[query:?status=assigned&group=owner&order=priority Assigned Tickets by Owner]
+[query:status!=closed&version=0.8 Active tickets against 0.8]
 }}}
 
 Which is displayed as:
+  [query:status!=closed&version=0.8 Active tickets against 0.8]
 
-[query:?status=assigned&group=owner&order=priority Assigned Tickets by Owner]
+This uses a very simple query language to specify the criteria (see [wiki:TracQuery#QueryLanguage Query Language]).
 
+Alternatively, you can copy the query string of a query and paste that into the Wiki link, including the leading `?` character:
+{{{
+[query:?status=assigned&group=owner Assigned tickets by owner]
+}}}
 
-== Previous Interface for 0.8 ==
+Whis is displayed as:
+  [query:?status=assigned&group=owner Assigned tickets by owner]
 
-=== Query Form ===
+The advantage of this approach is that you can also specify the grouping and ordering, which is not possible using the first syntax.
 
-A form will be presented, letting you select or enter values for any of the ticket properties (both built-in and custom). Any value selected/entered in this form will be used to constrain the set of tickets displayed. Only tickets where properties match the criteria will be displayed.
+=== Using the `[[TicketQuery]]` Macro ===
 
-=== Results Display ===
+The `[[TicketQuery]]` macro lets you display lists of tickets matching certain criteria anywhere you can use WikiFormatting.
 
-After executing the search, a list of tickets meeting the selected criteria will show. By default, the list is sorted by priority. You can change the sorting to any other visible column by clicking on the corresponding column header. Clicking the same header again will reverse the sort order.
+Example:
+{{{
+[[TicketQuery(version=0.9b1|0.9b2&resolution=duplicate)]]
+}}}
 
-You can edit the query by clicking ''Refine Query''.
+This is displayed as:
+  [[TicketQuery(version=0.9b1|0.9b2&resolution=duplicate)]]
+
+Just like the [wiki:TracQuery#UsingTracLinks query: wiki links], the parameter of this macro expects a query string formatted according to the rules of the simple [wiki:TracQuery#QueryLanguage ticket query language].
+
+A more compact representation without the ticket summaries is also available:
+{{{
+[[TicketQuery(version=0.9b1|0.9b2&resolution=duplicate, compact)]]
+}}}
+
+This is displayed as:
+  [[TicketQuery(version=0.9b1|0.9b2&resolution=duplicate, compact)]]
+
+=== Query Language ===
+
+`query:` TracLinks and the `[[TicketQuery]]` macro both use a mini “query language” for specifying query filters. Basically, the filters are separate by ampersands (`&`). Each filter then consists of the ticket field name, an operator, and one or more values. More than one value are separated by a pipe (`|`), meaning that the filter matches any of the values.
+
+The available operators are:
+|| '''=''' || the field content exactly matches the one of the values ||
+|| '''~=''' || the field content contains one or more of the values ||
+|| '''!^=''' || the field content starts with one of the values ||
+|| '''$=''' || the field content ends with one of the values ||
+
+All of these operators can also be negated:
+|| '''!=''' || the field content matches none of the values ||
+|| '''!~=''' || the field content does not contain any of the values ||
+|| '''!!^=''' || the field content does not start with any of the values ||
+|| '''!$=''' || the field content does not end with any of the values ||
 
 ----
 See also: TracTickets, TracReports, TracGuide

wiki-default/TracReports

 to present information about tickets in the Trac database.
 
 Rather than have its own report definition format, TracReports relies on standard SQL
-SELECT statements for custom report definition. 
+`SELECT` statements for custom report definition. 
+
+  '''Note:''' ''The report module is being phased out in its current form because it seriously limits the ability of the Trac team to make adjustments to the underlying database schema. We believe that the [wiki:TracQuery query module] is a good replacement that provides more flexibility and better usability. While there are certain reports that cannot yet be handled by the query module, we intend to further enhance it so that at some point the reports module can be completely removed. This also means that there will be no major enhancements to the report module anymore.''
+
+  ''You can already completely replace the reports module by the query module simply be disabling the former in [wiki:TracIni trac.ini]:''
+  {{{
+  [components]
+  trac.ticket.report.* = disabled
+  }}}
+  ''This will make the query module the default handler for the “View Tickets” navigation item. We encourage you to try this configuration and report back what kind of features of reports you are missing, if any.''
 
 A report consists of these basic parts:
- * ID -- Unique (sequential) identifier 
- * Title  -- Descriptive title
- * Description  -- A brief description of the report, in WikiFormatting text.
- * Report Body -- List of results from report query, formatted according to the methods described below.
- * Footer -- Links to alternative download formats for this report.
-
+ * '''ID''' -- Unique (sequential) identifier 
+ * '''Title'''  -- Descriptive title
+ * '''Description'''  -- A brief description of the report, in WikiFormatting text.
+ * '''Report Body''' -- List of results from report query, formatted according to the methods described below.
+ * '''Footer''' -- Links to alternative download formats for this report.
 
 == Changing Sort Order ==
 Simple reports - ungrouped reports to be specific - can be changed to be sorted by any column simply by clicking the column header. 
 All reports support syndication using XML/RSS 2.0. To subscribe to an RSS feed, click the orange 'XML' icon at the bottom of the page. See TracRss for general information on RSS support in Trac.
 
 ----
+
 == Creating Custom Reports ==
 
 ''Creating a custom report requires a comfortable knowledge of SQL.''
  * owner
  * reporter
  * cc
- * url
  * version
  * milestone
  * status

wiki-default/TracRoadmap

 
 It is possible to add, modify and remove milestones using either TracAdmin or the web interface. 
 
-'''Note:''' Milestone descriptions can currently only be edited from the web interface. With appropriate permissions, you'll see links below the main navigation bar to manage milestones.
+'''Note:''' Milestone descriptions can currently only be edited from the web interface. With appropriate permissions, you'll see buttons for milestone management on the roadmap and milestone pages.
 
 == iCalendar Support ==
 
-The Roadmap supports the [http://www.ietf.org/rfc/rfc2445.txt iCalendar] format to keep track of planned milestones and related tickets from your favorite calendar software. Calendar applications supporting the iCalendar specification include [http://www.apple.com/ical/ Apple iCal] for Mac OS X and the cross-platform [http://www.mozilla.org/projects/calendar/ Mozilla Calendar]. 
+The Roadmap supports the [http://www.ietf.org/rfc/rfc2445.txt iCalendar] format to keep track of planned milestones and related tickets from your favorite calendar software. Calendar applications supporting the iCalendar specification include [http://www.apple.com/ical/ Apple iCal] for Mac OS X and the cross-platform [http://www.mozilla.org/projects/calendar/ Mozilla Calendar]. [http://kdepim.kde.org/components/korganizer.php Korganiser] (the calendar application of the [http://www.kde.org/ KDE] project) and [http://www.novell.com/de-de/products/desktop/features/evolution.html Evolution] also support iCalendar.
 
-To subscribe to the roadmap, copy the iCalendar link from the roadmap (found at the bottom of the page) and choose the "Subscribe to remote calendar" action (or similar), and insert the URL just copied.
+To subscribe to the roadmap, copy the iCalendar link from the roadmap (found at the bottom of the page) and choose the "Subscribe to remote calendar" action (or similar) of your calendar application, and insert the URL just copied.
 
-'''Note:''' For tickets to be included in the calendar (as TO-DO items), you need to be authenticated when copying the link. You will only see tickets assigned to yourself, and associated with a milestone.
+'''Note:''' For tickets to be included in the calendar as tasks, you need to be logged in when copying the link. You will only see tickets assigned to yourself, and associated with a milestone.
 
+More information about iCalendar can be found at [http://en.wikipedia.org/wiki/ICalendar Wikipedia].
 ----
 See also: TracTickets, TracReports, TracQuery, TracGuide

wiki-default/TracRss

 Trac supports RSS feeds in:
 
  * TracTimeline --  Use the RSS feed to '''subscribe to project events'''.[[br]]Monitor overall project progress in your favorite RSS reader.
- * TracReports -- Allows syndication of report results.[[br]]Be notified about important and relevant issue tickets.
- * TracBrowser -- Syndication of file changes.[[br]]Stay up to date with changes to a specific file.
+ * TracReports and TracQuery -- Allows syndication of report and ticket query results.[[br]]Be notified about important and relevant issue tickets.
+ * TracBrowser -- Syndication of file changes.[[br]]Stay up to date with changes to a specific file or directory.
 
 == How to access RSS data ==
-Anywhere in Trac where RSS is available, you should find a small orange 'XML' icon, typically placed at the bottom of the page. Clicking the icon will access the RSS feed for that specific resource.
+Anywhere in Trac where RSS is available, you should find a small orange '''XML''' icon, typically placed at the bottom of the page. Clicking the icon will access the RSS feed for that specific resource.
 
 '''Note:''' Different modules provide different data in their RSS feeds. Usually, the syndicated information corresponds to the current view. For example, if you click the RSS link on a report page, the feed will be based on that report. It might be explained by thinking of the RSS feeds as an ''alternate view of the data currently displayed''.
 

wiki-default/TracStandalone

 = Tracd =
 
-Tracd is a lightweight stand-alone Trac server. In most cases it's easier to setup and runs faster than trac.cgi.
-
+Tracd is a lightweight standalone Trac web server. In most cases it's easier to setup and runs faster than the [wiki:TracCgi CGI script].
 
 == Pros ==
 
  * Fewer dependencies: You don't need to install apache or any other web-server.
- * Fast: Should be as fast as the TracModPython version (much faster than the cgi).
+ * Fast: Should be as fast as the [wiki:TracModPython mod_python] version (and much faster than the [wiki:TracCgi CGI]).
 
 == Cons ==
 
- * Less features: Tracd implements a very simple web-server and is not as configurable as apache.
- * Only htdigest authentication: Tracd can currently only authenticate users against apache-htdigest files.
- * No native https support: [http://www.rickk.com/sslwrap/ sslwrap] can be used instead,
+ * Less features: Tracd implements a very simple web-server and is not as configurable as Apache HTTPD.
+ * No native HTTPS support: [http://www.rickk.com/sslwrap/ sslwrap] can be used instead,
    or [http://lists.edgewall.com/archive/trac/2005-August/004381.html STUNNEL].
 
 == Usage examples ==
 {{{
  $ tracd -p 8080 /path/to/project1 /path/to/project2
 }}}
-With htdigest authentication. The file /tmp/users.htdigest contain user accounts for project1 with the realm "mycompany.com".
+
+You can't have the last portion of the path identical between the projects since that's how trac keeps the URLs of the
+different projects unique. So if you use /project1/path/to and /project2/path/to, you will only see the second project.
+
+== Using Authentication ==
+
+Tracd provides support for both Basic and Digest authentication. The default is to use Digest; to use Basic authentication, replace `--auth` with `--basic-auth` in the examples below, and omit the realm.
+
+If the file `/path/to/users.htdigest` contain user accounts for project1 with the realm "mycompany.com", you'd use the following command-line to start tracd:
 {{{
- $ tracd -p 8080 --auth project1,/tmp/users.htdigest,mycompany.com /path/to/project1
+ $ tracd -p 8080 --auth project1,/path/to/users.htdigest,mycompany.com /path/to/project1
 }}}
-htdigest authentication can also be used for more than one project.
-The digest file can be shared:
+''Note that the project “name” passed to the `--auth` option is actually the base name of the project environment directory.""
+
+Of course, the digest file can be be shared so that it is used for more than one project:
 {{{
  $ tracd -p 8080 \
-   --auth project1,/tmp/users.htdigest,mycompany.com \
-   --auth project2,/tmp/users.htdigest,mycompany.com \
+   --auth project1,/path/to/users.htdigest,mycompany.com \
+   --auth project2,/path/to/users.htdigest,mycompany.com \
    /path/to/project1 /path/to/project2
 }}}
 
-== Tracd on Windows ==
+== Generating Passwords Without Apache ==
 
-tracd also works on Windows. 
-But on that platform, the sensitivity on multithreading issues is high,
-and you ''might'' have problems (i.e. crashes of the Python interpreter).
-If this happens, you can force tracd to operate in single-threaded mode:
-{{{
-#!text/x-diff
-Index: trac/web/standalone.py
-===================================================================
---- trac/web/standalone.py      (revision 1862)
-+++ trac/web/standalone.py      (working copy)
-@@ -124,7 +124,7 @@
-         return auth['username']
-
-
--class TracHTTPServer(ThreadingMixIn, HTTPServer):
-+class TracHTTPServer(HTTPServer):
-
-     projects = None
-}}}
-
-Please also report any such issue, as they are believed to be fixed by now.
-
-
-== Generating passwords on Windows ==
-
-If you don't have Apache available, you can use this Python script to generate your passwords (code borrowed heavily from #845):
+If you don't have Apache available, you can use this simple Python script to generate your passwords:
 
 {{{
 from optparse import OptionParser
 }}}
 
 ----
-See also: [source:trunk/README.tracd#latest README.tracd], TracGuide, TracInstall, TracModPython
+See also: TracInstall, TracCgi, TracModPython, TracGuide

wiki-default/TracSupport

 Before you start a new support query, make sure you've done the appropriate searching:
  * in the project's [http://projects.edgewall.com/trac/wiki/TracFaq FAQ]
  * in past messages to the Trac [http://blog.gmane.org/gmane.comp.version-control.subversion.trac.general?set_user_css=http%3A%2F%2Fwww.edgewall.com%2Fcss%2Fgmane.css&do_set_user_css=t Mailing List]
- * in Trac tickets, using either the [search:?q=&ticket=on&wiki=on Search] or the [query:"?summary=~&keywords=~somekeyword" Query] modules
-
+ * in the Trac ticket system, using either a [http://projects.edgewall.com/trac/search?q=&ticket=on&wiki=on full search] or a [http://projects.edgewall.com/trac/query?summary=~&keywords=~" ticket query].
 
 ----
 See also: [http://projects.edgewall.com/trac/wiki/MailingList MailingList]

wiki-default/TracSyntaxColoring

 = Syntax Coloring of Source Code =
-Trac supports language-specific colorization (syntax highlighting) of source code in [wiki:WikiFormatting WikiFormatted] text and the [wiki:TracBrowser Source Browser].
+Trac supports language-specific syntax highlighting of source code in [wiki:WikiFormatting wiki formatted] text and the [wiki:TracBrowser repository browser].
 
 To do this, Trac uses external libraries with support for a great number of programming languages.
 
  * [http://people.ssh.fi/mtr/genscript/ GNU Enscript]
  * [http://silvercity.sourceforge.net/ SilverCity]
 
-To activate syntax coloring, simply install either one (or more) of these packages. No additional configuration is required, however to modify the colors, have a look at trac/htdocs/css/code.css.
+To activate syntax coloring, simply install either one (or more) of these packages. No additional configuration is required, however to modify the colors, have a look at `trac/htdocs/css/code.css`.
 
 When in use, Trac will automatically prioritize !SilverCity highlighting over Enscript if possible, (see note below). 
 

wiki-default/TracTickets

 A  ticket contains the following information attributes:
  
  * '''Reporter''' - The author of the ticket.
+ * '''Type''' - The nature of the ticket (for example, defect or enhancement request)
 
  * '''Component''' - The project module or subsystem this ticket concerns.
  * '''Version''' - Version of the project that this ticket pertains to.
- * '''Severity''' - What are the effects the issue described? Ranges from an ''enhancement'' request to ''blocker'' (must be fixed before next milestone).
  * '''Keywords''' - Keywords that a ticket is marked with.  Useful for searching and report generation.
 
- * '''Priority''' - The importance of is the issue relative to other tasks.
+ * '''Priority''' - The importance of this issue, ranging from ''trivial'' to ''blocker''.
  * '''Milestone''' - When this issue should be resolved at the latest.
- * '''Assigned to''' - Principal person responsible for handling the issue.
- * '''Cc''' - A list of other associated people. ''note: this does '''not''' imply responsiblity or any other policy. 
+ * '''Assigned to/Owner''' - Principal person responsible for handling the issue.
+ * '''Cc''' - A list of other associated people. ''Note that this does not imply responsiblity or any other policy.''
  
- * '''Resolution''' - Reason for why a ticket was closed, such as {{{fixed}}}, {{{invalid}}}, {{{duplicate}}}, etc.
- * '''Status''' - What is the current status? (One of {{{new}}}, {{{assigned}}}, {{{closed}}}, {{{reopened}}}.)
+ * '''Resolution''' - Reason for why a ticket was closed. One of {{{fixed}}}, {{{invalid}}}, {{{wontfix}}}, {{{duplicate}}}, {{{worksforme}}}.
+ * '''Status''' - What is the current status? One of {{{new}}}, {{{assigned}}}, {{{closed}}}, {{{reopened}}}.
  * '''Summary''' - A brief description summarizing the problem or issue.
- * '''Description''' - The body of the ticket. A good description should be '''specific, descriptive and to the point'''.
+ * '''Description''' - The body of the ticket. A good description should be specific, descriptive and to the point.
+
+'''Note:''' Versions of Trac prior to 0.9 did not have the ''type'' field, but instead provided a ''severity'' field and different default values for the ''priority'' field. This change was done to simplify the ticket model by removing the somewhat blurry distinction between ''priority'' and ''severity''. However, the old model is still available if you prefer it: just add/modify the default values of the ''priority'' and ''severity'', and optionally hide the ''type'' field by removing all the possible values through [wiki:TracAdmin trac-admin].
+
 
 == Changing and Commenting Tickets ==
 
 information by '''annotating''' the bug. This means changes and comments to
 the ticket are logged as a part of the ticket itself.
 
-When viewing a ticket, this log of changes will appear below the main ticket area.
+When viewing a ticket, the history of changes will appear below the main ticket area.
 
-''In the Trac project, we use ticket comments to discuss issues and
-tasks. This makes understanding the motivation behind a design- or implementation choice easier, when returning to it later.''
+''In the Trac project, we use ticket comments to discuss issues and tasks. This makes
+understanding the motivation behind a design- or implementation choice easier,
+when returning to it later.''
 
 '''Note:''' An important feature is being able to use TracLinks and
 WikiFormatting in ticket descriptions and comments. Use TracLinks to refer to
 === State Diagram ===
 http://projects.edgewall.com/trac/attachment/wiki/TracTickets/Trac%20Ticket%20State%20Chart%2020040607DF.png?format=raw
 
-== Advanced: Preset values for New Tickets from URL ==
 
-To create a link to the new-ticket form filled with preset values, you need to call the /newticket? URL with variable=value separated by &. 
+== Default Values for Drop-Down Fields ==
+
+The option selected by default for the various drop-down fields can be set in [wiki:TracIni trac.ini], in the `[ticket]` section:
+
+ * `default_type`: Default ticket type
+ * `default_component`: Name of the component selected by default
+ * `default_version`: Name of the default version
+ * `default_milestone`: Name of the default milestone
+ * `default_priority`: Default priority value
+ * `default_severity`: Default severity value
+
+If any of these options are omitted, the default value will either be the first in the list, or an empty value, depending on whether the field in question is required to be set.
+
+
+== Hiding Fields and Adding Custom Fields ==
+
+Many of the default ticket fields can be hidden from the ticket web interface simply by removing all the possible values through [wiki:TracAdmin trac-admin]. This of course only applies to drop-down fields, such as ''type'', ''priority'', ''severity'', ''component'', ''version'' and ''milestone''.
+
+Trac also lets you add your own custom ticket fields. See TracTicketsCustomFields for more information.
+
+
+== Assign-to as Drop-Down List ==
+
+If the list of possible ticket owners is finite, you can change the ''assign-to'' ticket field from a text input to a drop-down list. This is done by setting the `restrict_owner` option of the `[ticket]` section in [wiki:TracIni trac.ini] to “true”. In that case, Trac will use the list of all users who have logged in and set their email address to populate the drop-down field.
+
+''Note that this feature is '''still experimental as of version 0.9'''. There is no way to only display a subset of all known users as possible ticket owners. Nor is there a convenient way to remove emeritus users short of directly modifying the database.''
+
+
+== Preset Values for New Tickets ==
+
+To create a link to the new-ticket form filled with preset values, you need to call the `/newticket?` URL with variable=value separated by &. 
 
 Possible variables are :
 

wiki-default/TracTicketsCustomFields

 = Custom Ticket Fields =
 Trac supports adding custom, user-defined fields to the ticket module. Using custom fields, you can add typed, site-specific properties to tickets.
 
-'''Note: In Trac 0.8, this feature is still experimental.'''
-
 == Configuration ==
-Configuring custom ticket fields is done in the TracIni config file.
-
-All field definitions should be under a section named '''{{{[ticket-custom]}}}''' in the ini-file.
+Configuring custom ticket fields is done in the [wiki:TracIni trac.ini] file. All field definitions should be under a section named `[ticket-custom]`.
 
 The syntax of each field definition is:
 {{{
 test_six.rows = 30
 }}}
 
-=== Notes ===
-Do not insert space characters between '{{{|}}}'-separated option values for ''radio'' and ''select'' fields.
- * ok: {{{FIELD_NAME.options = un|deux|trois}}}
- * invalid: {{{FIELD_NAME.options = un | deux | trois}}}
+''Note: To make an entering an option for a `select` type field optional, specify a leading `|` in the `fieldname.options` option.''
+
+=== Reports Involving Custom Fields ===
+
+The SQL required for TracReports to include custom ticket fields is relatively hard to get right. You need a `JOIN` with the `ticket_custom` field for every custom field that should be involved.
+
+The following example includes a custom ticket field named `progress` in the report:
+{{{
+#!sql
+SELECT p.value AS __color__,
+   id AS ticket, summary, component, version, milestone, severity,
+   (CASE status WHEN 'assigned' THEN owner||' *' ELSE owner END) AS owner,
+   time AS created,
+   changetime AS _changetime, description AS _description,
+   reporter AS _reporter,
+  (CASE WHEN c.value = '0' THEN 'None' ELSE c.value END) AS progress
+  FROM ticket t
+     LEFT OUTER JOIN ticket_custom c ON (t.id = c.ticket AND c.name = 'progress')
+     JOIN enum p ON p.name = t.priority AND p.type='priority'
+  WHERE status IN ('new', 'assigned', 'reopened')
+  ORDER BY p.value, milestone, severity, time
+}}}
+
+Note in particular the `LEFT OUTER JOIN` statement here.
 
 ----
-See also: TracTickets, TracIni, TracIniReportCustomFieldSample
+See also: TracTickets, TracIni

wiki-default/TracTimeline

 
 The timeline lists these kinds of events:
  * '''Wiki page events''' -- Creation and changes
- * '''Ticket events''' -- Creation and resolution/closing
- * '''Source code changes ''' -- Subversion commits 
- * '''Milestone ''' -- Milestone reached
+ * '''Ticket events''' -- Creation and resolution/closing (and optionally other changes)
+ * '''Source code changes ''' -- Repository check-ins
+ * '''Milestone ''' -- Milestone completed
 
-Each event entry provides a hyperlink to the specific event in question, and 
-in the case svn commit log messages, displays the commit message itself. 
-
-== Subversion Commit Messages == 
-It's important to note that WikiFormatting can be used in commit log messages,
-including TracLinks.
-
-This allows developers to hyperlink and refer to issue tickets, wikipages and files
-directly when committing a patch to the repository.
-
-Example:
-
-{{{
- $ svn commit -m "Updated foo to bar. See FooBar. This fixes bug #42." 
-}}}
-
-This is a subtle but quite useful feature.
+Each event entry provides a hyperlink to the specific event in question, as well as
+a brief excerpt of the actual comment or text, if available.
 
 == RSS Support ==
-The Timeline module supports subscribtion using RSS 2.0 syndication. To subscribe to project events, click the '''RSS Feed''' link in the navigation bar, or the orange XML icon at the bottom of the page. See TracRss for more information on RSS support in Trac.
 
+The Timeline module supports subscription using RSS 2.0 syndication. To subscribe to project events, click orange '''XML''' icon at the bottom of the page. See TracRss for more information on RSS support in Trac.
 
 ----
 See also: TracGuide, TracWiki, WikiFormatting, TracRss, TracNotification

wiki-default/TracUnicode

 
 === Français ===
 ''Il est possible d'écrire en Français : à, ç, û, ...''
-Voir aussi TracTermsFr
 
 === German ===
 Trac-Wiki muß auch deutsche Umlaute richtig anzeigen: ö, ä, ü, ...
 ''漢字 ひらがな カタカナ ハンカクカナ''
 
 === Korean ===
-''이번에는 한글로 써보겠습니다. 잘 보이나요?'' [wiki:한글링크 한글링크]
+''이번에는 한글로 써보겠습니다. 잘 보이나요?''
 
 === Persian (Farsi) ===
 این یک متن فارسی است ولی از چپ به راست
 
 === Russian ===
 Проверка русского языка: кажется работает...
-See also TracTermsRu
 
 === Serbian ===
 Podržan, uprkos činjenici da se za njegovo pisanje koriste чак два алфабета.

wiki-default/TracUpgrade

 trac-admin /path/to/projenv upgrade
 }}}
 
-This command will do nothing if the environment is already up-to-date. [[BR]]
+This command will do nothing if the environment is already up-to-date.
+
+Note that if you are using a PostgreSQL database, this command will fail with the message that the environment can only be backed up when you use an SQLite database. This means that you will have to backup the repository and the database manually. Then, to perform the actual upgrade, run:
+{{{
+trac-admin /path/to/projenv upgrade --no-backup
+}}}
 
 === Update the Trac Documentation ===
 
 
 === Restart the Web Server ===
 
-In order to reload the new Trac code you will need to restart your web server (note this is not necessary for plain old CGI, although CGI is discouraged for performance reasons).
+In order to reload the new Trac code you will need to restart your web server (note this is not necessary for [wiki:TracCgi CGI]).
 
 == Specific Versions ==
 
 The following sections discuss any extra actions that may need to be taken to upgrade to specific versions of Trac.
 
+== From 0.9-beta to 0.9 ==
+
+If inclusion of the static resources (style sheets, javascript, images) is not working, check the value of the `htdocs_location` in trac.ini. For [wiki:TracModPython mod_python], [wiki:TracStandalone Tracd] and [wiki:TracFastCgi FastCGI], you can simply remove the option altogether. For [wiki:TracCgi CGI], you should fix it to point to the URL you mapped the Trac `htdocs` directory to (although you can also remove it and then [wiki:TracCgi#MappingStaticResources map the static resources]). If you're still having problems after removing the option, check the paths in the `trac/siteconfig.py` file and fix them if they're incorrect.
+
+If you've been using plugins with a beta release of Trac 0.9, or have disabled some of the built-in components, you might have to update the rules for disabling/enabling components in [wiki:TracIni trac.ini]. In particular, globally installed plugins now need to be enabled explicitly. See TracPlugins and TracIni for more information.
+
+If you want to enable the display of all ticket changes in the timeline (the “Ticket Details” option), you now have to explicitly enable that in [wiki:TracIni trac.ini], too:
+
+{{{
+[timeline]
+ticket_show_details = true
+}}}
+
 == From 0.8.x to 0.9 ==
 
-If you're using [wiki:TracCgi CGI] you will want to update your `Alias` to the Trac htdocs static resources.  See the documentation on [wiki:TracCgi#MappingStaticResources mapping static resources] for an example on how to configure this.
-
-[wiki:TracFastCgi FastCGI] and [wiki:TracModPython mod_python] users can safely remove any `Alias`es to the Trac htdocs folder since this is no longer used by default.
-
 [wiki:TracModPython mod_python] users will also need to change the name of the mod_python handler in the Apache HTTPD configuration:
 {{{
    from: PythonHandler trac.ModPythonHandler
 }}}
 
 -----
-See also: TracGuide, TracInstall
+See also: TracGuide, TracInstall

wiki-default/TracWiki

 = The Trac Wiki Engine =
 [[TracGuideToc]]
 
-Trac has a built-in wiki engine, used for text and documentation throughout the system. WikiFormatting is used for [wiki:TitleIndex wiki pages], '''tickets''' and '''commit log messages'''. 
+Trac has a built-in wiki engine, used for text and documentation throughout the system. WikiFormatting is used in [wiki:TitleIndex wiki pages], [wiki:TracTickets tickets] and [wiki:TracChangeset check-in log messages].  This allows for formatted text and hyperlinks in and between all Trac modules.
 
-This allows for formatted text and hyperlinks in and between all Trac modules.
+Editing wiki text is easy, using any web browser and a simple formatting system (see WikiFormatting), rather than more complex markup languages like HTML.  The reasoning behind its design is that HTML, with its large collection of nestable tags, is too complicated to allow fast-paced editing, and distracts from the actual content of the pages. Note though that Trac also supports [wiki:WikiHtml HTML] and [wiki:WikiRestructuredText reStructuredText] as alternative markup formats.
 
-Editing wiki text is easy, using any web browser and a simple formatting system (see WikiFormatting), rather than more complex markups like HTML. 
-The reasoning behind its design is that HTML, with its large library of nested tags, is too complicated to allow fast-paced editing, and distracts from the actual content of the pages. Note though, Trac also supports [wiki:WikiHtml HTML] and [wiki:WikiRestructuredText reStructuredText] as alternative markup formats.
+The main goal of the wiki is making editing text easier and ''encourage'' people to contribute and annotate text content for a project. 
 
-The main goal of the wiki  is making editing text easier and '''encourage''' people to contribute and annotate text content for a project. 
-
-Wiki itself does not enforce any structure, but rather resembles a stack of empty paper sheets, where you can organize information and documentation as you see fit, and later reorganize if necessary. 
+The wiki itself does not enforce any structure, but rather resembles a stack of empty paper sheets, where you can organize information and documentation as you see fit, and later reorganize if necessary. 
 
 For more help on editing wiki text, see:
  * WikiFormatting

wiki-default/WikiDeletePage

-= Delete an existing Wiki Page =
+= Deleting a Wiki Page =
 
-Users with {{{WIKI_DELETE}}} permissions can delete wiki pages using the {{{"delete page"}}} or the {{{"delete this version"}}} buttons
-at the bottom of the wiki page. These buttons are only visible for users with {{{WIKI_DELETE}}} permissions.
+Existing wiki pages can be completely deleted using the ''Delete Page'' or the ''Delete this Version'' buttons at the bottom of the wiki page. These buttons are only visible for users with `WIKI_DELETE` permissions.
 
 '''Note:''' This is an irreversible operation.
 
+In general, it is recommended to create redirection pages instead of completely deleting an old page, as to not frustrate the visitor with broken links when coming to the site from a search engine. A redirection page is a short page that  contains a link such as  “See !SomeOtherPage”. However, deleting specific versions or even complete pages can make sense to remove spam or other abuse.
 
-
+----
 See also: TracWiki, TracPermissions

wiki-default/WikiFormatting

 This page demonstrates the formatting syntax available anywhere WikiFormatting is allowed.
 
 
-== Font styles ==
+== Font Styles ==
 
 The Trac wiki supports the following font styles:
 {{{
  * {{{monospace}}} or `monospace`
  * ~~strike-through~~
  * ^superscript^ 
- * ,,subscript,,.
+ * ,,subscript,,
 }}}
 
 Display:
  * {{{monospace}}} or `monospace`
  * ~~strike-through~~
  * ^superscript^ 
- * ,,subscript,,.
+ * ,,subscript,,
 
+Note that the `{{{...}}}` and {{{`...`}}} commands not only select a monospace font, but also treat their content as verbatim text, meaning that no further wiki processing is done on this text.
 
+== Headings ==
 
-== Heading ==
-
-You can create heading by starting a line with one up to five ''equal'' "=" characters
+You can create heading by starting a line with one up to five ''equal'' characters ("=")
 followed by a single space and the headline text. The line should end with a space 
-followed by the same number of ''equal'' characters. 
+followed by the same number of ''='' characters.
 
 Example:
 {{{
 
 == Paragraphs ==
 
-A new text paragraph is created whenever two blocks of text are separated
-by one or more empty lines.
+A new text paragraph is created whenever two blocks of text are separated by one or more empty lines.
 
 A forced line break can also be inserted, using:
 {{{
 
 Line 1[[BR]]Line 2
 
-  Text paragraphs can be indented by starting the lines with two or more spaces.
-
 
 == Lists ==
 
 The wiki supports both ordered/numbered and unordered lists.
-There must be a space preceding the star "*" or number "1.", or nothing will happen.
 
 Example:
 {{{
    1. Item 1.1
  1. Item 2
 
+Note that there must be one or more spaces preceding the list item markers, otherwise the list will be treated as a normal paragraph.
 
-== Definition lists ==
+
+== Definition Lists ==
 
 The wiki also supports definition lists.
 
 Note that you need a space in front of the defined term.
 
 
-== Preformatted text ==
+== Preformatted Text ==
 
-Block quotes, preformatted text, are suitable for source code snippets, notes and examples. Use three ''curly braces'' wrapped around the text to define a block quote.
+Block containing preformatted text are suitable for source code snippets, notes and examples. Use three ''curly braces'' wrapped around the text to define a block quote. The curly braces need to be on a separate line.
   
 Example:
 {{{
  {{{
-  def HelloWorld()
+  def HelloWorld():
       print "Hello World"
  }}}
 }}}
 
 Display:
 {{{
- def HelloWorld()
+ def HelloWorld():
      print "Hello World"
 }}}
 
 
+== Blockquotes ==
+
+In order to mark a paragraph as blockquote, indent that paragraph with two spaces.
+
+Example:
+{{{
+  This text is a quote from someone else.
+}}}
+
+Display:
+  This text is a quote from someone else.
+
 == Tables ==
 
 Simple tables can be created like this:
 Note that more complex tables can be created using
 [wiki:WikiRestructuredText#BiggerReSTExample reStructuredText].
 
+
 == Links ==
 
-Hyperlinks are automatically created for WikiPageNames and urls. 
-!WikiPageLinks can be disabled by
-prepending an exclamation mark "!" character, such as {{{!WikiPageLink}}}.
+Hyperlinks are automatically created for WikiPageNames and URLs. !WikiPageLinks can be disabled by prepending an exclamation mark "!" character, such as {{{!WikiPageLink}}}.
 
 Example:
 {{{
 Display:
  TitleIndex, http://www.edgewall.com/, !NotAlink
 
-Links can be given a more descriptive title by writing the link followed by
-a space and a title and all this inside square brackets. 
-If the descriptive title is omitted, then the explicit prefix is disguarded,
-unless the link is an external link. This can be useful for wiki pages
-not adhering to the WikiPageNames convention.
+Links can be given a more descriptive title by writing the link followed by a space and a title and all this inside square brackets.  If the descriptive title is omitted, then the explicit prefix is disguarded, unless the link is an external link. This can be useful for wiki pages not adhering to the WikiPageNames convention.
 
-Like this:
+Example:
 {{{
  * [http://www.edgewall.com/ Edgewall Software]
  * [wiki:TitleIndex Title Index]
 
 === Trac Links ===
 
-Wiki pages can link directly to other parts of the Trac system.
-Pages can refer to tickets, reports, changesets, milestones, source files and
-other Wiki pages using the following notation:
+Wiki pages can link directly to other parts of the Trac system. Pages can refer to tickets, reports, changesets, milestones, source files and other Wiki pages using the following notations:
 {{{
  * Tickets: #1 or ticket:1
  * Reports: {1} or report:1
  * Changesets: r1, [1] or changeset:1
- * Revision Logs: r1:3, [1:3] or log:branches/0.9-stable#1:3
+ * Revision Logs: r1:3, [1:3] or log:branches/0.8-stable#1:3
  * Wiki pages: CamelCase or wiki:CamelCase
  * Milestones: milestone:1.0 or milestone:"End-of-days Release"
  * Files: source:trunk/COPYING
+ * Attachments: attachment:"file name.doc"
  * A specific file revision: source:/trunk/COPYING#200
  * A filename with embedded space: source:"/trunk/README FIRST"
 }}}
  * Tickets: #1 or ticket:1
  * Reports: {1} or report:1
  * Changesets: r1, [1] or changeset:1
- * Revision Logs: r1:3, [1:3] or log:branches/0.8-stable#1000:2000
+ * Revision Logs: r1:3, [1:3] or log:branches/0.8-stable#1:3
  * Wiki pages: CamelCase or wiki:CamelCase
  * Milestones: milestone:1.0 or milestone:"End-of-days Release"
  * Files: source:trunk/COPYING
+ * Attachments: attachment:"file name.doc"
  * A specific file revision: source:/trunk/COPYING#200
  * A filename with embedded space: source:"/trunk/README FIRST"
 
 
 You may avoid making hyperlinks out of TracLinks by preceding an expression with a single "!" (exclamation mark).
 
+Example:
 {{{
  !NoHyperLink
  !#42 is not a link
 
 http://www.edgewall.com/gfx/trac_example_image.png
 
+However, this doesn't give much control over the display mode. This way of inserting images is deprecated in favor of the more powerful `Image` macro (see WikiMacros).
+
 
 == Macros ==
 
-Macros are ''custom functions'' to insert dynamic content in a page. 
-See WikiMacros for usage.
+Macros are ''custom functions'' to insert dynamic content in a page.
 
 Example:
 {{{
 Display:
  [[Timestamp]]
 
+See WikiMacros for more information, and a list of installed macros.
+
 
 == Processors ==
 
-Trac supports alternative markup formats using WikiProcessors. 
-For example, processors are used to write pages in 
+Trac supports alternative markup formats using WikiProcessors. For example, processors are used to write pages in 
 [wiki:WikiRestructuredText reStructuredText] or [wiki:WikiHtml HTML]. 
 
-See WikiProcessors for more information.
-
-'''Example 1:'''
+Example 1:
 {{{
 #!html
 <pre class="wiki">{{{
 <h1 style="text-align: right; color: blue">HTML Test</h1>
 }}}
 
-'''Example 2:'''
+Example:
 {{{
 #!html
 <pre class="wiki">{{{
    Test()
 }}}
 
+Perl:
+{{{
+#!perl
+my ($test) = 0;
+if ($test > 0) {
+echo "hello";
+}
+}}}
+
+See WikiProcessors for more information.
+
 
 == Miscellaneous ==
 
 
 
 ----
-
-See also: TracLinks, TracGuide, WikiHtml, WikiMacros, WikiProcessors, TracSyntaxColoring.
-
-----
+See also: TracLinks, TracGuide, WikiHtml, WikiMacros, WikiProcessors, TracSyntaxColoring.

wiki-default/WikiMacros

 =  Wiki Macros =
 Trac macros are plugins to extend the Trac engine with custom 'functions' written in Python. A macro inserts dynamic HTML data in any context supporting WikiFormatting.
 
-Another kind of macros are WikiProcessors. They typically deal with alternate markup formats and representation of larger blocks of information (like source code highlighting). See also: WikiProcessors.
+Another kind of macros are WikiProcessors. They typically deal with alternate markup formats and representation of larger blocks of information (like source code highlighting).
 
 == Using Macros ==
 Macro calls are enclosed in two ''square brackets''. Like python functions, macros can also have arguments, a comma separated list within parentheses. 
 
 == Available Macros ==
 
-Macros are still a relatively new feature, and the list of available (and distributed) macros is 
-admittedly not very impressive. In future Trac releases, we hope to build a library of useful macros, and will of course happily include contributed macros (see below). 
+''Note that the following list will only contain the macro documentation if you've not enabled `-OO` optimizations, or not set the `PythonOptimize` option for [wiki:TracModPython mod_python].''
 
 [[MacroList]]
 
 == Macros from around the world ==
-The [http://projects.edgewall.com/trac/ Trac Project] has a section dedicated to user-contributed macros, [wiki:MacroBazaar MacroBazaar]. If you're looking for new macros, or have written new ones to share with the world, don't hesitate adding it to the [wiki:MacroBazaar MacroBazaar] wiki page.
-
-  http://projects.edgewall.com/trac/wiki/MacroBazaar
-
+The [http://projects.edgewall.com/trac/ Trac Project] has a section dedicated to user-contributed macros, [http://projects.edgewall.com/trac/wiki/MacroBazaar MacroBazaar]. If you're looking for new macros, or have written new ones to share with the world, don't hesitate adding it to the [http://projects.edgewall.com/trac/wiki/MacroBazaar MacroBazaar] wiki page.
 
 ----
 
-
-== Developing New Macros ==
+== Developing Custom Macros ==
 Macros, like Trac itself, are written in the [http://www.python.org/ Python programming language]. They are very simple modules, identified by the filename and should contain a single ''entry point'' function. Trac will display the returned data inserted into the HTML where the macro was called.
 
 It's easiest to learn from an example:
     return "Hello World called with args: %s" % args
 }}}
 
-=== Advanced Topics: Template-enabled Macros ===
-For advanced uses, macros can also render structured output in HDF, to be rendered to HTML using clearsilver templates - like most Trac output. In short, this allows more generic and well-designed advanced macros.
-
-Macros gain direct access to the main HDF tree, and are free to manipulate it. 
-
-Example:
-{{{
-#!python
-def execute(hdf, args, env):
-    # Currently hdf is set only when the macro is called
-    # from a wiki page.
-    if hdf:
-        hdf.setValue('wiki.macro.greeting', 'Hello World')
-        
-    # args will be null if the macro is called without parentheses.
-    args = args or 'No arguments'
-    return 'Hello World, args = ' + args
-}}}
-
-You can also use the environment (env) object to access configuration data.
-
-Example.
+You can also use the environment (`env`) object, for example to access configuration data and the database, for example:
 {{{
 #!python
 def execute(hdf, txt, env):
     return env.get_config('trac', 'repository_dir')
 }}}
 
-Here is information on the different WikiMacroObjects.
+Note that since version 0.9, wiki macros can also be written as TracPlugins. This gives them some capabilities than “classic” macros do not have, such as directly access the HTTP request.
+
+For more information about developing macros, see the [http://projects.edgewall.com/trac/wiki/TracDev development resources] on the main project site.
 
 ----
-See also:  WikiProcessors, WikiFormatting, TracGuide, WikiMacroObjects
+See also:  WikiProcessors, WikiFormatting, TracGuide

wiki-default/WikiPageNames

 
 If you want to create a wiki page that doesn't follow CamelCase rules you could use the following syntax:
 {{{
-[wiki:Wiki_page Wiki page]
+[wiki:Wiki_page]
 }}}
 
 This will be rendered as:
-
- [wiki:Wiki_page Wiki page]
+ [wiki:Wiki_page]
 
 ----
 See also: WikiNewPage, WikiFormatting, TracWiki

wiki-default/WikiProcessors

 The wiki engine uses processors to allow using [wiki:WikiRestructuredText Restructured Text] and [wiki:WikiHtml raw HTML] in any wiki text throughout Trac.
 
 == Using Processors ==
-To use a processor on a block of text, use a wiki blockquote, selecting a processor by name using 'hashbang notation' (#!), familiar to most UNIX users from scripts.
+To use a processor on a block of text, use a wiki blockquote, selecting a processor by name using ''shebang notation'' (#!), familiar to most UNIX users from scripts.
 
 '''Example 1''' (''inserting raw HTML in a wiki text''):
 
 
 ----
 
-
-
 == Available Processors ==
 The following processors are included in the Trac distribution:
  * '''html''' -- Insert custom HTML in a wiki page. See WikiHtml.
  * '''rst''' -- Trac support for Restructured Text. See WikiRestructuredText.
  * '''textile''' -- Supported if  [http://dealmeida.net/projects/textile/ Textile] is installed.
 
-=== Source Code Support ===
-Trac includes processors to provide inline [wiki:TracSyntaxColoring syntax highlighting] for these languages:
+=== Code Highlighting Support ===
+Trac includes processors to provide inline [wiki:TracSyntaxColoring syntax highlighting] for the following languages:
  * '''c''' -- C
  * '''cpp''' -- C++
  * '''python''' -- Python
  * '''xml''' -- XML
 '''Note:''' ''Trac relies on external software packages for syntax coloring. See TracSyntaxColoring for more info.''
 
-By using the mime-type as processor, it is posible to syntax-highlight the same languages that are supported when browsing source code.
-
-For example, you can write:
-
+By using the MIME type as processor, it is possible to syntax-highlight the same languages that are supported when browsing source code. For example, you can write:
 {{{
 {{{
 #!text/html
 }}}
 }}}
 
-The result will be syntax highlighted html code. The same is valid for all other mime types supported.
+The result will be syntax highlighted HTML code. The same is valid for all other mime types supported.
 
 
+For more processor macros developed and/or contributed by users, visit: 
+ * [http://projects.edgewall.com/trac/wiki/ProcessorBazaar ProcessorBazaar]
+ * [http://projects.edgewall.com/trac/wiki/MacroBazaar MacroBazaar]
 
-For more processor macros developed and/or contributed by users, visit the macro bazaar: 
- http://projects.edgewall.com/trac/wiki/MacroBazaar
 
-----
 == Advanced Topics: Developing Processor Macros ==
 Developing processors is no different than WikiMacros. In fact they work the same way, only the usage syntax differs. See WikiMacros for more information.
 
 }}}
 
 ----
-See also : WikiMacros, WikiHtml, WikiRestructuredText, TracSyntaxColoring, WikiFormatting, TracGuide
+See also: WikiMacros, WikiHtml, WikiRestructuredText, TracSyntaxColoring, WikiFormatting, TracGuide

wiki-default/WikiStart

-= Welcome to Trac 0.9b2 =
+= Welcome to Trac 0.9 =
 
 Trac is a '''minimalistic''' approach to '''web-based''' management of
 '''software projects'''. Its goal is to simplify effective tracking and handling of software issues, enhancements and overall progress.
 Trac is brought to you by [http://www.edgewall.com/ Edgewall Software],
 providing professional Linux and software development services to clients
 worldwide. Visit http://www.edgewall.com/ for more information.
-

wiki-default/checkwiki.py

  "TracEnvironment",
  "TracFastCgi",
  "TracGuide",
+ "TracImport",
  "TracIni",
  "TracInstall",
- "TracImport",
+ "TracInterfaceCustomization",
  "TracLinks",
  "TracLogging",
  "TracModPython",
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.