<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://t2bwiki.iihe.ac.be/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Maintenance+script</id>
	<title>T2B Wiki - User contributions [en-gb]</title>
	<link rel="self" type="application/atom+xml" href="https://t2bwiki.iihe.ac.be/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Maintenance+script"/>
	<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/Special:Contributions/Maintenance_script"/>
	<updated>2026-04-20T21:19:54Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=XenQuattor&amp;diff=370</id>
		<title>XenQuattor</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=XenQuattor&amp;diff=370"/>
		<updated>2015-08-26T12:29:32Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; === Xen and Quattor ===  *use QWG (or CB5) *in a dom0 machine add necesaary parametrs (example below). **install machine **verify that xen kernel is loaded **remove fil...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=== Xen and Quattor ===&lt;br /&gt;
&lt;br /&gt;
*use QWG (or CB5)&lt;br /&gt;
*in a dom0 machine add necesaary parametrs (example below).&lt;br /&gt;
**install machine&lt;br /&gt;
**verify that xen kernel is loaded&lt;br /&gt;
**remove file from /etc/libvirt/qemu/networks/autostart/ (they intercept the domU dhcp requests)&lt;br /&gt;
**add second xen virt bridge if needed&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/xen/scripts/network-bridge start vifnum=1 bridge=xenbr1 netdev=eth1&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
==== Templates ====&lt;br /&gt;
*dom0&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
object template profile_fireman.iihe.ac.be;&lt;br /&gt;
&lt;br /&gt;
## no largesmp kernels in centos&lt;br /&gt;
variable KERNEL_VARIANT = &#039;&#039;;&lt;br /&gt;
## test dom0 for gridce and wms&lt;br /&gt;
variable XEN_PROFILE_PREFIX = &amp;quot;profile_&amp;quot;;&lt;br /&gt;
variable XEN_GUESTS = list(&amp;quot;voms.iihe.ac.be&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
variable XEN_CREATE_FILESYSTEMS = true;&lt;br /&gt;
variable XEN_CREATE_DOMAINS = true;&lt;br /&gt;
&lt;br /&gt;
variable FILESYSTEM_LAYOUT_CONFIG_SITE = &amp;quot;site/filesystems/dom0&amp;quot;;&lt;br /&gt;
variable XEN_VG = &amp;quot;vg.domU&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
include machine-types/base;&lt;br /&gt;
&lt;br /&gt;
include xen/host/config;&lt;br /&gt;
&lt;br /&gt;
include {GLITE_OS_POSTCONFIG};&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# software repositories (should be last)&lt;br /&gt;
#&lt;br /&gt;
include { PKG_REPOSITORY_CONFIG };&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WorkingWithRHEL7&amp;diff=369</id>
		<title>WorkingWithRHEL7</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WorkingWithRHEL7&amp;diff=369"/>
		<updated>2015-08-26T12:29:32Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; === Getting rid of firewalld and coming back to iptables === Here are the magic commands : &amp;lt;pre&amp;gt; systemctl stop firewalld systemctl disable firewalld yum remove firewall...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=== Getting rid of firewalld and coming back to iptables ===&lt;br /&gt;
Here are the magic commands :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl stop firewalld&lt;br /&gt;
systemctl disable firewalld&lt;br /&gt;
yum remove firewalld&lt;br /&gt;
yum install iptables-services&lt;br /&gt;
systemctl enable iptables.service&lt;br /&gt;
systemctl enable ip6tables.service&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Don&#039;t forget to configure SSH with  system-config-firewall-tui. And after that :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl start iptables.service&lt;br /&gt;
systemctl start ip6tables.service&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Replacing NetworkManager by network ===&lt;br /&gt;
Type these commands :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl stop NetworkManager&lt;br /&gt;
systemctl disable NetworkManager&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
And now, we can restart network :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
service network restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Adoption of Predictable Network Interface Names ===&lt;br /&gt;
Names of NICs will change. To prepare yourself to the new naming rules, please read these documents :&lt;br /&gt;
*http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/&lt;br /&gt;
*http://blog.laimbock.com/2014/11/22/systemd-understanding-predictable-network-interface-names/&lt;br /&gt;
&lt;br /&gt;
=== Default filesystem : xfs ===&lt;br /&gt;
RHEL7 adopts XFS as the default filesystem. It might generates troubles with our Quattor scdb -&amp;gt; check our filesystem layout templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WorkingInT2BCloud&amp;diff=368</id>
		<title>WorkingInT2BCloud</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WorkingInT2BCloud&amp;diff=368"/>
		<updated>2015-08-26T12:29:32Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Golden rules == *Before starting, please read the [http://docs.opennebula.org/4.12/index.html doc] *Never, ever, change the status of a VM using virt-manager ! Do everyt...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Golden rules ==&lt;br /&gt;
*Before starting, please read the [http://docs.opennebula.org/4.12/index.html doc]&lt;br /&gt;
*Never, ever, change the status of a VM using virt-manager ! Do everything using Sunstone only, and nothing else !&lt;br /&gt;
*Admin tasks on OpenNebula : most of them requires that you become oneadmin (&amp;quot;su - oneadmin&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
== Admin tasks ==&lt;br /&gt;
=== How to stop OpenNebula ? ===&lt;br /&gt;
Connect as root to the front-end machine, and type the following commands :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
su - oneadmin&lt;br /&gt;
sunstone-server stop&lt;br /&gt;
oneflow-server stop&lt;br /&gt;
econe-server stop&lt;br /&gt;
one stop&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== How to start OpenNebula ? ===&lt;br /&gt;
Connect as root to the front-end machine, and type the following commands :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
su - oneadmin&lt;br /&gt;
one start&lt;br /&gt;
sunstone-server start&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Using Sunstone front-end ==&lt;br /&gt;
&lt;br /&gt;
=== Connecting to the Sunstone front-end ===&lt;br /&gt;
The Sunstone front-end is installed on dom02. Open a &amp;quot;socks&amp;quot; port to qnat or ccq (or configure your FoxyProxy) to connect to the the following URL :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
http://192.168.10.35:9869/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
You will be asked a login and a password.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WorkingInCB9&amp;diff=367</id>
		<title>WorkingInCB9</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WorkingInCB9&amp;diff=367"/>
		<updated>2015-08-26T12:29:32Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Things that are worth to have in mind when starting to work in CB9 == === OS flavour === In CB9, we start to work with OS flavour : &amp;lt;pre&amp;gt; object template profile_node1...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Things that are worth to have in mind when starting to work in CB9 ==&lt;br /&gt;
=== OS flavour ===&lt;br /&gt;
In CB9, we start to work with OS flavour :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
object template profile_node19-101.wn.iihe.ac.be;&lt;br /&gt;
variable OS_FLAVOUR_ENABLED = true;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
It means that the OS templates will be taken from os/sl6.x-x86_64 (instead of os/sl630-x86_64 for example). However, you still have to define the precise OS you want in the template site/os_version_db through the nlist OS_VERSION, but this choice will have an effect on the list of OS repositories, that is constructed in the template repository/config/os located in os/sl6.x-x86_64.&lt;br /&gt;
&lt;br /&gt;
If you want to understand in deep the mechanism of OS flavoring, then read the template os/version in standard directory.&lt;br /&gt;
=== Working with repo snapshots ===&lt;br /&gt;
With the new SPMA, the choice of the version of each software is done on-the-fly by the component, in function of the content of the repositories at the time the component is running. If you change the repositories, then it might impact all the machines using them. So, to get a minimum of stability in the software environment of machines, it is necessary to work with repository snapshots.&lt;br /&gt;
==== Repository templates in CB9 ====&lt;br /&gt;
The templates of the repositories managed by snapshots are all located under begrid/repository/snapshot. Since with SPMA-YUM, we don&#039;t need the software versions anymore, so the content of these templates can be minimalist. Example :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
structure template repository/snapshot/ca;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;name&amp;quot; = &amp;quot;ca&amp;quot;;&lt;br /&gt;
&amp;quot;owner&amp;quot; = &amp;quot;grid_admin@listserv.vub.ac.be&amp;quot;;&lt;br /&gt;
&amp;quot;protocols&amp;quot; = list(&lt;br /&gt;
  nlist(&amp;quot;name&amp;quot;,&amp;quot;http&amp;quot;,&lt;br /&gt;
        &amp;quot;url&amp;quot;,&amp;quot;http://yum.iihe.ac.be/cb9/&amp;quot;+REPO_YUM_SNAPSHOT_DATE[&#039;ca&#039;]+&amp;quot;/egi_ca&amp;quot;)&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
In the above example, you see the role played by the nlist REPO_YUM_SNAPSHOT_DATE, that is used to construct the real URL pointing to the desired snapshot of the repository.&lt;br /&gt;
&lt;br /&gt;
==== Managing the snapshot dates ====&lt;br /&gt;
Let us suppose that, on the 19th of March 2014, you have updated the &amp;quot;ca&amp;quot; repository, and that you have created a new snapshot just after. To force your machine to use the new snapshot, you will have to adapt accordingly the following nlist in site/global_variables :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
variable REPO_YUM_SNAPSHOT_DATE = nlist(&lt;br /&gt;
    &#039;ca&#039;,&#039;20140319&#039;,&lt;br /&gt;
    &#039;sl6_addons&#039;,&#039;20140313&#039;,&lt;br /&gt;
    &#039;sl6_epel&#039;,&#039;20140313&#039;,&lt;br /&gt;
    &#039;sl630_x86_64&#039;,&#039;20140313&#039;,&lt;br /&gt;
    &#039;sl630_x86_64_errata&#039;,&#039;20140313&#039;,&lt;br /&gt;
    &#039;emi_3_0_sl6_x86_64_base&#039;,&#039;20140313&#039;,&lt;br /&gt;
    &#039;emi_3_0_sl6_x86_64_third_party&#039;,&#039;20140313&#039;,&lt;br /&gt;
    &#039;emi_3_0_sl6_x86_64_updates&#039;,&#039;20140313&#039;,&lt;br /&gt;
    &#039;wlcg_x86_64&#039;,&#039;20140313&#039;,&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you don&#039;t adapt this nlist, then the URL of the &amp;quot;ca&amp;quot; repo will still point to the old snapshot with old RPMs !&lt;br /&gt;
&lt;br /&gt;
== Howto ==&lt;br /&gt;
&lt;br /&gt;
=== How to update repositories and create snapshots ? ===&lt;br /&gt;
Most of local repositories are stored on yum.iihe.ac.be. Update of these repositories should always been done with the command &amp;quot;reposync&amp;quot; (or with the script described below, which is a wrapper above reposync) because they are mirrors of official repositories.&lt;br /&gt;
There are several possibilies to manage repository snapshots. This can be achieved at a low level by the filesystem (possible with btrfs, LVM, ZFS,...). Or we can simply use hard links, as in the tool created by Michel Jouvin, available in the SCDB repo in Quattor GitHub, in utils/misc (name of the scripts : yum_snapshot and update_yum_repos).&lt;br /&gt;
&lt;br /&gt;
A wrapper to simplify repo management has been written. Here is how to use it :&lt;br /&gt;
#Log in as root on yum.iihe.ac.be&lt;br /&gt;
 2. Go to the directory /var/www/html/&lt;br /&gt;
 3. Launch the interactive script manage_repositories.pl and follow the instructions...&lt;br /&gt;
&lt;br /&gt;
Note 1 : on yum, the repositories are defined it /etc/yum.repos.d/cb9.repo.&lt;br /&gt;
&lt;br /&gt;
Note 2 : for packages that don&#039;t belong to official repos, please use the sl6_t2b repository (the corresponding repository template is &amp;quot;site&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
=== How to install a package that I can&#039;t find in the main repositories ? ===&lt;br /&gt;
A dedicated place has been foreseen for such packages : the repository sl6_t2b. Here is the recipe :&lt;br /&gt;
#Drop your package in yum.iihe.ac.be:/var/www/html/cb9/sl6_t2b&lt;br /&gt;
 2. Create a snapshot of the repo.&lt;br /&gt;
 3. Change the snapshot date for the repo sl6_t2b in the REPO_YUM_SNAPSHOT_DATE nlist.&lt;br /&gt;
&lt;br /&gt;
Important remark : as of 13th of August 2014, we decided to use the date in timestamp format, instead of Ymd format, to avoid problems with yum cache when the same repository is modified several times during the same day.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=Workernode-v0.0.2&amp;diff=366</id>
		<title>Workernode-v0.0.2</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=Workernode-v0.0.2&amp;diff=366"/>
		<updated>2015-08-26T12:29:31Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot;  === Basic OS Installation ===  The basic requirement for this benchmark is to have SLC 4.5 for the x86_64 architecture installed and running on the hardware. You may use ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
=== Basic OS Installation ===&lt;br /&gt;
&lt;br /&gt;
The basic requirement for this benchmark is to have SLC 4.5 for the x86_64 architecture installed and running on the hardware. You may use PXE or CD installation from:&lt;br /&gt;
&lt;br /&gt;
http://linuxsoft.cern.ch/scientific/45/x86_64/images/SL/pxeboot/&lt;br /&gt;
&lt;br /&gt;
http://linuxsoft.cern.ch/scientific/45/x86_64/images/SL/boot.iso&lt;br /&gt;
&lt;br /&gt;
Here is a summary of what the configuration must be:&lt;br /&gt;
&lt;br /&gt;
*take the &amp;quot;Personal Desktop&amp;quot; installation&lt;br /&gt;
*let the installation procedure &amp;quot;Automatically partion&amp;quot; the disk(s)&lt;br /&gt;
*keep the default firewall settings&lt;br /&gt;
*put SElinux mode active&lt;br /&gt;
*&amp;quot;Install default packages&amp;quot;&lt;br /&gt;
*add a username and call it &amp;lt;tt&amp;gt;bench&amp;lt;/tt&amp;gt;&lt;br /&gt;
*at the CERN customization step select:&lt;br /&gt;
**&amp;quot;No, I will do setup myself&amp;quot;&lt;br /&gt;
**&amp;quot;Enable checks for updates&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Installing the Benchmarks ===&lt;br /&gt;
&lt;br /&gt;
This installation will download around 2 GB of software.&lt;br /&gt;
&lt;br /&gt;
*Login as user &amp;lt;tt&amp;gt;bench&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Run &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
wget http://mon.iihe.ac.be/trac/t2b/attachment/wiki/Workernode-v0.0.2/bench_1.tar?format=raw -O bench_1.tar; tar -xvf bench_1.tar;./install.sh&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Power Consumption Benchmark ===&lt;br /&gt;
&lt;br /&gt;
This benchmark takes between 10 to 15 minuntes.&lt;br /&gt;
&lt;br /&gt;
*Setup a measurement device between the power supply and the power plug&lt;br /&gt;
*Run as &amp;lt;tt&amp;gt;bench&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./start_all.sh power&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
*Collect the measured maximum power consumed before the start (in idle state) and the measured maximum power consumed during the benchmark run.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== CPU Benchmarks ===&lt;br /&gt;
&lt;br /&gt;
These benchmarks take between 12 to 24 hours and requires no manual intervention.&lt;br /&gt;
&lt;br /&gt;
*Run as &amp;lt;tt&amp;gt;bench&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./start_all.sh all&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
*To check that the benchmarks are finished just run:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./start_all.sh check&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*When the benchmarks are finished, run the following command and follow the instructions:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./get_output.py&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Useful Commands ===&lt;br /&gt;
&lt;br /&gt;
 You can also run :&lt;br /&gt;
*&amp;lt;tt&amp;gt;./start_all.sh stop&amp;lt;/tt&amp;gt; to stop the benchmarks&lt;br /&gt;
*&amp;lt;tt&amp;gt;./start_all.sh check&amp;lt;/tt&amp;gt; to check if the benchmarks are still running&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=Workernode-v0.0.1&amp;diff=365</id>
		<title>Workernode-v0.0.1</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=Workernode-v0.0.1&amp;diff=365"/>
		<updated>2015-08-26T12:29:31Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; === Basic System Installation === The basic requirements for this benchmark is to have RHEL ES 4.3 for the x86_64 architecture installed and running on the hardware. The RHEL...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=== Basic System Installation ===&lt;br /&gt;
The basic requirements for this benchmark is to have RHEL ES 4.3 for the x86_64 architecture installed and running on the hardware.&lt;br /&gt;
The RHEL4 clones CentOS 4.3 http://www.centos.org/ and Scientific Linux 4.3 https://www.scientificlinux.org/ are also valid for the benchmark. We even recommand one of those clones because they provide yum (updater and package installer which is used below) by default. &lt;br /&gt;
Installation instructions can be found on the sites or are provide with the copy.&lt;br /&gt;
&lt;br /&gt;
All benchmarks will be run in 64-bit mode. In order to complete the benchmarks succesfully, a number of compatibility rpms have to be installed on the system.&lt;br /&gt;
&lt;br /&gt;
Starting from a standard Desktop installation, install the following rpms (.i386 and .x86_64 indicate the rpms for both architecture versions) and their corresponding dependencies. (This is easiest done using yum.): &lt;br /&gt;
  yum install libf2c.i386 libf2c.x86_64 openmotif.i386 openmotif.x86_64 xorg-x11-Mesa-libGLU.i386 xorg-x11-Mesa-libGLU.x86_64&lt;br /&gt;
  yum install compat-libstdc++-33-3.2.3-47.3&lt;br /&gt;
==== Partition and Filesystem setup ====&lt;br /&gt;
In order to run the benchmark succesfully, there must be approximately 4GB free diskspace on one partition. We advise to use ext3 as filesystem. No further requirements are needed.&lt;br /&gt;
=== CMS benchmark ===&lt;br /&gt;
Make sure the machine is connected to the internet. Run as root: &lt;br /&gt;
  wget -q http://nahi.iihe.ac.be/run_cmsbench-4.sh -O run_cmsbench-4.sh;chmod +x run_cmsbench-4.sh;./run_cmsbench-4.sh 4&lt;br /&gt;
&lt;br /&gt;
The benchmark consists of a script that will&lt;br /&gt;
# download the necessary software in one single tarball (approximately 650MB. It might take a while to download.)&lt;br /&gt;
# extract the tarball and install the software&lt;br /&gt;
# run all benchmarks&lt;br /&gt;
# printout the numbers&lt;br /&gt;
# create a tarball with detailed results.&lt;br /&gt;
&lt;br /&gt;
Running the application benchmark itself takes at most 6 hours and requires&lt;br /&gt;
no manual intervention. At the end, a number will be printed on screen indicating&lt;br /&gt;
the relative performance of the system. Also a file with a detailed description&lt;br /&gt;
of the system used and detailed results of all the tests will be provided.&lt;br /&gt;
&lt;br /&gt;
When the script ran successfully, it will print out something like &lt;br /&gt;
 Running test from directory /benchmark&lt;br /&gt;
  /benchmark/cms&lt;br /&gt;
   Now timing 1 single Root stress test:&lt;br /&gt;
   Now timing 1 single Root stressgeom test:&lt;br /&gt;
   Now timing 1 single Root stressLinear test:&lt;br /&gt;
   Now timing 1 single Root bench test:&lt;br /&gt;
   Now timing 4 simultaneous root stress runs:&lt;br /&gt;
  Exit code 0&lt;br /&gt;
   Now timing 1 single Pythia stress test:&lt;br /&gt;
   Now timing 4 simultaneous pythia stress runs:&lt;br /&gt;
  Exit code 0&lt;br /&gt;
   ATTENTION !!! All environment variables &lt;br /&gt;
   matching pattern  *_PATH will be unset !!!&lt;br /&gt;
   Now timing 1 single oscar run:&lt;br /&gt;
&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
   1guest249.fynu.ucl.ac.be/64/stress1.txt , 0&lt;br /&gt;
   Gold1 1288.3&lt;br /&gt;
   1guest249.fynu.ucl.ac.be/64/stress2.txt , 0&lt;br /&gt;
   Gold2 1291.4&lt;br /&gt;
   1guest249.fynu.ucl.ac.be/64/stress3.txt , 0&lt;br /&gt;
   Gold3 1285.2&lt;br /&gt;
   1guest249.fynu.ucl.ac.be/64/stress4.txt , 0&lt;br /&gt;
   Gold4 1292.8&lt;br /&gt;
      Res64 0: 1.0901462631045&lt;br /&gt;
   1guest249.fynu.ucl.ac.be/64/timesusy1.txt , 1&lt;br /&gt;
   Gold1 135.488503800453&lt;br /&gt;
   1guest249.fynu.ucl.ac.be/64/timesusy2.txt , 1&lt;br /&gt;
   Gold2 135.50135501355&lt;br /&gt;
   1guest249.fynu.ucl.ac.be/64/timesusy3.txt , 1&lt;br /&gt;
   Gold3 135.699940292026&lt;br /&gt;
   1guest249.fynu.ucl.ac.be/64/timesusy4.txt , 1&lt;br /&gt;
   Gold4 135.587704906919&lt;br /&gt;
      Res64 1: 1.10156314295309&lt;br /&gt;
   Relative strength of this box: Res= 4.78483211009748&lt;br /&gt;
   Relative 32 to 64= 1.03331347491351&lt;br /&gt;
   32 to 64= 1.2876476914783&lt;br /&gt;
&lt;br /&gt;
The number indicating the relative performance of the system is found at the line biginning by: &amp;quot;Relative strength of this box: Res=&amp;quot;.&lt;br /&gt;
The file with the detailed results is the zipped file created in the directory where the script was executed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WikiStart&amp;diff=364</id>
		<title>WikiStart</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WikiStart&amp;diff=364"/>
		<updated>2015-08-26T12:29:31Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Welcome to the CMS Belgian T2 Wiki == PageOutline  === General information for users ===  ==== Information for new users ==== *[[T2bSupport| T2B Support guidelin...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Welcome to the CMS Belgian T2 Wiki ==&lt;br /&gt;
[[PageOutline]]&lt;br /&gt;
&lt;br /&gt;
=== General information for users ===&lt;br /&gt;
&lt;br /&gt;
==== Information for new users ====&lt;br /&gt;
*[[T2bSupport| T2B Support guidelines]]&lt;br /&gt;
*[[Certificates_and_VOs| How to get access to T2B?]] &lt;br /&gt;
*[[AccessToT2_IIHEForUsersFromT2_UCL| How users from UCL&#039;s T2 can gain access to IIHE&#039;s T2 ?]]&lt;br /&gt;
&lt;br /&gt;
==== Using the Tier2 computing resources ====&lt;br /&gt;
*[[policies| Policies concerning the usage of computing resources.]]&lt;br /&gt;
*[[CurrentStatus| Current status of the Tier2]]&lt;br /&gt;
*[[Getting_started_with_the_CMSSW_software| Getting started with the CMSSW software]]&lt;br /&gt;
*[[Using_Git| Using Git]]&lt;br /&gt;
*[[Getting_started_with_the_MadGraph_software| Getting started with the MadGraph software]]&lt;br /&gt;
*Submitting jobs with CRAB&lt;br /&gt;
**[[gridSubmission_withCrab| To the worldwide grid]]&lt;br /&gt;
*Submitting jobs without CRAB&lt;br /&gt;
**[[localSubmission| To the local resources]]&lt;br /&gt;
**[[gridSubmission| To the worldwide grid]]&lt;br /&gt;
*[[GridStorageAccess| How to handle data on Grid storage]]&lt;br /&gt;
*[[FAQ_CMSSW_on_the_Grid| FAQ CMSSW on the Grid on proxy and more!]]&lt;br /&gt;
*[[OtherSoftware| Other software available at the T2]]&lt;br /&gt;
&lt;br /&gt;
==== Back-up procedures ====&lt;br /&gt;
*[[BackupDocsLinuxLaptop| Procedure to automate backups of personal documents (Linux laptops only)]]&lt;br /&gt;
*[[Backup| Backup scheme for the user disks]]&lt;br /&gt;
*[[AccidentalDeleteOfFiles| What to do if I have accidentally deleted some files on my personal computer ?]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Other topics ====&lt;br /&gt;
*[[User_Meetings]] list of user meetings with added transparencies&lt;br /&gt;
*[[Basic_computing_skills| Basic computing skills]]&lt;br /&gt;
*[[CernLxplus| Useful info on use of lxplus.cern.ch]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Dedicated twiki pages maintained by several research groups ===&lt;br /&gt;
*[[TtBar_Analysis_Framework| TtBar Analysis Framework (old)]]&lt;br /&gt;
*[[TopQuarkGroup| Top Quark Group wiki]]&lt;br /&gt;
*[[HEEP_Analysis_Framework| HEEP Analysis Framework]]&lt;br /&gt;
*[[V0_Analysis_wiki| V0 Analysis wiki]]&lt;br /&gt;
*[[Info_exchange| Higgs analysis]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Service work for CMS ===&lt;br /&gt;
*[[DDT]]&lt;br /&gt;
*[[CMSSWDeployment]]&lt;br /&gt;
*[[ProdAgentAllUsers| Prodagent for users]]&lt;br /&gt;
*[[TestStoreTemp| Writing tests in /store/temp/user on T2 SE&#039;s]]&lt;br /&gt;
*[[CrabServerInstall| CRAB Server installation]]&lt;br /&gt;
*[[CrabValidation| Basic validation of CRAB releases]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Obsolete twiki pages ===&lt;br /&gt;
*[[DIY-UI]]&lt;br /&gt;
*[[CrabIIHETransitionSLC4ToSLC5| Using CRAB at IIHE during the transition from SLC4 to SLC5]]&lt;br /&gt;
*[[DataSamplesRequests2007| Samples Requests for 2007]]&lt;br /&gt;
*[[DataSamplesRequests2008| Samples Requests for 2008]]&lt;br /&gt;
*[[CrabNewIIHE| Crab at IIHE]]&lt;br /&gt;
*[[OldMainPage| The old main page is kept here for reference]] &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Welcome to Trac ===&lt;br /&gt;
==== Starting Points ====&lt;br /&gt;
*WikiFormatting -- Trac Wiki Formatting information&lt;br /&gt;
*TracGuide --  Built-in Documentation&lt;br /&gt;
*TitleIndex -- A complete list of local wiki pages&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Admin section ==&lt;br /&gt;
 [[AdminPage| Pages for administrators]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WikiRestructuredTextLinks&amp;diff=363</id>
		<title>WikiRestructuredTextLinks</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WikiRestructuredTextLinks&amp;diff=363"/>
		<updated>2015-08-26T12:29:31Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == TracLinks in reStructuredText ==  This document illustrates how to use the &amp;lt;tt&amp;gt;:trac:&amp;lt;/tt&amp;gt; role in reStructuredText. The page is written like:  &amp;lt;pre&amp;gt; &amp;lt;pre&amp;gt; #rst  Examples:...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== TracLinks in reStructuredText ==&lt;br /&gt;
&lt;br /&gt;
This document illustrates how to use the &amp;lt;tt&amp;gt;:trac:&amp;lt;/tt&amp;gt; role in reStructuredText. The page is written like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#rst &lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
*Tickets: :trac:&amp;lt;tt&amp;gt;#1&amp;lt;/tt&amp;gt; or :trac:&amp;lt;tt&amp;gt;ticket:1&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Ticket comments: :trac:&amp;lt;tt&amp;gt;comment:ticket:1:2&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Reports: :trac:&amp;lt;tt&amp;gt;{1}&amp;lt;/tt&amp;gt; or :trac:&amp;lt;tt&amp;gt;report:1&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Changesets: :trac:&amp;lt;tt&amp;gt;r1&amp;lt;/tt&amp;gt;, :trac:&amp;lt;tt&amp;gt;[1]&amp;lt;/tt&amp;gt; or :trac:&amp;lt;tt&amp;gt;changeset:1&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Revision log: :trac:&amp;lt;tt&amp;gt;r1:3&amp;lt;/tt&amp;gt;, :trac:&amp;lt;tt&amp;gt;[1:3]&amp;lt;/tt&amp;gt; or :trac:&amp;lt;tt&amp;gt;log:@1:3&amp;lt;/tt&amp;gt;, :trac:&amp;lt;tt&amp;gt;log:trunk@1:3&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Diffs (since version 0.10): :trac:&amp;lt;tt&amp;gt;diff:@20:30&amp;lt;/tt&amp;gt;, :trac:&amp;lt;tt&amp;gt;diff:tags/trac-0.9.2/wiki-default//tags/trac-0.9.3/wiki-default&amp;lt;/tt&amp;gt; or :trac:&amp;lt;tt&amp;gt;diff:trunk/trac@3538//sandbox/vc-refactoring/trac@3539&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Wiki pages: :trac:&amp;lt;tt&amp;gt;CamelCase&amp;lt;/tt&amp;gt; or :trac:&amp;lt;tt&amp;gt;wiki:CamelCase&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Milestones: :trac:&amp;lt;tt&amp;gt;milestone:1.0&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Attachment: :trac:&amp;lt;tt&amp;gt;attachment:ticket:944:attachment.1073.diff&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Files: :trac:&amp;lt;tt&amp;gt;source:trunk/COPYING&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A specific file revision: :trac:&amp;lt;tt&amp;gt;source:/trunk/COPYING@200&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A particular line of a specific file revision: :trac:&amp;lt;tt&amp;gt;source:/trunk/COPYING@200#L25&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An explicit label can be specified, separated from the link by a space:&lt;br /&gt;
&lt;br /&gt;
*See :trac:&amp;lt;tt&amp;gt;#1 ticket 1&amp;lt;/tt&amp;gt; and the :trac:&amp;lt;tt&amp;gt;source:trunk/COPYING license&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Provided you have docutils installed, the above block will render as:&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#rst &lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
*Tickets: :trac:&amp;lt;tt&amp;gt;#1&amp;lt;/tt&amp;gt; or :trac:&amp;lt;tt&amp;gt;ticket:1&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Ticket comments: :trac:&amp;lt;tt&amp;gt;comment:ticket:1:2&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Reports: :trac:&amp;lt;tt&amp;gt;{1}&amp;lt;/tt&amp;gt; or :trac:&amp;lt;tt&amp;gt;report:1&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Changesets: :trac:&amp;lt;tt&amp;gt;r1&amp;lt;/tt&amp;gt;, :trac:&amp;lt;tt&amp;gt;[1]&amp;lt;/tt&amp;gt; or :trac:&amp;lt;tt&amp;gt;changeset:1&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Revision log: :trac:&amp;lt;tt&amp;gt;r1:3&amp;lt;/tt&amp;gt;, :trac:&amp;lt;tt&amp;gt;[1:3]&amp;lt;/tt&amp;gt; or :trac:&amp;lt;tt&amp;gt;log:@1:3&amp;lt;/tt&amp;gt;, :trac:&amp;lt;tt&amp;gt;log:trunk@1:3&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Diffs (since version 0.10): :trac:&amp;lt;tt&amp;gt;diff:@20:30&amp;lt;/tt&amp;gt;, :trac:&amp;lt;tt&amp;gt;diff:tags/trac-0.9.2/wiki-default//tags/trac-0.9.3/wiki-default&amp;lt;/tt&amp;gt; or :trac:&amp;lt;tt&amp;gt;diff:trunk/trac@3538//sandbox/vc-refactoring/trac@3539&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Wiki pages: :trac:&amp;lt;tt&amp;gt;CamelCase&amp;lt;/tt&amp;gt; or :trac:&amp;lt;tt&amp;gt;wiki:CamelCase&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Milestones: :trac:&amp;lt;tt&amp;gt;milestone:1.0&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Attachment: :trac:&amp;lt;tt&amp;gt;attachment:ticket:944:attachment.1073.diff&amp;lt;/tt&amp;gt;&lt;br /&gt;
*Files: :trac:&amp;lt;tt&amp;gt;source:trunk/COPYING&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A specific file revision: :trac:&amp;lt;tt&amp;gt;source:/trunk/COPYING@200&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A particular line of a specific file revision: :trac:&amp;lt;tt&amp;gt;source:/trunk/COPYING@200#L25&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An explicit label can be specified, separated from the link by a space:&lt;br /&gt;
&lt;br /&gt;
*See :trac:&amp;lt;tt&amp;gt;#1 ticket 1&amp;lt;/tt&amp;gt; and the :trac:&amp;lt;tt&amp;gt;source:trunk/COPYING license&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Note also that any of the above could have been written using substitution references and the &amp;lt;tt&amp;gt;trac::&amp;lt;/tt&amp;gt; directive:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#rst&lt;br /&gt;
See |ticket123|.&lt;br /&gt;
&lt;br /&gt;
 .. |ticket123| trac:: ticket:123 this ticket&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This renders as:&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#rst&lt;br /&gt;
See |ticket123|.&lt;br /&gt;
&lt;br /&gt;
 .. |ticket123| trac:: ticket:123 this ticket&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: WikiRestructuredText, TracLinks&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WikiRestructuredText&amp;diff=362</id>
		<title>WikiRestructuredText</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WikiRestructuredText&amp;diff=362"/>
		<updated>2015-08-26T12:29:30Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == reStructuredText Support in Trac ==  Trac supports using &amp;#039;&amp;#039;reStructuredText&amp;#039;&amp;#039; (RST) as an alternative to wiki markup in any context WikiFormatting is used.  From the reStu...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== reStructuredText Support in Trac ==&lt;br /&gt;
&lt;br /&gt;
Trac supports using &#039;&#039;reStructuredText&#039;&#039; (RST) as an alternative to wiki markup in any context WikiFormatting is used.&lt;br /&gt;
&lt;br /&gt;
From the reStucturedText webpage:&lt;br /&gt;
 &amp;quot;&#039;&#039;reStructuredText is an easy-to-read, what-you-see-is-what-you-get plaintext markup syntax and parser   system. It is useful for in-line program documentation (such as Python docstrings), for quickly creating  simple web pages, and for standalone documents. reStructuredText is designed for extensibility for  specific application domains. &#039;&#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
If you want a file from your Subversion repository be displayed as reStructuredText in Trac&#039;s source browser, set &amp;lt;tt&amp;gt;text/x-rst&amp;lt;/tt&amp;gt; as value for the Subversion property &amp;lt;tt&amp;gt;svn:mime-type&amp;lt;/tt&amp;gt;. See [trac:source:/trunk/INSTALL this example].&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
Note that to activate RST support in Trac, the python docutils package must be installed. &lt;br /&gt;
If not already available on your operating system, you can download it at the [http://docutils.sourceforge.net/rst.html RST Website].&lt;br /&gt;
&lt;br /&gt;
Install docutils using &amp;lt;tt&amp;gt;easy_install docutils&amp;lt;/tt&amp;gt;. Do not use the package manager of your OS (e.g. &amp;lt;tt&amp;gt;apt-get install python-docutils&amp;lt;/tt&amp;gt;), because Trac will not find docutils then.&lt;br /&gt;
&lt;br /&gt;
==== More information on RST ====&lt;br /&gt;
&lt;br /&gt;
*reStructuredText Website -- http://docutils.sourceforge.net/rst.html&lt;br /&gt;
*RST Quick Reference -- http://docutils.sourceforge.net/docs/rst/quickref.html&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Using RST in Trac ===&lt;br /&gt;
To specify that a block of text should be parsed using RST, use the &#039;&#039;rst&#039;&#039; processor. &lt;br /&gt;
&lt;br /&gt;
==== TracLinks in reStructuredText ====&lt;br /&gt;
&lt;br /&gt;
*Trac provides a custom RST directive &amp;lt;tt&amp;gt;trac::&amp;lt;/tt&amp;gt; to allow TracLinks from within RST text.&lt;br /&gt;
&lt;br /&gt;
 Example:&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 #rst&lt;br /&gt;
 This is a reference to |a ticket|&lt;br /&gt;
&lt;br /&gt;
 .. |a ticket| trac:: #42&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Trac allows an even easier way of creating TracLinks in RST, using the custom &amp;lt;tt&amp;gt;:trac:&amp;lt;/tt&amp;gt; role.&lt;br /&gt;
&lt;br /&gt;
 Example:&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 #rst&lt;br /&gt;
 This is a reference to ticket &amp;lt;tt&amp;gt;#12&amp;lt;/tt&amp;gt;:trac:&lt;br /&gt;
&lt;br /&gt;
 To learn how to use Trac, see &amp;lt;tt&amp;gt;TracGuide&amp;lt;/tt&amp;gt;:trac:&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 For a complete example of all uses of the &amp;lt;tt&amp;gt;:trac:&amp;lt;/tt&amp;gt; role, please see WikiRestructuredTextLinks. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Syntax highlighting in reStructuredText ====&lt;br /&gt;
&lt;br /&gt;
There is a directive for doing TracSyntaxColoring in RST as well. The directive is called&lt;br /&gt;
code-block&lt;br /&gt;
&lt;br /&gt;
Example&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#rst&lt;br /&gt;
&lt;br /&gt;
.. code-block:: python&lt;br /&gt;
&lt;br /&gt;
 class Test:&lt;br /&gt;
&lt;br /&gt;
    def TestFunction(self):&lt;br /&gt;
        pass&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Will result in the below.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#rst&lt;br /&gt;
&lt;br /&gt;
.. code-block:: python&lt;br /&gt;
&lt;br /&gt;
 class Test:&lt;br /&gt;
&lt;br /&gt;
    def TestFunction(self):&lt;br /&gt;
        pass&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Wiki Macros in reStructuredText ====&lt;br /&gt;
&lt;br /&gt;
For doing [WikiMacros Wiki Macros] in RST you use the same directive as for syntax highlighting i.e code-block.&lt;br /&gt;
&lt;br /&gt;
==== Wiki Macro Example ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#rst&lt;br /&gt;
&lt;br /&gt;
.. code-block:: RecentChanges&lt;br /&gt;
&lt;br /&gt;
   Trac,3&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Will result in the below:&lt;br /&gt;
&lt;br /&gt;
     [[RecentChanges(Trac,3)]]&lt;br /&gt;
&lt;br /&gt;
Or a more concise Wiki Macro like syntax is also available:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#rst&lt;br /&gt;
&lt;br /&gt;
:code-block:&amp;lt;tt&amp;gt;RecentChanges:Trac,3&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Bigger RST Example ====&lt;br /&gt;
The example below should be mostly self-explanatory:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#html&lt;br /&gt;
&amp;lt;pre class=&amp;quot;wiki&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
#rst&lt;br /&gt;
FooBar Header&lt;br /&gt;
=============&lt;br /&gt;
reStructuredText is **nice**. It has its own webpage_.&lt;br /&gt;
&lt;br /&gt;
A table:&lt;br /&gt;
&lt;br /&gt;
=====  =====  ======&lt;br /&gt;
   Inputs     Output&lt;br /&gt;
------------  ------&lt;br /&gt;
  A      B    A or B&lt;br /&gt;
=====  =====  ======&lt;br /&gt;
False  False  False&lt;br /&gt;
True   False  True&lt;br /&gt;
False  True   True&lt;br /&gt;
True   True   True&lt;br /&gt;
=====  =====  ======&lt;br /&gt;
&lt;br /&gt;
RST TracLinks&lt;br /&gt;
-------------&lt;br /&gt;
&lt;br /&gt;
See also ticket &amp;lt;tt&amp;gt;#42&amp;lt;/tt&amp;gt;:trac:.&lt;br /&gt;
&lt;br /&gt;
.. _webpage: http://docutils.sourceforge.net/rst.html&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Results in:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#rst&lt;br /&gt;
FooBar Header&lt;br /&gt;
=============&lt;br /&gt;
reStructuredText is **nice**. It has its own webpage_.&lt;br /&gt;
&lt;br /&gt;
A table:&lt;br /&gt;
&lt;br /&gt;
=====  =====  ======&lt;br /&gt;
   Inputs     Output&lt;br /&gt;
------------  ------&lt;br /&gt;
  A      B    A or B&lt;br /&gt;
=====  =====  ======&lt;br /&gt;
False  False  False&lt;br /&gt;
True   False  True&lt;br /&gt;
False  True   True&lt;br /&gt;
True   True   True&lt;br /&gt;
=====  =====  ======&lt;br /&gt;
&lt;br /&gt;
RST TracLinks&lt;br /&gt;
-------------&lt;br /&gt;
&lt;br /&gt;
See also ticket &amp;lt;tt&amp;gt;#42&amp;lt;/tt&amp;gt;:trac:.&lt;br /&gt;
&lt;br /&gt;
.. _webpage: http://docutils.sourceforge.net/rst.html&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: WikiRestructuredTextLinks, WikiProcessors, WikiFormatting&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WikiProcessors&amp;diff=361</id>
		<title>WikiProcessors</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WikiProcessors&amp;diff=361"/>
		<updated>2015-08-26T12:29:30Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Wiki Processors ==  Processors are WikiMacros designed to provide alternative markup formats for the [TracWiki Wiki engine]. Processors can be thought of as &amp;#039;&amp;#039;macro functi...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Wiki Processors ==&lt;br /&gt;
&lt;br /&gt;
Processors are WikiMacros designed to provide alternative markup formats for the [TracWiki Wiki engine]. Processors can be thought of as &#039;&#039;macro functions to process user-edited text&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
Wiki processors can be used in any Wiki text throughout Trac,&lt;br /&gt;
for various different purposes, like:&lt;br /&gt;
 - [#CodeHighlightingSupport syntax highlighting] or for rendering text verbatim,&lt;br /&gt;
 - rendering [#HTMLrelated Wiki markup inside a context], &lt;br /&gt;
   like inside &amp;lt;div&amp;gt; blocks or &amp;lt;span&amp;gt; or within &amp;lt;td&amp;gt; or &amp;lt;th&amp;gt; table cells,&lt;br /&gt;
 - using an alternative markup syntax, like [[WikiHtml| raw HTML]] and&lt;br /&gt;
   [[WikiRestructuredText| Restructured Text]],&lt;br /&gt;
   or [http://www.textism.com/tools/textile/ textile]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Using Processors ===&lt;br /&gt;
&lt;br /&gt;
To use a processor on a block of text, first delimit the lines using&lt;br /&gt;
a Wiki &#039;&#039;code block&#039;&#039;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
The lines&lt;br /&gt;
that should be processed...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Immediately after the &amp;lt;tt&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;/tt&amp;gt; or on the line just below, &lt;br /&gt;
add &amp;lt;tt&amp;gt;#!&amp;lt;/tt&amp;gt; followed by the &#039;&#039;processor name&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#processorname&lt;br /&gt;
The lines&lt;br /&gt;
that should be processed...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is the &amp;quot;shebang&amp;quot; notation, familiar to most UNIX users.&lt;br /&gt;
&lt;br /&gt;
Besides their content, some Wiki processors can also accept &#039;&#039;parameters&#039;&#039;,&lt;br /&gt;
which are then given as &amp;lt;tt&amp;gt;key=value&amp;lt;/tt&amp;gt; pairs after the processor name, &lt;br /&gt;
on the same line. If &amp;lt;tt&amp;gt;value&amp;lt;/tt&amp;gt; has to contain space, as it&#039;s often the case for&lt;br /&gt;
the style parameter, a quoted string can be used (&amp;lt;tt&amp;gt;key=&amp;quot;value with space&amp;quot;&amp;lt;/tt&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
As some processors are meant to process Wiki markup, it&#039;s quite possible to&lt;br /&gt;
&#039;&#039;nest&#039;&#039; processor blocks.&lt;br /&gt;
You may want to indent the content of nested blocks for increased clarity,&lt;br /&gt;
this extra indentation will be ignored when processing the content.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td colspan=2 align=center style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
&lt;br /&gt;
                &amp;lt;u&amp;gt;Example 1&amp;lt;/u&amp;gt;: Inserting raw HTML&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;h1 style=&amp;quot;color: grey&amp;quot;&amp;gt;This is raw HTML&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td valign=top style=&amp;quot;border: none; padding-left: 2em&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#html&lt;br /&gt;
&amp;lt;h1 style=&amp;quot;color: grey&amp;quot;&amp;gt;This is raw HTML&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td colspan=2 align=center style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
&lt;br /&gt;
     &amp;lt;u&amp;gt;Example 2&amp;lt;/u&amp;gt;: Highlighted Python code in a &amp;lt;div&amp;gt; block with custom style&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;#div style=&amp;quot;background: #ffd; border: 3px ridge&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  This is an example of embedded &amp;quot;code&amp;quot; block:&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;pre&amp;gt;&lt;br /&gt;
    #python&lt;br /&gt;
    def hello():&lt;br /&gt;
        return &amp;quot;world&amp;quot;&lt;br /&gt;
    &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td valign=top style=&amp;quot;border: none; padding: 1em&amp;quot;&lt;br /&gt;
  &amp;lt;pre&amp;gt;#div style=&amp;quot;background: #ffd; border: 3px ridge&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  This is an example of embedded &amp;quot;code&amp;quot; block:&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;pre&amp;gt;&lt;br /&gt;
    #python&lt;br /&gt;
    def hello():&lt;br /&gt;
        return &amp;quot;world&amp;quot;&lt;br /&gt;
    &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td colspan=2 align=center style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
&lt;br /&gt;
     &amp;lt;u&amp;gt;Example 3&amp;lt;/u&amp;gt;: Searching tickets from a wiki page, by keywords.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #html&lt;br /&gt;
  &amp;lt;form action=&amp;quot;/query&amp;quot; method=&amp;quot;get&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;text&amp;quot; name=&amp;quot;keywords&amp;quot; value=&amp;quot;~&amp;quot; size=&amp;quot;30&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Search by Keywords&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;!-- To control what fields show up use hidden fields&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;id&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;summary&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;status&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;milestone&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;version&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;owner&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;priority&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;component&amp;quot;&amp;gt;&lt;br /&gt;
  --&amp;gt;&lt;br /&gt;
  &amp;lt;/form&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td valign=top style=&amp;quot;border: none; padding: 1em&amp;quot;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #html&lt;br /&gt;
  &amp;lt;form action=&amp;quot;/query&amp;quot; method=&amp;quot;get&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;text&amp;quot; name=&amp;quot;keywords&amp;quot; value=&amp;quot;~&amp;quot; size=&amp;quot;30&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Search by Keywords&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;!-- To control what fields show up use hidden fields&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;id&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;summary&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;status&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;milestone&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;version&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;owner&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;priority&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;col&amp;quot; value=&amp;quot;component&amp;quot;&amp;gt;&lt;br /&gt;
  --&amp;gt;&lt;br /&gt;
  &amp;lt;/form&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== Available Processors ===&lt;br /&gt;
&lt;br /&gt;
The following processors are included in the Trac distribution:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;#default&amp;lt;/tt&amp;gt; :: Present the text verbatim in a preformatted text block. &lt;br /&gt;
                This is the same as specifying &#039;&#039;no&#039;&#039; processor name&lt;br /&gt;
                (and no &amp;lt;tt&amp;gt;#!&amp;lt;/tt&amp;gt;)&lt;br /&gt;
 &amp;lt;tt&amp;gt;#comment&amp;lt;/tt&amp;gt; :: Do not process the text in this section (i.e. contents exist&lt;br /&gt;
                only in the plain text - not in the rendered page).&lt;br /&gt;
&lt;br /&gt;
==== HTML related ====&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;#html&amp;lt;/tt&amp;gt;        :: Insert custom HTML in a wiki page.&lt;br /&gt;
 &amp;lt;tt&amp;gt;#htmlcomment&amp;lt;/tt&amp;gt; :: Insert an HTML comment in a wiki page (&#039;&#039;since 0.12&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
Note that &amp;lt;tt&amp;gt;#html&amp;lt;/tt&amp;gt; blocks have to be &#039;&#039;self-contained&#039;&#039;,&lt;br /&gt;
#e. you can&#039;t start an HTML element in one block and close it later in a second block. Use the following processors for achieving a similar effect. &lt;br /&gt;
&lt;br /&gt;
  &amp;lt;tt&amp;gt;#div&amp;lt;/tt&amp;gt; :: Wrap an arbitrary Wiki content inside a &amp;lt;div&amp;gt; element&lt;br /&gt;
             (&#039;&#039;since 0.11&#039;&#039;).&lt;br /&gt;
 &amp;lt;tt&amp;gt;#span&amp;lt;/tt&amp;gt; :: Wrap an arbitrary Wiki content inside a &amp;lt;span&amp;gt; element &lt;br /&gt;
             (&#039;&#039;since 0.11&#039;&#039;). &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;#td&amp;lt;/tt&amp;gt; :: Wrap an arbitrary Wiki content inside a &amp;lt;td&amp;gt; element (&#039;&#039;since 0.12&#039;&#039;)&lt;br /&gt;
 &amp;lt;tt&amp;gt;#th&amp;lt;/tt&amp;gt; :: Wrap an arbitrary Wiki content inside a &amp;lt;th&amp;gt; element (&#039;&#039;since 0.12&#039;&#039;) &lt;br /&gt;
 &amp;lt;tt&amp;gt;#tr&amp;lt;/tt&amp;gt; :: Can optionally be used for wrapping &amp;lt;tt&amp;gt;#td&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;#th&amp;lt;/tt&amp;gt; blocks,&lt;br /&gt;
       either for specifying row attributes of better visual grouping&lt;br /&gt;
       (&#039;&#039;since 0.12&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
See WikiHtml for example usage and more details about these processors.&lt;br /&gt;
&lt;br /&gt;
==== Other Markups ====&lt;br /&gt;
&lt;br /&gt;
     &amp;lt;tt&amp;gt;#rst&amp;lt;/tt&amp;gt; :: Trac support for Restructured Text. See WikiRestructuredText.&lt;br /&gt;
 &amp;lt;tt&amp;gt;#textile&amp;lt;/tt&amp;gt; :: Supported if [http://cheeseshop.python.org/pypi/textile Textile] &lt;br /&gt;
                is installed. &lt;br /&gt;
                See [http://www.textism.com/tools/textile/ a Textile reference].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Code Highlighting Support ====&lt;br /&gt;
&lt;br /&gt;
Trac includes processors to provide inline syntax highlighting:&lt;br /&gt;
 &amp;lt;tt&amp;gt;#c&amp;lt;/tt&amp;gt; (C), &amp;lt;tt&amp;gt;#cpp&amp;lt;/tt&amp;gt; (C++), &amp;lt;tt&amp;gt;#python&amp;lt;/tt&amp;gt; (Python), &amp;lt;tt&amp;gt;#perl&amp;lt;/tt&amp;gt; (Perl), &lt;br /&gt;
 &amp;lt;tt&amp;gt;#ruby&amp;lt;/tt&amp;gt; (Ruby), &amp;lt;tt&amp;gt;#php&amp;lt;/tt&amp;gt; (PHP), &amp;lt;tt&amp;gt;#asp&amp;lt;/tt&amp;gt; (ASP), &amp;lt;tt&amp;gt;#java&amp;lt;/tt&amp;gt; (Java), &lt;br /&gt;
 &amp;lt;tt&amp;gt;#js&amp;lt;/tt&amp;gt; (Javascript), &amp;lt;tt&amp;gt;#sql (SQL)&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;#xml&amp;lt;/tt&amp;gt; (XML or HTML),&lt;br /&gt;
 &amp;lt;tt&amp;gt;#sh&amp;lt;/tt&amp;gt; (Bourne/Bash shell), etc.&lt;br /&gt;
&lt;br /&gt;
Trac relies on external software packages for syntax coloring,&lt;br /&gt;
like [http://pygments.org Pygments]. &lt;br /&gt;
&lt;br /&gt;
See TracSyntaxColoring for information about which languages&lt;br /&gt;
are supported and how to enable support for more languages.&lt;br /&gt;
&lt;br /&gt;
Note also that 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:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#text/html&lt;br /&gt;
&amp;lt;h1&amp;gt;text&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result will be syntax highlighted HTML code:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#text/html&lt;br /&gt;
&amp;lt;h1&amp;gt;text&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The same is valid for all other [TracSyntaxColoring#SyntaxColoringSupport mime types supported].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For more processor macros developed and/or contributed by users, visit: &lt;br /&gt;
*[trac:ProcessorBazaar]&lt;br /&gt;
*[trac:MacroBazaar]&lt;br /&gt;
*[th:WikiStart Trac Hacks] community site&lt;br /&gt;
&lt;br /&gt;
Developing processors is no different from Wiki macros. &lt;br /&gt;
In fact they work the same way, only the usage syntax differs. &lt;br /&gt;
See WikiMacros#DevelopingCustomMacros for more information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: WikiMacros, WikiHtml, WikiRestructuredText, TracSyntaxColoring, WikiFormatting, TracGuide&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WikiPageNames&amp;diff=360</id>
		<title>WikiPageNames</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WikiPageNames&amp;diff=360"/>
		<updated>2015-08-26T12:29:30Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Wiki Page Names == TracGuideToc  Wiki page names commonly use the CamelCase convention. Within wiki text, any word in CamelCase automatically becomes a hyperlink to th...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Wiki Page Names ==&lt;br /&gt;
[[TracGuideToc]]&lt;br /&gt;
&lt;br /&gt;
Wiki page names commonly use the CamelCase convention. Within wiki text, any word in CamelCase automatically becomes a hyperlink to the wiki page with that name.&lt;br /&gt;
&lt;br /&gt;
CamelCase page names must follow these rules:&lt;br /&gt;
&lt;br /&gt;
#The name must consist of &#039;&#039;&#039;alphabetic characters only&#039;&#039;&#039;. No digits, spaces, punctuation, or underscores are allowed.&lt;br /&gt;
 2. A name must have at least two capital letters.&lt;br /&gt;
 3. The first character must be capitalized.&lt;br /&gt;
 4. Every capital letter must be followed by one or more lower-case letters. &lt;br /&gt;
 5. The use of slash ( / ) is permitted in page names (possibly representing a hierarchy).&lt;br /&gt;
&lt;br /&gt;
If you want to create a wiki page that doesn&#039;t follow CamelCase rules you can use the following syntax:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
*[[Wiki_page]], [[ISO9000]],&lt;br /&gt;
   and with a label: [[ISO9000| ISO 9000 standard]]&lt;br /&gt;
*[[&amp;quot;Space| Matters&amp;quot;]]&lt;br /&gt;
   and with a label: [[&amp;quot;Space| Matters&amp;quot; all about white space]]&lt;br /&gt;
*or simply: [&amp;quot;WikiPageName&amp;quot;]s&lt;br /&gt;
*even better, the new [[WikiCreole link style]]&lt;br /&gt;
   and with a label: [[WikiCreole link style|WikiCreole style links]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be rendered as:&lt;br /&gt;
*[[Wiki_page]], [[ISO9000]],&lt;br /&gt;
   and with a label: [[ISO9000| ISO 9000 standard]]&lt;br /&gt;
*[[&amp;quot;Space| Matters&amp;quot;]] &#039;&#039;(that page name embeds space characters)&#039;&#039;&lt;br /&gt;
   and with a label: [[&amp;quot;Space| Matters&amp;quot; all about white space]]&lt;br /&gt;
*or simply: [&amp;quot;WikiPageName&amp;quot;]s &#039;&#039;(old MoinMoin&#039;s internal free links style)&#039;&#039;&lt;br /&gt;
*even better, the new [[WikiCreole link style]]&lt;br /&gt;
   and with a label: [[WikiCreole link style|WikiCreole style links]]&lt;br /&gt;
   &#039;&#039;(since 0.12, also now adopted by MoinMoin)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Starting with Trac 0.11, it&#039;s also possible to link to a specific &#039;&#039;version&#039;&#039; of a Wiki page, as you would do for a specific version of a file, for example: WikiStart@1.&lt;br /&gt;
&lt;br /&gt;
You can also prevent a CamelCase name to be interpreted as a TracLinks, by quoting it. See TracLinks#EscapingLinks.&lt;br /&gt;
&lt;br /&gt;
As visible in the example above, one can also append an anchor to a Wiki page name, in order to link to a specific section within that page. The anchor can easily be seen by hovering the mouse over a section heading, then clicking on the [[html(&amp;amp;para;)]] sign that appears at its end. The anchor is usually generated automatically, but it&#039;s also possible to specify it explicitly: see WikiFormatting#using-explicit-id-in-heading.&lt;br /&gt;
----&lt;br /&gt;
See also: WikiNewPage, WikiFormatting, TracWiki, TracLinks&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WikiNewPage&amp;diff=359</id>
		<title>WikiNewPage</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WikiNewPage&amp;diff=359"/>
		<updated>2015-08-26T12:29:30Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Steps to Add a New Wiki Page == TracGuideToc  #Choose a name for your new page. See WikiPageNames for naming conventions.  2. Edit an existing page (or any other resou...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Steps to Add a New Wiki Page ==&lt;br /&gt;
[[TracGuideToc]]&lt;br /&gt;
&lt;br /&gt;
#Choose a name for your new page. See WikiPageNames for naming conventions.&lt;br /&gt;
 2. Edit an existing page (or any other resources that support WikiFormatting and add a [TracLinks link] to your new page. Save your changes.&lt;br /&gt;
 3. Follow the link you created to take you to the new page. Trac will display a &amp;quot;describe PageName here&amp;quot; message.&lt;br /&gt;
 4. Click the &amp;quot;Edit this page&amp;quot; button to edit and add content to your new page. Save your changes.&lt;br /&gt;
 5. All done. Your new page is published.&lt;br /&gt;
&lt;br /&gt;
You can skip the second step by entering the CamelCase name of the page in the quick-search field at the top of the page. But note that the page will effectively be &amp;quot;orphaned&amp;quot; unless you link to it from somewhere else.&lt;br /&gt;
&lt;br /&gt;
== Rename a page #renaming&lt;br /&gt;
&lt;br /&gt;
While picking up good WikiPageNames is important, you can always change your mind&lt;br /&gt;
and rename the page later.&lt;br /&gt;
&lt;br /&gt;
You&#039;ll need to ask for the WIKI_RENAME permission in order to be allowed to do this.&lt;br /&gt;
When renaming a page, you&#039;ll be offered the possibility to create a redirection page, so that links pointing to the old location will not be left dangling.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: TracWiki, PageTemplates, WikiFormatting, TracLinks, WikiDeletePage&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WikiMacros&amp;diff=358</id>
		<title>WikiMacros</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WikiMacros&amp;diff=358"/>
		<updated>2015-08-26T12:29:30Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Trac Macros ==  PageOutline  Trac macros are plugins to extend the Trac engine with custom &amp;#039;functions&amp;#039; written in Python. A macro inserts dynamic HTML data in any cont...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Trac Macros ==&lt;br /&gt;
&lt;br /&gt;
[[PageOutline]]&lt;br /&gt;
&lt;br /&gt;
Trac macros are plugins to extend the Trac engine with custom &#039;functions&#039; written in Python. A macro inserts dynamic HTML data in any context supporting WikiFormatting.&lt;br /&gt;
&lt;br /&gt;
Another kind of macros are WikiProcessors. They typically deal with alternate markup formats and representation of larger blocks of information (like source code highlighting).&lt;br /&gt;
&lt;br /&gt;
=== Using Macros ===&lt;br /&gt;
&lt;br /&gt;
Macro calls are enclosed in two &#039;&#039;square brackets&#039;&#039;. Like Python functions, macros can also have arguments, a comma separated list within parentheses.&lt;br /&gt;
&lt;br /&gt;
==== Getting Detailed Help ====&lt;br /&gt;
The list of available macros and the full help can be obtained using the MacroList macro, as seen [#AvailableMacros below].&lt;br /&gt;
&lt;br /&gt;
A brief list can be obtained via ![[MacroList(*)]] or ![[?]].&lt;br /&gt;
&lt;br /&gt;
Detailed help on a specific macro can be obtained by passing it as an argument to MacroList, e.g. ![[MacroList(MacroList)]], or, more conveniently, by appending a question mark (?) to the macro&#039;s name, like in ![[MacroList?]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Example ====&lt;br /&gt;
&lt;br /&gt;
A list of 3 most recently changed wiki pages starting with &#039;Trac&#039;:&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  [[RecentChanges(Trac,3)]]&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding-left: 2em;&amp;quot;&lt;br /&gt;
[[RecentChanges(Trac,3)]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  [[RecentChanges?(Trac,3)]]&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding-left: 2em;&amp;quot;&lt;br /&gt;
[[RecentChanges?(Trac,3)]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  [[?]]&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding-left: 2em; font-size: 80%&amp;quot;&lt;br /&gt;
[[?]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Available Macros ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note that the following list will only contain the macro documentation if you&#039;ve not enabled &amp;lt;tt&amp;gt;-OO&amp;lt;/tt&amp;gt; optimizations, or not set the &amp;lt;tt&amp;gt;PythonOptimize&amp;lt;/tt&amp;gt; option for [[TracModPython| mod_python]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[MacroList]]&lt;br /&gt;
&lt;br /&gt;
=== Macros from around the world ===&lt;br /&gt;
&lt;br /&gt;
The [http://trac-hacks.org/ Trac Hacks] site provides a wide collection of macros and other Trac [TracPlugins plugins] contributed by the Trac community. If you&#039;re looking for new macros, or have written one that you&#039;d like to share with the world, please don&#039;t hesitate to visit that site.&lt;br /&gt;
&lt;br /&gt;
=== Developing Custom Macros ===&lt;br /&gt;
Macros, like Trac itself, are written in the [http://python.org/ Python programming language] and are developed as part of TracPlugins.&lt;br /&gt;
&lt;br /&gt;
For more information about developing macros, see the [trac:TracDev development resources] on the main project site.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here are 2 simple examples showing how to create a Macro with Trac 0.11. &lt;br /&gt;
&lt;br /&gt;
Also, have a look at [trac:source:tags/trac-0.11/sample-plugins/Timestamp.py Timestamp.py] for an example that shows the difference between old style and new style macros and at the [trac:source:tags/trac-0.11/wiki-macros/README macros/README] which provides a little more insight about the transition.&lt;br /&gt;
&lt;br /&gt;
==== Macro without arguments ====&lt;br /&gt;
To test the following code, you should saved it in a &amp;lt;tt&amp;gt;timestamp_sample.py&amp;lt;/tt&amp;gt; file located in the TracEnvironment&#039;s &amp;lt;tt&amp;gt;plugins/&amp;lt;/tt&amp;gt; directory.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#python&lt;br /&gt;
from datetime import datetime&lt;br /&gt;
# Note: since Trac 0.11, datetime objects are used internally&lt;br /&gt;
&lt;br /&gt;
from genshi.builder import tag&lt;br /&gt;
&lt;br /&gt;
from trac.util.datefmt import format_datetime, utc&lt;br /&gt;
from trac.wiki.macros import WikiMacroBase&lt;br /&gt;
&lt;br /&gt;
class TimeStampMacro(WikiMacroBase):&lt;br /&gt;
    &amp;quot;&amp;quot;&amp;quot;Inserts the current time (in seconds) into the wiki page.&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    revision = &amp;quot;$Rev$&amp;quot;&lt;br /&gt;
    url = &amp;quot;$URL$&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    def expand_macro(self, formatter, name, text):&lt;br /&gt;
        t = datetime.now(utc)&lt;br /&gt;
        return tag.b(format_datetime(t, &#039;%c&#039;))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Macro with arguments ====&lt;br /&gt;
To test the following code, you should saved it in a &amp;lt;tt&amp;gt;helloworld_sample.py&amp;lt;/tt&amp;gt; file located in the TracEnvironment&#039;s &amp;lt;tt&amp;gt;plugins/&amp;lt;/tt&amp;gt; directory.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#python&lt;br /&gt;
from genshi.core import Markup&lt;br /&gt;
&lt;br /&gt;
from trac.wiki.macros import WikiMacroBase&lt;br /&gt;
&lt;br /&gt;
class HelloWorldMacro(WikiMacroBase):&lt;br /&gt;
    &amp;quot;&amp;quot;&amp;quot;Simple HelloWorld macro.&lt;br /&gt;
&lt;br /&gt;
    Note that the name of the class is meaningful:&lt;br /&gt;
     - it must end with &amp;quot;Macro&amp;quot;&lt;br /&gt;
     - what comes before &amp;quot;Macro&amp;quot; ends up being the macro name&lt;br /&gt;
&lt;br /&gt;
    The documentation of the class (i.e. what you&#039;re reading)&lt;br /&gt;
    will become the documentation of the macro, as shown by&lt;br /&gt;
    the MacroList macro (usually used in the WikiMacros page).&lt;br /&gt;
    &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    revision = &amp;quot;$Rev$&amp;quot;&lt;br /&gt;
    url = &amp;quot;$URL$&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    def expand_macro(self, formatter, name, text, args):&lt;br /&gt;
        &amp;quot;&amp;quot;&amp;quot;Return some output that will be displayed in the Wiki content.&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt; is the actual name of the macro (no surprise, here it&#039;ll be&lt;br /&gt;
        &amp;lt;tt&amp;gt;&#039;HelloWorld&#039;&amp;lt;/tt&amp;gt;),&lt;br /&gt;
        &amp;lt;tt&amp;gt;text&amp;lt;/tt&amp;gt; is the text enclosed in parenthesis at the call of the macro.&lt;br /&gt;
          Note that if there are &#039;&#039;no&#039;&#039; parenthesis (like in, e.g.&lt;br /&gt;
          [[HelloWorld]]), then &amp;lt;tt&amp;gt;text&amp;lt;/tt&amp;gt; is &amp;lt;tt&amp;gt;None&amp;lt;/tt&amp;gt;.&lt;br /&gt;
        &amp;lt;tt&amp;gt;args&amp;lt;/tt&amp;gt; are the arguments passed when HelloWorld is called using a&lt;br /&gt;
        &amp;lt;tt&amp;gt;#HelloWorld&amp;lt;/tt&amp;gt; code block.&lt;br /&gt;
        &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
        return &#039;Hello World, text = %s, args = %s&#039; % \&lt;br /&gt;
            (Markup.escape(text), Markup.escape(repr(args)))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that &amp;lt;tt&amp;gt;expand_macro&amp;lt;/tt&amp;gt; optionally takes a 4&amp;lt;sup&amp;gt;th&amp;lt;/sup&amp;gt; parameter &#039;&#039;&amp;lt;tt&amp;gt;args&amp;lt;/tt&amp;gt;&#039;&#039;. When the macro is called as a [WikiProcessors WikiProcessor], it&#039;s also possible to pass &amp;lt;tt&amp;gt;key=value&amp;lt;/tt&amp;gt; [WikiProcessors#UsingProcessors processor parameters]. If given, those are stored in a dictionary and passed in this extra &amp;lt;tt&amp;gt;args&amp;lt;/tt&amp;gt; parameter. On the contrary, when called as a macro, &amp;lt;tt&amp;gt;args&amp;lt;/tt&amp;gt; is  &amp;lt;tt&amp;gt;None&amp;lt;/tt&amp;gt;. (&#039;&#039;since 0.12&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
For example, when writing:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#HelloWorld style=&amp;quot;polite&amp;quot;&lt;br /&gt;
&amp;lt;Hello World!&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#HelloWorld&lt;br /&gt;
&amp;lt;Hello World!&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[HelloWorld(&amp;lt;Hello World!&amp;gt;)]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
One should get:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello World, text = &amp;lt;Hello World!&amp;gt; , args = {&#039;style&#039;: u&#039;polite&#039;}&lt;br /&gt;
Hello World, text = &amp;lt;Hello World!&amp;gt; , args = {}&lt;br /&gt;
Hello World, text = &amp;lt;Hello World!&amp;gt; , args = None&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the return value of &amp;lt;tt&amp;gt;expand_macro&amp;lt;/tt&amp;gt; is &#039;&#039;&#039;not&#039;&#039;&#039; HTML escaped. Depending on the expected result, you should escape it by yourself (using &amp;lt;tt&amp;gt;return Markup.escape(result)&amp;lt;/tt&amp;gt;) or, if this is indeed HTML, wrap it in a Markup object (&amp;lt;tt&amp;gt;return Markup(result)&amp;lt;/tt&amp;gt;) with &amp;lt;tt&amp;gt;Markup&amp;lt;/tt&amp;gt; coming from Genshi, (&amp;lt;tt&amp;gt;from genshi.core import Markup&amp;lt;/tt&amp;gt;).  &lt;br /&gt;
&lt;br /&gt;
You can also recursively use a wiki Formatter (&amp;lt;tt&amp;gt;from trac.wiki import Formatter&amp;lt;/tt&amp;gt;) to process the &amp;lt;tt&amp;gt;text&amp;lt;/tt&amp;gt; as wiki markup, for example by doing:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#python&lt;br /&gt;
    text = &amp;quot;whatever wiki markup you want, even containing other macros&amp;quot;&lt;br /&gt;
    # Convert Wiki markup to HTML, new style&lt;br /&gt;
    out = StringIO()&lt;br /&gt;
    Formatter(self.env, formatter.context).format(text, out)&lt;br /&gt;
    return Markup(out.getvalue())&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WikiHtml&amp;diff=357</id>
		<title>WikiHtml</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WikiHtml&amp;diff=357"/>
		<updated>2015-08-26T12:29:29Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Using HTML in Wiki Text ==  Trac supports inserting HTML into any wiki context, accomplished using the &amp;lt;tt&amp;gt;#html&amp;lt;/tt&amp;gt;  WikiProcessor.   However a constr...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Using HTML in Wiki Text ==&lt;br /&gt;
&lt;br /&gt;
Trac supports inserting HTML into any wiki context, accomplished using the &amp;lt;tt&amp;gt;#html&amp;lt;/tt&amp;gt; [[WikiProcessors| WikiProcessor]]. &lt;br /&gt;
&lt;br /&gt;
However a constraint is that this HTML has to be well-formed.&lt;br /&gt;
In particular you can&#039;t insert a start tag in an &amp;lt;tt&amp;gt;#html&amp;lt;/tt&amp;gt; block,&lt;br /&gt;
resume normal wiki text and insert the corresponding end tag in a &lt;br /&gt;
second &amp;lt;tt&amp;gt;#html&amp;lt;/tt&amp;gt; block. &lt;br /&gt;
&lt;br /&gt;
Fortunately, for creating styled &amp;lt;div&amp;gt;s, &amp;lt;span&amp;gt;s  or even complex tables&lt;br /&gt;
containing arbitrary Wiki text, there&#039;s a powerful alternative: use of&lt;br /&gt;
dedicated &amp;lt;tt&amp;gt;#div&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;#span&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;#table&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;#tr&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;#td&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;#th&amp;lt;/tt&amp;gt; blocks.&lt;br /&gt;
&lt;br /&gt;
Those Wiki processors are built-in, and does not require installing any additional packages.&lt;br /&gt;
&lt;br /&gt;
=== How to use &amp;lt;tt&amp;gt;#html&amp;lt;/tt&amp;gt; === #HowtoUseHTML&lt;br /&gt;
To inform the wiki engine that a block of text should be treated as HTML, use the &#039;&#039;html&#039;&#039; processor. &lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #html&lt;br /&gt;
  &amp;lt;h1 style=&amp;quot;text-align: right; color: blue&amp;quot;&amp;gt;HTML Test&amp;lt;/h1&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding-left: 2em&amp;quot;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #html&lt;br /&gt;
  &amp;lt;h1 style=&amp;quot;text-align: right; color: blue&amp;quot;&amp;gt;HTML Test&amp;lt;/h1&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that Trac sanitizes your HTML code before displaying it. That means that if you try to use potentially dangerous constructs such as Javascript event handlers, those will be removed from the output. &lt;br /&gt;
&lt;br /&gt;
Since 0.11, the filtering is done by Genshi, and as such, the produced output will be a well-formed fragment of HTML. As noted above in the introduction, this mean that you can no longer use two HTML blocks, one for opening a &amp;lt;div&amp;gt;, the second for closing it, in order to wrap arbitrary wiki text.&lt;br /&gt;
The new way to wrap any wiki content inside a &amp;lt;div&amp;gt; is to use the &amp;lt;tt&amp;gt;#div&amp;lt;/tt&amp;gt; Wiki  processor.&lt;br /&gt;
&lt;br /&gt;
=== How to use &amp;lt;tt&amp;gt;#div&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;#span&amp;lt;/tt&amp;gt; === #HowtoUseDivSpan&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #div class=&amp;quot;important&amp;quot; style=&amp;quot;border: 2pt solid; text-align: center&amp;quot;&lt;br /&gt;
  This is the &#039;&#039;only&#039;&#039; way to go in Trac 0.11&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #div class=&amp;quot;wikipage&amp;quot; style=&amp;quot;border: 1pt dotted&amp;quot;&lt;br /&gt;
  Only &amp;lt;tt&amp;gt;wikipage&amp;lt;/tt&amp;gt; (same as specifying no class attribute)&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #div class=&amp;quot;wikipage compact &amp;quot; style=&amp;quot;border: 1pt solid&amp;quot;&lt;br /&gt;
  Use combined classes (&amp;lt;tt&amp;gt;compact&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;wikipage&amp;lt;/tt&amp;gt;)&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #div class=&amp;quot;compact&amp;quot; style=&amp;quot;border: 1pt dotted&amp;quot;&lt;br /&gt;
  Only &amp;lt;tt&amp;gt;compact&amp;lt;/tt&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #div class=&amp;quot;&amp;quot; style=&amp;quot;border: 1pt solid&amp;quot;&lt;br /&gt;
  No classes (//not// the same as specifying no class attribute...)&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding-left: 2em&amp;quot;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #div class=&amp;quot;important&amp;quot; style=&amp;quot;border: 2pt solid; text-align: center&amp;quot;&lt;br /&gt;
  This is the &#039;&#039;only&#039;&#039; way to go in Trac 0.11&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #div class=&amp;quot;wikipage&amp;quot; style=&amp;quot;border: 1pt dotted&amp;quot;&lt;br /&gt;
  Only &amp;lt;tt&amp;gt;wikipage&amp;lt;/tt&amp;gt; (same as specifying no class attribute)&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #div class=&amp;quot;wikipage compact &amp;quot; style=&amp;quot;border: 1pt solid&amp;quot;&lt;br /&gt;
  Use combined classes (&amp;lt;tt&amp;gt;compact&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;wikipage&amp;lt;/tt&amp;gt;)&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #div class=&amp;quot;compact&amp;quot; style=&amp;quot;border: 1pt dotted&amp;quot;&lt;br /&gt;
  Only compact&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #div class=&amp;quot;&amp;quot; style=&amp;quot;border: 1pt solid&amp;quot;&lt;br /&gt;
  No classes (//not// the same as specifying no class attribute...)&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the contents of a &amp;lt;tt&amp;gt;#div&amp;lt;/tt&amp;gt; block are contained in one or more paragraphs, which have a non-zero top and bottom margin. This leads to the top and bottom padding in the example above. To remove the top and bottom margin of the contents, add the &amp;lt;tt&amp;gt;compact&amp;lt;/tt&amp;gt; class to the &amp;lt;tt&amp;gt;#div&amp;lt;/tt&amp;gt;. Another predefined class besides &amp;lt;tt&amp;gt;wikipage&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;compact&amp;lt;/tt&amp;gt; is &amp;lt;tt&amp;gt;important&amp;lt;/tt&amp;gt;, which can be used to make a paragraph stand out. Extra CSS classes can be defined via the &amp;lt;tt&amp;gt;site/style.css&amp;lt;/tt&amp;gt; file for example, see TracInterfaceCustomization#SiteAppearance.&lt;br /&gt;
&lt;br /&gt;
For spans, you should rather use the Macro call syntax:&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  Hello &lt;br /&gt;
  [[span(&#039;&#039;WORLD&#039;&#039; (click [#anchor here]), style=color: green; font-size: 120%, id=anchor)]]!&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|---------------------------------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding-left: 2em&amp;quot;&lt;br /&gt;
  Hello&lt;br /&gt;
  [[span(&#039;&#039;WORLD&#039;&#039; (click [#anchor here]), style=color: green; font-size: 120%, id=anchor)]]!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== How to use &amp;lt;tt&amp;gt;#td&amp;lt;/tt&amp;gt; and other table related processors === #Tables&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;#td&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;#th&amp;lt;/tt&amp;gt; processors are actually the main ones, for creating table data and header cells, respectively. The other processors &amp;lt;tt&amp;gt;#table&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;#tr&amp;lt;/tt&amp;gt; are not required for introducing a table structure, as &amp;lt;tt&amp;gt;#td&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;#th&amp;lt;/tt&amp;gt; will do this automatically. The &amp;lt;tt&amp;gt;|-&amp;lt;/tt&amp;gt; row separator can be used to start a new row when needed, but some may prefer to use a &amp;lt;tt&amp;gt;#tr&amp;lt;/tt&amp;gt; block for that, as this introduces a more formal grouping and offers the possibility to use an extra level of indentation. The main purpose of the &amp;lt;tt&amp;gt;#table&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;#tr&amp;lt;/tt&amp;gt; is to give the possibility to specify HTML attributes, like &#039;&#039;style&#039;&#039; or &#039;&#039;valign&#039;&#039; to these elements.&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 Simple 2x2 table with rich content:&lt;br /&gt;
 &amp;lt;pre&amp;gt;#th align=left&lt;br /&gt;
  - Left&lt;br /&gt;
  - Header&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;pre&amp;gt;#th align=left&lt;br /&gt;
  - Right&lt;br /&gt;
  - Header&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
 |----------------------------------&lt;br /&gt;
 &amp;lt;pre&amp;gt;#td style=&amp;quot;background: #ffd&amp;quot;&lt;br /&gt;
  - Left&lt;br /&gt;
  - Content&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;pre&amp;gt;#td style=&amp;quot;vertical-align: top&amp;quot;&lt;br /&gt;
 RightContent&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
 |----------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! ... and this can be mixed&lt;br /&gt;
!\&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!with pipe-based cells &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;pre&amp;gt;#td colspan=2&lt;br /&gt;
 Pick the style the more appropriate&lt;br /&gt;
 to your content&lt;br /&gt;
 &lt;br /&gt;
 See WikiFormatting#Tables for details&lt;br /&gt;
 on the pipe-based table syntax.&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 If one needs to add some &lt;br /&gt;
 attributes to the table itself...&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 #table style=&amp;quot;border:none;text-align:center;margin:auto&amp;quot;&lt;br /&gt;
   &amp;lt;pre&amp;gt;#tr ====================================&lt;br /&gt;
     &amp;lt;pre&amp;gt;#th style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
     Left header&lt;br /&gt;
     &amp;lt;/pre&amp;gt;&lt;br /&gt;
     &amp;lt;pre&amp;gt;#th style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
     Right header&lt;br /&gt;
     &amp;lt;/pre&amp;gt;&lt;br /&gt;
   &amp;lt;/pre&amp;gt;&lt;br /&gt;
   &amp;lt;pre&amp;gt;#tr ==== style=&amp;quot;border: 1px dotted grey&amp;quot;&lt;br /&gt;
     &amp;lt;pre&amp;gt;#td style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
###1&lt;br /&gt;
     &amp;lt;/pre&amp;gt;&lt;br /&gt;
     &amp;lt;pre&amp;gt;#td style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
###2&lt;br /&gt;
     &amp;lt;/pre&amp;gt;&lt;br /&gt;
   &amp;lt;/pre&amp;gt;&lt;br /&gt;
   &amp;lt;pre&amp;gt;#tr ====================================&lt;br /&gt;
     &amp;lt;pre&amp;gt;#td style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
     2.1&lt;br /&gt;
     &amp;lt;/pre&amp;gt;&lt;br /&gt;
     &amp;lt;pre&amp;gt;#td&lt;br /&gt;
     2.2&lt;br /&gt;
     &amp;lt;/pre&amp;gt;&lt;br /&gt;
   &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td valign=top&lt;br /&gt;
Simple 2x2 table with rich content:&lt;br /&gt;
&amp;lt;pre&amp;gt;#th align=left&lt;br /&gt;
 - Left&lt;br /&gt;
 - Header&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#th align=left&lt;br /&gt;
 - Right&lt;br /&gt;
 - Header&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|----------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;background: #ffd&amp;quot;&lt;br /&gt;
 - Left&lt;br /&gt;
 - Content&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;vertical-align: top&amp;quot;&lt;br /&gt;
RightContent&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|----------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! ... and this can be mixed&lt;br /&gt;
!\&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2|with pipe-based cells &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td colspan=2&lt;br /&gt;
Pick the style the more appropriate&lt;br /&gt;
to your content&lt;br /&gt;
&lt;br /&gt;
See WikiFormatting#Tables for details&lt;br /&gt;
on the pipe-based table syntax.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If one needs to add some &lt;br /&gt;
attributes to the table itself...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#table style=&amp;quot;border:none;text-align:center;margin:auto&amp;quot;&lt;br /&gt;
  &amp;lt;pre&amp;gt;#tr ====================================&lt;br /&gt;
    &amp;lt;pre&amp;gt;#th style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
    Left header&lt;br /&gt;
    &amp;lt;/pre&amp;gt;&lt;br /&gt;
    &amp;lt;pre&amp;gt;#th style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
    Right header&lt;br /&gt;
    &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;#tr ==== style=&amp;quot;border: 1px dotted grey&amp;quot;&lt;br /&gt;
    &amp;lt;pre&amp;gt;#td style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
###1&lt;br /&gt;
    &amp;lt;/pre&amp;gt;&lt;br /&gt;
    &amp;lt;pre&amp;gt;#td style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
###2&lt;br /&gt;
    &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;#tr ====================================&lt;br /&gt;
    &amp;lt;pre&amp;gt;#td style=&amp;quot;border: none&amp;quot;&lt;br /&gt;
    2.1&lt;br /&gt;
    &amp;lt;/pre&amp;gt;&lt;br /&gt;
    &amp;lt;pre&amp;gt;#td&lt;br /&gt;
    2.2&lt;br /&gt;
    &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that by default tables are assigned the &amp;quot;wiki&amp;quot; CSS class, which gives a distinctive look to the header cells and a default border to the table and cells (as can be seen for the tables on this page). By removing this class (&amp;lt;tt&amp;gt;#table class=&amp;quot;&amp;quot;&amp;lt;/tt&amp;gt;), one regains complete control on the table presentation. In particular, neither the table, the rows nor the cells will have a border, so this is a more effective way to get such an effect than having to specify a &amp;lt;tt&amp;gt;style=&amp;quot;border: no&amp;quot;&amp;lt;/tt&amp;gt; parameter everywhere. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#table class=&amp;quot;&amp;quot;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;#table class=&amp;quot;&amp;quot;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!  0&lt;br /&gt;
!  1&lt;br /&gt;
!  2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! 10&lt;br /&gt;
! 20&lt;br /&gt;
! 30&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! 11&lt;br /&gt;
! 22&lt;br /&gt;
! 33&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!&lt;br /&gt;
!=  numbers  =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;#table class=&amp;quot;&amp;quot;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!  0&lt;br /&gt;
!  1&lt;br /&gt;
!  2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! 10&lt;br /&gt;
! 20&lt;br /&gt;
! 30&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! 11&lt;br /&gt;
! 22&lt;br /&gt;
! 33&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!&lt;br /&gt;
!=  numbers  =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Other classes can be specified as alternatives (remember that you can define your own in [TracInterfaceCustomization#SiteAppearance site/style.css]).&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;#table class=&amp;quot;listing&amp;quot;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!  0&lt;br /&gt;
!  1&lt;br /&gt;
!  2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! 10&lt;br /&gt;
! 20&lt;br /&gt;
! 30&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! 11&lt;br /&gt;
! 22&lt;br /&gt;
! 33&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!&lt;br /&gt;
!=  numbers  =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;#table class=&amp;quot;listing&amp;quot;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!  0&lt;br /&gt;
!  1&lt;br /&gt;
!  2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! 10&lt;br /&gt;
! 20&lt;br /&gt;
! 30&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! 11&lt;br /&gt;
! 22&lt;br /&gt;
! 33&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!&lt;br /&gt;
!=  numbers  =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== HTML comments ===&lt;br /&gt;
HTML comments are stripped from the output of the &amp;lt;tt&amp;gt;html&amp;lt;/tt&amp;gt; processor. To add an HTML comment to a wiki page, use the &amp;lt;tt&amp;gt;htmlcomment&amp;lt;/tt&amp;gt; processor (available since 0.12). For example, the following code block:&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #htmlcomment&lt;br /&gt;
  This block is translated to an HTML comment.&lt;br /&gt;
  It can contain &amp;lt;tags&amp;gt; and &amp;amp;entities; that will not be escaped in the output.&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|---------------------------------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;!--&lt;br /&gt;
  This block is translated to an HTML comment.&lt;br /&gt;
  It can contain &amp;lt;tags&amp;gt; and &amp;amp;entities; that will not be escaped in the output.&lt;br /&gt;
  --&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note that the character sequence &amp;quot;--&amp;quot; is not allowed in HTML comments, and will generate a rendering error.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== More Information ===&lt;br /&gt;
&lt;br /&gt;
*http://www.w3.org/ -- World Wide Web Consortium&lt;br /&gt;
*http://www.w3.org/MarkUp/ -- HTML Markup Home Page&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also:  WikiProcessors, WikiFormatting, WikiRestructuredText&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WikiFormatting&amp;diff=356</id>
		<title>WikiFormatting</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WikiFormatting&amp;diff=356"/>
		<updated>2015-08-26T12:29:29Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == WikiFormatting == TracGuideToc  Wiki markup is a core feature in Trac, tightly integrating all the other parts of Trac into a flexible and powerful whole.  Trac has a ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== WikiFormatting ==&lt;br /&gt;
[[TracGuideToc]]&lt;br /&gt;
&lt;br /&gt;
Wiki markup is a core feature in Trac, tightly integrating all the other parts of Trac into a flexible and powerful whole.&lt;br /&gt;
&lt;br /&gt;
Trac has a built in small and powerful wiki rendering engine. This wiki engine implements an ever growing subset of the commands from other popular Wikis,&lt;br /&gt;
especially [http://moinmo.in/ MoinMoin] and [trac:WikiCreole].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This page will give you an in-depth explanation of the wiki markup available anywhere WikiFormatting is allowed.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;Cheat sheet&#039;&#039; below gives you a quick overview for the most common syntax, each link in the &#039;&#039;Category&#039;&#039; column will lead you to the more detailed explanation later in this page.&lt;br /&gt;
&lt;br /&gt;
A few other wiki pages present the advanced features of the Trac wiki markup in more depth: &lt;br /&gt;
 - TracLinks covers all the possible ways to refer precisely to any Trac resource or parts thereof,&lt;br /&gt;
 - WikiPageNames talks about the various names a wiki page can take, CamelCase or not&lt;br /&gt;
 - WikiMacros lists the macros available for generating dynamic content,&lt;br /&gt;
 - WikiProcessors and WikiHtml details how parts of the wiki text can be processed in special ways&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Cheat sheet ===&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= &#039;&#039;&#039;Category&#039;&#039;&#039; =&lt;br /&gt;
!= &#039;&#039;&#039;Wiki Markup&#039;&#039;&#039; =&lt;br /&gt;
!= &#039;&#039;&#039;Display&#039;&#039;&#039; =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#th rowspan=3&lt;br /&gt;
[#FontStyles Font Styles]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! &amp;lt;tt&amp;gt;&#039;&#039;&#039;bold&#039;&#039;&#039;&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;&#039;&#039;italic&#039;&#039;&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;&#039;&#039;&#039;&#039;&#039;Wikipedia style&#039;&#039;&#039;&#039;&#039;&amp;lt;/tt&amp;gt; &lt;br /&gt;
! \&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| &#039;&#039;&#039;bold&#039;&#039;&#039;, &#039;&#039;italic&#039;&#039;, &#039;&#039;&#039;&#039;&#039;Wikipedia style&#039;&#039;&#039;&#039;&#039; &lt;br /&gt;
|- &lt;br /&gt;
|  &amp;lt;tt&amp;gt;&amp;lt;tt&amp;gt;monospaced and &#039;&#039;nowiki&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/tt&amp;gt; &lt;br /&gt;
|  \&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| &amp;lt;tt&amp;gt;monospaced and nowiki&amp;lt;/tt&amp;gt; &lt;br /&gt;
|- &lt;br /&gt;
|  &amp;lt;tt&amp;gt;**bold**&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;//italic//&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;**//WikiCreole style//**&amp;lt;/tt&amp;gt; &lt;br /&gt;
|  \&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| **bold**, //italic//, **//WikiCreole style//** &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= [#Headings Headings] =&lt;br /&gt;
!\&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td &lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 == Level 2 ==&lt;br /&gt;
 === Level 3 &amp;lt;sup&amp;gt;([#hn note])&amp;lt;/sup&amp;gt;&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding-left: 2em&amp;quot;&lt;br /&gt;
== Level 2&lt;br /&gt;
=== Level 3 &amp;lt;sup&amp;gt;([#hn note])&amp;lt;/sup&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= [#Paragraphs Paragraphs]  =&lt;br /&gt;
!\&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 First paragraph&lt;br /&gt;
 on multiple lines.&lt;br /&gt;
&lt;br /&gt;
 Second paragraph.&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
First paragraph&lt;br /&gt;
on multiple lines.&lt;br /&gt;
&lt;br /&gt;
Second paragraph.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= [#Lists Lists] =&lt;br /&gt;
!\&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
*bullets list&lt;br /&gt;
   on multiple paragraphs&lt;br /&gt;
##nested list&lt;br /&gt;
###different numbering &lt;br /&gt;
        styles&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
*bullets list&lt;br /&gt;
  on multiple paragraphs&lt;br /&gt;
##nested list&lt;br /&gt;
###different numbering&lt;br /&gt;
       styles&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#th&lt;br /&gt;
[#DefinitionLists Definition Lists]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
  term:: definition on&lt;br /&gt;
         multiple paragraphs&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 term:: definition on&lt;br /&gt;
        multiple paragraphs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= [#PreformattedText Preformatted Text] =&lt;br /&gt;
!\&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 multiple lines, &#039;&#039;no wiki&#039;&#039;&lt;br /&gt;
       white space respected&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 multiple lines, &#039;&#039;no wiki&#039;&#039;&lt;br /&gt;
       white space respected&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= [#Blockquotes Blockquotes] =&lt;br /&gt;
!\&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
   if there&#039;s some leading&lt;br /&gt;
   space the text is quoted&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 if there&#039;s some leading&lt;br /&gt;
 space the text is quoted&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= [#DiscussionCitations Discussion Citations] =&lt;br /&gt;
!\&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;gt;&amp;gt; ... (I said)&lt;br /&gt;
 &amp;gt; (he replied)&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
&amp;gt;&amp;gt;... (I said)&lt;br /&gt;
&amp;gt; (he replied)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= [#Tables Tables] =&lt;br /&gt;
!\&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Table Header =&lt;br /&gt;
! Cell &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!  (details below)  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Table Header =&lt;br /&gt;
! Cell &lt;br /&gt;
|- &lt;br /&gt;
| &lt;br /&gt;
|   (details below)  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#th rowspan=2&lt;br /&gt;
[#Links Links]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! &amp;lt;tt&amp;gt;http://trac.edgewall.org&amp;lt;/tt&amp;gt; &lt;br /&gt;
!\&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| http://trac.edgewall.org &lt;br /&gt;
|- &lt;br /&gt;
|  &amp;lt;tt&amp;gt;WikiFormatting (CamelCase)&amp;lt;/tt&amp;gt; &lt;br /&gt;
| \&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| WikiFormatting (CamelCase) &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#th rowspan=5&lt;br /&gt;
[#TracLinks TracLinks]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! &amp;lt;tt&amp;gt;wiki:WikiFormatting&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;wiki:&amp;quot;WikiFormatting&amp;quot;&amp;lt;/tt&amp;gt; &lt;br /&gt;
!\&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| wiki:WikiFormatting, wiki:&amp;quot;WikiFormatting&amp;quot; &lt;br /&gt;
|- &lt;br /&gt;
|  &amp;lt;tt&amp;gt;#1 (ticket)&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;[1] (changeset)&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;{1} (report)&amp;lt;/tt&amp;gt; &lt;br /&gt;
| \&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| #1 (ticket), [1] (changeset), {1} (report) &lt;br /&gt;
|- &lt;br /&gt;
|  &amp;lt;tt&amp;gt;ticket:1, ticket:1#comment:1&amp;lt;/tt&amp;gt; &lt;br /&gt;
| \&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| ticket:1, ticket:1#comment:1 &lt;br /&gt;
|- &lt;br /&gt;
|  &amp;lt;tt&amp;gt;Ticket [ticket:1]&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;[ticket:1 ticket one]&amp;lt;/tt&amp;gt; &lt;br /&gt;
| \&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| Ticket [ticket:1], [ticket:1 ticket one] &lt;br /&gt;
|- &lt;br /&gt;
|  &amp;lt;tt&amp;gt;Ticket [[ticket:1]]&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;[[ticket:1/ticket one]]&amp;lt;/tt&amp;gt; &lt;br /&gt;
| \&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| Ticket [[ticket:1]], [[ticket:1/ticket one]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#th rowspan=2 &lt;br /&gt;
[#SettingAnchors Setting Anchors]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! &amp;lt;tt&amp;gt;[=#point1 (1)] First...&amp;lt;/tt&amp;gt; &lt;br /&gt;
!\&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| [=#point1 (1)] First... &lt;br /&gt;
|- &lt;br /&gt;
|  &amp;lt;tt&amp;gt;see [#point1 (1)]&amp;lt;/tt&amp;gt; &lt;br /&gt;
| \&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| see [#point1 (1)] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#th rowspan=2&lt;br /&gt;
[#EscapingLinksandWikiPageNames Escaping Markup]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! &amp;lt;tt&amp;gt;!&#039;&#039; doubled quotes&amp;lt;/tt&amp;gt; &lt;br /&gt;
!\&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| !&#039;&#039; doubled quotes &lt;br /&gt;
|- &lt;br /&gt;
|  &amp;lt;tt&amp;gt;wiki:WikiFormatting&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;WikiFormatting&amp;lt;/tt&amp;gt; &lt;br /&gt;
| \&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| wiki:WikiFormatting, WikiFormatting &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= [#Images Images] =&lt;br /&gt;
! &amp;lt;tt&amp;gt;[[Image(&amp;lt;/tt&amp;gt;&#039;&#039;link&#039;&#039;&amp;lt;tt&amp;gt;)]]&amp;lt;/tt&amp;gt; &lt;br /&gt;
! [[Image(htdocs:../common/trac_logo_mini.png)]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#th rowspan=2&lt;br /&gt;
[#Macros Macros]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! &amp;lt;tt&amp;gt;[[MacroList(*)]]&amp;lt;/tt&amp;gt; &lt;br /&gt;
!  &#039;&#039;(short list of all available macros)&#039;&#039;  &lt;br /&gt;
|- &lt;br /&gt;
|  &amp;lt;tt&amp;gt;[[Image?]]&amp;lt;/tt&amp;gt; &lt;br /&gt;
|   &#039;&#039;(help for the Image macro)&#039;&#039;  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= [#Processors Processors] =&lt;br /&gt;
!\&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 #div style=&amp;quot;font-size: 80%&amp;quot;&lt;br /&gt;
 Code highlighting:&lt;br /&gt;
   &amp;lt;pre&amp;gt;#python&lt;br /&gt;
   hello = lambda: &amp;quot;world&amp;quot;&lt;br /&gt;
   &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding-left: 2em&amp;quot;&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 #div style=&amp;quot;font-size: 80%&amp;quot;&lt;br /&gt;
 Code highlighting:&lt;br /&gt;
   &amp;lt;pre&amp;gt;#python &lt;br /&gt;
   hello = lambda: &amp;quot;world&amp;quot;&lt;br /&gt;
   &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= [#Comments Comments] =&lt;br /&gt;
!\&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;lt;pre&amp;gt;#comment&lt;br /&gt;
 Note to Editors: ...&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding-left: 2em&amp;quot;&lt;br /&gt;
 &amp;lt;pre&amp;gt;#comment&lt;br /&gt;
 Note to Editors: ...&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-----------------------------------------------------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= [#Miscellaneous Miscellaneous] =&lt;br /&gt;
!\&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
 Line &amp;lt;br&amp;gt; break &lt;br /&gt;
 Line \\ break&lt;br /&gt;
 ----&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding-left: 2em&amp;quot;&lt;br /&gt;
Line &amp;lt;br&amp;gt; break&lt;br /&gt;
Line \\ break&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Font Styles ===&lt;br /&gt;
&lt;br /&gt;
The Trac wiki supports the following font styles:&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
**&#039;&#039;&#039;bold&#039;&#039;&#039;, &lt;br /&gt;
     &#039;&#039;&#039; triple quotes !&#039;&#039;&#039; &lt;br /&gt;
     can be bold too if prefixed by ! &#039;&#039;&#039;, &lt;br /&gt;
**&#039;&#039;italic&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;&#039;&#039;bold italic&#039;&#039;&#039;&#039;&#039; or &#039;&#039;italic and&lt;br /&gt;
     &#039;&#039;&#039; italic bold &#039;&#039;&#039; &#039;&#039;&lt;br /&gt;
**&amp;lt;u&amp;gt;underline&amp;lt;/u&amp;gt;&lt;br /&gt;
**&amp;lt;tt&amp;gt;monospace&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;monospace&amp;lt;/tt&amp;gt;&lt;br /&gt;
     (hence &amp;lt;tt&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;/tt&amp;gt; or &amp;lt;pre&amp;gt;`&amp;lt;/tt&amp;gt; quoting)&lt;br /&gt;
**&amp;lt;s&amp;gt;strike-through&amp;lt;/s&amp;gt;&lt;br /&gt;
**&amp;lt;sup&amp;gt;superscript&amp;lt;/sup&amp;gt; &lt;br /&gt;
**&amp;lt;sub&amp;gt;subscript&amp;lt;/sub&amp;gt;&lt;br /&gt;
****also bold**, //italic as well//, &lt;br /&gt;
     and **&#039;&#039; bold italic **&#039;&#039; //(since 0.12)//&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
*&#039;&#039;&#039;bold&#039;&#039;&#039;, &lt;br /&gt;
   &#039;&#039;&#039; triple quotes !&#039;&#039;&#039; &lt;br /&gt;
   can be bold too if prefixed by ! &#039;&#039;&#039;, &lt;br /&gt;
*&#039;&#039;italic&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;bold italic&#039;&#039;&#039;&#039;&#039; or &#039;&#039;italic and&lt;br /&gt;
   &#039;&#039;&#039; italic bold &#039;&#039;&#039; &#039;&#039;&lt;br /&gt;
*&amp;lt;u&amp;gt;underline&amp;lt;/u&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;monospace&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;monospace&amp;lt;/tt&amp;gt;&lt;br /&gt;
   (hence &amp;lt;tt&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;/tt&amp;gt; or &amp;lt;pre&amp;gt;`&amp;lt;/tt&amp;gt; quoting)&lt;br /&gt;
*&amp;lt;s&amp;gt;strike-through&amp;lt;/s&amp;gt;&lt;br /&gt;
*&amp;lt;sup&amp;gt;superscript&amp;lt;/sup&amp;gt; &lt;br /&gt;
*&amp;lt;sub&amp;gt;subscript&amp;lt;/sub&amp;gt;&lt;br /&gt;
***also bold**, //italic as well//, &lt;br /&gt;
   and **&#039;&#039; bold italic **&#039;&#039; //(since 0.12)//&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
*&amp;lt;tt&amp;gt;&amp;lt;tt&amp;gt;...&amp;lt;/tt&amp;gt;&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;&amp;lt;tt&amp;gt;...&amp;lt;/tt&amp;gt;&amp;lt;/tt&amp;gt; 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.&lt;br /&gt;
*&amp;lt;tt&amp;gt; ! &amp;lt;/tt&amp;gt; tells wiki parser to not take the following characters as wiki format, so pay attention to put a space after !, e.g. when ending bold.&lt;br /&gt;
*all the font styles marks have to be used in opening/closing pairs, &lt;br /&gt;
   and they must nest properly (in particular, an &amp;lt;tt&amp;gt;&#039;&#039;&amp;lt;/tt&amp;gt; italic can&#039;t be paired &lt;br /&gt;
   with a &amp;lt;tt&amp;gt;//&amp;lt;/tt&amp;gt; one, and &amp;lt;tt&amp;gt;&#039;&#039;&#039;&amp;lt;/tt&amp;gt; can&#039;t be paired with &amp;lt;tt&amp;gt;**&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Headings ===&lt;br /&gt;
&lt;br /&gt;
You can create heading by starting a line with one up to six &#039;&#039;equal&#039;&#039; characters (&amp;quot;=&amp;quot;)&lt;br /&gt;
followed by a single space and the headline text. &lt;br /&gt;
&lt;br /&gt;
[=#hn] The headline text can be followed by the same number of &amp;quot;=&amp;quot; characters, but this is no longer mandatory.&lt;br /&gt;
&lt;br /&gt;
Finally, the heading might optionally be followed by an explicit id. If not, an implicit but nevertheless readable id will be generated.&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  = Heading =&lt;br /&gt;
  == Subheading&lt;br /&gt;
  === About &#039;&#039;this&#039;&#039; ===&lt;br /&gt;
  === Explicit id === #using-explicit-id-in-heading&lt;br /&gt;
  == Subheading #sub2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding: 1em;&amp;quot;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #div&lt;br /&gt;
  == Subheading&lt;br /&gt;
  === About &#039;&#039;this&#039;&#039; ===&lt;br /&gt;
  === Explicit id === #using-explicit-id-in-heading&lt;br /&gt;
  == Subheading #sub2&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Paragraphs ===&lt;br /&gt;
&lt;br /&gt;
A new text paragraph is created whenever two blocks of text are separated by one or more empty lines.&lt;br /&gt;
&lt;br /&gt;
A forced line break can also be inserted, using:&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  Line 1&amp;lt;br&amp;gt;Line 2&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  Paragraph&lt;br /&gt;
  one&lt;br /&gt;
&lt;br /&gt;
  Paragraph &lt;br /&gt;
  two&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  Line 1&amp;lt;br&amp;gt;Line 2&lt;br /&gt;
&lt;br /&gt;
  Paragraph &lt;br /&gt;
  one&lt;br /&gt;
&lt;br /&gt;
  Paragraph &lt;br /&gt;
  two&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Lists ===&lt;br /&gt;
&lt;br /&gt;
The wiki supports both ordered/numbered and unordered lists.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
**Item 1&lt;br /&gt;
***Item 1.1&lt;br /&gt;
*****Item 1.1.1   &lt;br /&gt;
*****Item 1.1.2&lt;br /&gt;
*****Item 1.1.3&lt;br /&gt;
***Item 1.2&lt;br /&gt;
**Item 2&lt;br /&gt;
  - items can start at the beginning of a line&lt;br /&gt;
    and they can span multiple lines&lt;br /&gt;
    - be careful though to continue the line &lt;br /&gt;
    with the appropriate indentation, otherwise&lt;br /&gt;
  that will start a new paragraph...&lt;br /&gt;
  &lt;br /&gt;
##Item 1&lt;br /&gt;
###Item 1.a&lt;br /&gt;
###Item 1.b&lt;br /&gt;
#####Item 1.b.i&lt;br /&gt;
#####Item 1.b.ii&lt;br /&gt;
##Item 2&lt;br /&gt;
  And numbered lists can also be restarted&lt;br /&gt;
  with an explicit number:&lt;br /&gt;
   3. Item 3&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
*Item 1&lt;br /&gt;
**Item 1.1&lt;br /&gt;
****Item 1.1.1   &lt;br /&gt;
****Item 1.1.2&lt;br /&gt;
****Item 1.1.3&lt;br /&gt;
**Item 1.2&lt;br /&gt;
*Item 2&lt;br /&gt;
- items can start at the beginning of a line&lt;br /&gt;
  and they can span multiple lines&lt;br /&gt;
  - be careful though to continue the line &lt;br /&gt;
  with the appropriate indentation, otherwise&lt;br /&gt;
that will start a new paragraph...&lt;br /&gt;
&lt;br /&gt;
#Item 1&lt;br /&gt;
##Item 1.a&lt;br /&gt;
##Item 1.b&lt;br /&gt;
####Item 1.b.i&lt;br /&gt;
####Item 1.b.ii&lt;br /&gt;
#Item 2&lt;br /&gt;
And numbered lists can also be restarted with an explicit number:&lt;br /&gt;
 3. Item 3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Definition Lists ===&lt;br /&gt;
&lt;br /&gt;
The wiki also supports definition lists.&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
   llama::&lt;br /&gt;
     some kind of mammal, with hair&lt;br /&gt;
   ppython::&lt;br /&gt;
     some kind of reptile, without hair&lt;br /&gt;
     (can you spot the typo?)&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 llama::&lt;br /&gt;
   some kind of mammal, with hair&lt;br /&gt;
 ppython::&lt;br /&gt;
   some kind of reptile, without hair&lt;br /&gt;
   (can you spot the typo?)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that you need a space in front of the defined term.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Preformatted Text ===&lt;br /&gt;
&lt;br /&gt;
Block containing preformatted text are suitable for source code snippets, notes and examples. Use three &#039;&#039;curly braces&#039;&#039; wrapped around the text to define a block quote. The curly braces need to be on a separate line.&lt;br /&gt;
  &lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  def HelloWorld():&lt;br /&gt;
      print &#039;&#039;&#039;Hello World&#039;&#039;&#039;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  def HelloWorld():&lt;br /&gt;
      print &#039;&#039;&#039;Hello World&#039;&#039;&#039;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that this kind of block is also used for selecting lines that should be processed through WikiProcessors.&lt;br /&gt;
&lt;br /&gt;
=== Blockquotes ===&lt;br /&gt;
&lt;br /&gt;
In order to mark a paragraph as blockquote, indent that paragraph with two spaces.&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Paragraph&lt;br /&gt;
  This text is a quote from someone else.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
Paragraph&lt;br /&gt;
  This text is a quote from someone else.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Discussion Citations ===&lt;br /&gt;
&lt;br /&gt;
To delineate a citation in an ongoing discussion thread, such as the ticket comment area, e-mail-like citation marks (&amp;quot;&amp;gt;&amp;quot;, &amp;quot;&amp;gt;&amp;gt;&amp;quot;, etc.) may be used.  &lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;gt;&amp;gt; Someone&#039;s original text&lt;br /&gt;
  &amp;gt; Someone else&#039;s reply text&lt;br /&gt;
  &amp;gt;  - which can be any kind of Wiki markup&lt;br /&gt;
  My reply text&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
&amp;gt;&amp;gt; Someone&#039;s original text&lt;br /&gt;
&amp;gt; Someone else&#039;s reply text&lt;br /&gt;
&amp;gt;  - which can be any kind of Wiki markup&lt;br /&gt;
My reply text&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Tables ===&lt;br /&gt;
==== Simple Tables ====&lt;br /&gt;
Simple tables can be created like this:&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!Cell 1&lt;br /&gt;
!Cell 2&lt;br /&gt;
!Cell 3&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!Cell 4&lt;br /&gt;
!Cell 5&lt;br /&gt;
!Cell 6&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding: 2em;&amp;quot;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!Cell 1&lt;br /&gt;
!Cell 2&lt;br /&gt;
!Cell 3&lt;br /&gt;
|- &lt;br /&gt;
| Cell 4&lt;br /&gt;
| Cell 5&lt;br /&gt;
| Cell 6&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cell headings can be specified by wrapping the content in a pair of &#039;=&#039; characters.&lt;br /&gt;
Note that the &#039;=&#039; characters have to stick to the cell separators, like this:&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!        &lt;br /&gt;
!= stable =&lt;br /&gt;
!= latest =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= 0.10 =&lt;br /&gt;
!  0.10.5  &lt;br /&gt;
! 0.10.6dev&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= 0.11 =&lt;br /&gt;
!  0.11.6  &lt;br /&gt;
! 0.11.7dev&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding: 2em;&amp;quot;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!        &lt;br /&gt;
!= stable =&lt;br /&gt;
!= latest =&lt;br /&gt;
|- &lt;br /&gt;
| = 0.10 =&lt;br /&gt;
|   0.10.5  &lt;br /&gt;
|  0.10.6dev&lt;br /&gt;
|- &lt;br /&gt;
| = 0.11 =&lt;br /&gt;
|   0.11.6  &lt;br /&gt;
|  0.11.7dev&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally, specifying an empty cell means that the next non empty cell will span the empty cells. For example:&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! 1 &lt;br /&gt;
! 2 &lt;br /&gt;
! 3 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
! 1-2 &lt;br /&gt;
! 3 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! 1 &lt;br /&gt;
!&lt;br /&gt;
! 2-3 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!&lt;br /&gt;
! 1-2-3 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding: 2em;&amp;quot;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! 1 &lt;br /&gt;
! 2 &lt;br /&gt;
! 3 &lt;br /&gt;
|- &lt;br /&gt;
| &lt;br /&gt;
|  1-2 &lt;br /&gt;
|  3 &lt;br /&gt;
|- &lt;br /&gt;
|  1 &lt;br /&gt;
| &lt;br /&gt;
|  2-3 &lt;br /&gt;
|- &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|  1-2-3 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that if the content of a cell &amp;quot;sticks&amp;quot; to one side of the cell and only one, then the text will be aligned on that side. Example:&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!=Text =&lt;br /&gt;
!= Numbers =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!left align    &lt;br /&gt;
!        1.0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!  center      &lt;br /&gt;
!        4.5&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!      right align&lt;br /&gt;
!     4.5&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! default alignment &lt;br /&gt;
!   2.5&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!default&lt;br /&gt;
!         2.5&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!  default &lt;br /&gt;
!      2.5&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! default &lt;br /&gt;
!       2.5&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding: 2em;&amp;quot;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!=Text =&lt;br /&gt;
!= Numbers =&lt;br /&gt;
|- &lt;br /&gt;
| left align    &lt;br /&gt;
|         1.0&lt;br /&gt;
|- &lt;br /&gt;
|   center      &lt;br /&gt;
|         4.5&lt;br /&gt;
|- &lt;br /&gt;
|       right align&lt;br /&gt;
|      4.5&lt;br /&gt;
|- &lt;br /&gt;
|  default alignment &lt;br /&gt;
|    2.5&lt;br /&gt;
|- &lt;br /&gt;
| default&lt;br /&gt;
|          2.5&lt;br /&gt;
|- &lt;br /&gt;
|   default &lt;br /&gt;
|       2.5&lt;br /&gt;
|- &lt;br /&gt;
|  default &lt;br /&gt;
|        2.5&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If contrary to the example above, the cells in your table contain more text, it might be convenient to spread a table row over multiple lines of markup. The &amp;lt;tt&amp;gt;\&amp;lt;/tt&amp;gt; character placed at the end of a line after a cell separator tells Trac to not start a new row for the cells on the next line.&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! this is column 1 [http://trac.edgewall.org/newticket new ticket] &lt;br /&gt;
! \&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! this is column 2 [http://trac.edgewall.org/roadmap the road ahead] &lt;br /&gt;
! \&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! that&#039;s column 3 and last one &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-------------&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding: 2em;&amp;quot;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! this is column 1 [http://trac.edgewall.org/newticket new ticket] &lt;br /&gt;
! \&lt;br /&gt;
|- &lt;br /&gt;
|  this is column 2 [http://trac.edgewall.org/roadmap the road ahead] &lt;br /&gt;
|  \&lt;br /&gt;
|- &lt;br /&gt;
| colspan=2| that&#039;s column 3 and last one &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Complex Tables ====&lt;br /&gt;
&lt;br /&gt;
If the possibilities offered by the simple &amp;quot;pipe&amp;quot;-based markup for tables described above are not enough for your needs, you can create more elaborated tables by using [#Processors-example-tables WikiProcessor based tables].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Links ===&lt;br /&gt;
&lt;br /&gt;
Hyperlinks are automatically created for WikiPageNames and URLs. WikiPageLinks can be disabled by prepending an exclamation mark &amp;quot;!&amp;quot; character, such as &amp;lt;tt&amp;gt;WikiPageLink&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  TitleIndex, http://www.edgewall.com/, NotAlink&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
TitleIndex, http://www.edgewall.com/, NotAlink&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
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. &lt;br /&gt;
If the descriptive title is omitted, then the explicit prefix is discarded, unless the link is an external link. This can be useful for wiki pages not adhering to the WikiPageNames convention.&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
**[http://www.edgewall.com Edgewall Software]&lt;br /&gt;
**[[TitleIndex| Title Index]] &lt;br /&gt;
**[[TitleIndex]] &lt;br /&gt;
**[[ISO9000]]&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
**[http://www.edgewall.com Edgewall Software]&lt;br /&gt;
**[[TitleIndex| Title Index]] &lt;br /&gt;
**[[TitleIndex]] &lt;br /&gt;
**[[ISO9000]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Following the [trac:WikiCreole] trend, the descriptive title can also be specified by writing the link followed by a pipe (&#039;|&#039;) and a title and all this inside //double// square brackets. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
**[[http://www.edgewall.com|Edgewall Software]]&lt;br /&gt;
**[[[TitleIndex|Title| Index]]]&lt;br /&gt;
     or even [[TitleIndex|Title Index]]&lt;br /&gt;
**[[[TitleIndex]]]&lt;br /&gt;
     &#039;&#039;&#039; but not ![[TitleIndex]]! &#039;&#039;&#039;&lt;br /&gt;
**[[ISO9000]]&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
**[[http://www.edgewall.com|Edgewall Software]]&lt;br /&gt;
**[[[TitleIndex|Title| Index]]]&lt;br /&gt;
     or even [[TitleIndex|Title Index]]&lt;br /&gt;
**[[[TitleIndex]]]&lt;br /&gt;
     &#039;&#039;&#039; but not ![[TitleIndex]]! &#039;&#039;&#039;&lt;br /&gt;
**[[ISO9000]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: the [trac:WikiCreole] style for links is quick to type and&lt;br /&gt;
certainly looks familiar as it&#039;s the one used on Wikipedia and in many&lt;br /&gt;
other wikis. Unfortunately it conflicts with the syntax for [#Macros macros].&lt;br /&gt;
So in the rare case when you need to refer to a page which is named after&lt;br /&gt;
a macro (typical examples being TitleIndex, InterTrac and InterWiki), &lt;br /&gt;
by writing &amp;lt;tt&amp;gt;[[TitleIndex]]&amp;lt;/tt&amp;gt; you will actually call the macro instead of linking&lt;br /&gt;
to the page.&lt;br /&gt;
&lt;br /&gt;
=== Trac Links ===&lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
**Tickets: #1 or ticket:1&lt;br /&gt;
**Reports: {1} or report:1&lt;br /&gt;
**Changesets: r1, [1] or changeset:1&lt;br /&gt;
**...&lt;br /&gt;
**targeting other Trac instances, &lt;br /&gt;
     so called InterTrac links:&lt;br /&gt;
     - Tickets: #Trac1 or Trac:ticket:1&lt;br /&gt;
     - Changesets: [Trac1] or Trac:changeset:1&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
*Tickets: #1 or ticket:1&lt;br /&gt;
*Reports: {1} or report:1&lt;br /&gt;
*Changesets: r1, [1] or changeset:1&lt;br /&gt;
*... &lt;br /&gt;
*targeting other Trac instances, &lt;br /&gt;
   so called InterTrac links:&lt;br /&gt;
   - Tickets: #Trac1 or Trac:ticket:1&lt;br /&gt;
   - Changesets: [Trac1] or Trac:changeset:1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are many more flavors of Trac links, see TracLinks for more in-depth information and a reference for all the default link resolvers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Setting Anchors ===&lt;br /&gt;
&lt;br /&gt;
An anchor, or more correctly speaking, an [http://www.w3.org/TR/REC-html40/struct/links.html#h-12.2.1 anchor name] can be added explicitly at any place in the Wiki page, in order to uniquely identify a position in the document:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[=#point1]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This syntax was chosen to match the format for explicitly naming the header id [#Headings documented above]. For example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
=== Long title === #title&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It&#039;s also very close to the syntax for the corresponding link to that anchor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[#point1]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Optionally, a label can be given to the anchor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[[=#point1 &#039;&#039;&#039;Point 1&#039;&#039;&#039;]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|----------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  [#point2 jump to the second point]&lt;br /&gt;
&lt;br /&gt;
  ...&lt;br /&gt;
&lt;br /&gt;
  Point2:  [=#point2] Jump here&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  [#point2 jump to the second point]&lt;br /&gt;
&lt;br /&gt;
  ...&lt;br /&gt;
&lt;br /&gt;
  Point2:  [=#point2] Jump here&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For more complex anchors (e.g. when a custom title is wanted), one can use the Span macro, e.g. &amp;lt;tt&amp;gt;[[span(id=point2, class=wikianchor, title=Point 2, &amp;lt;sup&amp;gt;(2)&amp;lt;/sup&amp;gt;)]]&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Escaping Links and WikiPageNames ===&lt;br /&gt;
&lt;br /&gt;
You may avoid making hyperlinks out of TracLinks by preceding an expression with a single &amp;quot;!&amp;quot; (exclamation mark).&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
   NoHyperLink&lt;br /&gt;
   !#42 is not a link&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
 NoHyperLink&lt;br /&gt;
 !#42 is not a link&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Images ===&lt;br /&gt;
&lt;br /&gt;
Urls ending with &amp;lt;tt&amp;gt;.png&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;.gif&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;.jpg&amp;lt;/tt&amp;gt; are no longer automatically interpreted as image links, and converted to &amp;lt;tt&amp;gt;&amp;lt;img&amp;gt;&amp;lt;/tt&amp;gt; tags.&lt;br /&gt;
&lt;br /&gt;
You now have to use the ![[Image]] macro. The simplest way to include an image is to upload it as attachment to the current page, and put the filename in a macro call like &amp;lt;tt&amp;gt;[[Image(picture.gif)]]&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
In addition to the current page, it is possible to refer to other resources:&lt;br /&gt;
*&amp;lt;tt&amp;gt;[[Image(wiki:WikiFormatting:picture.gif)]]&amp;lt;/tt&amp;gt; (referring to attachment on another page)&lt;br /&gt;
*&amp;lt;tt&amp;gt;[[Image(ticket:1:picture.gif)]]&amp;lt;/tt&amp;gt; (file attached to a ticket)&lt;br /&gt;
*&amp;lt;tt&amp;gt;[[Image(htdocs:picture.gif)]]&amp;lt;/tt&amp;gt; (referring to a file inside project htdocs)&lt;br /&gt;
*&amp;lt;tt&amp;gt;[[Image(source:/trunk/trac/htdocs/trac_logo_mini.png)]]&amp;lt;/tt&amp;gt; (a file in repository)&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  [[Image(htdocs:../common/trac_logo_mini.png)]]&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
[[Image(htdocs:../common/trac_logo_mini.png)]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See WikiMacros for further documentation on the &amp;lt;tt&amp;gt;[[Image()]]&amp;lt;/tt&amp;gt; macro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Macros ===&lt;br /&gt;
&lt;br /&gt;
Macros are &#039;&#039;custom functions&#039;&#039; to insert dynamic content in a page.&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  [[RecentChanges(Trac,3)]]&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding-left: 2em&amp;quot;&lt;br /&gt;
[[RecentChanges(Trac,3)]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See WikiMacros for more information, and a list of installed macros.&lt;br /&gt;
&lt;br /&gt;
The detailed help for a specific macro can also be obtained more directly by appending a &amp;quot;?&amp;quot; to the macro name.&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  [[MacroList?]]&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;padding-left: 2em&amp;quot;&lt;br /&gt;
[[MacroList?]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Processors ===&lt;br /&gt;
&lt;br /&gt;
Trac supports alternative markup formats using WikiProcessors. For example, processors are used to write pages in &lt;br /&gt;
[[WikiRestructuredText| reStructuredText]] or [[WikiHtml| HTML]]. &lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|--------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td align=&amp;quot;center&amp;quot; colspan=2 style=&amp;quot;border: 0px; font-size: 90%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
   [=#Processors-example-html Example 1:] HTML&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|--------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;border: 0px&amp;quot;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #html&lt;br /&gt;
  &amp;lt;h1 style=&amp;quot;text-align: right; color: blue&amp;quot;&amp;gt;&lt;br /&gt;
   HTML Test&lt;br /&gt;
  &amp;lt;/h1&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td valign=&amp;quot;top&amp;quot;  style=&amp;quot;border: 0px&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#html&lt;br /&gt;
&amp;lt;h1 style=&amp;quot;text-align: right; color: blue&amp;quot;&amp;gt;HTML Test&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|--------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td align=&amp;quot;center&amp;quot; colspan=2 style=&amp;quot;border: 0px; font-size: 90%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
   [=#Processors-example-highlight Example 2:] Code Highlighting&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|--------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;border: 0px&amp;quot;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #python&lt;br /&gt;
  class Test:&lt;br /&gt;
  &lt;br /&gt;
      def &amp;lt;u&amp;gt;init&amp;lt;/u&amp;gt;(self):&lt;br /&gt;
          print &amp;quot;Hello World&amp;quot;&lt;br /&gt;
  if &amp;lt;u&amp;gt;name&amp;lt;/u&amp;gt; == &#039;&amp;lt;u&amp;gt;main&amp;lt;/u&amp;gt;&#039;:&lt;br /&gt;
     Test()&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#td valign=&amp;quot;top&amp;quot;  style=&amp;quot;border: 0px&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#python&lt;br /&gt;
class Test:&lt;br /&gt;
    def &amp;lt;u&amp;gt;init&amp;lt;/u&amp;gt;(self):&lt;br /&gt;
        print &amp;quot;Hello World&amp;quot;&lt;br /&gt;
if &amp;lt;u&amp;gt;name&amp;lt;/u&amp;gt; == &#039;&amp;lt;u&amp;gt;main&amp;lt;/u&amp;gt;&#039;:&lt;br /&gt;
   Test()&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|--------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td align=&amp;quot;center&amp;quot; colspan=2 style=&amp;quot;border: 0px; font-size: 90%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       [=#Processors-example-tables Example 3:] Complex Tables&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|--------------------------------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td style=&amp;quot;border: 0px&amp;quot;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;#th rowspan=4 align=justify&lt;br /&gt;
  With the &amp;lt;tt&amp;gt;#td&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;#th&amp;lt;/tt&amp;gt; processors,&lt;br /&gt;
  table cells can contain any content:&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  |----------------&lt;br /&gt;
  &amp;lt;pre&amp;gt;#td&lt;br /&gt;
    - lists&lt;br /&gt;
    - embedded tables&lt;br /&gt;
    - simple multiline content&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  |----------------&lt;br /&gt;
  &amp;lt;pre&amp;gt;#td&lt;br /&gt;
  As processors can be easily nested, &lt;br /&gt;
  so can be tables:&lt;br /&gt;
    &amp;lt;pre&amp;gt;#th&lt;br /&gt;
    Example:&lt;br /&gt;
    &amp;lt;/pre&amp;gt;&lt;br /&gt;
    &amp;lt;pre&amp;gt;#td style=&amp;quot;background: #eef&amp;quot;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! must be at the third level now... &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  |----------------&lt;br /&gt;
  &amp;lt;pre&amp;gt;#td&lt;br /&gt;
  Even when you don&#039;t have complex markup,&lt;br /&gt;
  this form of table cells can be convenient&lt;br /&gt;
  to write content on multiple lines.&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#td  valign=&amp;quot;top&amp;quot;  style=&amp;quot;border: 0px&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;pre&amp;gt;#th rowspan=4 align=justify&lt;br /&gt;
  With the &amp;lt;tt&amp;gt;#td&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;#th&amp;lt;/tt&amp;gt; processors,&lt;br /&gt;
  table cells can contain any content:&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  |----------------&lt;br /&gt;
  &amp;lt;pre&amp;gt;#td&lt;br /&gt;
    - lists&lt;br /&gt;
    - embedded tables&lt;br /&gt;
    - simple multiline content&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  |----------------&lt;br /&gt;
  &amp;lt;pre&amp;gt;#td&lt;br /&gt;
  As processors can be easily nested, &lt;br /&gt;
  so can be tables:&lt;br /&gt;
    &amp;lt;pre&amp;gt;#th&lt;br /&gt;
    Example:&lt;br /&gt;
    &amp;lt;/pre&amp;gt;&lt;br /&gt;
    &amp;lt;pre&amp;gt;#td style=&amp;quot;background: #eef&amp;quot;&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! must be at the third level now... &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;/pre&amp;gt;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  |----------------&lt;br /&gt;
  &amp;lt;pre&amp;gt;#td&lt;br /&gt;
  Even when you don&#039;t have complex markup,&lt;br /&gt;
  this form of table cells can be convenient&lt;br /&gt;
  to write content on multiple lines.&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See WikiProcessors for more information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Comments ===&lt;br /&gt;
&lt;br /&gt;
Comments can be added to the plain text. These will not be rendered and will not display in any other format than plain text.&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  Nothing to&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #comment&lt;br /&gt;
  Your comment for editors here&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  see ;-)&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  Nothing to&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  #comment&lt;br /&gt;
  Your comment for editors here&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
  see ;-)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous ===&lt;br /&gt;
&lt;br /&gt;
An horizontal line can be used to separated different parts of your page:&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!= Wiki Markup =&lt;br /&gt;
!= Display =&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  Four or more dashes will be replaced &lt;br /&gt;
  by an horizontal line (&amp;lt;HR&amp;gt;)&lt;br /&gt;
  ----&lt;br /&gt;
  See?&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
Four or more dashes will be replaced&lt;br /&gt;
by an horizontal line (&amp;lt;HR&amp;gt;)&lt;br /&gt;
----&lt;br /&gt;
See?&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|----------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;quot;macro&amp;quot; style &amp;lt;br&amp;gt; line break&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
&amp;quot;macro&amp;quot; style &amp;lt;br&amp;gt; line break&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|----------------------------------&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  WikiCreole style \\ line\\break&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;#td&lt;br /&gt;
WikiCreole style \\ line\\break&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WikiDeletePage&amp;diff=355</id>
		<title>WikiDeletePage</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WikiDeletePage&amp;diff=355"/>
		<updated>2015-08-26T12:29:29Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Deleting a Wiki Page ==  Existing wiki pages can be completely deleted using the &amp;#039;&amp;#039;Delete Page&amp;#039;&amp;#039; or the &amp;#039;&amp;#039;Delete this Version&amp;#039;&amp;#039; buttons at the bottom of the wiki page. The...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Deleting a Wiki Page ==&lt;br /&gt;
&lt;br /&gt;
Existing wiki pages can be completely deleted using the &#039;&#039;Delete Page&#039;&#039; or the &#039;&#039;Delete this Version&#039;&#039; buttons at the bottom of the wiki page. These buttons are only visible for users with &amp;lt;tt&amp;gt;WIKI_DELETE&amp;lt;/tt&amp;gt; permissions.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Deleting a wiki page is an irreversible operation.&lt;br /&gt;
&lt;br /&gt;
If you want to delete a page because you actually re-created a new page with the same content but a different name, it is recommended to keep the page and use it as a redirection page instead of completely deleting it, as to not frustrate the visitor with broken links when coming to the site from a search engine. &lt;br /&gt;
&lt;br /&gt;
In this situation, chances are that you actually wanted to [[WikiNewPage#renaming|rename]] the page instead of doing a copy + delete. &lt;br /&gt;
The &#039;&#039;Rename&#039;&#039; operation also offers you the possibility to create a redirection page.&lt;br /&gt;
A redirection page is a short page that  contains a link such as  “See SomeOtherPage”. &lt;br /&gt;
&lt;br /&gt;
However, deleting specific versions or even complete pages can make sense to remove spam or other abusive submissions.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: TracWiki, TracPermissions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=WhoAreWe&amp;diff=354</id>
		<title>WhoAreWe</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=WhoAreWe&amp;diff=354"/>
		<updated>2015-08-26T12:29:28Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot;     {{TracNotice|{{PAGENAME}}}}&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=VMForStatsCourse&amp;diff=353</id>
		<title>VMForStatsCourse</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=VMForStatsCourse&amp;diff=353"/>
		<updated>2015-08-26T12:29:28Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot;  PageOutline   == Special seminar &amp;quot;Advanced statistics for discoveries&amp;quot; == {| border=1 class=&amp;quot;simple&amp;quot; !April 12, 2012 - Introduction &amp;lt;br&amp;gt; April 24-25, 2012 - Advance...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[PageOutline]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Special seminar &amp;quot;Advanced statistics for discoveries&amp;quot; ==&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!April 12, 2012 - Introduction &amp;lt;br&amp;gt; April 24-25, 2012 - Advanced theory and hands-on part&lt;br /&gt;
|- &lt;br /&gt;
| [http://w3.iihe.ac.be/ IIHE ULB-VUB], Large seminar room &amp;lt;br&amp;gt; [http://w3.iihe.ac.be/route.php How to get to the IIHE: click here] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Organised by Pascal Vanlaer (ULB) and Jorgen D&#039;Hondt (VUB)&lt;br /&gt;
&lt;br /&gt;
[[Image(logo-ulb.jpg,15%)]]  [[Image(logoIIHE.png,9%)]] [[Image(VUB_official.png,15%)]] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This special 3-day seminar on &amp;quot;advanced statistics for discoveries&amp;quot; provides the advanced statistical foundations that allow discrepancies with an expected background to be quantified, paving the way to a discovery. It is meant for graduate students and above. It covers tests of the presence of a new signal and the evaluation of its significance, both in theory and in practice using the RooStats statistical tool.&lt;br /&gt;
&lt;br /&gt;
The seminar is organised as follows: on the first day, a reminder of statistics will be given by IIHE staff (fitting and hypothesis testing); followed by a simple RooStats exercise in the afternoon, taught by IIHE PhD students. &lt;br /&gt;
The second part would be taught by Wouter Verkerke, one of the RooStats authors, from NIKHEF, who will teach the advanced theory part interleaved with hands-on exercises. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;People attending must come with a laptop configured as described [#platform below].&#039;&#039;&#039; The configuration contains a virtual machine with the required operating system and Root version already installed, that guarantees a unique platform for all people attending. &#039;&#039;&#039;This setup is mandatory.&#039;&#039;&#039; In case of problems, please contact grid_adminATlistserv.ulb.ac.be&lt;br /&gt;
&lt;br /&gt;
This seminar is organized with financial support from the doctoral schools on Physics and Astrophysics (Ecole doctorale thematique PandA - Communaute francaise de Belgique) and on Natural Sciences and (Bioscience) Engineering (NSE - VUB), the Fonds de la Recherche Scientifique (F.R.S.-FNRS) and the Fonds Wetenschappelijk Onderzoek (FWO). &amp;lt;br&amp;gt; &amp;lt;br&amp;gt; &lt;br /&gt;
[[Image(panda-school.png,7%)]] [[Image(NSElogo.jpeg,16%)]] &amp;lt;br&amp;gt;&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Seminar programme === &lt;br /&gt;
&lt;br /&gt;
[[Introduction]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[advanced| Advanced theory and hands-on part]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Maximum 35 people at a time can attend the seminar. Register by entering your name into the doodle poll &amp;lt;br&amp;gt; http://www.doodle.com/mxhu388h4mtmx5dr &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The dates of the seminar have been fixed, but there are still a few places left. People who can&#039;t attend the introduction day can participate to the advanced theory and hands-on part on April 24-25 provided that they feel confortable with parameter estimation and hypothesis testing, and master the RooStats tutorial taught in the introduction (see the Introduction link from the Seminar programme above). In this case please register your name in the poll above, leaving all days red. &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[=#platform]&lt;br /&gt;
=== Installation of a Virtual machine for the statistics course ===&lt;br /&gt;
&lt;br /&gt;
Please follow the instructions to install the virtual machine containing the root version necessary to follow the statistics course. It is a mandatory installation, so that everybody starts with the same settings.&amp;lt;br&amp;gt;&lt;br /&gt;
Most of the instructions work for Linux, MAC and Windows. There is an extra section specially for windows users, as they require some more installation. there is also a special procedure for Ubuntu users as the standard VM does not work on this distribution.&lt;br /&gt;
&lt;br /&gt;
==== Install Virtual Box ====&lt;br /&gt;
Virtual Box is the software that will allow you to run a &#039;guest operating system&#039; that is different form the one you use now. &amp;lt;br&amp;gt;&lt;br /&gt;
Go to https://www.virtualbox.org/wiki/Downloads and download the version of Virtual Box for the operating system that is installed on you laptop now and install it.&lt;br /&gt;
==== Prepare the ground ====&lt;br /&gt;
To be able to run the virtual machine (VM), we need to configure virtualbox. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
From the virtualbox download page, download the extension pack. &amp;lt;br&amp;gt;&lt;br /&gt;
Open VirtualBox; go to the following menus: File &amp;gt; Preferences &amp;gt; Extensions. &amp;lt;br&amp;gt;&lt;br /&gt;
Click on the triangle to add a package&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image(VM_add_package.png,25%)]]&amp;lt;br&amp;gt;&lt;br /&gt;
Browse to where you saved the extension file and add it.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Next, in the same window, click on Network. And add a Host-only network. &amp;lt;br&amp;gt;&lt;br /&gt;
[[Image(VM_add_network.png,25%)]]&amp;lt;br&amp;gt;&lt;br /&gt;
The new network should also have the name vboxnet0&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Install the VM ====&lt;br /&gt;
Ubuntu users need to follow the second procedure. Other users are recommended to use the first procedure, although the second might also work for them. This was, however, not tested. &lt;br /&gt;
==== For all platforms except Ubuntu ====&lt;br /&gt;
Download the file with the VM: http://mon.iihe.ac.be/~odevroed/VM/VirtualBox_Fedora.tar.bz2 &amp;lt;br&amp;gt;&lt;br /&gt;
also available here : http://193.190.247.172/VM/VirtualBox_Fedora.tar.bz2 &amp;lt;br&amp;gt;&lt;br /&gt;
bunzip and untar the file. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, in VirtualBox, click: Machine &amp;gt; Add ; Go to the directory where you untarred the file and select &amp;quot;Fedora16.vbox&amp;quot;. &amp;lt;br&amp;gt;&lt;br /&gt;
A new Icon with the VM will come up. Just start the new VM and you have a working Fedora 16 with lightweight xFCE window manager.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== For Ubuntu users ====&lt;br /&gt;
Download the file with the VM: http://mon.iihe.ac.be/~odevroed/VM/Ubuntu.ova &amp;lt;br&amp;gt;&lt;br /&gt;
Also available here : http://193.190.247.172/VM/Ubuntu.ova &amp;lt;br&amp;gt;&lt;br /&gt;
Then, in VirtualBox, click: File &amp;gt; Import Appliance &amp;gt; Choose &amp;lt;br&amp;gt;&lt;br /&gt;
Then browse to the downloaded file and import it. &lt;br /&gt;
&lt;br /&gt;
==== run Root ====&lt;br /&gt;
We could run root from the VM window, but as this is a bit small, we will just run it from a terminal on our laptop.&amp;lt;br&amp;gt;&lt;br /&gt;
Log into the VM as user course (password= course;123    the same password holds for root)&amp;lt;br&amp;gt;&lt;br /&gt;
Open a terminal (black icon in lower left ) and type: ifconfig &amp;lt;br&amp;gt;&lt;br /&gt;
look for the line &amp;quot;inet addr:192.168.56.3&amp;quot; ; The last digit (3) will probably be different on your system. It is this IP address that we will ssh to.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ssh -X course@192.168.56.X&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
And then run root. The root icon should now appear in your laptop. Test the settings by opening a TBrowser for instance.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
t=TBrowser();&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To test if all RooStats libraries required are correctly installed, try:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  cd $ROOTSYS/tutorials/roostats&lt;br /&gt;
  root -l StandardHypoTestInvDemo.C&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will run the full chain of building a model, storing it in a workspace, reading it in and&lt;br /&gt;
calculating a CLS limit use a PLL test statistics. It takes about 90 seconds to execute. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Extra instructions for Windows users ====&lt;br /&gt;
&lt;br /&gt;
On windows you might need another step, as the VM host only network does not have the same name. To do this, right click on the name of VM &amp;gt; configuration &amp;gt; network &amp;lt;br&amp;gt;&lt;br /&gt;
In the second tab (named card 2), change the name to whatever card name you can find in the drop-down menu.&amp;lt;br&amp;gt;&lt;br /&gt;
As the VM contains linux, it natively runs X-windows. This is unfortunately not the case for windows. You need to install an X server. This one works: http://sourceforge.net/projects/xming/?_test=b , but you might already use another one.&amp;lt;br&amp;gt;&lt;br /&gt;
Then, install an ssh client. The most famous is putty: http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe &amp;lt;br&amp;gt;&lt;br /&gt;
Determine the IP of the VM as above and ssh to the machine, before go to the options on X11 and put X11-forwarding on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=VirtWithKVM1&amp;diff=352</id>
		<title>VirtWithKVM1</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=VirtWithKVM1&amp;diff=352"/>
		<updated>2015-08-26T12:29:28Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == KVM installation and configuration on dom04 == === Short description of the software and hardware === The KVM host will be named dom04.wn. The operating system will be S...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== KVM installation and configuration on dom04 ==&lt;br /&gt;
=== Short description of the software and hardware ===&lt;br /&gt;
The KVM host will be named dom04.wn. The operating system will be Scientific Linux 6.1 x86_64. There are 9 ports :&lt;br /&gt;
*iLO3 port (IP 192.168.9.224) -&amp;gt; use this address in your browser to access the iLO3 Web pages of the machine;&lt;br /&gt;
*eth0 -&amp;gt; eth3 : bnx2 NIC&lt;br /&gt;
*eth4 -&amp;gt; eth7 : igb NIC&lt;br /&gt;
Since the rule is to always take the first available NIC as the public one, and since we will use the bnx2 NICs, then eth0 will be the public NIC and eth1 will be the private one :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
eth0 --&amp;gt; public, no IP address;&lt;br /&gt;
eth1 --&amp;gt; private, IP 192.168.10.37&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The machine is an HP ProLiant DL360 G7 with 2 CPUs, each CPU having 6 hyperthreaded cores (12 cores from the OS point of view) and 72 GB of memory.&lt;br /&gt;
There are four RAID-1 systems of 500GB each.&lt;br /&gt;
&lt;br /&gt;
=== OS installation ===&lt;br /&gt;
*Installation was done through the iLO Integrated Remote Console&lt;br /&gt;
*Installation media : SL61 DVD iso&#039;s, mounted on the machine via a Virtual DVD Drive (in the Remote Console, menu &amp;quot;Virtual Drives&amp;quot; &amp;gt; sub-menu &amp;quot;CD/DVD&amp;quot; &amp;gt; select option &amp;quot;Virtual Image&amp;quot; &amp;gt; select the *.iso file)&lt;br /&gt;
*Disk space layout : one volume group using the first RAID-1 systems (sda); we will use sdb, sdc and sdd as physical disks for virtual machines. (See next section for more details)&lt;br /&gt;
&lt;br /&gt;
=== Disk space layout in details ===&lt;br /&gt;
&lt;br /&gt;
During the SL installation process, the wizard will ask you to add the RAID systems on which you want to install the OS. If you add all the 4 RAIDs, then the installation process will create a volume group that will spread accross the 4 RAID systems, and that&#039;s not what we want ! The volume group for the OS should be contained in the first RAID (physical device /dev/sda), and the other three RAIDs should exists as physical devices (/dev/sdb, /dev/sdc, and /dev/sdd) outside the volume group. This way, the three last RAID systems can be used as physical disks for the virtual machines.&lt;br /&gt;
&lt;br /&gt;
Now speaking about the default partioning layout, if you let the installation process do the job for you, it will create three logical volumes : swap (virtual memory), home (mounted to /home) and root (mounted to /). The first device (sda) will be splitted in two physical partitions : sda1 mounted to /boot is outside the volume group, and sda2 is added to the volume group.&lt;br /&gt;
&lt;br /&gt;
After the installation process is finished, you may want to correct the disk space layout. You can easily do it with the GUI called system-config-lvm :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install system-config-lvm&lt;br /&gt;
system-config-lvm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(since it is a graphical, don&#039;t forget to open you ssh session on dom04 with the option -XC).&lt;br /&gt;
&lt;br /&gt;
The following screenshot shows what you should get :&lt;br /&gt;
&lt;br /&gt;
[[Image(system-config-lvm1.png,50%)]]&lt;br /&gt;
&lt;br /&gt;
In the picture above, you can see that there is no /home : it has been deleted because not useful, and the resulting unallocated space has been added to the root logical volume. If you do so, don&#039;t forget to remove the line corresponding to /home in /etc/fstab, otherwise, your machine won&#039;t be able to reboot (during the reboot, it will try to fscheck /home, resulting in an error, and you&#039;ll be obliged to restart the machine in rescue mode to correct the /etc/fstab) !&lt;br /&gt;
&lt;br /&gt;
=== Network configuration ===&lt;br /&gt;
Here are the NICs as they are stated in iLO :&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!iLO3&lt;br /&gt;
!iLO Dedicated Network Port&lt;br /&gt;
!9c:8e:99:2e:c6:a6 &lt;br /&gt;
|- &lt;br /&gt;
| iSCSI&lt;br /&gt;
| Port 1&lt;br /&gt;
| 9c:8e:99:2d:e1:e5 &lt;br /&gt;
|- &lt;br /&gt;
| iSCSI&lt;br /&gt;
| Port 2&lt;br /&gt;
| 9c:8e:99:2d:e1:e7 &lt;br /&gt;
|- &lt;br /&gt;
| iSCSI&lt;br /&gt;
| Port 3&lt;br /&gt;
| 9c:8e:99:2d:e1:dd &lt;br /&gt;
|- &lt;br /&gt;
| iSCSI&lt;br /&gt;
| Port 4&lt;br /&gt;
| 9c:8e:99:2d:e1:df &lt;br /&gt;
|- &lt;br /&gt;
| NIC&lt;br /&gt;
| Port 1&lt;br /&gt;
| 9c:8e:99:2d:e1:e4 &lt;br /&gt;
|- &lt;br /&gt;
| NIC&lt;br /&gt;
| Port 2&lt;br /&gt;
| 9c:8e:99:2d:e1:e6 &lt;br /&gt;
|- &lt;br /&gt;
| NIC&lt;br /&gt;
| Port 3&lt;br /&gt;
| 9c:8e:99:2d:e1:dc &lt;br /&gt;
|- &lt;br /&gt;
| NIC&lt;br /&gt;
| Port 4&lt;br /&gt;
| 9c:8e:99:2d:e1:de &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In fact, in the table above, only the four bnx2 ports are visible (each port has two MAC addresses). There is still a PCI extension card providing four igb ports not visible in the iLO web pages. However, if you look at the output of dmesg, you should see blocks of lines like these :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
igb 0000:06:00.1: irq 70 for MSI/MSI-X&lt;br /&gt;
igb 0000:06:00.1: Intel(R) Gigabit Ethernet Network Connection&lt;br /&gt;
igb 0000:06:00.1: eth5: (PCIe:5.0Gb/s:Width x4) f4:ce:46:a6:e5:59&lt;br /&gt;
igb 0000:06:00.1: eth5: PBA No: E84069-007&lt;br /&gt;
igb 0000:06:00.1: Using MSI-X interrupts. 8 rx queue(s), 8 tx queue(s)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Notice the different MAC address range used for igb interfaces.&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!eth4&lt;br /&gt;
!f4:ce:46:a6:e5:58&lt;br /&gt;
|- &lt;br /&gt;
| eth5&lt;br /&gt;
| f4:ce:46:a6:e5:59&lt;br /&gt;
|- &lt;br /&gt;
| eth6&lt;br /&gt;
| f4:ce:46:a6:e5:5a&lt;br /&gt;
|- &lt;br /&gt;
| eth7&lt;br /&gt;
| f4:ce:46:a6:e5:5b&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Two bridges must be created : one for the public network and another for the private network. &lt;br /&gt;
&lt;br /&gt;
Here is the content of the needed network scripts in /etc/sysconfig/network-scripts/ :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# cat ifcfg-eth0&lt;br /&gt;
----------------&lt;br /&gt;
DEVICE=&amp;quot;eth0&amp;quot;&lt;br /&gt;
BOOTPROTO=&amp;quot;static&amp;quot;&lt;br /&gt;
HWADDR=&amp;quot;9C:8E:99:2D:E1:E4&amp;quot;&lt;br /&gt;
NM_CONTROLLED=&amp;quot;no&amp;quot;&lt;br /&gt;
ONBOOT=&amp;quot;yes&amp;quot;&lt;br /&gt;
BRIDGE=&amp;quot;br0&amp;quot;&lt;br /&gt;
----------------&lt;br /&gt;
&lt;br /&gt;
# cat ifcfg-br0&lt;br /&gt;
----------------&lt;br /&gt;
DEVICE=&amp;quot;br0&amp;quot;&lt;br /&gt;
TYPE=&amp;quot;Bridge&amp;quot;&lt;br /&gt;
NM_CONTROLLED=&amp;quot;no&amp;quot;&lt;br /&gt;
BOOTPROTO=&amp;quot;static&amp;quot;&lt;br /&gt;
ONBOOT=&amp;quot;yes&amp;quot;&lt;br /&gt;
----------------&lt;br /&gt;
&lt;br /&gt;
# cat ifcfg-eth1&lt;br /&gt;
----------------&lt;br /&gt;
DEVICE=&amp;quot;eth1&amp;quot;&lt;br /&gt;
HWADDR=&amp;quot;9C:8E:99:2D:E1:E6&amp;quot;&lt;br /&gt;
NM_CONTROLLED=&amp;quot;no&amp;quot;&lt;br /&gt;
ONBOOT=&amp;quot;yes&amp;quot;&lt;br /&gt;
BOOTPROTO=&amp;quot;static&amp;quot;&lt;br /&gt;
BRIDGE=&amp;quot;br1&amp;quot;&lt;br /&gt;
----------------&lt;br /&gt;
&lt;br /&gt;
# cat ifcfg-br1&lt;br /&gt;
----------------&lt;br /&gt;
DEVICE=&amp;quot;br1&amp;quot;&lt;br /&gt;
TYPE=&amp;quot;Bridge&amp;quot;&lt;br /&gt;
BOOTPROTO=&amp;quot;static&amp;quot;&lt;br /&gt;
ONBOOT=&amp;quot;yes&amp;quot;&lt;br /&gt;
IPADDR=&amp;quot;192.168.10.37&amp;quot;&lt;br /&gt;
NETMASK=&amp;quot;255.255.0.0&amp;quot;&lt;br /&gt;
----------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
After editing these files, restart the network :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
service network restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now, let us control that everything is ok :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# brctl show&lt;br /&gt;
----------------&lt;br /&gt;
bridge name	bridge id		STP enabled	interfaces&lt;br /&gt;
br0		8000.9c8e992de1e4	no		eth0&lt;br /&gt;
br1		8000.9c8e992de1e6	no		eth1&lt;br /&gt;
----------------&lt;br /&gt;
&lt;br /&gt;
# ifconfig&lt;br /&gt;
----------------&lt;br /&gt;
br0       Link encap:Ethernet  HWaddr 9C:8E:99:2D:E1:E4  &lt;br /&gt;
          inet6 addr: fe80::9e8e:99ff:fe2d:e1e4/64 Scope:Link&lt;br /&gt;
          ...&lt;br /&gt;
&lt;br /&gt;
br1       Link encap:Ethernet  HWaddr 9C:8E:99:2D:E1:E6  &lt;br /&gt;
          inet addr:192.168.10.37  Bcast:192.168.255.255  Mask:255.255.0.0&lt;br /&gt;
          inet6 addr: fe80::9e8e:99ff:fe2d:e1e6/64 Scope:Link&lt;br /&gt;
          ...&lt;br /&gt;
&lt;br /&gt;
eth0      Link encap:Ethernet  HWaddr 9C:8E:99:2D:E1:E4  &lt;br /&gt;
          inet6 addr: fe80::9e8e:99ff:fe2d:e1e4/64 Scope:Link&lt;br /&gt;
          ...&lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr 9C:8E:99:2D:E1:E6  &lt;br /&gt;
          inet6 addr: fe80::9e8e:99ff:fe2d:e1e6/64 Scope:Link&lt;br /&gt;
          ...&lt;br /&gt;
----------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now, iptables must be configured to allow forwarding across the bridges :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# iptables -I FORWARD -m physdev --physdev-is-bridged -j ACCEPT&lt;br /&gt;
# service iptables save&lt;br /&gt;
# service iptables restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
SElinux must be disabled, otherwise you&#039;ll get strange error messages when trying to start your virtual machines :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/sbin/setenforce 0&lt;br /&gt;
vim /etc/selinux/config&lt;br /&gt;
--&amp;gt; you must set the following : SELINUX=disabled&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
We still have to add a default route through ccq :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
route add default gw 192.168.10.100&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
and to make this default route permanent, don&#039;t forget to add the following line in /etc/sysconfig/network :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
GATEWAY=192.168.10.100&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
As a result, your root table should look like this :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[root@dom05 ~]# route&lt;br /&gt;
Kernel IP routing table&lt;br /&gt;
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface&lt;br /&gt;
192.168.122.0   *               255.255.255.0   U     0      0        0 virbr0&lt;br /&gt;
link-local      *               255.255.0.0     U     1015   0        0 br0&lt;br /&gt;
link-local      *               255.255.0.0     U     1016   0        0 br1&lt;br /&gt;
192.168.0.0     *               255.255.0.0     U     0      0        0 br1&lt;br /&gt;
default         ccq.wn.iihe.ac. 0.0.0.0         UG    0      0        0 br1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
And then configure the DNS resolution by adding the following in /etc/resolv.conf :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
search wn.iihe.ac.be&lt;br /&gt;
nameserver 192.168.10.100&lt;br /&gt;
nameserver 193.190.247.140&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We can now make the machine ready for SSH. Simply run :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ssh-keygen -t rsa&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
for key pair generation. It is also a good idea to add in .ssh/authorized_keys the public key of ccq, dom02, and dom03.&lt;br /&gt;
&lt;br /&gt;
Don&#039;t forget to also add dom04.wn.iihe.ac.be in the private DNS on ccq.&lt;br /&gt;
&lt;br /&gt;
=== RPMs installation ===&lt;br /&gt;
We simply did a :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum groupinstall &amp;quot;Virtualization*&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
This will install four software groups :&lt;br /&gt;
*Virtualization&lt;br /&gt;
*Virtualization Client&lt;br /&gt;
*Virtualization Platform&lt;br /&gt;
*Virtualization Tools&lt;br /&gt;
The following is also necessary for X forwarding with SSH :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install xorg-x11-xauth&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
After that, you must log off, and then log in back with the option -X (this log off and in is necessary to create the .Xauthority file).&lt;br /&gt;
&lt;br /&gt;
=== Configuration of daemons ===&lt;br /&gt;
Start libvirtd :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
service libvirtd start&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Doing a &amp;quot;brctl show&amp;quot; or and an &amp;quot;ifconfig&amp;quot;, you should see new interface virbr0.&lt;br /&gt;
&lt;br /&gt;
=== Manage the storage pools ===&lt;br /&gt;
&lt;br /&gt;
Launch virt-manager, right click on the virtual host (localhost), select the &amp;quot;Details&amp;quot; option in the menu, and the select the &amp;quot;Storage&amp;quot; tab in the new window. Now, we will add the three RAID systems (sdb, sdc, and sdd) to the storage pools. I will show in details the steps for the device sdb :&lt;br /&gt;
&lt;br /&gt;
[[Image(system-config-lvm2.png,25%)]]&lt;br /&gt;
&lt;br /&gt;
Click on the &amp;quot;+&amp;quot; button at the lower left corner of the previous window, this will launch a wizard. In the first window of the wizard, give a name to the new pool (for example &amp;quot;sdb&amp;quot;). On the next windows, fill in the fields like this :&lt;br /&gt;
&lt;br /&gt;
[[Image(system-config-lvm3.png,25%)]]&lt;br /&gt;
&lt;br /&gt;
== Example of a VM installation from CD/DVD ISO ==&lt;br /&gt;
It should be the same as [http://mon.iihe.ac.be/trac/t2b/wiki/VirtWithKVM#ExampleofaVMinstallationfromCDDVDISO here]&lt;br /&gt;
== Example of a VM installation from PXE ==&lt;br /&gt;
It should be the same as [http://mon.iihe.ac.be/trac/t2b/wiki/VirtWithKVM#ExampleofaVMinstallationfromPXE here]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=VirtWithKVM&amp;diff=351</id>
		<title>VirtWithKVM</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=VirtWithKVM&amp;diff=351"/>
		<updated>2015-08-26T12:29:28Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == KVM installation and configuration on dom02 == === Short description of the software and hardware === The KVM host will be named dom02. The operating system is SL 5.5 x8...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== KVM installation and configuration on dom02 ==&lt;br /&gt;
=== Short description of the software and hardware ===&lt;br /&gt;
The KVM host will be named dom02. The operating system is SL 5.5 x86_64. There are three ports :&lt;br /&gt;
*iLO3 port (IP 192.168.9.222);&lt;br /&gt;
*eth0 : as usual, public NIC, without IP address;&lt;br /&gt;
*eth1 : private NIC with IP 192.168.10.35.&lt;br /&gt;
The machine is an HP DL360G7 with CPU L5640 (12 cores) and 24 GB of memory.&lt;br /&gt;
&lt;br /&gt;
=== Network configuration ===&lt;br /&gt;
Two bridges must be created : one for the public network and another for the private network. Here is the content of the needed network scripts in /etc/sysconfig/network-scripts/ :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# cat ifcfg-eth0&lt;br /&gt;
----------------&lt;br /&gt;
DEVICE=eth0&lt;br /&gt;
BRIDGE=br0&lt;br /&gt;
BOOTPROTO=static&lt;br /&gt;
ONBOOT=yes&lt;br /&gt;
HOTPLUG=no&lt;br /&gt;
TYPE=Ethernet&lt;br /&gt;
USERCTL=no&lt;br /&gt;
PEERDNS=yes&lt;br /&gt;
IPV6INIT=yes&lt;br /&gt;
IPV6_AUTOCONF=yes&lt;br /&gt;
----------------&lt;br /&gt;
&lt;br /&gt;
# cat ifcfg-br0&lt;br /&gt;
----------------&lt;br /&gt;
DEVICE=br0&lt;br /&gt;
TYPE=Bridge&lt;br /&gt;
BOOTPROTO=static&lt;br /&gt;
ONBOOT=yes&lt;br /&gt;
----------------&lt;br /&gt;
&lt;br /&gt;
# cat ifcfg-eth1&lt;br /&gt;
----------------&lt;br /&gt;
DEVICE=eth1&lt;br /&gt;
BRIDGE=br1&lt;br /&gt;
BOOTPROTO=static&lt;br /&gt;
ONBOOT=yes&lt;br /&gt;
TYPE=Ethernet&lt;br /&gt;
PEERDNS=yes&lt;br /&gt;
USERCTL=no&lt;br /&gt;
IPV6INIT=no&lt;br /&gt;
IPV6_AUTOCONF=no&lt;br /&gt;
----------------&lt;br /&gt;
&lt;br /&gt;
# cat ifcfg-br1&lt;br /&gt;
----------------&lt;br /&gt;
DEVICE=br1&lt;br /&gt;
TYPE=Bridge&lt;br /&gt;
BOOTPROTO=static&lt;br /&gt;
ONBOOT=yes&lt;br /&gt;
IPADDR=192.168.10.35&lt;br /&gt;
NETMASK=255.255.0.0&lt;br /&gt;
BROADCAST=192.168.10.255&lt;br /&gt;
----------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
After editing these files, restart the network :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
service network restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now, let us control that everything is ok :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# brctl show&lt;br /&gt;
----------------&lt;br /&gt;
bridge name	bridge id		STP enabled	interfaces&lt;br /&gt;
br0		8000.68b599bd46bc	no		eth0&lt;br /&gt;
br1		8000.68b599bd46be	no		eth1&lt;br /&gt;
----------------&lt;br /&gt;
&lt;br /&gt;
# ifconfig&lt;br /&gt;
----------------&lt;br /&gt;
br0       Link encap:Ethernet  HWaddr 68:B5:99:BD:46:BC  &lt;br /&gt;
          inet6 addr: fe80::6ab5:99ff:febd:46bc/64 Scope:Link&lt;br /&gt;
          ...&lt;br /&gt;
&lt;br /&gt;
br1       Link encap:Ethernet  HWaddr 68:B5:99:BD:46:BE  &lt;br /&gt;
          inet addr:192.168.10.35  Bcast:192.168.10.255  Mask:255.255.0.0&lt;br /&gt;
          inet6 addr: fe80::6ab5:99ff:febd:46be/64 Scope:Link&lt;br /&gt;
          ...&lt;br /&gt;
&lt;br /&gt;
eth0      Link encap:Ethernet  HWaddr 68:B5:99:BD:46:BC  &lt;br /&gt;
          inet6 addr: fe80::6ab5:99ff:febd:46bc/64 Scope:Link&lt;br /&gt;
          ...&lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr 68:B5:99:BD:46:BE  &lt;br /&gt;
          inet6 addr: fe80::6ab5:99ff:febd:46be/64 Scope:Link&lt;br /&gt;
          ...&lt;br /&gt;
----------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now, iptables must be configured to allow forwarding across the bridges :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# iptables -I FORWARD -m physdev --physdev-is-bridged -j ACCEPT&lt;br /&gt;
# service iptables save&lt;br /&gt;
# service iptables restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
SElinux must be disabled, otherwise you&#039;ll get strange error messages when trying to start your virtual machines :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/sbin/setenforce 0&lt;br /&gt;
vim /etc/selinux/config&lt;br /&gt;
--&amp;gt; you must set the following : SELINUX=disabled&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
We still have to add a default route through ccq :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
route add default gw 192.168.10.100&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And then configure the DNS resolution by adding the following in /etc/resolv.conf :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
search wn.iihe.ac.be&lt;br /&gt;
nameserver 192.168.10.100&lt;br /&gt;
nameserver 193.190.247.140&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== RPMs installation ===&lt;br /&gt;
We simply did a :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum groupinstall KVM&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Configuration of daemons ===&lt;br /&gt;
Start libvirtd :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
service libvirtd start&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Doing a &amp;quot;brctl show&amp;quot; or and an &amp;quot;ifconfig&amp;quot;, you should see new interface virbr0.&lt;br /&gt;
&lt;br /&gt;
== Example of a VM installation from CD/DVD ISO ==&lt;br /&gt;
We used the GUI virt-manager (don&#039;t forget the X forwarding when you connect to dom02 !). Here are the steps in the wizard :&lt;br /&gt;
*First screen : Virtual machine name : cream02;&lt;br /&gt;
*Second screen : Virtualization method : &amp;quot;Fully virtualized&amp;quot;;&lt;br /&gt;
*Third screen : Installation method : we have worked with ISOs; and for OS type and variant, Linux-RHEL5.4 or later was the closest to SL5.5;&lt;br /&gt;
*Fourth screen : Storage : we used a file (disk image), keeping the suggested location and rising the size to 40000 MB and pre-allocating the entire virtual disk space;&lt;br /&gt;
*Fifth screen : Network : we chose the option &amp;quot;Shared physical device&amp;quot;, which corresponds to the bridging solution, and as a device, we took &amp;quot;eth0 (Bridge br0)&amp;quot;;&lt;br /&gt;
*Sixth screen : Memory and CPU allocation : max. memory to 4096 MB and 2 virtual CPUs;&lt;br /&gt;
After VM creation, we still had to add a second NIC for the private network, and of course we linked it to the bridge br1.&lt;br /&gt;
&lt;br /&gt;
== Example of a VM installation from PXE ==&lt;br /&gt;
In this example, we used command line (&#039;&#039;virsh&#039;&#039;) instead of the GUI virt-manager :&lt;br /&gt;
#Login to dom02.&lt;br /&gt;
#Each VM has a universal unique identifier (uuid). This number is generated with the command uuid.&lt;br /&gt;
#With the command :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
virsh edit &amp;lt;Name of KVM&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
you can create and edit the XML profile of the machine. For example :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;domain type=&#039;kvm&#039;&amp;gt;&lt;br /&gt;
  &amp;lt;name&amp;gt;submit&amp;lt;/name&amp;gt;&lt;br /&gt;
  &amp;lt;uuid&amp;gt;e8e837ed-22a9-8a65-feba-0ef6784d8ccf&amp;lt;/uuid&amp;gt;&lt;br /&gt;
  &amp;lt;memory&amp;gt;1048576&amp;lt;/memory&amp;gt;&lt;br /&gt;
  &amp;lt;currentMemory&amp;gt;1048576&amp;lt;/currentMemory&amp;gt;&lt;br /&gt;
  &amp;lt;vcpu&amp;gt;1&amp;lt;/vcpu&amp;gt;&lt;br /&gt;
  &amp;lt;os&amp;gt;&lt;br /&gt;
    &amp;lt;type arch=&#039;x86_64&#039; machine=&#039;rhel5.4.0&#039;&amp;gt;hvm&amp;lt;/type&amp;gt;&lt;br /&gt;
    &amp;lt;boot dev=&#039;network&#039;/&amp;gt;&lt;br /&gt;
  &amp;lt;/os&amp;gt;&lt;br /&gt;
  &amp;lt;features&amp;gt;&lt;br /&gt;
    &amp;lt;acpi/&amp;gt;&lt;br /&gt;
    &amp;lt;apic/&amp;gt;&lt;br /&gt;
    &amp;lt;pae/&amp;gt;&lt;br /&gt;
  &amp;lt;/features&amp;gt;&lt;br /&gt;
  &amp;lt;clock offset=&#039;utc&#039;/&amp;gt;&lt;br /&gt;
  &amp;lt;on_poweroff&amp;gt;destroy&amp;lt;/on_poweroff&amp;gt;&lt;br /&gt;
  &amp;lt;on_reboot&amp;gt;restart&amp;lt;/on_reboot&amp;gt;&lt;br /&gt;
  &amp;lt;on_crash&amp;gt;restart&amp;lt;/on_crash&amp;gt;&lt;br /&gt;
  &amp;lt;devices&amp;gt;&lt;br /&gt;
    &amp;lt;emulator&amp;gt;/usr/libexec/qemu-kvm&amp;lt;/emulator&amp;gt;&lt;br /&gt;
    &amp;lt;disk type=&#039;file&#039; device=&#039;disk&#039;&amp;gt;&lt;br /&gt;
      &amp;lt;source file=&#039;/var/lib/libvirt/images/submit.img&#039;/&amp;gt;&lt;br /&gt;
      &amp;lt;target dev=&#039;hda&#039; bus=&#039;ide&#039;/&amp;gt;&lt;br /&gt;
    &amp;lt;/disk&amp;gt;&lt;br /&gt;
    &amp;lt;interface type=&#039;bridge&#039;&amp;gt;&lt;br /&gt;
      &amp;lt;mac address=&#039;54:52:00:12:64:7a&#039;/&amp;gt;&lt;br /&gt;
      &amp;lt;source bridge=&#039;br1&#039;/&amp;gt;&lt;br /&gt;
    &amp;lt;/interface&amp;gt;&lt;br /&gt;
    &amp;lt;serial type=&#039;pty&#039;&amp;gt;&lt;br /&gt;
      &amp;lt;target port=&#039;0&#039;/&amp;gt;&lt;br /&gt;
    &amp;lt;/serial&amp;gt;&lt;br /&gt;
    &amp;lt;console type=&#039;pty&#039;&amp;gt;&lt;br /&gt;
      &amp;lt;target port=&#039;0&#039;/&amp;gt;&lt;br /&gt;
    &amp;lt;/console&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&#039;mouse&#039; bus=&#039;ps2&#039;/&amp;gt;&lt;br /&gt;
    &amp;lt;graphics type=&#039;vnc&#039; port=&#039;-1&#039; autoport=&#039;yes&#039; keymap=&#039;en-us&#039;/&amp;gt;&lt;br /&gt;
  &amp;lt;/devices&amp;gt;&lt;br /&gt;
&amp;lt;/domain&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The XML file will be created in /etc/libvirt/qemu. If you want more info about editing this XML, just read [http://publib.boulder.ibm.com/infocenter/lnxinfo/v3r0m0/topic/liaai/kvmadv/kvmadvexrhel.htm this].&lt;br /&gt;
&lt;br /&gt;
 4. You can now define your new VM from the XML file :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
virsh define &amp;lt;Name of XML definition file&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 5. Then, you can create the image file for the hard drive of the VM :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
qemu-img create /var/lib/libvirt/images/submit.img 10G&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 6. We can now start the machine :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
virsh start &amp;lt;Name of KVM&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
and check that it is running :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
virsh list&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Convert IDE/SCSI/SATA HD to virtio HD ==&lt;br /&gt;
Installation of a VM with virtio drive through PXE does not work with SL5 because the initrd doesn&#039;t load virtio modules during first reboot. To avoid this issue, we can create and install the VM with an IDE hard drive. In the machine xml the disk specification should read like&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    &amp;lt;disk type=&#039;file&#039; device=&#039;disk&#039;&amp;gt;&lt;br /&gt;
      &amp;lt;source file=&#039;/var/lib/libvirt/images/submit.img&#039;/&amp;gt;&lt;br /&gt;
      &amp;lt;target dev=&#039;hda&#039; bus=&#039;ide&#039;/&amp;gt;&lt;br /&gt;
    &amp;lt;/disk&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When the installation is finished, convert the HD of the machine to a virtio device. Here are the steps in brief :&lt;br /&gt;
#Log on the VM&lt;br /&gt;
 2. Create a new initrd with virtio support :&lt;br /&gt;
 3. Modify init script in initrd, and replace references to hda by vda.&lt;br /&gt;
 4. Modify the grub device map file (/boot/grub/device.map)&lt;br /&gt;
 5. On the host machine, change the XML definition of the VM (virsh edit &amp;lt;VM&amp;gt;).&lt;br /&gt;
 6. Reboot the VM&lt;br /&gt;
To make this conversion easier, we have written a script that you can find in the attachments. Just run this script on the VM, and then type the following on the host :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
virsh edit &amp;lt;VM&amp;gt;&lt;br /&gt;
--&amp;gt; edit the XML : change &amp;lt;target dev=&#039;hda&#039; bus=&#039;ide&#039;/&amp;gt; to &amp;lt;target dev=&#039;vda&#039; bus=&#039;virtio&#039;/&amp;gt;&lt;br /&gt;
virsh define &amp;lt;VM_XML&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is a script dom03:/root/convert_vm_hd_to_virtio.pl to ease this procedure&lt;br /&gt;
&lt;br /&gt;
== Useful links ==&lt;br /&gt;
*Doc from INFN : http://wiki.infn.it/cn/ccr/virtualizzazione/documentazione/kvm_howto&lt;br /&gt;
*Doc from IBM : http://publib.boulder.ibm.com/infocenter/lnxinfo/v3r0m0/topic/liaai/liaaivirtualization.htm&lt;br /&gt;
*Page about virtio in the official libvirt Wiki : http://wiki.libvirt.org/page/Virtio&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=VeryQuickGuideCMSSWDeployment&amp;diff=350</id>
		<title>VeryQuickGuideCMSSWDeployment</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=VeryQuickGuideCMSSWDeployment&amp;diff=350"/>
		<updated>2015-08-26T12:29:27Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot;  CMSSW Deployment Home  == A Very Quick Guide To CMSSW Deployment == === Before Each Deployment === *login on m1.iihe.ac.be as cmssw &amp;lt;pre&amp;gt; ssh cmssw...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[CMSSWDeployment| CMSSW Deployment Home]]&lt;br /&gt;
&lt;br /&gt;
== A Very Quick Guide To CMSSW Deployment ==&lt;br /&gt;
=== Before Each Deployment ===&lt;br /&gt;
*login on m1.iihe.ac.be as cmssw&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ssh cmssw@m1.iihe.ac.be&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*create a proxy:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
source CreateProxy.sh yourname&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
   This command changes the current directory to the release-installer area&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/user/cmssw/Deployment/tag-handler&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== What To Do If ... ===&lt;br /&gt;
*&#039;&#039;&#039;a new version of CMSSW is released or an old version is deprecated:&#039;&#039;&#039;&lt;br /&gt;
***submit installation/removal jobs&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ri -s&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
***Check the job status.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ri -l&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
***Retrieve (Fetch) the output of the installation jobs:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ri -f&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
      The output is stored in &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/user/cmssw/cms/release-installer/&amp;lt;JOBSTATUS&amp;gt;/&amp;lt;CE&amp;gt;/&amp;lt;TIMESTAMP&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
      &amp;lt;JOBSTATUS&amp;gt; is the status of the job&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;CE&amp;gt; is de site ce name&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;TIMESTAMP is the time of submission in the format yyyy-mm-dd_T_hh_mm_ss&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;you want to know where and which releases have to be installed/removed&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ri -d&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;a site needs manual intervention&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ri -d&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
   This command will also show which sites need manual intervention. If this is the case, there exists a directory&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/user/cmssw/cms/release-installer/stopped/&amp;lt;CE&amp;gt;/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
   where CE is de site&#039;s CE name.&amp;lt;br&amp;gt;&lt;br /&gt;
   Go through the output, solve the problem. Open, if useful, a Savannah Ticket. Once the problem is solved, remove the direcory&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;a site makes a special request&#039;&#039;&#039; to remove, add or keep a specific release.&amp;lt;br&amp;gt;&lt;br /&gt;
   Edit the file manual_install_requests.xml and submit to the site(s)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
emacs -nw manual_install_requests.xml&lt;br /&gt;
ri -c CE1,CE2 -s&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;you&#039;re not sure what to do&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ri&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
   a help page will be displayed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=V0_Analysis_wiki&amp;diff=349</id>
		<title>V0 Analysis wiki</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=V0_Analysis_wiki&amp;diff=349"/>
		<updated>2015-08-26T12:29:27Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; === Running the V0Tree production code with CMSSW 3_6_2 ===  &amp;#039;&amp;#039;Note: the example of the code with all the neccessary config files is at&amp;#039;&amp;#039; /user_mnt/user/threus/CMSSW_3_6_2/...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=== Running the V0Tree production code with CMSSW 3_6_2 ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note: the example of the code with all the neccessary config files is at&#039;&#039; /user_mnt/user/threus/CMSSW_3_6_2/src/&lt;br /&gt;
&lt;br /&gt;
0) copy the /user_mnt/user/vanlaer/kinefit362/src/RecoVertex/V0Tree directory to your respective /src/RecoVertex/ dir.&lt;br /&gt;
   &lt;br /&gt;
   - it contains all neccessary links between various config files, such that step 2)a and 3) is done already.&lt;br /&gt;
&lt;br /&gt;
1) &#039;&#039;&#039;Patching track-to-track covariance&#039;&#039;&#039;&lt;br /&gt;
    - cvs the patched code:&lt;br /&gt;
&lt;br /&gt;
      cvs co -r V01-01-08 RecoVertex/KalmanVertexFit&lt;br /&gt;
&lt;br /&gt;
      cvs co -r V01-01-04 RecoVertex/VertexPrimitives&lt;br /&gt;
      &lt;br /&gt;
      cvs co -r V00-01-09 RecoVertex/LinearizationPointFinders&lt;br /&gt;
&lt;br /&gt;
      cvs co -r V01-01-06 RecoVertex/VertexTools&lt;br /&gt;
&lt;br /&gt;
      cvs co -r V01-00-18 RecoVertex/V0Producer&lt;br /&gt;
&lt;br /&gt;
   - update /RecoVertex/VertexPrimitives/src/TransientVertex.cc, method TransientVertex::tkToTkCovariance(const TransientTrack&amp;amp; t1, const TransientTrack&amp;amp; t2):&lt;br /&gt;
&lt;br /&gt;
      comment piece of code starting at line 158:&lt;br /&gt;
        if (t1&amp;lt;t2) {&lt;br /&gt;
        tr1 = &amp;amp;t1;&lt;br /&gt;
        tr2 = &amp;amp;t2;&lt;br /&gt;
        } else {&lt;br /&gt;
        tr1 = &amp;amp;t2;&lt;br /&gt;
        tr2 = &amp;amp;t1;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
     and instead insert &lt;br /&gt;
&lt;br /&gt;
     tr1 = &amp;amp;t1;&lt;br /&gt;
     tr2 = &amp;amp;t2;&lt;br /&gt;
&lt;br /&gt;
     (i.e. disable unwanted track swapping).&lt;br /&gt;
&lt;br /&gt;
2) &#039;&#039;&#039;Track Refit&#039;&#039;&#039;, which consists of two steps:&lt;br /&gt;
&lt;br /&gt;
  a) refitting of the reconstructed tracks with the pion mass hypothesis (w.r.t. default muon mass hypothesis)&lt;br /&gt;
 &lt;br /&gt;
     - load the refitter module and tell the refitter to use pion hypothesis:&lt;br /&gt;
&lt;br /&gt;
       in your mainconfig.py file (that you use when running cmsRun mainconfig.py) add:&lt;br /&gt;
&lt;br /&gt;
       &#039;&#039;process.load(&amp;quot;RecoTracker.TrackProducer.TrackRefitters_cff&amp;quot;)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
       &#039;&#039;process.RungeKuttaTrackerPropagator.Mass = 0.139&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
       &#039;&#039;process.RungeKuttaTrackerPropagatorOpposite.Mass = 0.139&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
     - add refitter module into your path (in mainconfig.py) &#039;&#039;before&#039;&#039; the V0Tree module (process.demo):&lt;br /&gt;
&lt;br /&gt;
       &#039;&#039;process.p = cms.Path(... *... *process.TrackRefitter *...)&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
  b) rerunning the V0 producer on the refitted tracks&lt;br /&gt;
&lt;br /&gt;
     - tell the V0 producer to use refitted tracks: in ./RecoVertex/V0Producer/python/generalV0Candidates_cfi.py, &lt;br /&gt;
&lt;br /&gt;
       change &#039;&#039;trackRecoAlgorithm = cms.InputTag(&#039;generalTracks&#039;)&#039;&#039; to &#039;&#039;trackRecoAlgorithm = cms.InputTag(&#039;TrackRefitter&#039;)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
       you may also modify the main config file with the following line:&lt;br /&gt;
&lt;br /&gt;
       process.generalV0Candidates.trackRecoAlgorithm = &#039;TrackRefitter&#039;&lt;br /&gt;
&lt;br /&gt;
       it has the same effect but it does not require recompiling of the RecoVertex/V0Producer/python config. &lt;br /&gt;
&lt;br /&gt;
     - add the V0 produced module into your path (in mainconfig.py) &#039;&#039;before&#039;&#039; the V0Tree module (process.demo) and &#039;&#039;after&#039;&#039; the refitter module (process.TrackRefitter):&lt;br /&gt;
&lt;br /&gt;
       &#039;&#039;process.p = cms.Path(... *... *process.TrackRefitter *process.generalV0Candidates *process.demo)&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
For the completed mainconfig.py file have a look at /user_mnt/user/threus/CMSSW_3_6_2/src/RecoVertex/V0Tree/test/runV0Tree_MC_simtracks_7TeV_refitpions_cfg.py&lt;br /&gt;
&lt;br /&gt;
ISSUE: DATA sample throws an error, so for the moment track refitting works only for MC.&lt;br /&gt;
&lt;br /&gt;
3) &#039;&#039;&#039;Matching reconstructed tracks with simulated tracks&#039;&#039;&#039; (TrackingParticles)&lt;br /&gt;
&lt;br /&gt;
    - add the corresponding modules into your mainconfig.py:&lt;br /&gt;
&lt;br /&gt;
      &#039;&#039;process.load(&amp;quot;SimTracker.TrackAssociation.TrackAssociatorByHits_cfi&amp;quot;)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
      &#039;&#039;process.load(&amp;quot;SimTracker.TrackAssociation.trackingParticleRecoTrackAsssociation_cfi&amp;quot;)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
      &#039;&#039;process.TrackAssociatorByHits.SimToRecoDenominator = cms.string(&#039;reco&#039;)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
    - copy /user_mnt/user/threus/CMSSW_3_6_2/src/RecoVertex/V0Tree/python/v0tree_cfi.py to your respective directory&lt;br /&gt;
&lt;br /&gt;
      note how the parameters are defined and if you use the TrackRefitter (see above), set the &#039;&#039;label&#039;&#039; to &lt;br /&gt;
 &lt;br /&gt;
      &#039;&#039;label = cms.VInputTag(cms.InputTag(&amp;quot;TrackRefitter&amp;quot;))&#039;&#039;, to use refitted reconstructed tracks for the reco-sim matching.&lt;br /&gt;
&lt;br /&gt;
      if you don&#039;t use TrackRefitter, set the &#039;&#039;label&#039;&#039; to &#039;&#039;label = cms.VInputTag(cms.InputTag(&amp;quot;generalTracks&amp;quot;))&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
    - set the parameters inside mainconfig.py:&lt;br /&gt;
&lt;br /&gt;
      &#039;&#039;process.demo.associators = [&#039;TrackAssociatorByHits&#039;]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
      &#039;&#039;process.demo.label = [&#039;cutsRecoTracks&#039;]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
      &#039;&#039;process.demo.UseAssociators = cms.bool(True)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
    - define track selection cuts for the matching algorithm for both, simulated and reconstructed tracks:&lt;br /&gt;
&lt;br /&gt;
      copy these files from  /user_mnt/user/threus/CMSSW_3_6_2/src/RecoVertex/V0Tree/python/ to your respective directory:&lt;br /&gt;
&lt;br /&gt;
      TrackingParticleSelectionForEfficiency_cfi.py&lt;br /&gt;
   &lt;br /&gt;
      cutsRecoTracks_cfi.py&lt;br /&gt;
&lt;br /&gt;
      cutsTPEffic_cfi.py&lt;br /&gt;
&lt;br /&gt;
      cutsTPFake_cfi.py&lt;br /&gt;
&lt;br /&gt;
      cuts_cff.py&lt;br /&gt;
&lt;br /&gt;
    - include the track selection cuts into your path, before the main V0Tree module (process.demo):&lt;br /&gt;
&lt;br /&gt;
      process.p = cms.Path(... *... *process.cutsRecoTracks *process.demo)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
compile all from your /src/RecoVertex directory.  &lt;br /&gt;
&lt;br /&gt;
ROOT scripts with the kinematic fits are in directory /user_mnt/user/threus/CMSSW_3_6_2/src/kinefitv0:&lt;br /&gt;
&lt;br /&gt;
minim_pt_7.C /.h mass fit&lt;br /&gt;
&lt;br /&gt;
minim_ptpo_v3.C /.h mass + pointing + vertexing fit&lt;br /&gt;
&lt;br /&gt;
HistogramContainer.h which contain the class definitions&lt;br /&gt;
&lt;br /&gt;
=== Kinematic Fit Variables in V0Tree ===&lt;br /&gt;
&lt;br /&gt;
The kinematic fit code is implemented directly inside the V0Tree.cc code. You can find it in /user_mnt/user/threus/CMSSW_3_6_2/src/RecoVertex/V0Tree/plugins/V0Tree.cc.fit ; copy it, rename to V0Tree.cc and compile.&lt;br /&gt;
&lt;br /&gt;
Saved variables contain information on the chi2 probability of the kinematic fit result and fitted daughter four-vectors, separately for three mass hypotheses: K0s, Lambda and Antilambda. In case of Lambda (Antilambda) hypothesis, proton (antiproton) is assumed to be the track with the positive (negative) charge. The returned flag from the kinematic fit method is saved as well, to know if the fit converged and if not, why. Both, the kinematic fit with the mass constraint alone and the full kinematic fit with the mass, vertex and pointing constraints are performed on the V0 candidate.&lt;br /&gt;
&lt;br /&gt;
1) New saved variables related to kinematic fit with mass constrain are:&lt;br /&gt;
&lt;br /&gt;
   double chi2prob_k0_massfit[100]; //chi2 prob. for K0s hyp.&lt;br /&gt;
&lt;br /&gt;
   double chi2prob_la_massfit[100]; //chi2 prob. for Lambda hyp.&lt;br /&gt;
&lt;br /&gt;
   double chi2prob_al_massfit[100]; //chi2 prob. for Antilambda hyp.&lt;br /&gt;
&lt;br /&gt;
   int flag_k0_massfit[100]; //flag returned by the kinematic fit for K0s hyp. (see below for details)&lt;br /&gt;
&lt;br /&gt;
   int flag_la_massfit[100]; // Lambda hyp.&lt;br /&gt;
&lt;br /&gt;
   int flag_al_massfit[100]; // Antilambda hyp.&lt;br /&gt;
 &lt;br /&gt;
   - Meaning of the flag_xx values: &lt;br /&gt;
              &lt;br /&gt;
     &amp;gt;= 0  : fit OK, returned is the number of iterations needed for convergence&lt;br /&gt;
              &lt;br /&gt;
     == -1 : error, fit not converged within the nmber of allowed iterations&lt;br /&gt;
&lt;br /&gt;
     &amp;lt;= -90: error, one of the matrices not inverted; for the exact matrix see code&lt;br /&gt;
&lt;br /&gt;
2) New saved variables related to kinematic fit with mass, vertex and pointing constraints are:&lt;br /&gt;
&lt;br /&gt;
   double chi2prob_k0_fullfit[100];&lt;br /&gt;
&lt;br /&gt;
   double chi2prob_la_fullfit[100];&lt;br /&gt;
&lt;br /&gt;
   double chi2prob_al_fullfit[100];&lt;br /&gt;
&lt;br /&gt;
   int flag_k0_fullfit[100];&lt;br /&gt;
&lt;br /&gt;
   int flag_la_fullfit[100];&lt;br /&gt;
&lt;br /&gt;
   int flag_al_fullfit[100];&lt;br /&gt;
&lt;br /&gt;
   double V0_d1_k0_fullfit_pt[100]; // daughter 1 four-vector for the K0s hypothesis&lt;br /&gt;
&lt;br /&gt;
   double V0_d1_k0_fullfit_eta[100];&lt;br /&gt;
&lt;br /&gt;
   double V0_d1_k0_fullfit_phi[100];&lt;br /&gt;
&lt;br /&gt;
   double V0_d1_k0_fullfit_e[100];&lt;br /&gt;
&lt;br /&gt;
   double V0_d2_k0_fullfit_pt[100]; // daughter 2 four-vector for the K0s hypothesis&lt;br /&gt;
&lt;br /&gt;
   ...&lt;br /&gt;
 &lt;br /&gt;
   double V0_d1_la_fullfit_pt[100]; // daughter 1 four-vector for the Lambda hypothesis&lt;br /&gt;
 &lt;br /&gt;
   ...&lt;br /&gt;
&lt;br /&gt;
   double V0_d2_la_fullfit_pt[100];  // daughter 2 four-vector for the Lambda hypothesis&lt;br /&gt;
&lt;br /&gt;
   ...&lt;br /&gt;
&lt;br /&gt;
   double V0_d1_al_fullfit_pt[100]; // daughter 1 four-vector for the Antilambda hypothesis&lt;br /&gt;
&lt;br /&gt;
   ... &lt;br /&gt;
&lt;br /&gt;
   double V0_d2_al_fullfit_pt[100]; // daughter 2 four-vector for the Antilambda hypothesis&lt;br /&gt;
&lt;br /&gt;
   ...&lt;br /&gt;
&lt;br /&gt;
3) Additional variable (not related to kinematic fits) which carries the information on the V0 particle type as given by the CMSSW finder is saved:&lt;br /&gt;
&lt;br /&gt;
   int V0_type[100]; //type of V0: 0=K0s, 1=Lambda, as returned by the CMSSW finder&lt;br /&gt;
&lt;br /&gt;
4) DATA / MC samples with this information (except the daughter four-vectors) are here:&lt;br /&gt;
&lt;br /&gt;
   DATA: /user_mnt/user/threus/trees/data/Commissioning10-GOODCOLL-Jun14thSkim_v1/CMSSW_3_6_2/loose&lt;br /&gt;
&lt;br /&gt;
   MC:   /user_mnt/user/threus/trees/mc/MinBias_TuneD6T_7TeV-pythia6_Summer10-START36_V10_SP10-v1/CMSSW_3_6_2/loose&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=Using_Git&amp;diff=348</id>
		<title>Using Git</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=Using_Git&amp;diff=348"/>
		<updated>2015-08-26T12:29:27Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; ==== Using Git on the T2:====  *First you need to create a pair of private/public ssh keys on the UIs (mX machines): &amp;lt;pre&amp;gt; ssh-keygen &amp;lt;/pre&amp;gt;  and follow the instruction...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Using Git on the T2:====&lt;br /&gt;
&lt;br /&gt;
*First you need to create a pair of private/public ssh keys on the UIs (mX machines):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ssh-keygen&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
 and follow the instructions. Defaults are fine.&lt;br /&gt;
&lt;br /&gt;
*Create an account on [https://github.com/ github]&lt;br /&gt;
*Go in you settings:&lt;br /&gt;
[[Image(git_ssh_key.png, 10%)]]&lt;br /&gt;
 then SSH keys . Click on &amp;quot;Add SSH key&amp;quot;, and copy the content of .ssh/id_rsa.pub (from the UI) in there. &lt;br /&gt;
[[Image(git_ssh_key2.png, 50%)]]&lt;br /&gt;
&lt;br /&gt;
*Now you should be able to clone the repositories you want from any UI !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=User_Meetings&amp;diff=347</id>
		<title>User Meetings</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=User_Meetings&amp;diff=347"/>
		<updated>2015-08-26T12:29:27Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; ==== User meetings ==== List of User meetings.&amp;lt;br&amp;gt; *User meeting at the IIHE: User_meeting_11_06_09 *User Meeting in Gent    : User_meeting_26_10_11 *User Meeting...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== User meetings ====&lt;br /&gt;
List of User meetings.&amp;lt;br&amp;gt;&lt;br /&gt;
*User meeting at the IIHE: [[User_meeting_11_06_09]]&lt;br /&gt;
*User Meeting in Gent    : [[User_meeting_26_10_11]]&lt;br /&gt;
*User Meeting in Antwerp : [[User_meeting_18_10_12]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=User_meeting_26_10_11&amp;diff=346</id>
		<title>User meeting 26 10 11</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=User_meeting_26_10_11&amp;diff=346"/>
		<updated>2015-08-26T12:29:27Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; User Meeting Held in Gent on October 26th 2011&amp;lt;br&amp;gt; *[https://mon.iihe.ac.be/trac/t2b/attachment/wiki/User_meeting_26_10_11/User_meeting_26_10_2011.odp General news from the ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
User Meeting Held in Gent on October 26th 2011&amp;lt;br&amp;gt;&lt;br /&gt;
*[https://mon.iihe.ac.be/trac/t2b/attachment/wiki/User_meeting_26_10_11/User_meeting_26_10_2011.odp General news from the T2] &#039;&#039;O. Devroede&#039;&#039;&lt;br /&gt;
*[https://mon.iihe.ac.be/trac/t2b/attachment/wiki/User_meeting_26_10_11/NewUsersSession_26oct2011.odp New users section] &#039;&#039;J. Maes&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=User_meeting_18_10_12&amp;diff=345</id>
		<title>User meeting 18 10 12</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=User_meeting_18_10_12&amp;diff=345"/>
		<updated>2015-08-26T12:29:26Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot;  === User Meeting Held in Antwerp on October 18th 2012 ===  The slides are in [http://w3.iihe.ac.be/indico/conferenceDisplay.py?confId=388 indico].    {{TracNotice|{{PAGEN...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
=== User Meeting Held in Antwerp on October 18th 2012 ===&lt;br /&gt;
&lt;br /&gt;
The slides are in [http://w3.iihe.ac.be/indico/conferenceDisplay.py?confId=388 indico].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=User_meeting_11_06_09&amp;diff=344</id>
		<title>User meeting 11 06 09</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=User_meeting_11_06_09&amp;diff=344"/>
		<updated>2015-08-26T12:29:26Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; ==== User_meeting_11_06_09 ====  *[https://mon.iihe.ac.be/trac/t2b/attachment/wiki/User_meeting_11_06_09/Grid_JDLSubmission.pdf Direct submission with JDL macro&amp;#039;s] &amp;#039;&amp;#039;E.Chab...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== User_meeting_11_06_09 ====&lt;br /&gt;
&lt;br /&gt;
*[https://mon.iihe.ac.be/trac/t2b/attachment/wiki/User_meeting_11_06_09/Grid_JDLSubmission.pdf Direct submission with JDL macro&#039;s] &#039;&#039;E.Chabert&#039;&#039; &lt;br /&gt;
*[https://mon.iihe.ac.be/trac/t2b/attachment/wiki/User_meeting_11_06_09/Grid_Seminar_11June.pdf Using crab to run fwlite macros] &#039;&#039;V. Dero&#039;&#039;&lt;br /&gt;
*[https://mon.iihe.ac.be/trac/t2b/attachment/wiki/User_meeting_11_06_09/IlariaT2brussels11Jun09.pdf MadGraph and root macros on the grid] &#039;&#039;I. Villella&lt;br /&gt;
*[https://mon.iihe.ac.be/trac/t2b/attachment/wiki/User_meeting_11_06_09/User_meeting_11_06_2009.odp Procedures, rules and possibilities at the T2_BE_IIHE]   &#039;&#039;O. Devroede&#039;&#039;&lt;br /&gt;
*Discussion: user requests and feedback&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=UsefulImages&amp;diff=343</id>
		<title>UsefulImages</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=UsefulImages&amp;diff=343"/>
		<updated>2015-08-26T12:29:26Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; This a page with useful images &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;  Image(UsefulImages:Exclamation_mark.png)    {{TracNotice|{{PAGENAME}}}}&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This a page with useful images &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image(UsefulImages:Exclamation_mark.png)]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=UseCervisia&amp;diff=342</id>
		<title>UseCervisia</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=UseCervisia&amp;diff=342"/>
		<updated>2015-08-26T12:29:26Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; === Prerequisites === Open an SSH session on a CERN&amp;#039;s UI with the appropriate options : &amp;lt;pre&amp;gt; ssh mdupont@lxplus.cern.ch -XC &amp;lt;/pre&amp;gt; and launch Cervisia : &amp;lt;pre&amp;gt; cervisi...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
Open an SSH session on a CERN&#039;s UI with the appropriate options :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ssh mdupont@lxplus.cern.ch -XC&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
and launch Cervisia :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cervisia &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== How to checkout a project ? ===&lt;br /&gt;
In the menu, go to Repository &amp;gt; Checkout, fill in the form and click on &amp;quot;Ok&amp;quot; button to launch the checkout. Here is an example of values you can put in the fields of the form :&lt;br /&gt;
&lt;br /&gt;
--&amp;gt; Repository : :gserver:cmscvs.cern.ch:/cvs_server/repositories/CMSSW&lt;br /&gt;
&lt;br /&gt;
--&amp;gt; Module : COMP/INTEGRATION/crabvalidation&lt;br /&gt;
&lt;br /&gt;
--&amp;gt; Working folder : /afs/cern.ch/user/s/sgerard/public&lt;br /&gt;
&lt;br /&gt;
--&amp;gt; Check out as : test&lt;br /&gt;
&lt;br /&gt;
Once the checkout if finished, you can open your local copy of the project. Go to the menu File &amp;gt; Open Sandbox and choose the path of the local copy of the project.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=UpgradeWNstoSL5.5&amp;diff=341</id>
		<title>UpgradeWNstoSL5.5</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=UpgradeWNstoSL5.5&amp;diff=341"/>
		<updated>2015-08-26T12:29:26Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; === Upgrade of Workernodes in CB6 to SL5.5 ===  *Currently all nodes in CB6 are running SL5.3, the goal is to upgrade them to SL5.5 *The testing node is node16-5; first st...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=== Upgrade of Workernodes in CB6 to SL5.5 ===&lt;br /&gt;
&lt;br /&gt;
*Currently all nodes in CB6 are running SL5.3, the goal is to upgrade them to SL5.5&lt;br /&gt;
*The testing node is node16-5; first step is to out it offline so it can drain.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
pbsnodes -o node16-5.wn.iihe.ac.be&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*In the template for the os version the entry for node16-5 is upgraded to sl550-x86_64&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/CBv6/cfg/sites/iihe-production/site/os_version_db.tpl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*This file is then compiled in the CDB and commited&lt;br /&gt;
*To make the changes do a runcheck on ccq3&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ssh ccq3&lt;br /&gt;
cd /opt/CB6/svncheck/&lt;br /&gt;
./runcheck&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*And do the changes &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
aii-shellfe --remove node16-5.wn.iihe.ac.be #remove the current configuration for this machine&lt;br /&gt;
aii-shellfe --configure node16-5.wn.iihe.ac.be #create the new kickstart file for this machine&lt;br /&gt;
aii-shellfe --install node16-5.wn.iihe.ac.be#Update of DHCP and PXE for this machine to be installed at next boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*To check the status simply issue something like this&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
for line in $(cat wn_list); do aii-shellfe --status $line; done&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;REMARK: it is better to do the remove before the runcheck to not clash the xml file with the existing configuration&#039;&#039;&#039;&lt;br /&gt;
*Reboot the machine&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ssh node16-5.wn&lt;br /&gt;
reboot -n&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Once the machine is back you will see in the spma log file the following error message&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/var/log/smpa.log&lt;br /&gt;
error code: cpio: open failed - Too many open files&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*To fix this you have to reboot the machine after moving the kickstart log file&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mv ks-post-install.log ks-post-install.log.old&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Once the quattor installation finished successfully you still have to reboot a last time&lt;br /&gt;
&lt;br /&gt;
==== Re-installation campaign ====&lt;br /&gt;
&lt;br /&gt;
*The re-installation campaign is executed in the following steps&lt;br /&gt;
*Adapt the file os_version_db.tpl in the quattor database, compile, commit and do a runcheck&lt;br /&gt;
*First of all, all nodes need to reconfigured with the aii-shellfe command. In the following location you find a little script to do this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[root@ccq3] /root/joris/nodeReinstallation.sh&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*The script takes as an argument a file listing all the workernodes to be removed. The file was generated with the a script found here:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[root@ccq] /root/stephane/generate_list_of_online_nodes_CB6.sh&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Once the script is executed on ccq3 it is time to move to ccq to perform the reboot of all the nodes. To do this Stephane has written a nice script. More details about this script can be found [[KernelUpdate| here]].&lt;br /&gt;
*The script has been adapted by Joris to allow the re-installation of a workernode. Technically a few more reboot cycles have been added with the appropriate handles to check if the installation was done in a correct way. The script can be found here and is executed with the same options as the original script&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd /root/stephane/UserCode/T2B_IIHE/reboot_wns&lt;br /&gt;
./reboot_wns.pl --init wnfile_list_sl55campaign&lt;br /&gt;
./reboot_wns.pl --start&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*In this directory there are some small scripts to test various things, eg.&lt;br /&gt;
**./print_wn_job_number.pl wn_list: shows the number of jobs running on this node&lt;br /&gt;
**./clear_after_test.pl: removes all lists of workernodes&lt;br /&gt;
&lt;br /&gt;
==== List of workernodes that are under update procedure ====&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
! workernode             &lt;br /&gt;
! status &lt;br /&gt;
! done &lt;br /&gt;
|- &lt;br /&gt;
|  node15-1.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node15-2.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node15-3.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node15-4.wn.iihe.ac.be &lt;br /&gt;
|  not in production &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node15-5.wn.iihe.ac.be &lt;br /&gt;
|  not in production &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node15-6.wn.iihe.ac.be &lt;br /&gt;
|  not in production &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node15-7.wn.iihe.ac.be &lt;br /&gt;
|  not in production &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node15-8.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  &lt;br /&gt;
|  &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node16-1.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node16-2.wn.iihe.ac.be &lt;br /&gt;
|  reserved &lt;br /&gt;
|  y &lt;br /&gt;
|- &lt;br /&gt;
|  node16-3.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node16-4.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on&lt;br /&gt;
|- &lt;br /&gt;
|  node16-5.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node16-6.wn.iihe.ac.be &lt;br /&gt;
|  removed &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node16-7.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node16-8.wn.iihe.ac.be &lt;br /&gt;
|  reserved &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node16-9.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node16-10.wn.iihe.ac.be &lt;br /&gt;
|  reserved &lt;br /&gt;
|  y &lt;br /&gt;
|- &lt;br /&gt;
|  &lt;br /&gt;
|  &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node17-1.wn.iihe.ac.be &lt;br /&gt;
|  reserved &lt;br /&gt;
|  y &lt;br /&gt;
|- &lt;br /&gt;
|  node17-2.wn.iihe.ac.be &lt;br /&gt;
|  n/a &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node17-3.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node17-4.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node17-5.wn.iihe.ac.be &lt;br /&gt;
|  reserved &lt;br /&gt;
|  y &lt;br /&gt;
|- &lt;br /&gt;
|  node17-6.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node17-7.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node17-8.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node17-9.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node17-10.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node17-11.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node17-12.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node17-13.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node17-14.wn.iihe.ac.be &lt;br /&gt;
|  down &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  &lt;br /&gt;
|  &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node18-1.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node18-2.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node18-3.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node18-4.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node18-5.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node18-6.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node18-7.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node18-8.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  &lt;br /&gt;
|  &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node19-1.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-2.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-3.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-4.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-5.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-6.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-7.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-8.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-9.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-10.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-11.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-12.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-13.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-14.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-15.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-16.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-17.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-18.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-19.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-20.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-21.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-22.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-23.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-24.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-25.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-26.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-27.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-28.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-29.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-30.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-31.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node19-32.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  &lt;br /&gt;
|  &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node20-1.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-2.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-3.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-4.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-5.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-6.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-7.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-8.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-9.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-10.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-11.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-12.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-13.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-14.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-15.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-16.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-17.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-18.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-19.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-20.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-21.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-22.wn.iihe.ac.be &lt;br /&gt;
|  &lt;br /&gt;
|  y + on &lt;br /&gt;
|- &lt;br /&gt;
|  node20-23.wn.iihe.ac.be &lt;br /&gt;
|  need to be included in maui &lt;br /&gt;
|  &lt;br /&gt;
|- &lt;br /&gt;
|  node20-24.wn.iihe.ac.be &lt;br /&gt;
|  need to be included in maui &lt;br /&gt;
|  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=UpgradeDcachePool180REF&amp;diff=340</id>
		<title>UpgradeDcachePool180REF</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=UpgradeDcachePool180REF&amp;diff=340"/>
		<updated>2015-08-26T12:29:25Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; === Upgrade Dcache Pool (180 REF) ===  *To upgrade a dcache pool from 180 to 195 the following steps work on pool-shadow testbed:  *Stop all dCache Components &amp;lt;pre&amp;gt; /op...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=== Upgrade Dcache Pool (180 REF) ===&lt;br /&gt;
&lt;br /&gt;
*To upgrade a dcache pool from 180 to 195 the following steps work on pool-shadow testbed:&lt;br /&gt;
&lt;br /&gt;
*Stop all dCache Components&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/opt/d-cache/bin/dcache stop&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Download the RPMs&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
wget http://www.dcache.org/downloads/1.9/dcache-server-1.9.5-29.noarch.rpm&lt;br /&gt;
scp ccq:/root/Joris/dcache-srmclient-1.9.5-23.noarch.rpm .&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Upgrade the RPMs&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -Uvh dcache-server-1.9.5-29.noarch.rpm&lt;br /&gt;
rpm -Uvh dcache-srmclient-1.9.5-23.noarch.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Adapt the following files to point to the correct headnode&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/opt/d-cache/config/dCacheSetup&lt;br /&gt;
/opt/d-cache/etc/node_config&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Run install script&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/opt/d-cache/install/install.sh&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Start dCache components&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/opt/d-cache/bin/dcache start&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=UpgradeDcache&amp;diff=339</id>
		<title>UpgradeDcache</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=UpgradeDcache&amp;diff=339"/>
		<updated>2015-08-26T12:29:25Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == dCache upgrade ==  *To upgrade dCache to v1.9.12 it is recommended to first upgrade to v1.9.5  === Upgrade to v1.9.5 ===  *Installation of a headnode: [[InstallDcach...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== dCache upgrade ==&lt;br /&gt;
&lt;br /&gt;
*To upgrade dCache to v1.9.12 it is recommended to first upgrade to v1.9.5&lt;br /&gt;
&lt;br /&gt;
=== Upgrade to v1.9.5 ===&lt;br /&gt;
&lt;br /&gt;
*Installation of a headnode: [[InstallDcache]]&lt;br /&gt;
*Installation of a headnode, using extended Quattor template: [[InstallDcacheExt]]&lt;br /&gt;
*Installation of a pool node: [[InstallDcacheShadowPool]]&lt;br /&gt;
*Installation of a ui: [[InstallDcacheUI]]&lt;br /&gt;
&lt;br /&gt;
=== Installing a v1.8.0 box for reference ===&lt;br /&gt;
&lt;br /&gt;
*Installation of a headnode: [[InstallDcache180REF]]&lt;br /&gt;
*Installation of a pool node: [[InstallDcachePool180REF]]&lt;br /&gt;
**Upgrade of a pool node: [[UpgradeDcachePool180REF]]&lt;br /&gt;
&lt;br /&gt;
=== Upgrade to v1.9.12 ===&lt;br /&gt;
&lt;br /&gt;
*The following documentation describes how to upgrade from v1.9.5 to v1.9.12&lt;br /&gt;
**http://www.dcache.org/manuals/2011/goettingen/upgradeguide/upgrade-guide.html&lt;br /&gt;
*An attempt has been performed to upgrade immediately to v1.9.12: [[InstallDcache1912direct]]&lt;br /&gt;
&lt;br /&gt;
=== Important remark on dcap configuration ===&lt;br /&gt;
&lt;br /&gt;
*To allow enough dcap connections (from all WNs and UIs) two parameters need to be set&lt;br /&gt;
**ulimit on the host&lt;br /&gt;
**dcapMaxLogin in the dCacheSetup config file&lt;br /&gt;
&lt;br /&gt;
=== Support ===&lt;br /&gt;
*dCache webpage:&lt;br /&gt;
*Mailing lists:&lt;br /&gt;
**support@dcache.org or user-forum&lt;br /&gt;
**Paul Millar via RT &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=UpdateDcacheTo22&amp;diff=338</id>
		<title>UpdateDcacheTo22</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=UpdateDcacheTo22&amp;diff=338"/>
		<updated>2015-08-26T12:29:25Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; update instructions.&amp;lt;br&amp;gt; Remark, these instructions are for the mostly for the headnode, but will work fine on the pools also. Some files do not exist in the pools. If one i...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
update instructions.&amp;lt;br&amp;gt;&lt;br /&gt;
Remark, these instructions are for the mostly for the headnode, but will work fine on the pools also. Some files do not exist in the pools. If one is asked to overwrite a file, always say YES.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;This only on Headnode&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
SSHDcache&lt;br /&gt;
cd PoolManager&lt;br /&gt;
save&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;For all:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/opt/d-cache/bin/dcache stop&lt;br /&gt;
rpm -e dcache-server&lt;br /&gt;
     &#039;&#039;&#039;#java versions could differ on pools as they have different OS&#039;s&#039;&#039;&#039;&lt;br /&gt;
rpm -e java-1.6.0-openjdk-devel-1.6.0.0-1.11.b16.el5 java-1.6.0-openjdk-1.6.0.0-1.11.b16.el5 java-1.6.0-sun-compat-1.6.0.20-1.sl5.jpp&lt;br /&gt;
rpm -e jdk-1.6.0_20-fcs&lt;br /&gt;
rpm -ivh jdk-7u40-linux-x64.rpm&lt;br /&gt;
rpm -ivh dcache-2.2.23-1.noarch.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
both rpms can be found on ccq:/root/Olivier/RPMs/Update&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cp -r /opt/d-cache/etc/* /etc/dcache/.&lt;br /&gt;
cp /opt/d-cache/etc/authorized_keys /etc/dcache/admin/.&lt;br /&gt;
cp /opt/d-cache/etc/*key* /etc/dcache/admin/.&lt;br /&gt;
cp /opt/d-cache/config/PoolManager.conf /var/lib/dcache/config/poolmanager.conf&lt;br /&gt;
cp /opt/d-cache/etc/dcache.conf.rpmsave /etc/dcache/dcache.conf&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;edit /etc/dcache/dcache.conf&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
replace {portBase} by 22&lt;br /&gt;
add: dcache.user=root&lt;br /&gt;
change value of dcache.home to /usr/share/dcache&lt;br /&gt;
comment out this line:&lt;br /&gt;
   metaDataRepositoryImport=org.dcache.pool.repository.meta.file.FileMetaDataRepository&lt;br /&gt;
&lt;br /&gt;
mv /opt/d-cache/etc/dcachesrm-gplazma.policy.rpmsave /etc/dcache/dcachesrm-gplazma.policy&lt;br /&gt;
edit /etc/dcache/dcachesrm-gplazma.policy also this file as it contains references to the /opt layout.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Only on headnode:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
edit /var/lib/pgsql/data/postgresql.conf&lt;br /&gt;
put max_connections to 1000&lt;br /&gt;
&lt;br /&gt;
restart the machine&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=UpdateCertificates&amp;diff=337</id>
		<title>UpdateCertificates</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=UpdateCertificates&amp;diff=337"/>
		<updated>2015-08-26T12:29:25Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Deprecated content ! Please read before going any further on this page ! == The procedure to request certificates has changed since a few months. The new procedure is des...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Deprecated content ! Please read before going any further on this page ! ==&lt;br /&gt;
The procedure to request certificates has changed since a few months. The new procedure is described [http://wikit.iihe.ac.be/index.php/SSL_Certificates here].&lt;br /&gt;
&lt;br /&gt;
So, what is written below is not valid anymore and needs to be adapted...&lt;br /&gt;
&lt;br /&gt;
== Update and request server certificates ==&lt;br /&gt;
[[PageOutline]]&lt;br /&gt;
----&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
All certificates for our machines will have to be updated every year. We will receive mails starting 2 weeks before the certificates expire. &amp;lt;br&amp;gt;&lt;br /&gt;
the decision was taken to update all the certificates at once and Stein De Weirdt wrote a script to do just that. &amp;lt;br&amp;gt;&lt;br /&gt;
The last update of the certificates happened on 2 mai 2008 on a cloudy but warm afternoon.&lt;br /&gt;
&lt;br /&gt;
=== Procedure ===&lt;br /&gt;
&lt;br /&gt;
Log in on &#039;&#039;&#039;ccq3&#039;&#039;&#039; and generate all the necessary certificates with this tool:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/opt/CB6/tmp/src/begrid/cb-client/certificate_tool.py &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
the tools help output gives:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Usage: &lt;br /&gt;
    --mode    Mode: new,renew,conv,get (default: renew)&lt;br /&gt;
                    renew: make new server requests from existing certificates (in directory --dir) and upload the requests&lt;br /&gt;
                    get: - will make quattor templates in &amp;lt;--dir&amp;gt;/private&lt;br /&gt;
                         - public key need to be put in &amp;lt;--dir&amp;gt;/PemDir (to be created)&lt;br /&gt;
                         - the matching private key is looked for in &amp;lt;--dir&amp;gt;&lt;br /&gt;
                    new: make new server request (with DN attributes --att and create the requests/key in --dir)&lt;br /&gt;
    --dir     Read/write templates to/from dir (default: .)&lt;br /&gt;
  &lt;br /&gt;
    --debug   Set debug mode. (default: False) &lt;br /&gt;
    --att     DN Attributes, comma separated list eg (OU=IIHE,CN=gridce.iihe.ac.be,emailAddress=grid_admin@listserv.vub.ac.be) &lt;br /&gt;
              - assumes C=BE and O=BEGRID &lt;br /&gt;
              - emailAddress is mandatory (and should be last att)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1.&#039;&#039;&#039; Create/renew certificate&lt;br /&gt;
==== Create New Certificate ====&lt;br /&gt;
To create a new certificate, do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/opt/CB6/tmp/src/begrid/cb-client/certificate_tool.py --mode=new --dir=/root/new-cert/ --att=OU=IIHE,CN=behar050.iihe.ac.be,emailAddress=grid_admin@listserv.vub.ac.be --debug&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== Renew Certificates ====&lt;br /&gt;
To renew all certificates, first remove all .pem files in /root/new-cert/. Move the .tpl files from /root/new-cert/private to /root/new-cert/. Then, remove everything from the 2 subdirectories (private and PemDir)&amp;lt;br&amp;gt;&lt;br /&gt;
Then Do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/opt/CB6/tmp/src/begrid/cb-client/certificate_tool.py --mode=renew --dir=/root/new-cert/ --debug&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2.&#039;&#039;&#039;All the keys need to be uploaded one by one to the belnet site. Go to https://gridra.belnet.be , click &amp;quot;Request a Certificate&amp;quot;, choose server from the drop down box. Upload one generate certificate (the ones with -req). On OU needs to be added. For this chose &#039;VUB&#039;. &amp;lt;br&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3.&#039;&#039;&#039; All the generated certificates will be send via mail. Download them all (choose only the one ending in _iihe_ac_be.pem from every mail) and put them in /root/new-cert/PemDir and do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/opt/CB6/tmp/src/begrid/cb-client/certificate_tool.py --mode=get  --dir=/root/new-cert/ --debug&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
all the certificates templates will be saved in /root/new-cert/private. &amp;lt;br&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4.&#039;&#039;&#039; next step is to update all the quattor files and to make the clients connect for their new certificates. &amp;lt;br&amp;gt;&lt;br /&gt;
For this, put the private templates on ccq3, /opt/CB6/private or /opt/CB5/private, in the appropriate glite version dir.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd /opt/CB6/svncheck/&lt;br /&gt;
./runcheck&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5.&#039;&#039;&#039; This will broadcast a message to all the machines and they will respond within 5 minutes and start updating. All services except one will update fine &amp;lt;br&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6.&#039;&#039;&#039; We now check that the update was complete and for this we first log in to &#039;&#039;&#039;maite&#039;&#039;&#039;. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
grep filecopy /var/log/ncm-cdispd.log&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Or alternatively&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
less /var/log/ncm/component-filecopy.log&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now, check the certificate:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
openssl x509 -in /etc/grid-security/hostcert.pem -noout -dates&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
And make sure the new end date is indeed a year from now.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
copy the certificates so that they can be used by srm:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cp /etc/grid-security/hostcert.pem /var/glite/rgma/.certs/&lt;br /&gt;
cp /etc/grid-security/hostkey.pem /var/glite/rgma/.certs/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
and restart srm. All should be running. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;7.&#039;&#039;&#039; Restart maite once the new certificates have been propagated.&amp;lt;br&amp;gt;&lt;br /&gt;
probably not needed at all.&lt;br /&gt;
&#039;&#039;&#039;8.&#039;&#039;&#039; We now perform a final check: log in to any UI and do&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
srmls srm://maite.iihe.ac.be:8443/pnfs/iihe/cms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
also try to copy some files from storage to the use disk using dccp. &lt;br /&gt;
All directories should be listed.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;9.&#039;&#039;&#039; The certificate for rgma on mon needs to be deployed by hand:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd /var/glite/rgma/.certs/&lt;br /&gt;
cp /etc/grid-security/*pem ./&lt;br /&gt;
/etc/init.d/tomcat5 stop&lt;br /&gt;
/etc/init.d/tomcat5 start&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the test ops for mon does not turn into green, reboot mon.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;10.&#039;&#039;&#039; Restart argus services on argus-emi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
service argus restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If this is not enough think of restarting the node.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TunnelSSHThroughSu&amp;diff=336</id>
		<title>TunnelSSHThroughSu</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TunnelSSHThroughSu&amp;diff=336"/>
		<updated>2015-08-26T12:29:24Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; How to tunnel ssh display through su on fedora:&amp;lt;br&amp;gt; When you su through root like that and then to another (non-root) user you need to copy root&amp;#039;s xauthorization first (this...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
How to tunnel ssh display through su on fedora:&amp;lt;br&amp;gt;&lt;br /&gt;
When you su through root like that and then to another (non-root) user you need to copy root&#039;s xauthorization first (this is regardless of whether you are in an ssh session or not)&amp;lt;br&amp;gt;&lt;br /&gt;
so, while you are still root type &#039;xauth list&#039; to get the cookie, and copy the whole line by highlighting it, then su to the other user and use &#039;xauth add&#039; to add the authorization&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[root@linux1 ~]# xauth list&lt;br /&gt;
linux1/unix:10  MIT-MAGIC-COOKIE-1  6a84e4f2561f9b25858f7e2e4b969d60&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
su - user1&lt;br /&gt;
xauth add linux1/unix:10  MIT-MAGIC-COOKIE-1  6a84e4f2561f9b25858f7e2e4b969d60&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
alternate solution:&amp;lt;br&amp;gt;&lt;br /&gt;
You can either use the xauthority of the original ssh user or root&#039;s, probably best to do it your way. Note that if you don&#039;t go through root then this isn&#039;t required eg&lt;br /&gt;
&lt;br /&gt;
ssh -X -l user1 &amp;lt;server&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
su - user2&amp;lt;br&amp;gt;&lt;br /&gt;
su - user3&amp;lt;br&amp;gt;&lt;br /&gt;
su - user4&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
then xapps work fine for user4, the authority is propagated through the chain of logins. Once you switch user to root the chain is broken and you must manually create the xauthority.&lt;br /&gt;
&lt;br /&gt;
EDIT&lt;br /&gt;
This behaviour is controlled by pam_xauth, and apparently you can make it automatic for root to forward the xauth key to a user by creating a file /root/.xauth/export and adding the allowed users to it, see http://www.kernel.org/pub/linux/libs...pam_xauth.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TtSemiMuSelection&amp;diff=335</id>
		<title>TtSemiMuSelection</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TtSemiMuSelection&amp;diff=335"/>
		<updated>2015-08-26T12:29:24Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot;  obsolete page    {{TracNotice|{{PAGENAME}}}}&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
obsolete page&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TtBar_Analysis_Framework&amp;diff=334</id>
		<title>TtBar Analysis Framework</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TtBar_Analysis_Framework&amp;diff=334"/>
		<updated>2015-08-26T12:29:24Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; === How to get the code === The Top Quark Analysis code as we will develop in Brussels will be part of the Top-package in the CMSSW-software. Every stable version of this co...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=== How to get the code ===&lt;br /&gt;
The Top Quark Analysis code as we will develop in Brussels will be part of the Top-package in the CMSSW-software. Every stable version of this code should be accessible by means of the central CVS-server from CERN. However, for daily development, a CVS server is setup in Brussels. In order to get a recent version of the code, you should:&lt;br /&gt;
**login to the lxpub2 or lxpub3 machine&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  e.g: ssh -X username@lxpub2.iihe.ac.be&lt;br /&gt;
  &amp;lt;/pre&amp;gt; &lt;br /&gt;
**make sure the CMS software is sourced&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  setenv VO_CMS_SW_DIR /msa3/cmssoft&lt;br /&gt;
  source $VO_CMS_SW_DIR/cmsset_default.csh ## initialiseert de cms env&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
**get a recent CMSSW workspace (CMSSW_1_2_0) in your /beo5/&amp;lt;tt&amp;gt;username&amp;lt;/tt&amp;gt; directory&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  scramv1 p CMSSW CMSSW_1_2_0; cd CMSSW_1_2_0/src&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
**make a symlink to this latest version&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  in /beo5/&amp;lt;tt&amp;gt;uname&amp;lt;/tt&amp;gt;, type &#039;ln -s CMSSW_1_2_0 CMSSW&#039;&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
**set the path&#039;s to the Brussels&#039; CVS server&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  export CVS_RSH=/usr/bin/ssh&lt;br /&gt;
  export CVSROOT=:pserver:&amp;lt;tt&amp;gt;uname&amp;lt;/tt&amp;gt;@pc150.iihe.ac.be:/home/cvs/cms&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
**login to this server&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  cvs login (and type your normal lxpub password)&lt;br /&gt;
  &amp;lt;/pre&amp;gt; &lt;br /&gt;
  (these two lines might be put your .bashrc)&lt;br /&gt;
**get the Top -code from the Brussels&#039; CVS server&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  cvs co -r Top_1_0 Top&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
**compile the code&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  scramv1 b&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
**make your own library&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  look in e.g. TtObjectResolutions to have an example on how to do this&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
As you will notice, you will have to change all the PATH&#039;s in your header files when importing your code into the new framework. Another important difference is the extraction  of the KinFit package to a standalone library. Now &amp;lt;tt&amp;gt;scramv1 b&amp;lt;/tt&amp;gt; will as well take care of the compilation of this package.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
For the moment, only Jan Heyninck is supposed to commit changes to the code. In near future however, everyone should be able to do this. This means that if you would like to add a feature to the code, or you have found a bug, this is send on the top quark mailing list.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Get the code from global dbs&lt;br /&gt;
**make sure the CMS software is sourced&lt;br /&gt;
**set the path&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  setenv CVSROOT :pserver:anonymous@cmscvs.cern.ch:/cvs_server/repositories/CMSSW&lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
**login to this server&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  cvs login (and type following password: 98passwd)&lt;br /&gt;
  &amp;lt;/pre&amp;gt; &lt;br /&gt;
**go in the source directory and type&lt;br /&gt;
  &amp;lt;pre&amp;gt;&lt;br /&gt;
  cvs co TopQuarkAnalysis &lt;br /&gt;
  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Some useful cvs commands ===&lt;br /&gt;
still to add&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
A [http://w3.iihe.ac.be/~heyninck/ Ttbar doxygen documentation page] is available and similar to [http://cmsdoc.cern.ch/cms/sw/slc3_ia32_gcc323/cms/cmssw/CMSSW_1_2_0/doc/html/ the global CMSSW-software page]. This page is updated each night, and is meant to be a never ending work-in-progress, where everyone should contribute! To know how to add documentation, compare the content of the doc directories in the Top-code subdirectories with what you see on the doxygen page.&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Running your analysis on the locally produced Ttbar sample ===&lt;br /&gt;
If you want to run on the 200k of inclusive Ttbar reco data, please find the ROOT-files in:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Top/TtEventProducers/test/TtRecoFiles.cfi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you want to access the 200k of semileptonic Ttbar events, a list of ROOT-files can be found in:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Top/TtEventProducers/test/TtSemiEvents.cfi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(TODO)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Frequently Asked Questions ===&lt;br /&gt;
shoot!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TravNacToc&amp;diff=333</id>
		<title>TravNacToc</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TravNacToc&amp;diff=333"/>
		<updated>2015-08-26T12:29:24Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; Contents  *T2B ** Home    {{TracNotice|{{PAGENAME}}}}&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Contents&lt;br /&gt;
&lt;br /&gt;
*T2B&lt;br /&gt;
**[[WikiStart| Home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TracWorkflow&amp;diff=332</id>
		<title>TracWorkflow</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TracWorkflow&amp;diff=332"/>
		<updated>2015-08-26T12:29:24Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == The Trac Ticket Workflow System == TracGuideToc  The Trac issue database provides a configurable workflow.  === The Default Ticket Workflow === ==== Environments upgra...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== The Trac Ticket Workflow System ==&lt;br /&gt;
[[TracGuideToc]]&lt;br /&gt;
&lt;br /&gt;
The Trac issue database provides a configurable workflow.&lt;br /&gt;
&lt;br /&gt;
=== The Default Ticket Workflow ===&lt;br /&gt;
==== Environments upgraded from 0.10 ====&lt;br /&gt;
When you run &amp;lt;tt&amp;gt;trac-admin &amp;lt;env&amp;gt; upgrade&amp;lt;/tt&amp;gt;, your &amp;lt;tt&amp;gt;trac.ini&amp;lt;/tt&amp;gt; will be modified to include a &amp;lt;tt&amp;gt;[ticket-workflow]&amp;lt;/tt&amp;gt; section.&lt;br /&gt;
The workflow configured in this case is the original workflow, so that ticket actions will behave like they did in 0.10.&lt;br /&gt;
&lt;br /&gt;
Graphically, that looks like this:&lt;br /&gt;
&lt;br /&gt;
[[Image(htdocs:../common/guide/original-workflow.png)]]&lt;br /&gt;
&lt;br /&gt;
There are some significant &amp;quot;warts&amp;quot; in this; such as accepting a ticket sets it to &#039;assigned&#039; state, and assigning a ticket sets it to &#039;new&#039; state.  Perfectly obvious, right?&lt;br /&gt;
So you will probably want to migrate to &amp;quot;basic&amp;quot; workflow; [trac:source:trunk/contrib/workflow/migrate_original_to_basic.py contrib/workflow/migrate_original_to_basic.py] may be helpful.&lt;br /&gt;
&lt;br /&gt;
==== Environments created with 0.11 ====&lt;br /&gt;
When a new environment is created, a default workflow is configured in your trac.ini.  This workflow is the basic workflow (described in &amp;lt;tt&amp;gt;basic-workflow.ini&amp;lt;/tt&amp;gt;), which is somewhat different from the workflow of the 0.10 releases.&lt;br /&gt;
&lt;br /&gt;
Graphically, it looks like this:&lt;br /&gt;
&lt;br /&gt;
[[Image(htdocs:../common/guide/basic-workflow.png)]]&lt;br /&gt;
&lt;br /&gt;
=== Additional Ticket Workflows ===&lt;br /&gt;
&lt;br /&gt;
There are several example workflows provided in the Trac source tree; look in [trac:source:trunk/contrib/workflow contrib/workflow] for &amp;lt;tt&amp;gt;.ini&amp;lt;/tt&amp;gt; config sections.  One of those may be a good match for what you want. They can be pasted into the &amp;lt;tt&amp;gt;[ticket-workflow]&amp;lt;/tt&amp;gt; section of your &amp;lt;tt&amp;gt;trac.ini&amp;lt;/tt&amp;gt; file. However if you have existing tickets then there may be issues if those tickets have states that are not in the new workflow. &lt;br /&gt;
&lt;br /&gt;
Here are some [http://trac.edgewall.org/wiki/WorkFlow/Examples diagrams] of the above examples.&lt;br /&gt;
&lt;br /&gt;
=== Basic Ticket Workflow Customization ===&lt;br /&gt;
&lt;br /&gt;
Note: Ticket &amp;quot;statuses&amp;quot; or &amp;quot;states&amp;quot; are not separately defined. The states a ticket can be in are automatically generated by the transitions defined in a workflow. Therefore, creating a new ticket state simply requires defining a state transition in the workflow that starts or ends with that state.&lt;br /&gt;
&lt;br /&gt;
Create a &amp;lt;tt&amp;gt;[ticket-workflow]&amp;lt;/tt&amp;gt; section in &amp;lt;tt&amp;gt;trac.ini&amp;lt;/tt&amp;gt;.&lt;br /&gt;
Within this section, each entry is an action that may be taken on a ticket. &lt;br /&gt;
For example, consider the &amp;lt;tt&amp;gt;accept&amp;lt;/tt&amp;gt; action from &amp;lt;tt&amp;gt;simple-workflow.ini&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
accept = new,accepted -&amp;gt; accepted&lt;br /&gt;
accept.permissions = TICKET_MODIFY&lt;br /&gt;
accept.operations = set_owner_to_self&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The first line in this example defines the &amp;lt;tt&amp;gt;accept&amp;lt;/tt&amp;gt; action, along with the states the action is valid in (&amp;lt;tt&amp;gt;new&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;accepted&amp;lt;/tt&amp;gt;), and the new state of the ticket when the action is taken (&amp;lt;tt&amp;gt;accepted&amp;lt;/tt&amp;gt;).&lt;br /&gt;
The &amp;lt;tt&amp;gt;accept.permissions&amp;lt;/tt&amp;gt; line specifies what permissions the user must have to use this action.&lt;br /&gt;
The &amp;lt;tt&amp;gt;accept.operations&amp;lt;/tt&amp;gt; line specifies changes that will be made to the ticket in addition to the status change when this action is taken.  In this case, when a user clicks on &amp;lt;tt&amp;gt;accept&amp;lt;/tt&amp;gt;, the ticket owner field is updated to the logged in user.  Multiple operations may be specified in a comma separated list.&lt;br /&gt;
&lt;br /&gt;
The available operations are:&lt;br /&gt;
 - del_owner -- Clear the owner field.&lt;br /&gt;
 - set_owner -- Sets the owner to the selected or entered owner.&lt;br /&gt;
   - &#039;&#039;actionname&#039;&#039;&amp;lt;tt&amp;gt;.set_owner&amp;lt;/tt&amp;gt; may optionally be set to a comma delimited list or a single value.&lt;br /&gt;
 - set_owner_to_self -- Sets the owner to the logged in user.&lt;br /&gt;
 - del_resolution -- Clears the resolution field&lt;br /&gt;
 - set_resolution -- Sets the resolution to the selected value.&lt;br /&gt;
   - &#039;&#039;actionname&#039;&#039;&amp;lt;tt&amp;gt;.set_resolution&amp;lt;/tt&amp;gt; may optionally be set to a comma delimited list or a single value.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
resolve_new = new -&amp;gt; closed&lt;br /&gt;
resolve_new.name = resolve&lt;br /&gt;
resolve_new.operations = set_resolution&lt;br /&gt;
resolve_new.permissions = TICKET_MODIFY&lt;br /&gt;
resolve_new.set_resolution = invalid,wontfix&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
 - leave_status -- Displays &amp;quot;leave as &amp;lt;current status&amp;gt;&amp;quot; and makes no change to the ticket.&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Specifying conflicting operations (such as &amp;lt;tt&amp;gt;set_owner&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;del_owner&amp;lt;/tt&amp;gt;) has unspecified results.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
resolve_accepted = accepted -&amp;gt; closed&lt;br /&gt;
resolve_accepted.name = resolve&lt;br /&gt;
resolve_accepted.permissions = TICKET_MODIFY&lt;br /&gt;
resolve_accepted.operations = set_resolution&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, we see the &amp;lt;tt&amp;gt;.name&amp;lt;/tt&amp;gt; attribute used.  The action here is &amp;lt;tt&amp;gt;resolve_accepted&amp;lt;/tt&amp;gt;, but it will be presented to the user as &amp;lt;tt&amp;gt;resolve&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For actions that should be available in all states, &amp;lt;tt&amp;gt;*&amp;lt;/tt&amp;gt; may be used in place of the state.  The obvious example is the &amp;lt;tt&amp;gt;leave&amp;lt;/tt&amp;gt; action:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
leave = * -&amp;gt; *&lt;br /&gt;
leave.operations = leave_status&lt;br /&gt;
leave.default = 1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
This also shows the use of the &amp;lt;tt&amp;gt;.default&amp;lt;/tt&amp;gt; attribute.  This value is expected to be an integer, and the order in which the actions are displayed is determined by this value.  The action with the highest &amp;lt;tt&amp;gt;.default&amp;lt;/tt&amp;gt; value is listed first, and is selected by default.  The rest of the actions are listed in order of decreasing &amp;lt;tt&amp;gt;.default&amp;lt;/tt&amp;gt; values.&lt;br /&gt;
If not specified for an action, &amp;lt;tt&amp;gt;.default&amp;lt;/tt&amp;gt; is 0.  The value may be negative.&lt;br /&gt;
&lt;br /&gt;
There are a couple of hard-coded constraints to the workflow.  In particular, tickets are created with status &amp;lt;tt&amp;gt;new&amp;lt;/tt&amp;gt;, and tickets are expected to have a &amp;lt;tt&amp;gt;closed&amp;lt;/tt&amp;gt; state.  Further, the default reports/queries treat any state other than &amp;lt;tt&amp;gt;closed&amp;lt;/tt&amp;gt; as an open state.&lt;br /&gt;
&lt;br /&gt;
While creating or modifying a ticket workfow, &amp;lt;tt&amp;gt;contrib/workflow/workflow_parser.py&amp;lt;/tt&amp;gt; may be useful.  It can create &amp;lt;tt&amp;gt;.dot&amp;lt;/tt&amp;gt; files that [http://www.graphviz.org GraphViz] understands to provide a visual description of the workflow.&lt;br /&gt;
&lt;br /&gt;
This can be done as follows (your install path may be different).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd /var/local/trac_devel/contrib/workflow/&lt;br /&gt;
sudo ./showworkflow /srv/trac/PlannerSuite/conf/trac.ini&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
And then open up the resulting &amp;lt;tt&amp;gt;trac.pdf&amp;lt;/tt&amp;gt; file created by the script (it will be in the same directory as the &amp;lt;tt&amp;gt;trac.ini&amp;lt;/tt&amp;gt; file).&lt;br /&gt;
&lt;br /&gt;
An online copy of the workflow parser is available at http://foss.wush.net/cgi-bin/visual-workflow.pl&lt;br /&gt;
&lt;br /&gt;
After you have changed a workflow, you need to restart apache for the changes to take effect. This is important, because the changes will still show up when you run your script, but all the old workflow steps will still be there until the server is restarted.&lt;br /&gt;
&lt;br /&gt;
=== Example: Adding optional Testing with Workflow ===&lt;br /&gt;
&lt;br /&gt;
By adding the following to your [ticket-workflow] section of trac.ini you get optional testing.  When the ticket is in new, accepted or needs_work status you can choose to submit it for testing.  When it&#039;s in the testing status the user gets the option to reject it and send it back to needs_work, or pass the testing and send it along to closed.  If they accept it then it gets automatically marked as closed and the resolution is set to fixed.  Since all the old work flow remains, a ticket can skip this entire section.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
testing = new,accepted,needs_work,assigned,reopened -&amp;gt; testing&lt;br /&gt;
testing.name = Submit to reporter for testing&lt;br /&gt;
testing.permissions = TICKET_MODIFY&lt;br /&gt;
&lt;br /&gt;
reject = testing -&amp;gt; needs_work&lt;br /&gt;
reject.name = Failed testing, return to developer&lt;br /&gt;
&lt;br /&gt;
pass = testing -&amp;gt; closed&lt;br /&gt;
pass.name = Passes Testing&lt;br /&gt;
pass.operations = set_resolution&lt;br /&gt;
pass.set_resolution = fixed&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== How to combine the &amp;lt;tt&amp;gt;tracopt.ticket.commit_updater&amp;lt;/tt&amp;gt; with the testing workflow ====&lt;br /&gt;
&lt;br /&gt;
The [[source:trunk/tracopt/ticket/commit_updater.py|tracopt.ticket.commit_updater]] is the optional component that [[TracRepositoryAdmin#trac-post-commit-hook|replaces the old trac-post-commit-hook]], in Trac 0.12.&lt;br /&gt;
&lt;br /&gt;
By default it reacts on some keywords found in changeset message logs like &#039;&#039;close&#039;&#039;, &#039;&#039;fix&#039;&#039; etc. and performs the corresponding workflow action.&lt;br /&gt;
&lt;br /&gt;
If you have a more complex workflow, like the testing stage described above and you want the &#039;&#039;closes&#039;&#039; keyword to move the ticket to the &#039;&#039;testing&#039;&#039; status instead of the &#039;&#039;closed&#039;&#039; status, you need to adapt the code a bit. &lt;br /&gt;
&lt;br /&gt;
Have a look at the [[0.11/TracWorkflow#How-ToCombineSVNtrac-post-commit-hookWithTestWorkflow|Trac 0.11 recipe]] for the &amp;lt;tt&amp;gt;trac-post-commit-hook&amp;lt;/tt&amp;gt;, this will give you some ideas about how to modify the component.&lt;br /&gt;
&lt;br /&gt;
=== Example: Add simple optional generic review state ===&lt;br /&gt;
&lt;br /&gt;
Sometimes Trac is used in situations where &amp;quot;testing&amp;quot; can mean different things to different people so you may want to create an optional workflow state that is between the default workflow&#039;s &amp;lt;tt&amp;gt;assigned&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;closed&amp;lt;/tt&amp;gt; states, but does not impose implementation-specific details. The only new state you need to add for this is a &amp;lt;tt&amp;gt;reviewing&amp;lt;/tt&amp;gt; state. A ticket may then be &amp;quot;submitted for review&amp;quot; from any state that it can be reassigned. If a review passes, you can re-use the &amp;lt;tt&amp;gt;resolve&amp;lt;/tt&amp;gt; action to close the ticket, and if it fails you can re-use the &amp;lt;tt&amp;gt;reassign&amp;lt;/tt&amp;gt; action to push it back into the normal workflow.&lt;br /&gt;
&lt;br /&gt;
The new &amp;lt;tt&amp;gt;reviewing&amp;lt;/tt&amp;gt; state along with its associated &amp;lt;tt&amp;gt;review&amp;lt;/tt&amp;gt; action looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
review = new,assigned,reopened -&amp;gt; reviewing&lt;br /&gt;
review.operations = set_owner&lt;br /&gt;
review.permissions = TICKET_MODIFY&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, to integrate this with the default Trac 0.11 workflow, you also need to add the &amp;lt;tt&amp;gt;reviewing&amp;lt;/tt&amp;gt; state to the &amp;lt;tt&amp;gt;accept&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;resolve&amp;lt;/tt&amp;gt; actions, like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
accept = new,reviewing -&amp;gt; assigned&lt;br /&gt;
[…]&lt;br /&gt;
resolve = new,assigned,reopened,reviewing -&amp;gt; closed&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Optionally, you can also add a new action that allows you to change the ticket&#039;s owner without moving the ticket out of the &amp;lt;tt&amp;gt;reviewing&amp;lt;/tt&amp;gt; state. This enables you to reassign review work without pushing the ticket back to the &amp;lt;tt&amp;gt;new&amp;lt;/tt&amp;gt; status.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
reassign_reviewing = reviewing -&amp;gt; *&lt;br /&gt;
reassign_reviewing.name = reassign review&lt;br /&gt;
reassign_reviewing.operations = set_owner&lt;br /&gt;
reassign_reviewing.permissions = TICKET_MODIFY&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The full &amp;lt;tt&amp;gt;[ticket-workflow]&amp;lt;/tt&amp;gt; configuration will thus look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[ticket-workflow]&lt;br /&gt;
accept = new,reviewing -&amp;gt; assigned&lt;br /&gt;
accept.operations = set_owner_to_self&lt;br /&gt;
accept.permissions = TICKET_MODIFY&lt;br /&gt;
leave = * -&amp;gt; *&lt;br /&gt;
leave.default = 1&lt;br /&gt;
leave.operations = leave_status&lt;br /&gt;
reassign = new,assigned,reopened -&amp;gt; new&lt;br /&gt;
reassign.operations = set_owner&lt;br /&gt;
reassign.permissions = TICKET_MODIFY&lt;br /&gt;
reopen = closed -&amp;gt; reopened&lt;br /&gt;
reopen.operations = del_resolution&lt;br /&gt;
reopen.permissions = TICKET_CREATE&lt;br /&gt;
resolve = new,assigned,reopened,reviewing -&amp;gt; closed&lt;br /&gt;
resolve.operations = set_resolution&lt;br /&gt;
resolve.permissions = TICKET_MODIFY&lt;br /&gt;
review = new,assigned,reopened -&amp;gt; reviewing&lt;br /&gt;
review.operations = set_owner&lt;br /&gt;
review.permissions = TICKET_MODIFY&lt;br /&gt;
reassign_reviewing = reviewing -&amp;gt; *&lt;br /&gt;
reassign_reviewing.operations = set_owner&lt;br /&gt;
reassign_reviewing.name = reassign review&lt;br /&gt;
reassign_reviewing.permissions = TICKET_MODIFY&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example: Limit the resolution options for a new ticket ===&lt;br /&gt;
&lt;br /&gt;
The above resolve_new operation allows you to set the possible resolutions for a new ticket.  By modifying the existing resolve action and removing the new status from before the &amp;lt;tt&amp;gt;-&amp;gt;&amp;lt;/tt&amp;gt; we then get two resolve actions.  One with limited resolutions for new tickets, and then the regular one once a ticket is accepted.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
resolve_new = new -&amp;gt; closed&lt;br /&gt;
resolve_new.name = resolve&lt;br /&gt;
resolve_new.operations = set_resolution&lt;br /&gt;
resolve_new.permissions = TICKET_MODIFY&lt;br /&gt;
resolve_new.set_resolution = invalid,wontfix,duplicate&lt;br /&gt;
&lt;br /&gt;
resolve = assigned,accepted,reopened -&amp;gt; closed&lt;br /&gt;
resolve.operations = set_resolution&lt;br /&gt;
resolve.permissions = TICKET_MODIFY&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Advanced Ticket Workflow Customization ===&lt;br /&gt;
&lt;br /&gt;
If the customization above is not extensive enough for your needs, you can extend the workflow using plugins.  These plugins can provide additional operations for the workflow (like code_review), or implement side-effects for an action (such as triggering a build) that may not be merely simple state changes.  Look at [trac:source:trunk/sample-plugins/workflow sample-plugins/workflow] for a few simple examples to get started.&lt;br /&gt;
&lt;br /&gt;
But if even that is not enough, you can disable the ConfigurableTicketWorkflow component and create a plugin that completely replaces it.&lt;br /&gt;
&lt;br /&gt;
=== Adding Workflow States to Milestone Progress Bars ===&lt;br /&gt;
&lt;br /&gt;
If you add additional states to your workflow, you may want to customize your milestone progress bars as well.  See [TracIni#milestone-groups-section TracIni].&lt;br /&gt;
&lt;br /&gt;
=== some ideas for next steps ===&lt;br /&gt;
&lt;br /&gt;
New enhancement ideas for the workflow system should be filed as enhancement tickets against the &amp;lt;tt&amp;gt;ticket system&amp;lt;/tt&amp;gt; component.  If desired, add a single-line link to that ticket here.  Also look at the [th:wiki:AdvancedTicketWorkflowPlugin] as it provides experimental operations.&lt;br /&gt;
&lt;br /&gt;
If you have a response to the comments below, create an enhancement ticket, and replace the description below with a link to the ticket.&lt;br /&gt;
&lt;br /&gt;
*the &amp;quot;operation&amp;quot; could be on the nodes, possible operations are:&lt;br /&gt;
**&#039;&#039;&#039;preops&#039;&#039;&#039;: automatic, before entering the state/activity&lt;br /&gt;
**&#039;&#039;&#039;postops&#039;&#039;&#039;: automatic, when leaving the state/activity&lt;br /&gt;
**&#039;&#039;&#039;actions&#039;&#039;&#039;: can be chosen by the owner in the list at the bottom, and/or drop-down/pop-up together with the default actions of leaving the node on one of the arrows.&lt;br /&gt;
&#039;&#039;This appears to add complexity without adding functionality; please provide a detailed example where these additions allow something currently impossible to implement.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*operations could be anything: sum up the time used for the activity, or just write some statistical fields like &lt;br /&gt;
&#039;&#039;A workflow plugin can add an arbitrary workflow operation, so this is already possible.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*set_actor should be an operation allowing to set the owner, e.g. as a &amp;quot;preop&amp;quot;:&lt;br /&gt;
**either to a role, a person&lt;br /&gt;
**entered fix at define time, or at run time, e.g. out of a field, or select.&lt;br /&gt;
&#039;&#039;This is either duplicating the existing &amp;lt;tt&amp;gt;set_owner&amp;lt;/tt&amp;gt; operation, or needs to be clarified.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*Actions should be selectable based on the ticket type (different Workflows for different tickets)&lt;br /&gt;
&#039;&#039;Look into the [th:wiki:AdvancedTicketWorkflowPlugin]&#039;s &amp;lt;tt&amp;gt;triage&amp;lt;/tt&amp;gt; operation.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TracWiki&amp;diff=331</id>
		<title>TracWiki</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TracWiki&amp;diff=331"/>
		<updated>2015-08-26T12:29:23Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == The Trac Wiki Engine == TracGuideToc  Trac has a built-in wiki engine, used for text and documentation throughout the system. WikiFormatting is used in [[TitleIndex| w...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== The Trac Wiki Engine ==&lt;br /&gt;
[[TracGuideToc]]&lt;br /&gt;
&lt;br /&gt;
Trac has a built-in wiki engine, used for text and documentation throughout the system. WikiFormatting is used in [[TitleIndex| wiki pages]], [[TracTickets| tickets]], [[TracChangeset| check-in log messages]], [[TracRoadmap| milestone]] and [[TracReports| report]] descriptions.  It allows for formatted text and hyperlinks in and between all Trac modules.&lt;br /&gt;
&lt;br /&gt;
Editing wiki text is easy, using any web browser and a simple [WikiFormatting formatting system], 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 [WikiHtml HTML], [WikiRestructuredText reStructuredText] and [http://www.textism.com/tools/textile/ Textile] as alternative markup formats.&lt;br /&gt;
&lt;br /&gt;
The main goal of the wiki is to make editing text easier and &#039;&#039;encourage&#039;&#039; people to contribute and annotate text content for a project. Trac also provides a simple toolbar to make formatting text even easier.&lt;br /&gt;
&lt;br /&gt;
The wiki itself does not enforce any structure, but rather resembles a stack of empty sheets of paper, where you can organize information and documentation as you see fit, and later reorganize if necessary. &lt;br /&gt;
As contributing to a wiki is essentially building an hypertext, &lt;br /&gt;
general advice regarding HTML authoring apply here as well.&lt;br /&gt;
For example, the &#039;&#039;[http://www.w3.org/Provider/Style Style Guide for online hypertext]&#039;&#039; explains how to think about the&lt;br /&gt;
[http://www.w3.org/Provider/Style/Structure.html overall structure of a work] &lt;br /&gt;
and how to organize information [http://www.w3.org/Provider/Style/WithinDocument.html within each document]. One of the most important is “make your HTML page such that you can read it even if you don&#039;t follow any links.”&lt;br /&gt;
&lt;br /&gt;
Learn more about:&lt;br /&gt;
*WikiNewPage creation, which can be configured to start from a [PageTemplates page template]&lt;br /&gt;
*WikiFormatting rules, including advanced topics like WikiMacros and WikiProcessors&lt;br /&gt;
*How to use WikiPageNames and other forms of TracLinks which are used to refer in a precise way to any resource within Trac&lt;br /&gt;
&lt;br /&gt;
If you want to practice editing, please use the SandBox.&lt;br /&gt;
&lt;br /&gt;
Before saving your changes, you can &#039;&#039;Preview&#039;&#039; the page or &#039;&#039;Review the Changes&#039;&#039; you&#039;ve made.&lt;br /&gt;
You can get an automatic preview of the formatting as you type when you activate the &#039;&#039;Edit Side-by-side&#039;&#039; mode. &#039;&#039; There is a [[/TracIni#trac-section| configurable delay]] between when you make your edit and when the automatic preview will update.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Some more information about wikis on the web:&lt;br /&gt;
*A definition of [http://wikipedia.org/wiki/Wiki Wiki], in a famous  wiki encyclopedia&lt;br /&gt;
*The [http://c2.com/cgi/wiki?WikiHistory History] of the original wiki&lt;br /&gt;
*A wiki page explaining [http://www.usemod.com/cgi-bin/mb.pl?WhyWikiWorks why wiki works]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: TracGuide&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TracUpgrade&amp;diff=330</id>
		<title>TracUpgrade</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TracUpgrade&amp;diff=330"/>
		<updated>2015-08-26T12:29:23Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Upgrade Instructions == TracGuideToc  === Instructions ===  Typically, there are seven steps involved in upgrading to a newer version of Trac:  ==== 1. Update the Trac...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Upgrade Instructions ==&lt;br /&gt;
[[TracGuideToc]]&lt;br /&gt;
&lt;br /&gt;
=== Instructions ===&lt;br /&gt;
&lt;br /&gt;
Typically, there are seven steps involved in upgrading to a newer version of Trac:&lt;br /&gt;
&lt;br /&gt;
==== 1. Update the Trac Code ==== #UpdatetheTracCode&lt;br /&gt;
&lt;br /&gt;
Get the new version as described in TracInstall, or your operating system specific procedure.&lt;br /&gt;
&lt;br /&gt;
If you already have a 0.11 version of Trac installed via &amp;lt;tt&amp;gt;easy_install&amp;lt;/tt&amp;gt;, it might be the easiest to use it also to upgrade you Trac installation.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# easy_install --upgrade Trac==0.12b1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(once beta1 is released, that is)&lt;br /&gt;
&lt;br /&gt;
If you do a manual (not operating system specific) upgrade, you should also stop any running Trac server before the installation. Doing &amp;quot;hot&amp;quot; upgrades is not advised, especially not on Windows ([trac:ticket:7625 #7265]).&lt;br /&gt;
&lt;br /&gt;
You may also want to remove the pre-existing Trac code by deleting the &amp;lt;tt&amp;gt;trac&amp;lt;/tt&amp;gt; directory from the Python &amp;lt;tt&amp;gt;lib/site-packages&amp;lt;/tt&amp;gt; directory, or remove Trac .eggs from former versions.&lt;br /&gt;
The location of the site-packages directory depends on the operating system, and the location in which Python was installed. However, the following locations are common:&lt;br /&gt;
*on Linux: &amp;lt;tt&amp;gt;/usr/lib/python2.X/site-packages&amp;lt;/tt&amp;gt;&lt;br /&gt;
*on Windows: &amp;lt;tt&amp;gt;C:\Python2.X\lib\site-packages&amp;lt;/tt&amp;gt;&lt;br /&gt;
*on MacOSX: &amp;lt;tt&amp;gt;/Library/Python/2.X/site-packages&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may also want to remove the Trac &amp;lt;tt&amp;gt;cgi-bin&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;htdocs&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;templates&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;wiki-default&amp;lt;/tt&amp;gt; directories that are commonly found in a directory called &amp;lt;tt&amp;gt;share/trac&amp;lt;/tt&amp;gt; (the exact location depends on your platform).&lt;br /&gt;
&lt;br /&gt;
This cleanup is not mandatory, but it makes it easier to troubleshoot issues later on, as you won&#039;t waste your time looking at code or templates from a previous release that are not being used anymore... As usual, make a backup before actually deleting things.&lt;br /&gt;
&lt;br /&gt;
==== 2. Upgrade the Trac Environment ==== #UpgradetheTracEnvironment&lt;br /&gt;
&lt;br /&gt;
Environment upgrades are not necessary for minor version releases unless otherwise noted. &lt;br /&gt;
&lt;br /&gt;
After restarting, Trac should show the instances which need a manual upgrade via the automated upgrade scripts to ease the pain. These scripts are run via [TracAdmin trac-admin]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
trac-admin /path/to/projenv upgrade&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will do nothing if the environment is already up-to-date.&lt;br /&gt;
&lt;br /&gt;
Note that a backup of your database will be performed automatically prior to the upgrade. &lt;br /&gt;
This feature is relatively new for the PostgreSQL or MySQL database backends, so if it fails, you will have to backup the database manually. Then, to perform the actual upgrade, run:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
trac-admin /path/to/projenv upgrade --no-backup&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== 3. Update the Trac Documentation ==== #UpdatetheTracDocumentation&lt;br /&gt;
&lt;br /&gt;
Every [TracEnvironment Trac environment] includes a copy of the Trac documentation for the installed version. As you probably want to keep the included documentation in sync with the installed version of Trac, [TracAdmin trac-admin] provides a command to upgrade the documentation:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
trac-admin /path/to/projenv wiki upgrade&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that this procedure will of course leave your &amp;lt;tt&amp;gt;WikiStart&amp;lt;/tt&amp;gt; page intact.&lt;br /&gt;
&lt;br /&gt;
==== 4. Resynchronize the Trac Environment Against the Source Code Repository ====&lt;br /&gt;
&lt;br /&gt;
Each [TracEnvironment Trac environment] must be resynchronized against the source code repository in order to avoid errors such as &amp;quot;[http://trac.edgewall.org/ticket/6120 No changeset ??? in the repository]&amp;quot; while browsing the source through the Trac interface:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
trac-admin /path/to/projenv repository resync &#039;*&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== 5. Refresh static resources ====&lt;br /&gt;
&lt;br /&gt;
If you&#039;ve setup web server to give out static resources directly (accessed using /chrome/ URL) then you need to refresh them using the same command:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
trac-admin /path/to/env deploy /deploy/path&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
this will extract static resources and CGI scripts (trac.wsgi, etc) from new Trac version and its plugins into &amp;lt;tt&amp;gt;/deploy/path&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Some web browsers cache the CSS and Javascript file in a strong way, so you&#039;ll perhaps need to refresh the cache of the browsers by a force reload (and tell your users to do so!).&lt;br /&gt;
&lt;br /&gt;
==== 6. Steps specific to a given Trac version  ====&lt;br /&gt;
==== Upgrading from Trac 0.11 to Trac 0.12 ====&lt;br /&gt;
===== Python 2.3 no longer supported =====&lt;br /&gt;
The minimum supported version of python is now 2.4&lt;br /&gt;
&lt;br /&gt;
===== SQLite v3.x required =====&lt;br /&gt;
SQLite v2.x is no longer supported, if you happen to still use a Trac database using this format, you&#039;ll need to convert it to SQLite v3.x first. See [trac:PySqlite#UpgradingSQLitefrom2.xto3.x] for details.&lt;br /&gt;
&lt;br /&gt;
===== Multiple Repository Support =====&lt;br /&gt;
If you plan to add more repositories to your Trac instance, as this is now possible with the newly introduced multiple repository support, please refer to TracRepositoryAdmin#Migration.&lt;br /&gt;
&lt;br /&gt;
This can be of interest even if you only have one repository, as there&#039;s now a way to avoid the potentially costly resync check at every request.&lt;br /&gt;
&lt;br /&gt;
===== Improved repository synchronization =====&lt;br /&gt;
In addition to supporting multiple repositories, a new more efficient method for synchronizing Trac and your repositories was implemented.&lt;br /&gt;
&lt;br /&gt;
While you can keep the same synchronization as in 0.11 adding the post-commit hook as outlined in TracRepositoryAdmin#Synchronization and TracRepositoryAdmin#ExplicitSync will allow more efficient synchronization and is more or less required for multiple repositories.&lt;br /&gt;
&lt;br /&gt;
Note that if you were using the &amp;lt;tt&amp;gt;trac-post-commit-hook&amp;lt;/tt&amp;gt;, &#039;&#039;you&#039;re strongly advised to upgrade it&#039;&#039; to the new hook documented in the above references, as the old hook will not work with anything else than the default repository and even for this case, it won&#039;t trigger the appropriate notifications.&lt;br /&gt;
&lt;br /&gt;
==== Upgrading from Trac 0.10 to Trac 0.11 ====&lt;br /&gt;
===== Site Templates and Styles =====&lt;br /&gt;
The templating engine has changed in 0.11 to Genshi, please look at TracInterfaceCustomization for more information.&lt;br /&gt;
&lt;br /&gt;
If you are using custom CSS styles or modified templates in the &amp;lt;tt&amp;gt;templates&amp;lt;/tt&amp;gt; directory of the TracEnvironment, you will need to convert them to the Genshi way of doing things. To continue to use your style sheet, follow the instructions at TracInterfaceCustomization#SiteAppearance.&lt;br /&gt;
&lt;br /&gt;
===== Trac Macros, Plugins =====&lt;br /&gt;
The Trac macros will need to be adapted, as the old-style wiki-macros are not supported anymore (due to the drop of [trac:ClearSilver ClearSilver] and the HDF); they need to be converted to the new-style macros, see WikiMacros. When they are converted to the new style, they need to be placed into the plugins directory instead and not wiki-macros, which is no longer scanned for macros or plugins.&lt;br /&gt;
&lt;br /&gt;
===== For FCGI/WSGI/CGI users =====&lt;br /&gt;
For those who run Trac under the CGI environment, run this command in order to obtain the trac.*gi file:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
trac-admin /path/to/env deploy /deploy/directory/path&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create a deploy directory with the following two subdirectories: &amp;lt;tt&amp;gt;cgi-bin&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;htdocs&amp;lt;/tt&amp;gt;. Then update your Apache configuration file &amp;lt;tt&amp;gt;httpd.conf&amp;lt;/tt&amp;gt; with this new &amp;lt;tt&amp;gt;trac.cgi&amp;lt;/tt&amp;gt; location and &amp;lt;tt&amp;gt;htdocs&amp;lt;/tt&amp;gt; location.&lt;br /&gt;
&lt;br /&gt;
===== Web Admin plugin integrated =====&lt;br /&gt;
If you had the webadmin plugin installed, you can uninstall it as it is part of the Trac code base since 0.11.&lt;br /&gt;
&lt;br /&gt;
==== 7. Restart the Web Server ==== #RestarttheWebServer&lt;br /&gt;
&lt;br /&gt;
If you are not running [[TracCgi| CGI]], reload the new Trac code by restarting your web server.&lt;br /&gt;
&lt;br /&gt;
=== Known Issues ===&lt;br /&gt;
&lt;br /&gt;
==== parent dir ====&lt;br /&gt;
If you use a trac parent env configuration and one of the plugins in one child does not work, none of the children work.&lt;br /&gt;
&lt;br /&gt;
==== Wiki Upgrade ====&lt;br /&gt;
&amp;lt;tt&amp;gt;trac-admin&amp;lt;/tt&amp;gt; will not delete or remove default wiki pages that were present in a previous version but are no longer in the new version.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Changing Database Backend ===&lt;br /&gt;
==== SQLite to PostgreSQL ====&lt;br /&gt;
&lt;br /&gt;
The [http://trac-hacks.org/wiki/SqliteToPgScript sqlite2pg] script on [http://trac-hacks.org trac-hacks.org] has been written to assist in migrating a SQLite database to a PostgreSQL database&lt;br /&gt;
&lt;br /&gt;
=== Older Versions ===&lt;br /&gt;
&lt;br /&gt;
For upgrades from versions older than Trac 0.10, refer first to [trac:wiki:0.10/TracUpgrade#SpecificVersions].&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
See also: TracGuide, TracInstall&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TracUnicode&amp;diff=329</id>
		<title>TracUnicode</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TracUnicode&amp;diff=329"/>
		<updated>2015-08-26T12:29:23Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Unicode Support in Trac == TracGuideToc  Trac stores all text using UTF-8 encoding, including text in tickets and wiki pages. Internal processing of text uses true Uni...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Unicode Support in Trac ==&lt;br /&gt;
[[TracGuideToc]]&lt;br /&gt;
&lt;br /&gt;
Trac stores all text using UTF-8 encoding, including text in tickets and wiki pages. Internal processing of text uses true Unicode representations.&lt;br /&gt;
&lt;br /&gt;
As such, it supports most (all?) commonly used character encodings.&lt;br /&gt;
&lt;br /&gt;
If your encoding is not UTF-8, you can use [[TracModPython| mod_python]] to handle it.  For example, if your local encoding is gbk, you can set &lt;br /&gt;
   default_charset = gbk&lt;br /&gt;
in trac.ini.&lt;br /&gt;
&lt;br /&gt;
You also must make sure that your [trac:DatabaseBackend database backend] stores its data in UTF-8; otherwise strange things will happen.&lt;br /&gt;
&lt;br /&gt;
To convert your database to UTF-8, the easiest way is to dump the database, convert the dump into UTF-8 and then import the converted dump back into the database.&amp;lt;br&amp;gt;&lt;br /&gt;
You can use [http://www.gnu.org/software/libiconv/documentation/libiconv/iconv.1.html iconv] to convert the dump.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
==== Arabic ====&lt;br /&gt;
تراك يقوم بحفظ كل الكلمات باستخدام صيغة UTF-8، بما في ذلك الكلمات المستخدمة في صفحات  التيكت والويكي.&lt;br /&gt;
&lt;br /&gt;
==== Bulgarian ====&lt;br /&gt;
Българският език работи ли?&lt;br /&gt;
&lt;br /&gt;
==== Česky ====&lt;br /&gt;
Čeština v kódování UTF-8, žádný problém.&lt;br /&gt;
&lt;br /&gt;
==== Chinese ====&lt;br /&gt;
Traditional: 繁體中文, 漢字測試; Simplified: 简体中文，汉字测试&lt;br /&gt;
&lt;br /&gt;
==== Croatian ====&lt;br /&gt;
Ako podržava srpski i slovenski mora podržavati i Hrvatski - čćžšđ ČĆŽŠĐ &lt;br /&gt;
&lt;br /&gt;
==== English ====&lt;br /&gt;
Yes indeed, Trac supports English. Fully.&lt;br /&gt;
&lt;br /&gt;
==== Français ====&lt;br /&gt;
Il est possible d&#039;écrire en Français : à, ç, û, ...&lt;br /&gt;
&lt;br /&gt;
==== German ====&lt;br /&gt;
Trac-Wiki muß auch deutsche Umlaute richtig anzeigen: ö, ä, ü, Ä, Ö, Ü; und das scharfe ß&lt;br /&gt;
&lt;br /&gt;
==== Greek ====&lt;br /&gt;
Τα Ελληνικά υποστηρίζονται επαρκώς επίσης.&lt;br /&gt;
&lt;br /&gt;
==== Hebrew ====&lt;br /&gt;
אני יכול לאכול זכוכית וזה לא מזיק לי&lt;br /&gt;
&lt;br /&gt;
==== Hindi ====&lt;br /&gt;
अब हिन्दी में।&lt;br /&gt;
&lt;br /&gt;
==== Hungarian ====&lt;br /&gt;
Árvíztűrő tükörfúrógép&lt;br /&gt;
&lt;br /&gt;
==== Icelandic ====&lt;br /&gt;
Ævar sagði við ömmu sína: Sjáðu hvað ég er stór!&lt;br /&gt;
&lt;br /&gt;
==== Japanese ====&lt;br /&gt;
漢字 ひらがな カタカナ ﾊﾝｶｸｶﾅ 日本語試験&lt;br /&gt;
&lt;br /&gt;
==== Korean ====&lt;br /&gt;
이번에는 한글로 써보겠습니다. 잘 보이나요? 한글&lt;br /&gt;
&lt;br /&gt;
==== Latvian ====&lt;br /&gt;
&lt;br /&gt;
Latviešu valoda arī strādā!&lt;br /&gt;
&lt;br /&gt;
==== Lithuanian ====&lt;br /&gt;
Sudalyvaukime ir mes. Ar veikia lietuviškos raidės? ąčęėįšųūž ĄČĘĖĮŠŲŪŽ Žinoma, kad veikia :)&lt;br /&gt;
Kas tie mes?&lt;br /&gt;
&lt;br /&gt;
==== Persian (Farsi) ====&lt;br /&gt;
این یک متن فارسی است ولی امکان نوشتن مستقیم فارسی نیست چون حالت متن از راست به چپ و جود ندارد برای فارسی نوشتن باید از HTML استفاده کنید.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#html&lt;br /&gt;
&amp;lt;div dir=&amp;quot;rtl&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
این نمونه یک متن از راست به چپ فارسی است که در HTML نوشته شده تا اعداد 12345 و حروف لاتین ABCDEF در محل خودشان نمایش داده شوند.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#html&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Polish ====&lt;br /&gt;
Pchnąć w tę łódź jeża lub osiem skrzyń fig; Nocna gżegżółka zawsze dzienną przekuka.&lt;br /&gt;
&lt;br /&gt;
==== Portuguese ====&lt;br /&gt;
É possível guardar caracteres especias da língua portuguesa, incluindo o símbolo da moeda européia &#039;€&#039;, trema &#039;ü&#039;, crase &#039;à&#039;, agudos &#039;áéíóú&#039;, circunflexos &#039;âêô&#039;, til &#039;ãõ&#039;, cedilha &#039;ç&#039;, ordinais &#039;ªº&#039;, grau &#039;°¹²³&#039;.&lt;br /&gt;
&lt;br /&gt;
==== Russian ====&lt;br /&gt;
Проверка русского языка: кажется работает... И буква &amp;quot;ё&amp;quot; есть...&lt;br /&gt;
&lt;br /&gt;
==== Serbian ====&lt;br /&gt;
Podržan, uprkos činjenici da se za njegovo pisanje koriste чак два алфабета.&lt;br /&gt;
&lt;br /&gt;
==== Slovenian ====&lt;br /&gt;
Ta suhi škafec pušča vodo že od nekdaj!&lt;br /&gt;
&lt;br /&gt;
==== Spanish ====&lt;br /&gt;
Esto es un pequeño texto en Español, donde el veloz murciélago hindú comía cardlllo y kiwi&lt;br /&gt;
&lt;br /&gt;
==== Swedish ====&lt;br /&gt;
Räven raskar över isen med luva på.&lt;br /&gt;
&lt;br /&gt;
==== Thai ====&lt;br /&gt;
Trac แสดงภาษาไทยได้อย่างถูกต้อง!&lt;br /&gt;
&lt;br /&gt;
==== Ukrainian ====&lt;br /&gt;
Перевірка української мови...&lt;br /&gt;
&lt;br /&gt;
==== Urdu ====&lt;br /&gt;
ٹریک اردو بھی سپورٹ کرتا ہے۔&lt;br /&gt;
&lt;br /&gt;
==== Vietnamese ====&lt;br /&gt;
Viết tiếng Việt cũng được.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TracTimeline&amp;diff=328</id>
		<title>TracTimeline</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TracTimeline&amp;diff=328"/>
		<updated>2015-08-26T12:29:23Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == The Trac Timeline == TracGuideToc  The timeline provides a historic view of the project in a single report.  It lists all Trac events that have occurred in chronologic...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== The Trac Timeline ==&lt;br /&gt;
[[TracGuideToc]]&lt;br /&gt;
&lt;br /&gt;
The timeline provides a historic view of the project in a single report.&lt;br /&gt;
&lt;br /&gt;
It lists all Trac events that have occurred in chronological order, a&lt;br /&gt;
brief description of each event and if applicable, the person responsible for&lt;br /&gt;
the change.&lt;br /&gt;
&lt;br /&gt;
The timeline lists these kinds of events:&lt;br /&gt;
*&#039;&#039;&#039;Wiki page events&#039;&#039;&#039; — Creation and changes&lt;br /&gt;
*&#039;&#039;&#039;Ticket events&#039;&#039;&#039; — Creation and resolution/closing (and optionally other changes)&lt;br /&gt;
*&#039;&#039;&#039;Source code changes &#039;&#039;&#039; — Repository check-ins&lt;br /&gt;
*&#039;&#039;&#039;Milestone &#039;&#039;&#039; — Milestone completed&lt;br /&gt;
&lt;br /&gt;
Each event entry provides a hyperlink to the specific event in question, who authored the change as well as&lt;br /&gt;
a brief excerpt of the actual comment or text, if available.&lt;br /&gt;
&lt;br /&gt;
It is possible to filter the displayed events with the various filters in the option panel:&lt;br /&gt;
*&#039;&#039;View changes from&#039;&#039; — the date from which to start displaying events (current date if empty). Events that occurred after this date will not be shown, only those that occurred before that date.&lt;br /&gt;
*&#039;&#039;and X days back&#039;&#039; — how many days backwards in time to get events.&lt;br /&gt;
*&#039;&#039;done by&#039;&#039; — the author of an event. It accepts a space-separated list of authors for which events should be included. Alternatively, if the author names are prefixed by a &amp;quot;-&amp;quot; character, then the events having those authors will be excluded, and all the others included. Single or double quotes can be used for specifying author names containing space characters. &#039;&#039;(since 0.12)&#039;&#039;&lt;br /&gt;
*&#039;&#039;Changesets in all repositories&#039;&#039; — if you have more than one repository connected to your Trac project, then you can filter the output so events from specific repositories are not shown. &#039;&#039;(since 0.12)&#039;&#039;&lt;br /&gt;
*&#039;&#039;Milestones reached&#039;&#039; — display or hide milestones reached.&lt;br /&gt;
*&#039;&#039;Opened and closed tickets&#039;&#039; — display or hide ticket open or close events.&lt;br /&gt;
*&#039;&#039;Wiki changes&#039;&#039; — display or hide Wiki change events.&lt;br /&gt;
&lt;br /&gt;
See TracIni&#039;s [[TracIni#timeline-section| &amp;quot;[timeline]] section&amp;quot;] for timeline configuration options.&lt;br /&gt;
&lt;br /&gt;
=== RSS Support ===&lt;br /&gt;
&lt;br /&gt;
The Timeline module supports subscription using RSS 2.0 syndication. To subscribe to project events, click the orange &#039;&#039;&#039;XML&#039;&#039;&#039; icon at the bottom of the page. See TracRss for more information on RSS support in Trac.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: TracGuide, TracIni, TracWiki, WikiFormatting, TracRss, TracNotification&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TracTicketsCustomFields&amp;diff=327</id>
		<title>TracTicketsCustomFields</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TracTicketsCustomFields&amp;diff=327"/>
		<updated>2015-08-26T12:29:22Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == 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....&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Custom Ticket Fields ==&lt;br /&gt;
Trac supports adding custom, user-defined fields to the ticket module. Using custom fields, you can add typed, site-specific properties to tickets.&lt;br /&gt;
&lt;br /&gt;
=== Configuration ===&lt;br /&gt;
Configuring custom ticket fields is done in the [[TracIni| trac.ini]] file. All field definitions should be under a section named &amp;lt;tt&amp;gt;[ticket-custom]&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The syntax of each field definition is:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 FIELD_NAME = TYPE&lt;br /&gt;
 (FIELD_NAME.OPTION = VALUE)&lt;br /&gt;
 ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The example below should help to explain the syntax.&lt;br /&gt;
&lt;br /&gt;
==== Available Field Types and Options ====&lt;br /&gt;
*&#039;&#039;&#039;text&#039;&#039;&#039;: A simple (one line) text field.&lt;br /&gt;
**label: Descriptive label.&lt;br /&gt;
**value: Default value.&lt;br /&gt;
**order: Sort order placement. (Determines relative placement in forms with respect to other custom fields.)&lt;br /&gt;
**format: Either &amp;lt;tt&amp;gt;plain&amp;lt;/tt&amp;gt; for plain text or &amp;lt;tt&amp;gt;wiki&amp;lt;/tt&amp;gt; to interpret the content as WikiFormatting. (&#039;&#039;since 0.11.3&#039;&#039;)&lt;br /&gt;
*&#039;&#039;&#039;checkbox&#039;&#039;&#039;: A boolean value check box.&lt;br /&gt;
**label: Descriptive label.&lt;br /&gt;
**value: Default value (0 or 1).&lt;br /&gt;
**order: Sort order placement.&lt;br /&gt;
*&#039;&#039;&#039;select&#039;&#039;&#039;: Drop-down select box. Uses a list of values.&lt;br /&gt;
**label: Descriptive label.&lt;br /&gt;
**options: List of values, separated by &#039;&#039;&#039;|&#039;&#039;&#039; (vertical pipe).&lt;br /&gt;
**value: Default value (one of the values from options).&lt;br /&gt;
**order: Sort order placement.&lt;br /&gt;
*&#039;&#039;&#039;radio&#039;&#039;&#039;: Radio buttons. Essentially the same as &#039;&#039;&#039;select&#039;&#039;&#039;.&lt;br /&gt;
**label: Descriptive label.&lt;br /&gt;
**options: List of values, separated by &#039;&#039;&#039;|&#039;&#039;&#039; (vertical pipe).&lt;br /&gt;
**value: Default value (one of the values from options).&lt;br /&gt;
**order: Sort order placement.&lt;br /&gt;
*&#039;&#039;&#039;textarea&#039;&#039;&#039;: Multi-line text area.&lt;br /&gt;
**label: Descriptive label.&lt;br /&gt;
**value: Default text.&lt;br /&gt;
**cols: Width in columns.&lt;br /&gt;
**rows: Height in lines.&lt;br /&gt;
**order: Sort order placement.&lt;br /&gt;
**format: Either &amp;lt;tt&amp;gt;plain&amp;lt;/tt&amp;gt; for plain text or &amp;lt;tt&amp;gt;wiki&amp;lt;/tt&amp;gt; to interpret the content as WikiFormatting. (&#039;&#039;since 0.11.3&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
==== Sample Config ====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[ticket-custom]&lt;br /&gt;
&lt;br /&gt;
test_one = text&lt;br /&gt;
test_one.label = Just a text box&lt;br /&gt;
&lt;br /&gt;
test_two = text&lt;br /&gt;
test_two.label = Another text-box&lt;br /&gt;
test_two.value = Default [mailto:joe@nospam.com owner]&lt;br /&gt;
test_two.format = wiki&lt;br /&gt;
&lt;br /&gt;
test_three = checkbox&lt;br /&gt;
test_three.label = Some checkbox&lt;br /&gt;
test_three.value = 1&lt;br /&gt;
&lt;br /&gt;
test_four = select&lt;br /&gt;
test_four.label = My selectbox&lt;br /&gt;
test_four.options = one|two|third option|four&lt;br /&gt;
test_four.value = two&lt;br /&gt;
&lt;br /&gt;
test_five = radio&lt;br /&gt;
test_five.label = Radio buttons are fun&lt;br /&gt;
test_five.options = uno|dos|tres|cuatro|cinco&lt;br /&gt;
test_five.value = dos&lt;br /&gt;
&lt;br /&gt;
test_six = textarea&lt;br /&gt;
test_six.label = This is a large textarea&lt;br /&gt;
test_six.value = Default text&lt;br /&gt;
test_six.cols = 60&lt;br /&gt;
test_six.rows = 30&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note: To make entering an option for a &amp;lt;tt&amp;gt;select&amp;lt;/tt&amp;gt; type field optional, specify a leading &amp;lt;tt&amp;gt;|&amp;lt;/tt&amp;gt; in the &amp;lt;tt&amp;gt;fieldname.options&amp;lt;/tt&amp;gt; option.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Reports Involving Custom Fields ====&lt;br /&gt;
&lt;br /&gt;
Custom ticket fields are stored in the &amp;lt;tt&amp;gt;ticket_custom&amp;lt;/tt&amp;gt; table, not in the &amp;lt;tt&amp;gt;ticket&amp;lt;/tt&amp;gt; table. So to display the values from custom fields in a report, you will need a join on the 2 tables. Let&#039;s use an example with a custom ticket field called &amp;lt;tt&amp;gt;progress&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#sql&lt;br /&gt;
SELECT p.value AS &amp;lt;u&amp;gt;color&amp;lt;/u&amp;gt;,&lt;br /&gt;
   id AS ticket, summary, owner, c.value AS progress&lt;br /&gt;
  FROM ticket t, enum p, ticket_custom c&lt;br /&gt;
  WHERE status IN (&#039;assigned&#039;) AND t.id = c.ticket AND c.name = &#039;progress&#039;&lt;br /&gt;
AND p.name = t.priority AND p.type = &#039;priority&#039;&lt;br /&gt;
  ORDER BY p.value&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039; that this will only show tickets that have progress set in them, which is &#039;&#039;&#039;not the same as showing all tickets&#039;&#039;&#039;. If you created this custom ticket field &#039;&#039;after&#039;&#039; you have already created some tickets, they will not have that field defined, and thus they will never show up on this ticket query. If you go back and modify those tickets, the field will be defined, and they will appear in the query. If that&#039;s all you want, you&#039;re set.&lt;br /&gt;
&lt;br /&gt;
However, if you want to show all ticket entries (with progress defined and without), you need to use a &amp;lt;tt&amp;gt;JOIN&amp;lt;/tt&amp;gt; for every custom field that is in the query.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#sql&lt;br /&gt;
SELECT p.value AS &amp;lt;u&amp;gt;color&amp;lt;/u&amp;gt;,&lt;br /&gt;
   id AS ticket, summary, component, version, milestone, severity,&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!&#039; *&#039; ELSE owner END) AS owner,&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
   time AS created,&lt;br /&gt;
   changetime AS _changetime, description AS _description,&lt;br /&gt;
   reporter AS _reporter,&lt;br /&gt;
  (CASE WHEN c.value = &#039;0&#039; THEN &#039;None&#039; ELSE c.value END) AS progress&lt;br /&gt;
  FROM ticket t&lt;br /&gt;
     LEFT OUTER JOIN ticket_custom c ON (t.id = c.ticket AND c.name = &#039;progress&#039;)&lt;br /&gt;
     JOIN enum p ON p.name = t.priority AND p.type=&#039;priority&#039;&lt;br /&gt;
  WHERE status IN (&#039;new&#039;, &#039;assigned&#039;, &#039;reopened&#039;)&lt;br /&gt;
  ORDER BY p.value, milestone, severity, time&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note in particular the &amp;lt;tt&amp;gt;LEFT OUTER JOIN&amp;lt;/tt&amp;gt; statement here.&lt;br /&gt;
&lt;br /&gt;
==== Updating the database ====&lt;br /&gt;
&lt;br /&gt;
As noted above, any tickets created before a custom field has been defined will not have a value for that field. Here&#039;s a bit of SQL (tested with SQLite) that you can run directly on the Trac database to set an initial value for custom ticket fields. Inserts the default value of &#039;None&#039; into a custom field called &#039;request_source&#039; for all tickets that have no existing value:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#sql&lt;br /&gt;
INSERT INTO ticket_custom&lt;br /&gt;
   (ticket, name, value)&lt;br /&gt;
   SELECT &lt;br /&gt;
      id AS ticket,&lt;br /&gt;
      &#039;request_source&#039; AS name,&lt;br /&gt;
      &#039;None&#039; AS value&lt;br /&gt;
   FROM ticket &lt;br /&gt;
   WHERE id NOT IN (&lt;br /&gt;
      SELECT ticket FROM ticket_custom&lt;br /&gt;
   );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you added multiple custom fields at different points in time, you should be more specific in the subquery on table &amp;lt;tt&amp;gt;ticket&amp;lt;/tt&amp;gt; by adding the exact custom field name to the query:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#sql&lt;br /&gt;
INSERT INTO ticket_custom&lt;br /&gt;
   (ticket, name, value)&lt;br /&gt;
   SELECT &lt;br /&gt;
      id AS ticket,&lt;br /&gt;
      &#039;request_source&#039; AS name,&lt;br /&gt;
      &#039;None&#039; AS value&lt;br /&gt;
   FROM ticket &lt;br /&gt;
   WHERE id NOT IN (&lt;br /&gt;
      SELECT ticket FROM ticket_custom WHERE name = &#039;request_source&#039;&lt;br /&gt;
   );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: TracTickets, TracIni&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TracTickets&amp;diff=326</id>
		<title>TracTickets</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TracTickets&amp;diff=326"/>
		<updated>2015-08-26T12:29:22Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == The Trac Ticket System == TracGuideToc  The Trac ticket database provides simple but effective tracking of issues and bugs within a project.  As the central project ma...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== The Trac Ticket System ==&lt;br /&gt;
[[TracGuideToc]]&lt;br /&gt;
&lt;br /&gt;
The Trac ticket database provides simple but effective tracking of issues and bugs within a project.&lt;br /&gt;
&lt;br /&gt;
As the central project management element of Trac, tickets are used for &#039;&#039;&#039;project tasks&#039;&#039;&#039;, &#039;&#039;&#039;feature requests&#039;&#039;&#039;, &#039;&#039;&#039;bug reports&#039;&#039;&#039; and &#039;&#039;&#039;software support issues&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
As with the TracWiki, this subsystem has been designed with the goal of making user contribution and participation as simple as possible. It should be as easy as possible to report bugs, ask questions and suggest improvements.&lt;br /&gt;
&lt;br /&gt;
An issue is assigned to a person who must resolve it or reassign the ticket to someone else.&lt;br /&gt;
All tickets can be edited, annotated, assigned, prioritized and discussed at any time.&lt;br /&gt;
&lt;br /&gt;
=== Ticket Fields ===&lt;br /&gt;
&lt;br /&gt;
A  ticket contains the following information attributes:&lt;br /&gt;
 &lt;br /&gt;
*&#039;&#039;&#039;Reporter&#039;&#039;&#039; — The author of the ticket.&lt;br /&gt;
*&#039;&#039;&#039;Type&#039;&#039;&#039; — The nature of the ticket (for example, defect or enhancement request)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Component&#039;&#039;&#039; — The project module or subsystem this ticket concerns.&lt;br /&gt;
*&#039;&#039;&#039;Version&#039;&#039;&#039; — Version of the project that this ticket pertains to.&lt;br /&gt;
*&#039;&#039;&#039;Keywords&#039;&#039;&#039; — Keywords that a ticket is marked with.  Useful for searching and report generation.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Priority&#039;&#039;&#039; — The importance of this issue, ranging from &#039;&#039;trivial&#039;&#039; to &#039;&#039;blocker&#039;&#039;.&lt;br /&gt;
*&#039;&#039;&#039;Milestone&#039;&#039;&#039; — When this issue should be resolved at the latest.&lt;br /&gt;
*&#039;&#039;&#039;Assigned to/Owner&#039;&#039;&#039; — Principal person responsible for handling the issue.&lt;br /&gt;
*&#039;&#039;&#039;Cc&#039;&#039;&#039; — A comma-separated list of other users or E-Mail addresses to notify. &#039;&#039;Note that this does not imply responsiblity or any other policy.&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
*&#039;&#039;&#039;Resolution&#039;&#039;&#039; — Reason for why a ticket was closed. One of &amp;lt;tt&amp;gt;fixed&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;invalid&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;wontfix&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;duplicate&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;worksforme&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*&#039;&#039;&#039;Status&#039;&#039;&#039; — What is the current status? One of &amp;lt;tt&amp;gt;new&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;assigned&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;closed&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;reopened&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*&#039;&#039;&#039;Summary&#039;&#039;&#039; — A brief description summarizing the problem or issue.&lt;br /&gt;
*&#039;&#039;&#039;Description&#039;&#039;&#039; — The body of the ticket. A good description should be specific, descriptive and to the point.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Versions of Trac prior to 0.9 did not have the &#039;&#039;type&#039;&#039; field, but instead provided a &#039;&#039;severity&#039;&#039; field and different default values for the &#039;&#039;priority&#039;&#039; field. This change was done to simplify the ticket model by removing the somewhat blurry distinction between &#039;&#039;priority&#039;&#039; and &#039;&#039;severity&#039;&#039;. However, the old model is still available if you prefer it: just add/modify the default values of the &#039;&#039;priority&#039;&#039; and &#039;&#039;severity&#039;&#039;, and optionally hide the &#039;&#039;type&#039;&#039; field by removing all the possible values through [[TracAdmin| trac-admin]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; the [trac:TicketTypes type], [trac:TicketComponent component], version, priority and severity fields can be managed with [[TracAdmin| trac-admin]] or with the [trac:WebAdmin WebAdmin] plugin.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Description of the builtin &#039;&#039;priority&#039;&#039; values is available at [trac:TicketTypes#Whyistheseverityfieldgone TicketTypes]&lt;br /&gt;
&lt;br /&gt;
=== Changing and Commenting Tickets ===&lt;br /&gt;
&lt;br /&gt;
Once a ticket has been entered into Trac, you can at any time change the&lt;br /&gt;
information by &#039;&#039;&#039;annotating&#039;&#039;&#039; the bug. This means changes and comments to&lt;br /&gt;
the ticket are logged as a part of the ticket itself.&lt;br /&gt;
&lt;br /&gt;
When viewing a ticket, the history of changes will appear below the main ticket area.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;In the Trac project, we use ticket comments to discuss issues and tasks. This makes&lt;br /&gt;
understanding the motivation behind a design- or implementation choice easier,&lt;br /&gt;
when returning to it later.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; An important feature is being able to use TracLinks and&lt;br /&gt;
WikiFormatting in ticket descriptions and comments. Use TracLinks to refer to&lt;br /&gt;
other issues, changesets or files to make your ticket more specific and easier&lt;br /&gt;
to understand.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; See TracNotification for how to configure email notifications of ticket changes.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; See TracWorkflow for information about the state transitions (ticket lifecycle), and how this workflow can be customized.&lt;br /&gt;
&lt;br /&gt;
=== Default Values for Drop-Down Fields ===&lt;br /&gt;
&lt;br /&gt;
The option selected by default for the various drop-down fields can be set in [[TracIni| trac.ini]], in the &amp;lt;tt&amp;gt;[ticket]&amp;lt;/tt&amp;gt; section:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;default_component&amp;lt;/tt&amp;gt;: Name of the component selected by default&lt;br /&gt;
*&amp;lt;tt&amp;gt;default_milestone&amp;lt;/tt&amp;gt;: Name of the default milestone&lt;br /&gt;
*&amp;lt;tt&amp;gt;default_priority&amp;lt;/tt&amp;gt;: Default priority value&lt;br /&gt;
*&amp;lt;tt&amp;gt;default_severity&amp;lt;/tt&amp;gt;: Default severity value&lt;br /&gt;
*&amp;lt;tt&amp;gt;default_type&amp;lt;/tt&amp;gt;: Default ticket type&lt;br /&gt;
*&amp;lt;tt&amp;gt;default_version&amp;lt;/tt&amp;gt;: Name of the default version&lt;br /&gt;
*&amp;lt;tt&amp;gt;default_owner&amp;lt;/tt&amp;gt;: Name of the default owner, &#039;&#039;if no owner for the component has been set&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
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.  Some of these can be chosen through the [trac:WebAdmin WebAdmin] plugin in the &amp;quot;Ticket System&amp;quot; section (others in the &amp;quot;trac.ini&amp;quot; section).  The default owner for a ticket will be the component owner, if that is set, or &amp;lt;tt&amp;gt;default_owner&amp;lt;/tt&amp;gt;, if not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Hiding Fields and Adding Custom Fields ===&lt;br /&gt;
&lt;br /&gt;
Many of the default ticket fields can be hidden from the ticket web interface simply by removing all the possible values through [[TracAdmin| trac-admin]]. This of course only applies to drop-down fields, such as &#039;&#039;type&#039;&#039;, &#039;&#039;priority&#039;&#039;, &#039;&#039;severity&#039;&#039;, &#039;&#039;component&#039;&#039;, &#039;&#039;version&#039;&#039; and &#039;&#039;milestone&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Trac also lets you add your own custom ticket fields. See TracTicketsCustomFields for more information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Assign-to as Drop-Down List ===&lt;br /&gt;
&lt;br /&gt;
If the list of possible ticket owners is finite, you can change the &#039;&#039;assign-to&#039;&#039; ticket field from a text input to a drop-down list. This is done by setting the &amp;lt;tt&amp;gt;restrict_owner&amp;lt;/tt&amp;gt; option of the &amp;lt;tt&amp;gt;[ticket]&amp;lt;/tt&amp;gt; section in [[TracIni| trac.ini]] to “true”. In that case, Trac will use the list of all users who have accessed the project to populate the drop-down field.&lt;br /&gt;
&lt;br /&gt;
To appear in the dropdown list, a user needs be registered with the project, &#039;&#039;i.e.&#039;&#039; a user session should exist in the database. Such an entry is automatically created in the database the first time the user submits a change in the project, for example when editing the user&#039;s details in the &#039;&#039;Settings&#039;&#039; page, or simply by authenticating if the user has a login. Also, the user must have &amp;lt;tt&amp;gt;TICKET_MODIFY&amp;lt;/tt&amp;gt; [TracPermissions permissions].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; See [http://pacopablo.com/wiki/pacopablo/blog/set-assign-to-drop-down Populating Assign To Drop Down] on how to add user entries at database level&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note 2:&#039;&#039;&#039; If you need serious flexibility and aren&#039;t afraid of a little plugin coding of your own, see [http://trac-hacks.org/wiki/FlexibleAssignToPlugin FlexibleAssignTo] (disclosure: I&#039;m the author)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note 3:&#039;&#039;&#039; Activating this option may cause some performance degradation, read more about this in the [trac:TracPerformance#Configuration Trac performance] page.&lt;br /&gt;
&lt;br /&gt;
=== Preset Values for New Tickets ===&lt;br /&gt;
&lt;br /&gt;
To create a link to the new-ticket form filled with preset values, you need to call the &amp;lt;tt&amp;gt;/newticket?&amp;lt;/tt&amp;gt; URL with variable=value separated by &amp;amp;. &lt;br /&gt;
&lt;br /&gt;
Possible variables are :&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;type&#039;&#039;&#039; — The type droplist&lt;br /&gt;
*&#039;&#039;&#039;reporter&#039;&#039;&#039; — Name or email of the reporter&lt;br /&gt;
*&#039;&#039;&#039;summary&#039;&#039;&#039; — Summary line for the ticket&lt;br /&gt;
*&#039;&#039;&#039;description&#039;&#039;&#039; — Long description of the ticket&lt;br /&gt;
*&#039;&#039;&#039;component&#039;&#039;&#039; — The component droplist&lt;br /&gt;
*&#039;&#039;&#039;version&#039;&#039;&#039; — The version droplist&lt;br /&gt;
*&#039;&#039;&#039;severity&#039;&#039;&#039; — The severity droplist&lt;br /&gt;
*&#039;&#039;&#039;keywords&#039;&#039;&#039; — The keywords &lt;br /&gt;
*&#039;&#039;&#039;priority&#039;&#039;&#039; — The priority droplist&lt;br /&gt;
*&#039;&#039;&#039;milestone&#039;&#039;&#039; — The milestone droplist&lt;br /&gt;
*&#039;&#039;&#039;owner&#039;&#039;&#039; — The person responsible for the ticket&lt;br /&gt;
*&#039;&#039;&#039;cc&#039;&#039;&#039; — The list of emails for notifying about the ticket change&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example:&#039;&#039;&#039; &#039;&#039;/trac/newticket?summary=Compile%20Error&amp;amp;version=1.0&amp;amp;component=gui&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also:  TracGuide, TracWiki, TracTicketsCustomFields, TracNotification, TracReports, TracQuery&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TracSyntaxColoring&amp;diff=325</id>
		<title>TracSyntaxColoring</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TracSyntaxColoring&amp;diff=325"/>
		<updated>2015-08-26T12:29:22Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Syntax Coloring of Source Code == Trac supports language-specific syntax highlighting of source code within wiki formatted text in [WikiProcessors#CodeHighlightingSupport ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Syntax Coloring of Source Code ==&lt;br /&gt;
Trac supports language-specific syntax highlighting of source code within wiki formatted text in [WikiProcessors#CodeHighlightingSupport wiki processors] blocks and in the [TracBrowser repository browser].&lt;br /&gt;
&lt;br /&gt;
To do this, Trac uses external libraries with support for a great number of programming languages.&lt;br /&gt;
&lt;br /&gt;
Currently Trac supports syntax coloring using one or more of the following packages:&lt;br /&gt;
&lt;br /&gt;
*[http://pygments.pocoo.org/ Pygments], by far the preferred system, as it covers a wide range of programming languages and other structured texts and is actively supported&lt;br /&gt;
*[http://www.codento.com/people/mtr/genscript/ GNU Enscript], commonly available on Unix but somewhat unsupported on Windows&lt;br /&gt;
*[http://silvercity.sourceforge.net/ SilverCity], legacy system, some versions can be [http://trac.edgewall.org/wiki/TracFaq#why-is-my-css-code-not-being-highlighted-even-though-i-have-silvercity-installed problematic]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To activate syntax coloring, simply install either one (or more) of these packages (see [#ExtraSoftware] section below).&lt;br /&gt;
If none of these packages is available, Trac will display the data as plain text. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== About Pygments ====&lt;br /&gt;
&lt;br /&gt;
Starting with trac 0.11 [http://pygments.org/ pygments] will be the new default highlighter. It&#039;s a highlighting library implemented in pure python, very fast, easy to extend and [http://pygments.org/docs/ well documented].&lt;br /&gt;
&lt;br /&gt;
The Pygments default style can specified in the [TracIni#mimeviewer-section mime-viewer] section of trac.ini. The default style can be overridden by setting a Style preference on the [/prefs/pygments preferences page]. &lt;br /&gt;
&lt;br /&gt;
It&#039;s very likely that the list below is outdated because the list of supported pygments lexers is growing weekly. Just have a look at the page of [http://pygments.org/docs/lexers/ supported lexers] on the pygments webpage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Syntax Coloring Support ===&lt;br /&gt;
&lt;br /&gt;
=== Known MIME Types&lt;br /&gt;
&lt;br /&gt;
[[KnownMimeTypes]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== List of Languages Supported, by Highlighter #language-supported&lt;br /&gt;
&lt;br /&gt;
This list is only indicative.&lt;br /&gt;
&lt;br /&gt;
{| border=1 class=&amp;quot;simple&amp;quot;&lt;br /&gt;
!                 &lt;br /&gt;
!= SilverCity   =&lt;br /&gt;
!= Enscript      =&lt;br /&gt;
!= Pygments =&lt;br /&gt;
|- &lt;br /&gt;
|  Ada             &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  Asm             &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  Apache Conf     &lt;br /&gt;
|                  &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  ASP             &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  C               &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  C#              &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓ &amp;lt;sup&amp;gt;[#a1 (1)]&amp;lt;/sup&amp;gt;  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  C++             &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Java            &lt;br /&gt;
|   ✓ &amp;lt;sup&amp;gt;[#a2 (2)]&amp;lt;/sup&amp;gt;  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Awk             &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  Boo             &lt;br /&gt;
|                  &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  CSS             &lt;br /&gt;
|   ✓              &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Python Doctests &lt;br /&gt;
|                  &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Diff            &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Eiffel          &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  Elisp           &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  Fortran         &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓ &amp;lt;sup&amp;gt;[#a1 (1)]&amp;lt;/sup&amp;gt;  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Haskell         &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Genshi          &lt;br /&gt;
|                  &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  HTML            &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  IDL             &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  INI             &lt;br /&gt;
|                  &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Javascript      &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Lua             &lt;br /&gt;
|                  &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  m4              &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  Makefile        &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Mako            &lt;br /&gt;
|                  &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Matlab &amp;lt;sup&amp;gt;[#a3 (3)]&amp;lt;/sup&amp;gt;  &lt;br /&gt;
|              &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Mygthy          &lt;br /&gt;
|                  &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Objective-C     &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  OCaml           &lt;br /&gt;
|                  &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Pascal          &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Perl            &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  PHP             &lt;br /&gt;
|   ✓              &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  PSP             &lt;br /&gt;
|   ✓              &lt;br /&gt;
|                  &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  Pyrex           &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  Python          &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Ruby            &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓ &amp;lt;sup&amp;gt;[#a1 (1)]&amp;lt;/sup&amp;gt;  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Scheme          &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Shell           &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Smarty          &lt;br /&gt;
|                  &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  SQL             &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Troff           &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  TCL             &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  Tex             &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  Verilog         &lt;br /&gt;
|   ✓ &amp;lt;sup&amp;gt;[#a2 (2)]&amp;lt;/sup&amp;gt;  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  VHDL            &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  Visual Basic    &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|   ✓  &lt;br /&gt;
|- &lt;br /&gt;
|  VRML            &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓              &lt;br /&gt;
|      &lt;br /&gt;
|- &lt;br /&gt;
|  XML             &lt;br /&gt;
|   ✓              &lt;br /&gt;
|                  &lt;br /&gt;
|   ✓  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;[=#a1 (1)] Not included in the Enscript distribution.  Additional highlighting rules can be obtained for&lt;br /&gt;
[http://neugierig.org/software/ruby/ Ruby],&lt;br /&gt;
[http://wiki.hasno.info/index.php/Csharp.st C#],&lt;br /&gt;
[http://wiki.hasno.info/index.php/F90.st Fortran 90x/2003]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;[=#a2 (2)] since Silvercity 0.9.7 released on 2006-11-23&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;[=#a3 (3)] By default &amp;lt;tt&amp;gt;.m&amp;lt;/tt&amp;gt; files are considered Objective-C files. In order to treat &amp;lt;tt&amp;gt;.m&amp;lt;/tt&amp;gt; files as MATLAB files, add &amp;quot;text/matlab:m&amp;quot; to the &amp;quot;mime_map&amp;quot; setting in the [[TracIni#mimeviewer-section| &amp;quot;[mimeviewer]] section of trac.ini&amp;quot;].&lt;br /&gt;
&lt;br /&gt;
=== Extra Software ===&lt;br /&gt;
*GNU Enscript -- http://directory.fsf.org/GNU/enscript.html&lt;br /&gt;
*GNU Enscript for Windows -- http://gnuwin32.sourceforge.net/packages/enscript.htm&lt;br /&gt;
*SilverCity -- http://silvercity.sf.net/&lt;br /&gt;
*Pygments -- http://pygments.org/&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: WikiProcessors, WikiFormatting, TracWiki, TracBrowser&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TracSupport&amp;diff=324</id>
		<title>TracSupport</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TracSupport&amp;diff=324"/>
		<updated>2015-08-26T12:29:22Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Trac Support ==  Like in most [http://www.opensource.org/ open source projects], &amp;quot;free&amp;quot; Trac support is available primarily through the community itself, mainly through th...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Trac Support ==&lt;br /&gt;
&lt;br /&gt;
Like in most [http://www.opensource.org/ open source projects], &amp;quot;free&amp;quot; Trac support is available primarily through the community itself, mainly through the [trac:MailingList mailing list] and the project wiki.&lt;br /&gt;
&lt;br /&gt;
There is also an [trac:IrcChannel IRC channel], where people might be able to help out. Much of the &#039;live&#039; development discussions also happen there.&lt;br /&gt;
&lt;br /&gt;
Before you start a new support query, make sure you&#039;ve done the appropriate searching:&lt;br /&gt;
*in the project&#039;s [trac:TracFaq FAQ]&lt;br /&gt;
*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&amp;amp;do_set_user_css=t Mailing List]&lt;br /&gt;
*in the Trac ticket system, using either a [http://trac.edgewall.org/search?q=&amp;amp;ticket=on&amp;amp;wiki=on full search] or a [http://trac.edgewall.org/query?summary=~&amp;amp;keywords=~ ticket query].&lt;br /&gt;
&lt;br /&gt;
Please &#039;&#039;&#039;don&#039;t&#039;&#039;&#039; create a ticket in this Trac for asking a support question about Trac. Only use it when you face a &#039;&#039;real&#039;&#039; and &#039;&#039;new&#039;&#039; bug in Trac, and do so only after having read the [trac:NewTicketGuidelines NewTicketGuidelines]. The more a bug report or enhancement request complies with those guidelines, the higher the chances are that it will be fixed or implemented promptly!&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: [trac:MailingList MailingList], [trac:TracTroubleshooting TracTroubleshooting], [trac:CommercialServices CommercialServices]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TracStandalone&amp;diff=323</id>
		<title>TracStandalone</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TracStandalone&amp;diff=323"/>
		<updated>2015-08-26T12:29:21Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Tracd ==  Tracd is a lightweight standalone Trac web server. It can be used in a variety of situations, from a test or development server to a multiprocess setup behind an...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Tracd ==&lt;br /&gt;
&lt;br /&gt;
Tracd is a lightweight standalone Trac web server.&lt;br /&gt;
It can be used in a variety of situations, from a test or development server to a multiprocess setup behind another web server used as a load balancer.&lt;br /&gt;
&lt;br /&gt;
=== Pros ===&lt;br /&gt;
&lt;br /&gt;
*Fewer dependencies: You don&#039;t need to install apache or any other web-server.&lt;br /&gt;
*Fast: Should be almost as fast as the [[TracModPython| mod_python]] version (and much faster than the [[TracCgi| CGI]]), even more so since version 0.12 where the HTTP/1.1 version of the protocol is enabled by default&lt;br /&gt;
*Automatic reloading: For development, Tracd can be used in &#039;&#039;auto_reload&#039;&#039; mode, which will automatically restart the server whenever you make a change to the code (in Trac itself or in a plugin).&lt;br /&gt;
&lt;br /&gt;
=== Cons ===&lt;br /&gt;
&lt;br /&gt;
*Fewer features: Tracd implements a very simple web-server and is not as configurable or as scalable as Apache httpd.&lt;br /&gt;
*No native HTTPS support: [http://www.rickk.com/sslwrap/ sslwrap] can be used instead,&lt;br /&gt;
   or [http://trac.edgewall.org/wiki/STunnelTracd stunnel -- a tutorial on how to use stunnel with tracd] or Apache with mod_proxy.&lt;br /&gt;
&lt;br /&gt;
=== Usage examples ===&lt;br /&gt;
&lt;br /&gt;
A single project on port 8080. (http://localhost:8080/)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ tracd -p 8080 /path/to/project&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Stricly speaking this will make your Trac accessible to everybody from your network rather than &#039;&#039;localhost only&#039;&#039;. To truly limit it use &#039;&#039;--hostname&#039;&#039; option.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ tracd --hostname=localhost -p 8080 /path/to/project&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
With more than one project. (http://localhost:8080/project1/ and http://localhost:8080/project2/)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ tracd -p 8080 /path/to/project1 /path/to/project2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can&#039;t have the last portion of the path identical between the projects since Trac uses that name to keep the URLs of the&lt;br /&gt;
different projects unique. So if you use &amp;lt;tt&amp;gt;/project1/path/to&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;/project2/path/to&amp;lt;/tt&amp;gt;, you will only see the second project.&lt;br /&gt;
&lt;br /&gt;
An alternative way to serve multiple projects is to specify a parent directory in which each subdirectory is a Trac project, using the &amp;lt;tt&amp;gt;-e&amp;lt;/tt&amp;gt; option. The example above could be rewritten:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ tracd -p 8080 -e /path/to&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To exit the server on Windows, be sure to use &amp;lt;tt&amp;gt;CTRL-BREAK&amp;lt;/tt&amp;gt; -- using &amp;lt;tt&amp;gt;CTRL-C&amp;lt;/tt&amp;gt; will leave a Python process running in the background.&lt;br /&gt;
&lt;br /&gt;
=== Installing as a Windows Service ===&lt;br /&gt;
&lt;br /&gt;
==== Option 1 ====&lt;br /&gt;
To install as a Windows service, get the [http://www.google.com/search?q=srvany.exe SRVANY] utility and run:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 C:\path\to\instsrv.exe tracd C:\path\to\srvany.exe&lt;br /&gt;
 reg add HKLM\SYSTEM\CurrentControlSet\Services\tracd\Parameters /v Application /d &amp;quot;\&amp;quot;C:\path\to\python.exe\&amp;quot; \&amp;quot;C:\path\to\python\scripts\tracd-script.py\&amp;quot; &amp;lt;your tracd parameters&amp;gt;&amp;quot;&lt;br /&gt;
 net start tracd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DO NOT&#039;&#039;&#039; use &amp;lt;tt&amp;gt;tracd.exe&amp;lt;/tt&amp;gt;.  Instead register &amp;lt;tt&amp;gt;python.exe&amp;lt;/tt&amp;gt; directly with &amp;lt;tt&amp;gt;tracd-script.py&amp;lt;/tt&amp;gt; as a parameter.  If you use &amp;lt;tt&amp;gt;tracd.exe&amp;lt;/tt&amp;gt;, it will spawn the python process without SRVANY&#039;s knowledge.  This python process will survive a &amp;lt;tt&amp;gt;net stop tracd&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
If you want tracd to start automatically when you boot Windows, do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 sc config tracd start= auto&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The spacing here is important.&lt;br /&gt;
&lt;br /&gt;
For Windows 7 User, srvany.exe may not be an option, so you can use [http://www.google.com/search?q=winserv.exe WINSERV] utility and run:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;C:\path\to\winserv.exe&amp;quot; install tracd -displayname &amp;quot;tracd&amp;quot; -start auto &amp;quot;C:\path\to\python.exe&amp;quot; c:\path\to\python\scripts\tracd-script.py &amp;lt;your tracd parameters&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
net start tracd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Option 2 ====&lt;br /&gt;
&lt;br /&gt;
Use [http://trac-hacks.org/wiki/WindowsServiceScript WindowsServiceScript], available at [http://trac-hacks.org/ Trac Hacks]. Installs, removes, starts, stops, etc. your Trac service.&lt;br /&gt;
&lt;br /&gt;
=== Using Authentication ===&lt;br /&gt;
&lt;br /&gt;
Using tracd with Apache .htpasswd files:&lt;br /&gt;
&lt;br /&gt;
To create a .htpasswd file using htpasswd:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ htpasswd -c /path/to/env/.htpasswd username&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
then for additional users:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ htpasswd /path/to/env/.htpasswd username2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
then for starting the tracd (on windows skip the &amp;quot;=&amp;quot; after --basic-auth):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tracd -p 8080 --basic-auth=environmentname,/fullpath/environmentname/.htpasswd,/fullpath/environmentname /fullpath/environmentname&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;environmentname&amp;lt;/tt&amp;gt; is the directory name of the Trac project folder, as opposed to &amp;lt;tt&amp;gt;/fullpath/environmentname&amp;lt;/tt&amp;gt; which is the full path to the Trac project folder. See below for another example.&lt;br /&gt;
&lt;br /&gt;
Tracd provides support for both Basic and Digest authentication. The default is to use Digest; to use Basic authentication, replace &amp;lt;tt&amp;gt;--auth&amp;lt;/tt&amp;gt; with &amp;lt;tt&amp;gt;--basic-auth&amp;lt;/tt&amp;gt; in the examples below. (You must still specify a dialogic &amp;quot;realm&amp;quot;, which can be an empty string by trailing the BASICAUTH with a comma.)&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;Support for Basic authentication was added in version 0.9.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The general format for using authentication is (replace &amp;lt;tt&amp;gt;--auth&amp;lt;/tt&amp;gt; with &amp;lt;tt&amp;gt;--basic-auth&amp;lt;/tt&amp;gt; if you want to use Basic auth):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ tracd -p port --auth=&amp;quot;base_project_dir,password_file_path,realm&amp;quot; project_path&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;base_project_dir&#039;&#039;&#039;: the base directory of the project specified as follows:&lt;br /&gt;
**when serving multiple projects: &#039;&#039;relative&#039;&#039; to the &amp;lt;tt&amp;gt;project_path&amp;lt;/tt&amp;gt;&lt;br /&gt;
**when serving only a single project (&amp;lt;tt&amp;gt;-s&amp;lt;/tt&amp;gt;): the name of the project directory&lt;br /&gt;
 Don&#039;t use an absolute path here as this won&#039;t work. &#039;&#039;Note:&#039;&#039; This parameter is case-sensitive even for environments on Windows.&lt;br /&gt;
*&#039;&#039;&#039;password_file_path&#039;&#039;&#039;: path to the password file&lt;br /&gt;
*&#039;&#039;&#039;realm&#039;&#039;&#039;: the realm name (can be anything)&lt;br /&gt;
*&#039;&#039;&#039;project_path&#039;&#039;&#039;: path of the project&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ tracd -p 8080 \&lt;br /&gt;
   --auth=&amp;quot;project1,/path/to/passwordfile,mycompany.com&amp;quot; /path/to/project1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Of course, the password file can be be shared so that it is used for more than one project:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ tracd -p 8080 \&lt;br /&gt;
   --auth=&amp;quot;project1,/path/to/passwordfile,mycompany.com&amp;quot; \&lt;br /&gt;
   --auth=&amp;quot;project2,/path/to/passwordfile,mycompany.com&amp;quot; \&lt;br /&gt;
   /path/to/project1 /path/to/project2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another way to share the password file is to specify &amp;quot;*&amp;quot; for the project name:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ tracd -p 8080 \&lt;br /&gt;
   --auth=&amp;quot;*,/path/to/users.htdigest,mycompany.com&amp;quot; \&lt;br /&gt;
   /path/to/project1 /path/to/project2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Using a htpasswd password file ====&lt;br /&gt;
This section describes how to use &amp;lt;tt&amp;gt;tracd&amp;lt;/tt&amp;gt; with Apache .htpasswd files.&lt;br /&gt;
&lt;br /&gt;
To create a .htpasswd file use Apache&#039;s &amp;lt;tt&amp;gt;htpasswd&amp;lt;/tt&amp;gt; command (see [#GeneratingPasswordsWithoutApache below] for a method to create these files without using Apache):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ sudo htpasswd -c /path/to/env/.htpasswd username&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
then for additional users:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ sudo htpasswd /path/to/env/.htpasswd username2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then to start &amp;lt;tt&amp;gt;tracd&amp;lt;/tt&amp;gt; run something like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ tracd -p 8080 --basic-auth=&amp;quot;projectdirname,/fullpath/environmentname/.htpasswd,realmname&amp;quot; /fullpath/environmentname&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ tracd -p 8080 --basic-auth=&amp;quot;testenv,/srv/tracenv/testenv/.htpasswd,My Test Env&amp;quot; /srv/tracenv/testenv&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note:&#039;&#039; You might need to pass &amp;quot;-m&amp;quot; as a parameter to htpasswd on some platforms (OpenBSD).&lt;br /&gt;
&lt;br /&gt;
==== Using a htdigest password file ====&lt;br /&gt;
&lt;br /&gt;
If you have Apache available, you can use the htdigest command to generate the password file. Type &#039;htdigest&#039; to get some usage instructions, or read [http://httpd.apache.org/docs/2.0/programs/htdigest.html this page] from the Apache manual to get precise instructions.  You&#039;ll be prompted for a password to enter for each user that you create.  For the name of the password file, you can use whatever you like, but if you use something like &amp;lt;tt&amp;gt;users.htdigest&amp;lt;/tt&amp;gt; it will remind you what the file contains. As a suggestion, put it in your &amp;lt;projectname&amp;gt;/conf folder along with the [TracIni trac.ini] file.&lt;br /&gt;
&lt;br /&gt;
Note that you can start tracd without the --auth argument, but if you click on the &#039;&#039;Login&#039;&#039; link you will get an error.&lt;br /&gt;
&lt;br /&gt;
==== Generating Passwords Without Apache ====&lt;br /&gt;
&lt;br /&gt;
If you don&#039;t have Apache available, you can use this simple Python script to generate your passwords:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#python&lt;br /&gt;
from optparse import OptionParser&lt;br /&gt;
# The md5 module is deprecated in Python 2.5&lt;br /&gt;
try:&lt;br /&gt;
    from hashlib import md5&lt;br /&gt;
except ImportError:&lt;br /&gt;
    from md5 import md5&lt;br /&gt;
realm = &#039;trac&#039;&lt;br /&gt;
&lt;br /&gt;
# build the options&lt;br /&gt;
usage = &amp;quot;usage: %prog [options]&amp;quot;&lt;br /&gt;
parser = OptionParser(usage=usage)&lt;br /&gt;
parser.add_option(&amp;quot;-u&amp;quot;, &amp;quot;--username&amp;quot;,action=&amp;quot;store&amp;quot;, dest=&amp;quot;username&amp;quot;, type = &amp;quot;string&amp;quot;,&lt;br /&gt;
                  help=&amp;quot;the username for whom to generate a password&amp;quot;)&lt;br /&gt;
parser.add_option(&amp;quot;-p&amp;quot;, &amp;quot;--password&amp;quot;,action=&amp;quot;store&amp;quot;, dest=&amp;quot;password&amp;quot;, type = &amp;quot;string&amp;quot;,&lt;br /&gt;
                  help=&amp;quot;the password to use&amp;quot;)&lt;br /&gt;
parser.add_option(&amp;quot;-r&amp;quot;, &amp;quot;--realm&amp;quot;,action=&amp;quot;store&amp;quot;, dest=&amp;quot;realm&amp;quot;, type = &amp;quot;string&amp;quot;,&lt;br /&gt;
                  help=&amp;quot;the realm in which to create the digest&amp;quot;)&lt;br /&gt;
(options, args) = parser.parse_args()&lt;br /&gt;
&lt;br /&gt;
# check options&lt;br /&gt;
if (options.username is None) or (options.password is None):&lt;br /&gt;
   parser.error(&amp;quot;You must supply both the username and password&amp;quot;)&lt;br /&gt;
if (options.realm is not None):&lt;br /&gt;
   realm = options.realm&lt;br /&gt;
   &lt;br /&gt;
# Generate the string to enter into the htdigest file&lt;br /&gt;
kd = lambda x: md5(&#039;:&#039;.join(x)).hexdigest()&lt;br /&gt;
print &#039;:&#039;.join((options.username, realm, kd([options.username, realm, options.password])))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: If you use the above script you must use the --auth option to tracd, not --basic-auth, and you must set the realm in the --auth value to &#039;trac&#039; (without the quotes). Example usage (assuming you saved the script as trac-digest.py):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ python trac-digest.py -u username -p password &amp;gt;&amp;gt; c:\digest.txt&lt;br /&gt;
 $ tracd --port 8000 --auth=proj_name,c:\digest.txt,trac c:\path\to\proj_name&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: If you would like to use --basic-auth you need to use htpasswd tool from apache server to generate .htpasswd file. The remaining part is similar but make sure to use empty realm (i.e. coma after path). Make sure to use -m option for it.  If you do not have Apache, [trac:source:/tags/trac-0.11/contrib/htpasswd.py htpasswd.py] may help.  (Note that it requires a &amp;lt;tt&amp;gt;crypt&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;fcrypt&amp;lt;/tt&amp;gt; module; see the source comments for details.)&lt;br /&gt;
&lt;br /&gt;
It is possible to use md5sum utility to generate digest-password file using such method:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ printf &amp;quot;${user}:trac:${password}&amp;quot; | md5sum - &amp;gt;&amp;gt;user.htdigest&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
and manually delete &amp;quot; -&amp;quot; from the end and add &amp;quot;${user}:trac:&amp;quot; to the start of line from &#039;to-file&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Tips ===&lt;br /&gt;
&lt;br /&gt;
==== Serving static content ====&lt;br /&gt;
&lt;br /&gt;
If &amp;lt;tt&amp;gt;tracd&amp;lt;/tt&amp;gt; is the only web server used for the project, &lt;br /&gt;
it can also be used to distribute static content &lt;br /&gt;
(tarballs, Doxygen documentation, etc.)&lt;br /&gt;
&lt;br /&gt;
This static content should be put in the &amp;lt;tt&amp;gt;$TRAC_ENV/htdocs&amp;lt;/tt&amp;gt; folder,&lt;br /&gt;
and is accessed by URLs like &amp;lt;tt&amp;gt;&amp;lt;project_URL&amp;gt;/chrome/site/...&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Example: given a &amp;lt;tt&amp;gt;$TRAC_ENV/htdocs/software-0.1.tar.gz&amp;lt;/tt&amp;gt; file,&lt;br /&gt;
the corresponding relative URL would be &amp;lt;tt&amp;gt;/&amp;lt;project_name&amp;gt;/chrome/site/software-0.1.tar.gz&amp;lt;/tt&amp;gt;, &lt;br /&gt;
which in turn can be written as &amp;lt;tt&amp;gt;htdocs:software-0.1.tar.gz&amp;lt;/tt&amp;gt; (TracLinks syntax) or &amp;lt;tt&amp;gt;[/&amp;lt;project_name&amp;gt;/chrome/site/software-0.1.tar.gz]&amp;lt;/tt&amp;gt; (relative link syntax). &lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;Support for &amp;lt;tt&amp;gt;htdocs:&amp;lt;/tt&amp;gt; TracLinks syntax was added in version 0.10&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Using apache rewrite rules ====&lt;br /&gt;
In some situations when you choose to use tracd behind apache, you might experience issues with redirects, like being redirected to URLs with the wrong host or protocol. In this case (and only in this case), setting the &amp;lt;tt&amp;gt;[trac] use_base_url_for_redirect&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;true&amp;lt;/tt&amp;gt; can help, as this will force Trac to use the value of &amp;lt;tt&amp;gt;[trac] base_url&amp;lt;/tt&amp;gt; for doing the redirects.&lt;br /&gt;
&lt;br /&gt;
==== Serving a different base path than / ====&lt;br /&gt;
Tracd supports serving projects with different base urls than /&amp;lt;project&amp;gt;. The parameter name to change this is&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $ tracd --base-path=/some/path&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: TracInstall, TracCgi, TracModPython, TracGuide, [trac:TracOnWindowsStandalone?version=13#RunningTracdasservice Running tracd.exe as a Windows service], [trac:TracOnWindowsIisAjp], [trac:TracNginxRecipe]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TracSearch&amp;diff=322</id>
		<title>TracSearch</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TracSearch&amp;diff=322"/>
		<updated>2015-08-26T12:29:21Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Using Search ==  Trac has a built-in search engine to allow finding occurrences of keywords and substrings in wiki pages, tickets and changeset properties (author, revisio...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Using Search ==&lt;br /&gt;
&lt;br /&gt;
Trac has a built-in search engine to allow finding occurrences of keywords and substrings in wiki pages, tickets and changeset properties (author, revision and log message).&lt;br /&gt;
&lt;br /&gt;
Using the Trac search facility is straightforward and its interface should be familiar to most users.&lt;br /&gt;
&lt;br /&gt;
Apart from the [search: Search module], you will also find a small search field above the navigation bar at all time. It provides convenient access to the search module from all pages.&lt;br /&gt;
&lt;br /&gt;
=== &amp;quot;Quickjump&amp;quot; searches ===&lt;br /&gt;
For quick access to various project resources, the quick-search field at the top of every page can be used to enter a [TracLinks wiki link], which will take you directly to the resource identified by that link.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
&lt;br /&gt;
*![42] -- Opens change set 42&lt;br /&gt;
*!#42 -- Opens ticket number 42&lt;br /&gt;
*!{1} -- Opens report 1&lt;br /&gt;
*/trunk -- Opens the browser for the &amp;lt;tt&amp;gt;trunk&amp;lt;/tt&amp;gt; directory&lt;br /&gt;
&lt;br /&gt;
=== Advanced ===&lt;br /&gt;
&lt;br /&gt;
==== Disabling Quickjumps ====&lt;br /&gt;
To disable the quickjump feature for a search keyword - for example when searching for occurences of the literal word TracGuide - begin the query with an exclamation mark (!).&lt;br /&gt;
&lt;br /&gt;
==== Search Links ====&lt;br /&gt;
From the Wiki, it is possible to link to a specific search, using&lt;br /&gt;
&amp;lt;tt&amp;gt;search:&amp;lt;/tt&amp;gt; links:&lt;br /&gt;
*&amp;lt;tt&amp;gt;search:?q=crash&amp;lt;/tt&amp;gt; will search for the string &amp;quot;crash&amp;quot; &lt;br /&gt;
*&amp;lt;tt&amp;gt;search:?q=trac+link&amp;amp;wiki=on&amp;lt;/tt&amp;gt; will search for &amp;quot;trac&amp;quot; and &amp;quot;link&amp;quot; &lt;br /&gt;
   in wiki pages only&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: TracGuide, TracLinks, TracQuery&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=TracRss&amp;diff=321</id>
		<title>TracRss</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=TracRss&amp;diff=321"/>
		<updated>2015-08-26T12:29:21Z</updated>

		<summary type="html">&lt;p&gt;Maintenance script: Created page with &amp;quot; == Using RSS with Trac == TracGuideToc  Several of the Trac modules support content syndication using the RSS (Really Simple Syndication) XML format. Using the RSS subscr...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Using RSS with Trac ==&lt;br /&gt;
[[TracGuideToc]]&lt;br /&gt;
&lt;br /&gt;
Several of the Trac modules support content syndication using the RSS (Really Simple Syndication) XML format.&lt;br /&gt;
Using the RSS subscription feature in Trac, you can easily monitor progress of the project, a set of issues or even changes to a single file.&lt;br /&gt;
&lt;br /&gt;
Trac supports RSS feeds in:&lt;br /&gt;
&lt;br /&gt;
*TracTimeline —  Use the RSS feed to &#039;&#039;&#039;subscribe to project events&#039;&#039;&#039;.&amp;lt;br&amp;gt;Monitor overall project progress in your favorite RSS reader.&lt;br /&gt;
*TracTickets, TracReports, and TracQuery — Allows syndication of report and ticket query results.&amp;lt;br&amp;gt;Be notified about important and relevant issue tickets.&lt;br /&gt;
*TracBrowser and TracRevisionLog — Syndication of file changes.&amp;lt;br&amp;gt;Stay up to date with changes to a specific file or directory.&lt;br /&gt;
&lt;br /&gt;
=== How to access RSS data ===&lt;br /&gt;
Anywhere in Trac where RSS is available, you should find a small orange &#039;&#039;&#039;XML&#039;&#039;&#039; icon, typically placed at the bottom of the page. Clicking the icon will access the RSS feed for that specific resource.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; 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 &#039;&#039;alternate view of the data currently displayed&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Links ===&lt;br /&gt;
*&#039;&#039;Specifications:&#039;&#039;&lt;br /&gt;
**http://blogs.law.harvard.edu/tech/rss — RSS 2.0 Specification&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;Multi-platform RSS readers:&#039;&#039;&lt;br /&gt;
**http://www.rssowl.org/ — Open source, Eclipse-based, RSS reader for Linux, Mac and Windows systems that supports https and authenticated feeds.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;Linux/BSD/*n*x systems:&#039;&#039;&lt;br /&gt;
**http://pim.kde.org/users.php — [http://kde.org KDE] RSS Reader for Linux/BSD/*n*x systems&lt;br /&gt;
**http://liferea.sourceforge.net/ — Open source GTK2 RSS Reader for Linux&lt;br /&gt;
**http://akregator.sourceforge.net/ — Open source KDE RSS Reader (part of KDE-PIM)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;Mac OS X systems:&#039;&#039;&lt;br /&gt;
**http://ranchero.com/netnewswire/ — An excellent RSS reader for Mac OS X (has both free and pay versions)&lt;br /&gt;
**http://www.utsire.com/shrook/ — An RSS reader for Max OS X that supports https (even with self signed certificates) and authenticated feeds.&lt;br /&gt;
**http://vienna-rss.sourceforge.net/ — Open source Feed Reader for Mac OS X with smart folders support&lt;br /&gt;
**http://www.mesadynamics.com/Tickershock.html — Non-intrusive &amp;quot;news ticker&amp;quot; style RSS reader for Mac OS X&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;Windows systems:&#039;&#039;&lt;br /&gt;
**http://www.rssreader.com/ — Free and powerful RSS Reader for Windows&lt;br /&gt;
**http://www.sharpreader.net/ — A free RSS Reader written in .NET for Windows&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;Firefox:&#039;&#039;&lt;br /&gt;
**http://www.mozilla.org/products/firefox/ — Mozilla Firefox supports [http://www.mozilla.org/products/firefox/live-bookmarks.html live bookmarks] using RSS&lt;br /&gt;
**http://sage.mozdev.org — Sage RSS and Atom feed aggregator for Mozilla Firefox&lt;br /&gt;
**http://www.wizzrss.com/Welcome.php — WizzRSS Feed Reader for Firefox&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
See also: TracGuide, TracTimeline, TracReports, TracBrowser&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
</feed>