Background: #fff
Foreground: #000
PrimaryPale: #8cf
PrimaryLight: #18f
PrimaryMid: #04b
PrimaryDark: #014
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
<div class='toolbar' macro='toolbar [[ToolbarCommands::EditToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit text'></div>
<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser excludeLists'></span></div>
To get started with this blank [[TiddlyWiki]], you'll need to modify the following tiddlers:
* [[SiteTitle]] & [[SiteSubtitle]]: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* [[MainMenu]]: The menu (usually on the left)
* [[DefaultTiddlers]]: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' />
These [[InterfaceOptions]] for customising [[TiddlyWiki]] are saved in your browser

Your username for signing your edits. Write it as a [[WikiWord]] (eg [[JoeBloggs]])

<<option txtUserName>>
<<option chkSaveBackups>> [[SaveBackups]]
<<option chkAutoSave>> [[AutoSave]]
<<option chkRegExpSearch>> [[RegExpSearch]]
<<option chkCaseSensitiveSearch>> [[CaseSensitiveSearch]]
<<option chkAnimate>> [[EnableAnimations]]

Also see [[AdvancedOptions]]
<div class='header' role='banner' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
<div id='mainMenu' role='navigation' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' role='navigation' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' role='complementary' refresh='content' force='true' tiddler='SideBarTabs'></div>
<div id='displayArea' role='main'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
body {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}

a {color:[[ColorPalette::PrimaryMid]];}
a:hover {background-color:[[ColorPalette::PrimaryMid]]; color:[[ColorPalette::Background]];}
a img {border:0;}

h1,h2,h3,h4,h5,h6 {color:[[ColorPalette::SecondaryDark]]; background:transparent;}
h1 {border-bottom:2px solid [[ColorPalette::TertiaryLight]];}
h2,h3 {border-bottom:1px solid [[ColorPalette::TertiaryLight]];}

.button {color:[[ColorPalette::PrimaryDark]]; border:1px solid [[ColorPalette::Background]];}
.button:hover {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::SecondaryLight]]; border-color:[[ColorPalette::SecondaryMid]];}
.button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::SecondaryDark]];}

.header {background:[[ColorPalette::PrimaryMid]];}
.headerShadow {color:[[ColorPalette::Foreground]];}
.headerShadow a {font-weight:normal; color:[[ColorPalette::Foreground]];}
.headerForeground {color:[[ColorPalette::Background]];}
.headerForeground a {font-weight:normal; color:[[ColorPalette::PrimaryPale]];}

.tabSelected {color:[[ColorPalette::PrimaryDark]];
	border-left:1px solid [[ColorPalette::TertiaryLight]];
	border-top:1px solid [[ColorPalette::TertiaryLight]];
	border-right:1px solid [[ColorPalette::TertiaryLight]];
.tabUnselected {color:[[ColorPalette::Background]]; background:[[ColorPalette::TertiaryMid]];}
.tabContents {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::TertiaryPale]]; border:1px solid [[ColorPalette::TertiaryLight]];}
.tabContents .button {border:0;}

#sidebar {}
#sidebarOptions input {border:1px solid [[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel {background:[[ColorPalette::PrimaryPale]];}
#sidebarOptions .sliderPanel a {border:none;color:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:hover {color:[[ColorPalette::Background]]; background:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:active {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::Background]];}

.wizard {background:[[ColorPalette::PrimaryPale]]; border:1px solid [[ColorPalette::PrimaryMid]];}
.wizard h1 {color:[[ColorPalette::PrimaryDark]]; border:none;}
.wizard h2 {color:[[ColorPalette::Foreground]]; border:none;}
.wizardStep {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];
	border:1px solid [[ColorPalette::PrimaryMid]];}
.wizardStep.wizardStepDone {background:[[ColorPalette::TertiaryLight]];}
.wizardFooter {background:[[ColorPalette::PrimaryPale]];}
.wizardFooter .status {background:[[ColorPalette::PrimaryDark]]; color:[[ColorPalette::Background]];}
.wizard .button {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryLight]]; border: 1px solid;
	border-color:[[ColorPalette::SecondaryPale]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryPale]];}
.wizard .button:hover {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Background]];}
.wizard .button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::Foreground]]; border: 1px solid;
	border-color:[[ColorPalette::PrimaryDark]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryDark]];}

.wizard .notChanged {background:transparent;}
.wizard .changedLocally {background:#80ff80;}
.wizard .changedServer {background:#8080ff;}
.wizard .changedBoth {background:#ff8080;}
.wizard .notFound {background:#ffff80;}
.wizard .putToServer {background:#ff80ff;}
.wizard .gotFromServer {background:#80ffff;}

#messageArea {border:1px solid [[ColorPalette::SecondaryMid]]; background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]];}
#messageArea .button {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::SecondaryPale]]; border:none;}

.popupTiddler {background:[[ColorPalette::TertiaryPale]]; border:2px solid [[ColorPalette::TertiaryMid]];}

.popup {background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]]; border-left:1px solid [[ColorPalette::TertiaryMid]]; border-top:1px solid [[ColorPalette::TertiaryMid]]; border-right:2px solid [[ColorPalette::TertiaryDark]]; border-bottom:2px solid [[ColorPalette::TertiaryDark]];}
.popup hr {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::PrimaryDark]]; border-bottom:1px;}
.popup li.disabled {color:[[ColorPalette::TertiaryMid]];}
.popup li a, .popup li a:visited {color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:active {background:[[ColorPalette::SecondaryPale]]; color:[[ColorPalette::Foreground]]; border: none;}
.popupHighlight {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
.listBreak div {border-bottom:1px solid [[ColorPalette::TertiaryDark]];}

.tiddler .defaultCommand {font-weight:bold;}

.shadow .title {color:[[ColorPalette::TertiaryDark]];}

.title {color:[[ColorPalette::SecondaryDark]];}
.subtitle {color:[[ColorPalette::TertiaryDark]];}

.toolbar {color:[[ColorPalette::PrimaryMid]];}
.toolbar a {color:[[ColorPalette::TertiaryLight]];}
.selected .toolbar a {color:[[ColorPalette::TertiaryMid]];}
.selected .toolbar a:hover {color:[[ColorPalette::Foreground]];}

.tagging, .tagged {border:1px solid [[ColorPalette::TertiaryPale]]; background-color:[[ColorPalette::TertiaryPale]];}
.selected .tagging, .selected .tagged {background-color:[[ColorPalette::TertiaryLight]]; border:1px solid [[ColorPalette::TertiaryMid]];}
.tagging .listTitle, .tagged .listTitle {color:[[ColorPalette::PrimaryDark]];}
.tagging .button, .tagged .button {border:none;}

.footer {color:[[ColorPalette::TertiaryLight]];}
.selected .footer {color:[[ColorPalette::TertiaryMid]];}

.error, .errorButton {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Error]];}
.warning {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryPale]];}
.lowlight {background:[[ColorPalette::TertiaryLight]];}

.zoomer {background:none; color:[[ColorPalette::TertiaryMid]]; border:3px solid [[ColorPalette::TertiaryMid]];}

.imageLink, #displayArea .imageLink {background:transparent;}

.annotation {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border:2px solid [[ColorPalette::SecondaryMid]];}

.viewer .listTitle {list-style-type:none; margin-left:-2em;}
.viewer .button {border:1px solid [[ColorPalette::SecondaryMid]];}
.viewer blockquote {border-left:3px solid [[ColorPalette::TertiaryDark]];}

.viewer table, table.twtable {border:2px solid [[ColorPalette::TertiaryDark]];}
.viewer th, .viewer thead td, .twtable th, .twtable thead td {background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::Background]];}
.viewer td, .viewer tr, .twtable td, .twtable tr {border:1px solid [[ColorPalette::TertiaryDark]];}

.viewer pre {border:1px solid [[ColorPalette::SecondaryLight]]; background:[[ColorPalette::SecondaryPale]];}
.viewer code {color:[[ColorPalette::SecondaryDark]];}
.viewer hr {border:0; border-top:dashed 1px [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::TertiaryDark]];}

.highlight, .marked {background:[[ColorPalette::SecondaryLight]];}

.editor input {border:1px solid [[ColorPalette::PrimaryMid]];}
.editor textarea {border:1px solid [[ColorPalette::PrimaryMid]]; width:100%;}
.editorFooter {color:[[ColorPalette::TertiaryMid]];}
.readOnly {background:[[ColorPalette::TertiaryPale]];}

#backstageArea {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::TertiaryMid]];}
#backstageArea a {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstageArea a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; }
#backstageArea a.backstageSelTab {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
#backstageButton a {background:none; color:[[ColorPalette::Background]]; border:none;}
#backstageButton a:hover {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstagePanel {background:[[ColorPalette::Background]]; border-color: [[ColorPalette::Background]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]];}
.backstagePanelFooter .button {border:none; color:[[ColorPalette::Background]];}
.backstagePanelFooter .button:hover {color:[[ColorPalette::Foreground]];}
#backstageCloak {background:[[ColorPalette::Foreground]]; opacity:0.6; filter:alpha(opacity=60);}
* html .tiddler {height:1%;}

body {font-size:.75em; font-family:arial,helvetica; margin:0; padding:0;}

h1,h2,h3,h4,h5,h6 {font-weight:bold; text-decoration:none;}
h1,h2,h3 {padding-bottom:1px; margin-top:1.2em;margin-bottom:0.3em;}
h4,h5,h6 {margin-top:1em;}
h1 {font-size:1.35em;}
h2 {font-size:1.25em;}
h3 {font-size:1.1em;}
h4 {font-size:1em;}
h5 {font-size:.9em;}

hr {height:1px;}

a {text-decoration:none;}

dt {font-weight:bold;}

ol {list-style-type:decimal;}
ol ol {list-style-type:lower-alpha;}
ol ol ol {list-style-type:lower-roman;}
ol ol ol ol {list-style-type:decimal;}
ol ol ol ol ol {list-style-type:lower-alpha;}
ol ol ol ol ol ol {list-style-type:lower-roman;}
ol ol ol ol ol ol ol {list-style-type:decimal;}

.txtOptionInput {width:11em;}

#contentWrapper .chkOptionInput {border:0;}

.externalLink {text-decoration:underline;}

.indent {margin-left:3em;}
.outdent {margin-left:3em; text-indent:-3em;}
code.escaped {white-space:nowrap;}

.tiddlyLinkExisting {font-weight:bold;}
.tiddlyLinkNonExisting {font-style:italic;}

/* the 'a' is required for IE, otherwise it renders the whole tiddler in bold */
a.tiddlyLinkNonExisting.shadow {font-weight:bold;}

#mainMenu .tiddlyLinkExisting,
	#mainMenu .tiddlyLinkNonExisting,
	#sidebarTabs .tiddlyLinkNonExisting {font-weight:normal; font-style:normal;}
#sidebarTabs .tiddlyLinkExisting {font-weight:bold; font-style:normal;}

.header {position:relative;}
.header a:hover {background:transparent;}
.headerShadow {position:relative; padding:4.5em 0 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:4.5em 0 1em 1em; left:0; top:0;}

.siteTitle {font-size:3em;}
.siteSubtitle {font-size:1.2em;}

#mainMenu {position:absolute; left:0; width:10em; text-align:right; line-height:1.6em; padding:1.5em 0.5em 0.5em 0.5em; font-size:1.1em;}

#sidebar {position:absolute; right:3px; width:16em; font-size:.9em;}
#sidebarOptions {padding-top:0.3em;}
#sidebarOptions a {margin:0 0.2em; padding:0.2em 0.3em; display:block;}
#sidebarOptions input {margin:0.4em 0.5em;}
#sidebarOptions .sliderPanel {margin-left:1em; padding:0.5em; font-size:.85em;}
#sidebarOptions .sliderPanel a {font-weight:bold; display:inline; padding:0;}
#sidebarOptions .sliderPanel input {margin:0 0 0.3em 0;}
#sidebarTabs .tabContents {width:15em; overflow:hidden;}

.wizard {padding:0.1em 1em 0 2em;}
.wizard h1 {font-size:2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizard h2 {font-size:1.2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizardStep {padding:1em 1em 1em 1em;}
.wizard .button {margin:0.5em 0 0; font-size:1.2em;}
.wizardFooter {padding:0.8em 0.4em 0.8em 0;}
.wizardFooter .status {padding:0 0.4em; margin-left:1em;}
.wizard .button {padding:0.1em 0.2em;}

#messageArea {position:fixed; top:2em; right:0; margin:0.5em; padding:0.5em; z-index:2000; _position:absolute;}
.messageToolbar {display:block; text-align:right; padding:0.2em;}
#messageArea a {text-decoration:underline;}

.tiddlerPopupButton {padding:0.2em;}
.popupTiddler {position: absolute; z-index:300; padding:1em; margin:0;}

.popup {position:absolute; z-index:300; font-size:.9em; padding:0; list-style:none; margin:0;}
.popup .popupMessage {padding:0.4em;}
.popup hr {display:block; height:1px; width:auto; padding:0; margin:0.2em 0;}
.popup li.disabled {padding:0.4em;}
.popup li a {display:block; padding:0.4em; font-weight:normal; cursor:pointer;}
.listBreak {font-size:1px; line-height:1px;}
.listBreak div {margin:2px 0;}

.tabset {padding:1em 0 0 0.5em;}
.tab {margin:0 0 0 0.25em; padding:2px;}
.tabContents {padding:0.5em;}
.tabContents ul, .tabContents ol {margin:0; padding:0;}
.txtMainTab .tabContents li {list-style:none;}
.tabContents li.listLink { margin-left:.75em;}

#contentWrapper {display:block;}
#splashScreen {display:none;}

#displayArea {margin:1em 17em 0 14em;}

.toolbar {text-align:right; font-size:.9em;}

.tiddler {padding:1em 1em 0;}

.missing .viewer,.missing .title {font-style:italic;}

.title {font-size:1.6em; font-weight:bold;}

.missing .subtitle {display:none;}
.subtitle {font-size:1.1em;}

.tiddler .button {padding:0.2em 0.4em;}

.tagging {margin:0.5em 0.5em 0.5em 0; float:left; display:none;}
.isTag .tagging {display:block;}
.tagged {margin:0.5em; float:right;}
.tagging, .tagged {font-size:0.9em; padding:0.25em;}
.tagging ul, .tagged ul {list-style:none; margin:0.25em; padding:0;}
.tagClear {clear:both;}

.footer {font-size:.9em;}
.footer li {display:inline;}

.annotation {padding:0.5em; margin:0.5em;}

* html .viewer pre {width:99%; padding:0 0 1em 0;}
.viewer {line-height:1.4em; padding-top:0.5em;}
.viewer .button {margin:0 0.25em; padding:0 0.25em;}
.viewer blockquote {line-height:1.5em; padding-left:0.8em;margin-left:2.5em;}
.viewer ul, .viewer ol {margin-left:0.5em; padding-left:1.5em;}

.viewer table, table.twtable {border-collapse:collapse; margin:0.8em 1.0em;}
.viewer th, .viewer td, .viewer tr,.viewer caption,.twtable th, .twtable td, .twtable tr,.twtable caption {padding:3px;}
table.listView {font-size:0.85em; margin:0.8em 1.0em;}
table.listView th, table.listView td, table.listView tr {padding:0 3px 0 3px;}

.viewer pre {padding:0.5em; margin-left:0.5em; font-size:1.2em; line-height:1.4em; overflow:auto;}
.viewer code {font-size:1.2em; line-height:1.4em;}

.editor {font-size:1.1em;}
.editor input, .editor textarea {display:block; width:100%; font:inherit;}
.editorFooter {padding:0.25em 0; font-size:.9em;}
.editorFooter .button {padding-top:0; padding-bottom:0;}

.fieldsetFix {border:0; padding:0; margin:1px 0px;}

.zoomer {font-size:1.1em; position:absolute; overflow:hidden;}
.zoomer div {padding:1em;}

* html #backstage {width:99%;}
* html #backstageArea {width:99%;}
#backstageArea {display:none; position:relative; overflow: hidden; z-index:150; padding:0.3em 0.5em;}
#backstageToolbar {position:relative;}
#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em;}
#backstageButton {display:none; position:absolute; z-index:175; top:0; right:0;}
#backstageButton a {padding:0.1em 0.4em; margin:0.1em;}
#backstage {position:relative; width:100%; z-index:50;}
#backstagePanel {display:none; z-index:100; position:absolute; width:90%; margin-left:3em; padding:1em;}
.backstagePanelFooter {padding-top:0.2em; float:right;}
.backstagePanelFooter a {padding:0.2em 0.4em;}
#backstageCloak {display:none; z-index:20; position:absolute; width:100%; height:100px;}

.whenBackstage {display:none;}
.backstageVisible .whenBackstage {display:block;}
StyleSheet for use when a translation requires any css style changes.
This StyleSheet can be used directly by languages such as Chinese, Japanese and Korean which need larger font sizes.
body {font-size:0.8em;}
#sidebarOptions {font-size:1.05em;}
#sidebarOptions a {font-style:normal;}
#sidebarOptions .sliderPanel {font-size:0.95em;}
.subtitle {font-size:0.8em;}
.viewer table.listView {font-size:0.95em;}
@media print {
#mainMenu, #sidebar, #messageArea, .toolbar, #backstageButton, #backstageArea {display: none !important;}
#displayArea {margin: 1em 1em 0em;}
noscript {display:none;} /* Fixes a feature in Firefox where print preview displays the noscript content */
<div class='toolbar' role='navigation' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date'></span> (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span>)</div>
<div class='tagging' macro='tagging'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
{{rightpad{[<img(400px,auto)[./pics/kr.jpg]]}}} apl. Prof. Dr. Klaus Reygers
Physikalisches Institut
Raum 01.101
Im Neuenheimer Feld 226
69120 Heidelberg

Phone: +49 6221 54 19503
Fax: +49 6221 54 19545


Research field: ~Ultra-Relativistic ~Heavy-Ion Physics

Please send emails related to the [[Advanced Lab Course|]] ('~F-Praktikum') at the University of Heidelberg to
|Author|Eric Shulman|
|Description|selectively disable TiddlyWiki's automatic ~WikiWord linking behavior|
This plugin allows you to disable TiddlyWiki's automatic ~WikiWord linking behavior, so that WikiWords embedded in tiddler content will be rendered as regular text, instead of being automatically converted to tiddler links.  To create a tiddler link when automatic linking is disabled, you must enclose the link text within {{{[[...]]}}}.
You can block automatic WikiWord linking behavior for any specific tiddler by ''tagging it with<<tag excludeWikiWords>>'' (see configuration below) or, check a plugin option to disable automatic WikiWord links to non-existing tiddler titles, while still linking WikiWords that correspond to existing tiddlers titles or shadow tiddler titles.  You can also block specific selected WikiWords from being automatically linked by listing them in [[DisableWikiLinksList]] (see configuration below), separated by whitespace.  This tiddler is optional and, when present, causes the listed words to always be excluded, even if automatic linking of other WikiWords is being permitted.  

Note: WikiWords contained in default ''shadow'' tiddlers will be automatically linked unless you select an additional checkbox option lets you disable these automatic links as well, though this is not recommended, since it can make it more difficult to access some TiddlyWiki standard default content (such as AdvancedOptions or SideBarTabs)
<<option chkDisableWikiLinks>> Disable ALL automatic WikiWord tiddler links
<<option chkAllowLinksFromShadowTiddlers>> ... except for WikiWords //contained in// shadow tiddlers
<<option chkDisableNonExistingWikiLinks>> Disable automatic WikiWord links for non-existing tiddlers
Disable automatic WikiWord links for words listed in: <<option txtDisableWikiLinksList>>
Disable automatic WikiWord links for tiddlers tagged with: <<option txtDisableWikiLinksTag>>
2008.07.22 [1.6.0] hijack tiddler changed() method to filter disabled wiki words from internal links[] array (so they won't appear in the missing tiddlers list)
2007.06.09 [1.5.0] added configurable txtDisableWikiLinksTag (default value: "excludeWikiWords") to allows selective disabling of automatic WikiWord links for any tiddler tagged with that value.
2006.12.31 [1.4.0] in formatter, test for chkDisableNonExistingWikiLinks
2006.12.09 [1.3.0] in formatter, test for excluded wiki words specified in DisableWikiLinksList
2006.12.09 [1.2.2] fix logic in autoLinkWikiWords() (was allowing links TO shadow tiddlers, even when chkDisableWikiLinks is TRUE).  
2006.12.09 [1.2.1] revised logic for handling links in shadow content
2006.12.08 [1.2.0] added hijack of Tiddler.prototype.autoLinkWikiWords so regular (non-bracketed) WikiWords won't be added to the missing list
2006.05.24 [1.1.0] added option to NOT bypass automatic wikiword links when displaying default shadow content (default is to auto-link shadow content)
2006.02.05 [1.0.1] wrapped wikifier hijack in init function to eliminate globals and avoid FireFox crash bug when referencing globals
2005.12.09 [1.0.0] initial release
version.extensions.DisableWikiLinksPlugin= {major: 1, minor: 6, revision: 0, date: new Date(2008,7,22)};

if (config.options.chkDisableNonExistingWikiLinks==undefined) config.options.chkDisableNonExistingWikiLinks= false;
if (config.options.chkDisableWikiLinks==undefined) config.options.chkDisableWikiLinks=false;
if (config.options.txtDisableWikiLinksList==undefined) config.options.txtDisableWikiLinksList="DisableWikiLinksList";
if (config.options.chkAllowLinksFromShadowTiddlers==undefined) config.options.chkAllowLinksFromShadowTiddlers=true;
if (config.options.txtDisableWikiLinksTag==undefined) config.options.txtDisableWikiLinksTag="excludeWikiWords";

// find the formatter for wikiLink and replace handler with 'pass-thru' rendering
function initDisableWikiLinksFormatter() {
	for (var i=0; i<config.formatters.length && config.formatters[i].name!="wikiLink"; i++);
	config.formatters[i].handler=function(w) {
		// supress any leading "~" (if present)
		var skip=(w.matchText.substr(0,1)==config.textPrimitives.unWikiLink)?1:0;
		var title=w.matchText.substr(skip);
		var exists=store.tiddlerExists(title);
		var inShadow=w.tiddler && store.isShadowTiddler(w.tiddler.title);
		// check for excluded Tiddler
		if (w.tiddler && w.tiddler.isTagged(config.options.txtDisableWikiLinksTag))
			{ w.outputText(w.output,w.matchStart+skip,w.nextMatch); return; }
		// check for specific excluded wiki words
		var t=store.getTiddlerText(config.options.txtDisableWikiLinksList);
		if (t && t.length && t.indexOf(w.matchText)!=-1)
			{ w.outputText(w.output,w.matchStart+skip,w.nextMatch); return; }
		// if not disabling links from shadows (default setting)
		if (config.options.chkAllowLinksFromShadowTiddlers && inShadow)
			return this.coreHandler(w);
		// check for non-existing non-shadow tiddler
		if (config.options.chkDisableNonExistingWikiLinks && !exists)
			{ w.outputText(w.output,w.matchStart+skip,w.nextMatch); return; }
		// if not enabled, just do standard WikiWord link formatting
		if (!config.options.chkDisableWikiLinks)
			return this.coreHandler(w);
		// just return text without linking

Tiddler.prototype.coreAutoLinkWikiWords = Tiddler.prototype.autoLinkWikiWords;
Tiddler.prototype.autoLinkWikiWords = function()
	// if all automatic links are not disabled, just return results from core function
	if (!config.options.chkDisableWikiLinks)
		return this.coreAutoLinkWikiWords.apply(this,arguments);
	return false;

Tiddler.prototype.disableWikiLinks_changed = Tiddler.prototype.changed;
Tiddler.prototype.changed = function()
	// remove excluded wiki words from links array
	var t=store.getTiddlerText(config.options.txtDisableWikiLinksList,"").readBracketedList();
	if (t.length) for (var i=0; i<t.length; i++)
		if (this.links.contains(t[i]))
|Description:|Allows conditional inclusion/exclusion in templates|
|Author:|Simon Baird <>|
For use in ViewTemplate and EditTemplate. Example usage:
{{{<div macro="showWhenTagged Task">[[TaskToolbar]]</div>}}}
{{{<div macro="showWhen tiddler.modifier == 'BartSimpson'"><img src="bart.gif"/></div>}}}

Warning: the showWhen and hideWhen macros will blindly eval paramString.
This could be used to execute harmful javascript from a tiddler.

(TODO: Make some effort to sanitize paramString. Perhaps disallow the equals sign?)

window.hideWhenLastTest = false;

window.removeElementWhen = function(test,place) {
  window.hideWhenLastTest = test;
  if (test) {


  hideWhen: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( eval(paramString), place );

  showWhen: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( !eval(paramString), place );

  hideWhenTagged: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( tiddler.tags.containsAll(params), place );

  showWhenTagged: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( !tiddler.tags.containsAll(params), place );

  hideWhenTaggedAny: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( tiddler.tags.containsAny(params), place );

  showWhenTaggedAny: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( !tiddler.tags.containsAny(params), place );

  hideWhenTaggedAll: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( tiddler.tags.containsAll(params), place );

  showWhenTaggedAll: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( !tiddler.tags.containsAll(params), place );

  hideWhenExists: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( store.tiddlerExists(params[0]) || store.isShadowTiddler(params[0]), place );

  showWhenExists: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( !(store.tiddlerExists(params[0]) || store.isShadowTiddler(params[0])), place );

  hideWhenTitleIs: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( tiddler.title == params[0], place );

  showWhenTitleIs: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( tiddler.title != params[0], place );

  'else': { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
    removeElementWhen( !window.hideWhenLastTest, place );


|Author|Eric Shulman|
|Description|adds support for resizing images|
This plugin adds optional syntax to scale an image to a specified width and height and/or interactively resize the image with the mouse.
The extended image syntax is:
where ''(w,h)'' indicates the desired width and height (in CSS units, e.g., px, em, cm, in, or %). Use ''auto'' (or a blank value) for either dimension to scale that dimension proportionally (i.e., maintain the aspect ratio). You can also calculate a CSS value 'on-the-fly' by using a //javascript expression// enclosed between """{{""" and """}}""". Appending a plus sign (+) to a dimension enables interactive resizing in that dimension (by dragging the mouse inside the image). Use ~SHIFT-click to show the full-sized (un-scaled) image. Use ~CTRL-click to restore the starting size (either scaled or full-sized).
[<img(21% ,+)[images/meow.gif]]
[<img(13%+, )[images/meow.gif]]
[<img( 8%+, )[images/meow.gif]]
[<img( 5% , )[images/meow.gif]]
[<img( 3% , )[images/meow.gif]]
[<img( 2% , )[images/meow.gif]]
[img(  1%+,+)[images/meow.gif]]
[<img(21% ,+)[images/meow.gif]]
[<img(13%+, )[images/meow.gif]]
[<img( 8%+, )[images/meow.gif]]
[<img( 5% , )[images/meow.gif]]
[<img( 3% , )[images/meow.gif]]
[<img( 2% , )[images/meow.gif]]
[img(  1%+,+)[images/meow.gif]]
2009.02.24 [1.2.1] cleanup width/height regexp, use '+' suffix for resizing
2009.02.22 [1.2.0] added stretchable images
2008.01.19 [1.1.0] added evaluated width/height values
2008.01.18 [1.0.1] regexp for "(width,height)" now passes all CSS values to browser for validation
2008.01.17 [1.0.0] initial release
version.extensions.ImageSizePlugin= {major: 1, minor: 2, revision: 1, date: new Date(2009,2,24)};
var f=config.formatters[config.formatters.findByField("name","image")];
f.handler=function(w) {
	this.lookaheadRegExp.lastIndex = w.matchStart;
	var lookaheadMatch = this.lookaheadRegExp.exec(w.source)
	if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {
		var floatLeft=lookaheadMatch[1];
		var floatRight=lookaheadMatch[2];
		var width=lookaheadMatch[3];
		var height=lookaheadMatch[4];
		var tooltip=lookaheadMatch[5];
		var src=lookaheadMatch[6];
		var link=lookaheadMatch[7];

		// Simple bracketted link
		var e = w.output;
		if(link) { // LINKED IMAGE
			if (config.formatterHelpers.isExternalLink(link)) {
				if (config.macros.attach && config.macros.attach.isAttachment(link)) {
					// see [[AttachFilePluginFormatters]]
					e = createExternalLink(w.output,link);
					e.title = config.macros.attach.linkTooltip + link;
				} else
					e = createExternalLink(w.output,link);
			} else 
				e = createTiddlyLink(w.output,link,false,null,w.isStatic);

		var img = createTiddlyElement(e,"img");
		if(floatLeft) img.align="left"; else if(floatRight) img.align="right";
		if(width||height) {
			var x=width.trim(); var y=height.trim();
			var stretchW=(x.substr(x.length-1,1)=='+'); if (stretchW) x=x.substr(0,x.length-1);
			var stretchH=(y.substr(y.length-1,1)=='+'); if (stretchH) y=y.substr(0,y.length-1);
			if (x.substr(0,2)=="{{")
				{ try{x=eval(x.substr(2,x.length-4))} catch(e){displayMessage(e.description||e.toString())} }
			if (y.substr(0,2)=="{{")
				{ try{y=eval(y.substr(2,y.length-4))} catch(e){displayMessage(e.description||e.toString())} };;
		if(tooltip) img.title = tooltip;

		if (config.macros.attach && config.macros.attach.isAttachment(src))
			src=config.macros.attach.getAttachment(src); // see [[AttachFilePluginFormatters]]
		else if (config.formatterHelpers.resolvePath) { // see [[ImagePathPlugin]]
			if (config.browser.isIE || config.browser.isSafari) {
					return false;
			} else
		w.nextMatch = this.lookaheadRegExp.lastIndex;

config.formatterHelpers.addStretchHandlers=function(e,stretchW,stretchH) {
	e.title=((stretchW||stretchH)?'DRAG=stretch/shrink, ':'')
		+'SHIFT-CLICK=show full size, CTRL-CLICK=restore initial size';
	e.statusMsg='width=%0, height=%1';'move';;;
	e.onmousedown=function(ev) { var ev=ev||window.event;
		return false;
	e.onmousemove=function(ev) { var ev=ev||window.event;
		if (this.sizing) {
			var currX=!config.browser.isIE?ev.pageX:(ev.clientX+findScrollX());
			var currY=!config.browser.isIE?ev.pageY:(ev.clientY+findScrollY());
			var newW=(currX-this.offsetLeft)/(this.startX-this.offsetLeft)*this.startW;
			var newH=(currY-this.offsetTop )/(this.startY-this.offsetTop )*this.startH;
			if (this.stretchW) s.width =Math.floor(Math.max(newW,this.minW))+'px';
			if (this.stretchH) s.height=Math.floor(Math.max(newH,this.minH))+'px';
			clearMessage(); displayMessage(this.statusMsg.format([s.width,s.height]));
		return false;
	e.onmouseup=function(ev) { var ev=ev||window.event;
		if (ev.shiftKey) {''; }
		if (ev.ctrlKey)  {;; }
		return false;
	e.onmouseout=function(ev) { var ev=ev||window.event;
		return false;
|Author|Eric Shulman|
|Description|Insert Javascript executable code directly into your tiddler content.|
''Call directly into TW core utility routines, define new functions, calculate values, add dynamically-generated TiddlyWiki-formatted output'' into tiddler content, or perform any other programmatic actions each time the tiddler is rendered.
>see [[InlineJavascriptPluginInfo]]
2010.12.15 1.9.6 allow (but ignore) type="..." syntax
|please see [[InlineJavascriptPluginInfo]] for additional revision details|
2005.11.08 1.0.0 initial release
version.extensions.InlineJavascriptPlugin= {major: 1, minor: 9, revision: 6, date: new Date(2010,12,15)};

config.formatters.push( {
	name: "inlineJavascript",
	match: "\\<script",
	lookahead: "\\<script(?: type=\\\"[^\\\"]*\\\")?(?: src=\\\"([^\\\"]*)\\\")?(?: label=\\\"([^\\\"]*)\\\")?(?: title=\\\"([^\\\"]*)\\\")?(?: key=\\\"([^\\\"]*)\\\")?( show)?\\>((?:.|\\n)*?)\\</script\\>",
	handler: function(w) {
		var lookaheadRegExp = new RegExp(this.lookahead,"mg");
		lookaheadRegExp.lastIndex = w.matchStart;
		var lookaheadMatch = lookaheadRegExp.exec(w.source)
		if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {
			var src=lookaheadMatch[1];
			var label=lookaheadMatch[2];
			var tip=lookaheadMatch[3];
			var key=lookaheadMatch[4];
			var show=lookaheadMatch[5];
			var code=lookaheadMatch[6];
			if (src) { // external script library
				var script = document.createElement("script"); script.src = src;
				document.body.appendChild(script); document.body.removeChild(script);
			if (code) { // inline code
				if (show) // display source in tiddler
				if (label) { // create 'onclick' command link
					var link=createTiddlyElement(w.output,"a",null,"tiddlyLinkExisting",wikifyPlainText(label));
					var fixup=code.replace(/document.write\s*\(/gi,'place.bufferedHTML+=(');
					link.code="function _out(place,tiddler){"+fixup+"\n};_out(this,this.tiddler);"
						try{ var r=eval(this.code);
							if(this.bufferedHTML.length || (typeof(r)==="string")&&r.length)
								var s=this.parentNode.insertBefore(document.createElement("span"),this.nextSibling);
							if((typeof(r)==="string")&&r.length) {
								return false;
							} else return r!==undefined?r:false;
						} catch(e){alert(e.description||e.toString());return false;}
					var URIcode='javascript:void(eval(decodeURIComponent(%22(function(){try{';
					URIcode+=encodeURIComponent(encodeURIComponent(code.replace(/\n/g,' ')));
					if (key) link.accessKey=key.substr(0,1); // single character only
				else { // run script immediately
					var fixup=code.replace(/document.write\s*\(/gi,'place.innerHTML+=(');
					var c="function _out(place,tiddler){"+fixup+"\n};_out(w.output,w.tiddler);";
					try	 { var out=eval(c); }
					catch(e) { out=e.description?e.description:e.toString(); }
					if (out && out.length) wikify(out,w.output,w.highlightRegExp,w.tiddler);
			w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;
} )

// // Backward-compatibility for TW2.1.x and earlier
if (typeof(wikifyPlainText)=="undefined") window.wikifyPlainText=function(text,limit,tiddler) {
	if(limit > 0) text = text.substr(0,limit);
	var wikifier = new Wikifier(text,formatter,null,tiddler);
	return wikifier.wikifyPlain();

// // GLOBAL FUNCTION: $(...) -- 'shorthand' convenience syntax for document.getElementById()
if (typeof($)=='undefined') { function $(id) { return document.getElementById(id.replace(/^#/,'')); } }
|Author|Eric Shulman|
|Description|Documentation for InlineJavascriptPlugin|
''Call directly into TW core utility routines, define new functions, calculate values, add dynamically-generated TiddlyWiki-formatted output'' into tiddler content, or perform any other programmatic actions each time the tiddler is rendered.
This plugin adds wiki syntax for surrounding tiddler content with {{{<script>}}} and {{{</script>}}} markers, so that it can be recognized as embedded javascript code.  When a tiddler is rendered, the plugin automatically invokes any embedded scripts, which can be used to construct and return dynamically-generated output that is inserted into the tiddler content.
<script type="..." src="..." label="..." title="..." key="..." show>
	/* javascript code goes here... */
All parameters are //optional//.    When the ''show'' keyword is used, the plugin will also include the script source code in the output that it displays in the tiddler.  This is helpful when creating examples for documentation purposes (such as used in this tiddler!)

__''Deferred execution from an 'onClick' link''__
<script label="click here" title="mouseover tooltip text" key="X" show>
	/* javascript code goes here... */
	alert('you clicked on the link!');
By including a {{{label="..."}}} parameter in the initial {{{<script>}}} marker, the plugin will create a link to an 'onclick' script that will only be executed when that specific link is clicked, rather than running the script each time the tiddler is rendered.  You may also include a {{{title="..."}}} parameter to specify the 'tooltip' text that will appear whenever the mouse is moved over the onClick link text, and a {{{key="X"}}} parameter to specify an //access key// (which must be a //single// letter or numeric digit only).

__''Loading scripts from external source files''__
<script src="URL" show>
	/* optional javascript code goes here... */
</script>You can also load javascript directly from an external source URL, by including a src="..." parameter in the initial {{{<script>}}} marker (e.g., {{{<script src="demo.js"></script>}}}).  This is particularly useful when incorporating third-party javascript libraries for use in custom extensions and plugins.  The 'foreign' javascript code remains isolated in a separate file that can be easily replaced whenever an updated library file becomes available.

In addition to loading the javascript from the external file, you can also use this feature to invoke javascript code contained within the {{{<script>...</script>}}} markers.  This code is invoked //after// the external script file has been processed, and can make immediate use of the functions and/or global variables defined by the external script file.
>Note: To ensure that your javascript functions are always available when needed, you should load the libraries from a tiddler that is rendered as soon as your TiddlyWiki document is opened, such as MainMenu.  For example: put your {{{<script src="..."></script>}}} syntax into a separate 'library' tiddler (e.g., LoadScripts), and then add {{{<<tiddler LoadScripts>>}}} to MainMenu so that the library is loaded before any other tiddlers that rely upon the functions it defines. 
>Normally, loading external javascript in this way does not produce any direct output, and should not have any impact on the appearance of your MainMenu.  However, if your LoadScripts tiddler contains notes or other visible content, you can suppress this output by using 'inline CSS' in the MainMenu, like this: {{{@@display:none;<<tiddler LoadScripts>>@@}}}
!!!!!Creating dynamic tiddler content and accessing the ~TiddlyWiki DOM
An important difference between TiddlyWiki inline scripting and conventional embedded javascript techniques for web pages is the method used to produce output that is dynamically inserted into the document: in a typical web document, you use the {{{document.write()}}} (or {{{document.writeln()}}}) function to output text sequences (often containing HTML tags) that are then rendered when the entire document is first loaded into the browser window.

However, in a ~TiddlyWiki document, tiddlers (and other DOM elements) are created, deleted, and rendered "on-the-fly", so writing directly to the global 'document' object does not produce the results you want (i.e., replacing the embedded script within the tiddler content), and instead will //completely replace the entire ~TiddlyWiki document in your browser window (which is clearly not a good thing!)//.  In order to allow scripts to use {{{document.write()}}}, the plugin automatically converts and buffers all HTML output so it can be safely inserted into your tiddler content, immediately following the script.

''Note that {{{document.write()}}} can only be used to output "pure HTML" syntax.  To produce //wiki-formatted// output, your script should instead return a text value containing the desired wiki-syntax content'', which will then be automatically rendered immediately following the script.  If returning a text value is not sufficient for your needs, the plugin also provides an automatically-defined variable, 'place', that gives the script code ''direct access to the //containing DOM element//'' into which the tiddler output is being rendered.  You can use this variable to ''perform direct DOM manipulations'' that can, for example:
* generate wiki-formatted output using {{{wikify("...content...",place)}}}
* vary the script's actions based upon the DOM element in which it is embedded
* access 'tiddler-relative' DOM information using {{{story.findContainingTiddler(place)}}}
''When using an 'onclick' script, the 'place' element actually refers to the onclick //link text// itself, instead of the containing DOM element.''  This permits you to directly reference or modify the link text to reflect any 'stateful' conditions that might set by the script.  To refer to the containing DOM element from within an 'onclick' script, you can use "place.parentNode" instead.
!!!!!Instant "bookmarklets"
You can also use an 'onclick' link to define a "bookmarklet": a small piece of javascript that can be ''invoked directly from the browser without having to be defined within the current document.''  This allows you to create 'stand-alone' commands that can be applied to virtually ANY TiddlyWiki document... even remotely-hosted documents that have been written by others!!  To create a bookmarklet, simply define an 'onclick' script and then grab the resulting link text and drag-and-drop it onto your browser's toolbar (or right-click and use the 'bookmark this link' command to add it to the browser's menu).

*When writing scripts intended for use as bookmarklets, due to the ~URI-encoding required by the browser, ''you cannot not use ANY double-quotes (") within the bookmarklet script code.''
*All comments embedded in the bookmarklet script must ''use the fully-delimited {{{/* ... */}}} comment syntax,'' rather than the shorter {{{//}}} comment syntax.
*Most importantly, because bookmarklets are invoked directly from the browser interface and are not embedded within the TiddlyWiki document, there is NO containing 'place' DOM element surrounding the script.  As a result, ''you cannot use a bookmarklet to generate dynamic output in your document,''  and using {{{document.write()}}} or returning wiki-syntax text or making reference to the 'place' DOM element will halt the script and report a "Reference Error" when that bookmarklet is invoked.  
Please see [[InstantBookmarklets]] for many examples of 'onclick' scripts that can also be used as bookmarklets.
!!!!!Special reserved function name
The plugin 'wraps' all inline javascript code inside a function, {{{_out()}}}, so that any return value you provide can be correctly handled by the plugin and inserted into the tiddler.  To avoid unpredictable results (and possibly fatal execution errors), this function should never be redefined or called from ''within'' your script code.
!!!!!$(...) 'shorthand' function
As described by Dustin Diaz [[here|]], the plugin defines a 'shorthand' function that allows you to write:
in place of the normal standard javascript syntax:
This function is provided merely as a convenience for javascript coders that may be familiar with this abbreviation, in order to allow them to save a few bytes when writing their own inline script code.
simple dynamic output:
><script show>
	document.write("The current date/time is: "+(new Date())+"<br>");
	return "link to current user: [["+config.options.txtUserName+"]]\n";
dynamic output using 'place' to get size information for current tiddler:
><script show>
	if (!window.story) window.story=window;
	var title=story.findContainingTiddler(place).getAttribute("tiddler");
	var size=store.getTiddlerText(title).length;
	return title+" is using "+size+" bytes";
dynamic output from an 'onclick' script, using {{{document.write()}}} and/or {{{return "..."}}}
><script label="click here" show>
	document.write("<br>The current date/time is: "+(new Date())+"<br>");
	return "link to current user: [["+config.options.txtUserName+"]]\n";
creating an 'onclick' button/link that accesses the link text AND the containing tiddler:
><script label="click here" title="clicking this link will show an 'alert' box" key="H" show>
	if (!window.story) window.story=window;
	var tid=story.findContainingTiddler(place).getAttribute('tiddler');
	alert('Hello World!\nlinktext='+txt+'\ntiddler='+tid);
dynamically setting onclick link text based on stateful information:
<script label="click here">
	/* toggle "txtSomething" value */
	var on=(config.txtSomething=="ON");
	return "\nThe current value is: "+config.txtSomething;
	/* initialize onclick link text based on current "txtSomething" value */
	var on=(config.txtSomething=="ON");
<script label="click here">
	/* toggle "txtSomething" value */
	var on=(config.txtSomething=="ON");
	return "\nThe current value is: "+config.txtSomething;
	/* initialize onclick link text based on current "txtSomething" value */
	var on=(config.txtSomething=="ON");
loading a script from a source url:
> contains:
>>{{{function inlineJavascriptDemo() { alert('Hello from demo.js!!') } }}}
>>{{{displayMessage('InlineJavascriptPlugin: demo.js has been loaded');}}}
>note: When using this example on your local system, you will need to download the external script file from the above URL and install it into the same directory as your document.
><script src="demo.js" show>
	return "inlineJavascriptDemo() function has been defined"
><script label="click to invoke inlineJavascriptDemo()" key="D" show>
2010.12.15 1.9.6 allow (but ignore) type="..." syntax
2009.04.11 1.9.5 pass current tiddler object into wrapper code so it can be referenced from within 'onclick' scripts
2009.02.26 1.9.4 in $(), handle leading '#' on ID for compatibility with JQuery syntax
2008.06.11 1.9.3 added $(...) function as 'shorthand' for document.getElementById()
2008.03.03 1.9.2 corrected fallback declaration of wikifyPlainText() (fixes Safari "parse error")
2008.02.23 1.9.1 in onclick function, use string instead of array for 'bufferedHTML' (fixes IE errors)
2008.02.21 1.9.0 output from 'onclick' scripts (return value or document.write() calls) are now buffered and rendered into into a span following the script.  Also, added default 'return false' handling if no return value provided (prevents HREF from being triggered -- return TRUE to allow HREF to be processed).  Thanks to Xavier Verges for suggestion and preliminary code.
2008.02.14 1.8.1 added backward-compatibility for use of wikifyPlainText() in TW2.1.3 and earlier
2008.01.08 [*.*.*] plugin size reduction: documentation moved to ...Info tiddler
2007.12.28 1.8.0 added support for key="X" syntax to specify custom access key definitions
2007.12.15 1.7.0 autogenerate URI encoded HREF on links for onclick scripts.  Drag links to browser toolbar to create bookmarklets.  IMPORTANT NOTE: place is NOT defined when scripts are used as bookmarklets.  In addition, double-quotes will cause syntax errors.  Thanks to PaulReiber for debugging and brainstorming.
2007.11.26 1.6.2 when converting "document.write()" function calls in inline code, allow whitespace between "write" and "(" so that "document.write ( foobar )" is properly converted.
2007.11.16 1.6.1 when rendering "onclick scripts", pass label text through wikifyPlainText() to parse any embedded wiki-syntax to enable use of HTML entities or even TW macros to generate dynamic label text.
2007.02.19 1.6.0 added support for title="..." to specify mouseover tooltip when using an onclick (label="...") script
2006.10.16 1.5.2 add newline before closing '}' in 'function out_' wrapper.  Fixes error caused when last line of script is a comment.
2006.06.01 1.5.1 when calling wikify() on script return value, pass hightlightRegExp and tiddler params so macros that rely on these values can render properly
2006.04.19 1.5.0 added 'show' parameter to force display of javascript source code in tiddler output
2006.01.05 1.4.0 added support 'onclick' scripts.  When label="..." param is present, a button/link is created using the indicated label text, and the script is only executed when the button/link is clicked.  'place' value is set to match the clicked button/link element.
2005.12.13 1.3.1 when catching eval error in IE, e.description contains the error text, instead of e.toString().  Fixed error reporting so IE shows the correct response text.  Based on a suggestion by UdoBorkowski
2005.11.09 1.3.0 for 'inline' scripts (i.e., not scripts loaded with src="..."), automatically replace calls to 'document.write()' with 'place.innerHTML+=' so script output is directed into tiddler content.  Based on a suggestion by BradleyMeck
2005.11.08 1.2.0 handle loading of javascript from an external URL via src="..." syntax
2005.11.08 1.1.0 pass 'place' param into scripts to provide direct DOM access 
2005.11.08 1.0.0 initial release
!! Masterarbeiten 
!!! Mitarbeit im ~ALICE-Experiment am LHC: Messung direkter Photonen in Pb+~Pb-Kollisionen (posted January 14, 2013)
Ziel des ~ALICE-Experiment ist die Untersuchung des ~Quark-Gluon-Plasmas. Dieser Materiezustandes aus nahezu freien Quarks und Gluonen wird in Kollisionen von Bleikernen am LHC erzeugt. Unsere Gruppe arbeitet an der Messung so genannter direkter Photonen, die Rückschlüsse auf die Temperatur des ~Quark-Gluon-Plasmas erlauben. In dieser Arbeit sollen direkter Photonen anhand von Daten zu ~Blei-Blei-Kollisionen aus dem Jahr 2011 gemessen werden. Entsprechende Software ist vorhanden. Voraussetzungen sind Interesse an Kern- und Teilchenphysik sowie Programmiergrundkenntnisse. 
Contact: PD Dr. Klaus Reygers and Prof. Dr. Johanna Stachel  
!!! Mitarbeit im ~ALICE-Experiment am LHC: Messung neutraler Pionen und ~Eta-Mesonen in Pb+~Pb-Kollisionen (posted January 14, 2013)
Ziel des ~ALICE-Experiment ist die Untersuchung des ~Quark-Gluon-Plasmas. Dieser Materiezustandes aus nahezu freien Quarks und Gluonen wird in Kollisionen von Bleikernen am LHC erzeugt. In dieser Arbeit sollen neutrale Pionen mit Pb+~Pb-Daten aus dem Jahr 2011 gemessen werden. Entsprechende Software ist vorhanden. ~Pi0-Spektren hängen empfindlich vom Energieverlust von Jets im ~Quark-Gluon-Plasma ab und tragen so zu dessen Charakterisierung bei. Zudem stellen neutrale Pionen aufrund ihres Zerfalls in zwei Photonen den größten Beitrag zum Untergrund bei der Messung direkter Photonen dar. Voraussetzungen sind Interesse an Kern- und Teilchenphysik sowie Programmiergrundkenntnisse.
Contact: PD Dr. Klaus Reygers and Prof. Dr. Johanna Stachel  
!! Bachelorarbeiten
!!! Mitarbeit im ~ALICE-Experiment am LHC: Abhängigkeit der ~Pi0-Spektren von der Anzahl produzierter Teilchen in p+p-Kollisionen (posted January 14, 2013)
Ziel des ~ALICE-Experiment ist die Untersuchung des ~Quark-Gluon-Plasmas. Dieser Materiezustandes aus nahezu freien Quarks und Gluonen wird in Kollisionen von Bleikernen am LHC erzeugt. Ein gutes Verständnis von Phänomen in ~Proton-Proton-Kollisionen ist Voraussetzung für die Interpretation der Ergebnisse in ~Blei-Blei-Kollisionen. Deshalb soll in dieser Arbeit untersucht werden, wie die Teilchenerzeugung (in diesem Fall die Produktion neutraler Pionen) von der der Gesamtzahl der produzierten Teilchen abhängt. Entsprechene Software ist vorhanden. Voraussetzung sind Interesse an Kern- und Teilchenphysik sowie Programmiergrundkenntnisse.
Contact: PD Dr. Klaus Reygers and Prof. Dr. Johanna Stachel  
<div id='header' class='header'>
    <div id='title'>
        <div id='topMenu' refresh='content' tiddler='MainMenu'></div>
        <span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
        <span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>


<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
<div class='clearAll'></div>
<div id='contentFooter' refresh='content' tiddler='contentFooter'></div>
Here's a selection of my papers:
# ''Blast-wave description of Υ elliptic flow at energies available at the CERN Large Hadron Collider'', Klaus Reygers, Alexander Schmah, Anastasia Berdnikova, and Xu Sun, Phys. Rev. C 101, 064905 (2020) ([[arXiv|]], [[journal server|]])
# ''Strangeness enhancement due to string fluctuations'', H. J. Pirner, B. Z. Kopeliovich, and K. Reygers, Phys. Rev. D 101, 114010 (2020)([[arXiv|]], [[journal server|]])
#  ''Entropy production in pp and ~Pb-Pb collisions at energies available at the CERN Large Hadron Collider'', Patrick Hanus, Klaus Reygers, and Aleksas Mazeliauskas, Phys. Rev. C 100, 064903 (2019) ([[arXiv|]], [[journal server|]])
# ''Parametric estimate of the relative photon yields from the Glasma and
 the ~Quark-Gluon Plasma in heavy-ion collisions'', J. Berges, K. Reygers, N. Tanji and R. Venugopalan, Phys. Rev. C95, 054904 (2017) ([[arXiv|]], [[journal server|]])
# ''Direct photon elliptic flow in ~Pb-Pb collisions at √s~~NN~~ = 2.76 ~TeV'', ALICE Collaboration, Phys.Lett. B789 (2019) 308, ([[arXiv|]], [[journal server|]])
# ''Direct photon production in ~Pb-Pb collisions at √s~~NN~~ = 2.76 ~TeV'', ALICE Collaboration, Physics Letters B 754 (2016) 235, ([[arXiv|]], [[journal server|]], [[supplemental figures|]])
# ''Neutral pion production at midrapidity in pp and Pb–Pb collisions at √s~~NN~~ = 2.76 ~TeV'', ALICE Collaboration, Eur. Phys. J. C (2014) 74:3108 ([[arXiv|]], [[journal server|]])
# ''J/Psi in high-multiplicity pp collisions: Lessons from pA collisions'', Phys.Rev. D88 (2013) 11, 116002 ([[arXiv|]], [[journal server|]])
# ''Neutral pion and η meson production in proton-proton collisions at √s = 0.9 ~TeV and √s =7 ~TeV'', ALICE Collaboration, Phys. Lett. B 717 (2012), 162, ([[arXiv|]], [[journal server|]])
# ''~Light-Cone QCD Plasma'', ~Hans-Jürgen Pirner, Klaus Reygers, Phys.Rev. D86 (2012) 034005, ([[arXiv|]], [[journal server|]])
#  ''~Charged-Particle Multiplicity in ~Proton-Proton Collisions'', Jan Fiete ~Grosse-Oetringhaus, Klaus Reygers, J.Phys.G37:083001, 2010 ([[arXiv|]], [[journal server|]])
# ''Glauber modeling in high energy nuclear collisions'', Michael L. Miller, Klaus Reygers, Stephen J. Sanders, Peter Steinberg, Ann.Rev.Nucl.Part.Sci.57:205-243,2007 ([[arXiv|]], [[journal server|]])
#''Suppression pattern of neutral pions at high transverse momentum in Au+Au collisions at √s~~NN~~ = 200 ~GeV and constraints on medium transport coefficient'', Phys.Rev.Lett.101:232301,2008, ([[arXiv|]], [[journal server|]])
# ''Onset of π^^0^^ Suppression Studied in Cu+Cu Collisions at √s~~NN~~=22.4, 62.4, and 200 ~GeV'', PHENIX Collaboration, Phys.Rev.Lett.101:162301,2008 ([[arXiv|]], [[journal server|]])
# ''Suppression of High-p~~T~~ Neutral Pion Production in Central Pb+Pb Collisions at √s~~NN~~=17.3  ~GeV Relative to p+C and p+Pb Collisions'', ~WA98 Collaboration, Phys.Rev.Lett.100:242301,2008 ([[arXiv|]],[[journal server|]])
# ''Measurement of direct photon production in p + p collisions at √s = 200-~GeV'', PHENIX Collaboration, Phys.Rev.Lett.98:012002,2007 ([[arXiv|]], [[journal server|]])
# ''Centrality dependence of direct photon production in √s~~NN~~ = 200-~GeV Au + Au collisions'', PHENIX Collaboration, Phys.Rev.Lett.94:232301,2005 ([[arXiv|]], [[journal server|]])
# ''Mid-rapidity neutral pion production in proton proton collisions at √s = 200~GeV, 
PHENIX Collaboration'', Phys.Rev.Lett.91:241803,2003 ([[arxiv|]], [[journal server|]])
# ''Suppressed π^^0^^ production at large transverse momentum in central Au+ Au collisions at  √s~~NN~~ = 200 ~GeV'', PHENIX Collaboration, Phys.Rev.Lett.91:072301,2003 ([[arXiv|]], [[journal server|]])
# ''Scaling of particle and transverse energy production in ^^208^^Pb + ^^208^^Pb collisions at 158~AGeV'', ~WA98 Collaboration, Eur.Phys.J.C18:651-663,2001, ([[arxiv|]], [[journal server|]]) (this paper summarizes results of my Ph.D. thesis)

Here's a comprehensive list of my publications from [[inSPIRE HEP|]] .
! ~Quark-Gluon Plasma Physics: From SPS to LHC

!!  Lecturers / Dates
Prof. Dr. J. Stachel, PD Dr. Klaus Reygers
Di, 11:00 - 13:00, PI, kleiner Hörsaal

!! Contents
 1. Introduction
 2. Kinematic Variables
 3. Basics of NN and AA Collisions
 4. Thermodynamics of the QGP
      4.1 QGP in the MIT Bag Model
      4.2 Lattice Results
 5. Statistical Model and Strangeness
 6. Space-time Evolution of the QGP
      6.1 Bjorken Picture, energy density
      6.2 Hydrodynamic evolution, spectra and azimuthal correlations 
      6.3 HBT
 7. Hard Scattering, Jets and Jet Quenching 
 8. J/Psi and Quarkonia
 9. Thermal Photons and Dileptons  
! Links
[img(80px,auto)[./pics/ALICE-logo.png]] <html>&emsp;</html>   [img(100px,auto)[./pics/HighRR-bw.png]] <html>&emsp;</html> [img(160px,auto)[./pics/SFB1225-Logo.png]]
* [[ALICE experiment at the Large Hadron Collider|]]
*  [[GRK 2058 HighRR - High Resolution and High Rate Detectors in Nuclear and Particle Physics |]]
*  [[SFB 1225 ISOQUANT - Isolated quantum systems and universality in extreme conditions|]]
! Articles
* [[Cern Courier, Penetrating and puzzling: photons shed light on heavy-ion collisions (2015)|]]
* [[Welt der Physik: Projekt im Januar: Quark-Gluon-Plasma im LHC-Beschleuniger (2015)|]]
* [[Physiker simulieren Geburtsstunde des Universums, Deutschlandfunk (2013)|]]
* [[Why p-Pb collisions at the LHC (2012)|]]

! General information
I am interestied in learning something about QCD, the theory of strongly interacting matter, from investigating nucleus-nucleus collisions at ultra-relativistic energies. Properties of QCD at high momentum transfer have been studies in detail in p+p and e+e- collisions. Collisions of nuclei ('heavy ions') allow to study QCD matter at moderate momentum transfer at high pressure and density. New phenomena including the transition between a quark-gluon plasma (QGP) and a hadron gas are expected in this regime.

I have participated in the [[WA98|]] experiment at the CERN SPS, and the [[PHENIX|]] experiment at RHIC.  One of the major discoveries at RHIC is 'jet quenching', the suppression of hadron at high-pT in central A+A collisions with respect to scaled p+p collisions. The so far best explanation for this suppression is the energy-loss of quarks and gluons from hard-scattering processes in the QGP before they fragment into the observed hadrons. This is illustrated in the animation below.
Currently I am a member of the [[Alice|]] collaboration which focuses on heavy-ion collisions at the LHC.

[[Physikalisches Institut, University of Heidelberg|]]
[[Klaus Reygers|Contact]]
/*Bleach Theme for TiddlyWiki*/
/*Design and CSS by Saq Imtiaz*/
/*Version 1.0*/
body {
 background: #fff;

margin: 2.5em auto;
# width:759px;
line-height: 1.6em;
border:1px solid #999;
# font-size: 11px;
font-size: 14px;
font-family: Lucida Grande, Tahoma, Arial, Helvetica, sans-serif;
color: #555;height:1%;

.clearAll {clear:both;}
.tagClear {clear:none;}

#header {background:#fff; border-bottom:1px solid #999;padding: 2.5em 2em 1.6em 2em; height:1%;

.siteTitle {
font-family: 'Trebuchet MS' sans-serif;
font-weight: bold;
# font-size: 32px;
font-size: 24px;
color: #EF680E;
background-color: #FFF; 

.siteSubtitle {
	font-size: 1.0em;
#color: #999999; margin-top:0.5em !important; margin-top:1em; margin-left:3em;
color: #999999; margin-top:0.5em !important; margin-top:1em; margin-left:0em;

#topMenu { positon:relative; float:right; display:inline; margin-right:2em;}
#topMenu br {display:none; }
#topMenu { background: #fff; color:#000;padding: 1em 1em;}
#topMenu a, #topMenu .tiddlyLink, #topMenu .button {margin:0 0.5em; color:#666;}



#displayArea {margin-left:1.35em; margin-right:16.3em; margin-top:0; padding-top:1em; padding-bottom:10px;}


#sidebar {position:relative;float:right; line-height: 1.4em; border-left:0px solid#000; display:inline; background:#fff; right:0; 
width: 16em;}

#sidebarOptions {padding-left:0.5em; border-left:1px solid #999;padding-top:1em;}

#sidebarOptions a {
			text-decoration: none;}
#sidebarOptions	a:hover, #sidebarOptions .button:active {
			background-color: #fff;border:1px solid #fff;
#sidebarOptions input {border:1px solid #999; width:10em;}

#sidebarTabs {border-left:1px solid #999;}
#sidebarTabs .tabContents {background:#fff;}
#sidebarTabs .tabContents .tiddlyLink, #sidebarTabs .tabContents .button{color:#999;}
#sidebarTabs .tabContents .tiddlyLink:hover,#sidebarTabs .tabContents .button:hover{color:#333;background:#fff;border:none;}

#sidebarTabs .tabContents .button:hover, #sidebarTabs .tabContents .highlight, #sidebarTabs .tabContents .marked, #sidebarTabs .tabContents a.button:active{color:#333;background:#fff}

.tabSelected{color:#fff; background:#999;}

.tabUnselected {
 background: #ccc;

 .tabSelected, .tabSelected:hover {
 color: #fff;
 background: #999;
 border: solid 1px #999;

#sidebarTabs .tabUnselected:hover { border-bottom: none;padding-bottom:3px;color:#4F4B45}

 .tabUnselected {
 color: #999;
 background: #eee;
 border: solid 1px #ccc;

#sidebarTabs .tabUnselected { border-bottom: none;padding-bottom:3px;}
#sidebarTabs .tabSelected{padding-bottom:3px;}

#sidebarOptions .sliderPanel {
	background: #fff; border:none;
	font-size: .9em;
#sidebarOptions .sliderPanel a {font-weight:normal; }
#sidebarOptions .sliderPanel input {border:1px solid #999;width:auto;}
#sidebarOptions .sliderPanel .txtOptionInput {border:1px solid #999;width:9em;}

#sidebarTabs .tabContents {border-right:0; border-left:0; border-bottom:1px solid#999; padding-left:4px;}
 .listLink,#sidebarTabs .tabContents {line-height:1.5em;}
 .listTitle {color:#666;}

#sidebarTabs .tabUnselected:hover { border-bottom: none;padding-bottom:3px;color:#4F4B45}
#sidebarTabs .txtMoreTab .tabContents {border-left:1px solid #999;}
#sidebarTabs .txtMainTab .tabContents li a{font-weight:bold;}

.title {color:#EF680E;}
.subtitle, .subtitle a { color: #999999; font-size: 1em;margin:0.2em; font-variant: small-caps;}
.shadow .title{color:#999;}

.selected .toolbar a {color:#999999;}
.selected .toolbar a:hover {color:#333; background:transparent;border:1px solid #fff;}

.toolbar .button:hover, .toolbar .highlight, .toolbar .marked, .toolbar a.button:active{color:#333; background:transparent;border:1px solid #fff;}

* html .viewer pre {
	margin-left: 0em;

* html .editor textarea, * html .editor input {
	width: 98%;

		a,#sidebarOptions .sliderPanel a{
			text-decoration: none;

		a:hover,#sidebarOptions .sliderPanel a:hover {
			background-color: #fff; 
border-bottom:1px dotted #EF680E;

.viewer .button, .editorFooter .button{
	color: #555;
	border: 1px solid #EF680E;

.viewer .button:hover, 
.editorFooter .button:hover{
	color: #fff;
	background: #EF680E;
	border-color: #EF680E;

.viewer .button:active, .viewer .highlight,.editorFooter .button:active, .editorFooter .highlight{color:#fff; background:#DF691B;border-color:#DF691B;}

		#topMenu a, #topMenu .button {
			padding: 20px 10px; border:none; font-weight:bold;

		#topMenu a:link{
			text-decoration: none;
		#topMenu a:hover, #topMenu .button:hover {
			background-color: #fff;

.tagging, .tagged {
	border: 1px solid #eee;
	background-color: #F7F7F7;

.selected .tagging, .selected .tagged {
	background-color: #eee;
	border: 1px solid #BFBAB3;

 .tagging .listTitle, .tagged .listTitle {
	color: #bbb;

.selected .tagging .listTitle, .selected .tagged .listTitle {
	color: #666; 

.tagging .button, .tagged .button {
.selected .tagging .button, .selected .tagged .button {

.highlight, .marked {background:transparent; color:#111; border:none; text-decoration:underline;}

.tagging .button:hover, .tagged .button:hover, .tagging .button:active, .tagged .button:active {
		border: none; background:transparent; text-decoration:underline; color:#333;

.popup {
	background: #999;
	border: 1px solid #999;

.popup li.disabled {
	color: #000;

.popup li a, .popup li a:visited {
	color: #eee;
	border: none;

.popup li a:hover {
	background: #6F6A68;
	color: #fff;
	border: none;

		.tiddler {
			padding-bottom: 40px;
			/*border-bottom: 1px solid #999; */

#messageArea {
	border: 4px solid #999;
	background: #f5f5f5;
	color: #999;

#messageArea a:hover { background:#f5f5f5; border:none;}

#messageArea .button{
	color: #666;
	border: 1px solid #CC6714;

#messageArea .button:hover {
	color: #fff;
	background: #999;
	border-color: #999;

.viewer blockquote {
	border-left: 5px solid #888;

.viewer table {
	border: 2px solid #888;

.viewer th, thead td {
	background: #888;
	border: 1px solid #888;
	color: #fff;
.viewer pre {
	border: 1px solid #999;
	background: #f5f5f5;

.viewer code {
	color: #111; background:#f5f5f5;

.viewer hr {
	border-top: dashed 1px #999;

.editor input {
	border: 1px solid #888;

.editor textarea {
	border: 1px solid #888;

.tabContents {background:#f7f7f7;}

h1,h2,h3,h4,h5 { color: #555; background: transparent; padding-bottom:2px; font-family: Arial, Helvetica, sans-serif; }
h1 {font-size:18px;}
h2 {font-size:16px;}
h3 {font-size: 14px;}

#contentFooter {background:#999; color:#dfdfdf; clear: both; padding: 0.5em 1em; }

		#contentFooter a {
			color: #dfdfdf;
			border-bottom: 1px dotted #fff; font-weight:normal;
		#contentFooter a:hover {
			color: #FFFFFF;

.viewer table.borderless,
.viewer table.borderless * {
border: 0;

.leftpad img { padding-left:2em; }
.rightpad img { padding-right:2em; } 
* ''Teilchenphysik –&nbsp;
Was wissen wir über die Grundbausteine des Universums?'', Schülertag der Fakultät für Physik und Astronomie der Uni Heidelberg, 20 May 2017 ([[pdf|./talks/2017/schuelertag/Bausteine_der_Materie.pdf]])
* ''Pre-equilibrium photon production and the direct-photon puzzle'', Seminar [['Physics of the Quark Gluon Plasma’|]], Heidelberg, SS2016 ([[pdf|]])
* ''Ultra-Relativistic Heavy-Ion Physics:
 A Brief Introduction'', Arbeitstreffen Kernphysik, 2016 ([[pdf|]])
* ''Direct Photon Physics with ALICE'', New perspectives on Photons and Dileptons in Ultrarelativistic ~Heavy-Ion Collisions at RHIC and LHC, Trento, December 2015 ([[pdf|./talks/2015/trento/reygers_ect_2015.pdf]])
* ''Das ~ALICE-Experiment: Zeitreise zum Urknall'', Schülertag der Fakultät für Physik und Astronomie der Uni Heidelberg, 9 May 2015 ([[pdf|./talks/2015/schuelertag/reygers_schuelertag_hd_2015.pdf]])
* ''~QCD-Materie unter extremen Bedingungen: 
 die Untersuchung des ~Quark-Gluon-Plasmas 
 mit dem ~ALICE-Experiment'' ([[pdf|]]), Heidelberg, PIzzA night, 26.1.2015
* ''Direct Photon Results from ALICE
 and the Direct Photon Puzzle'' ([[pdf|]]), Ab initio approaches in many-body QCD confront heavy-ion experiments, Heidelberg, December 15, 2014
* ''Direct Photon and ~High-pT Particle Production with ALICE'' ([[pdf|]]), Workshop on Discovery Physics at the LHC - Kruger park workshop 2014, 5 December 2014
* ''Electromagnetic probes: Recent Developments'' ([[pdf|]]), Quark Matter Student lecture, Darmstadt, May 2014
* ''The ~Direct-Photon Flow Puzzle'', Tübingen, 4 December 2013 ([[pdf|./talks/2013/tuebingen/reygers_tuebingen_2013.pdf]])
* ''Das ~ALICE-Experiment: Zeitreise zum Urknall'', Schülertag der Fakultät für Physik und Astronomie der Uni Heidelberg, 4. Mai 2013 ([[pdf|./talks/2013/schuelertag/reygers_schuelertag_hd_2013.pdf]])
* ''How to measure the temperature of the quark-gluon plasma? Thermal photons with ALICE.'', palaver afternoon at the Physikalisches Institut, Heidelberg, April 17, 2013 ([[pdf|./talks/2013/pi_palaver/reygers_pi_palaver_2013.pdf]])
*''Highlights from ALICE'', seminar at Universidad Técnica Federico Santa María, Valparaíso, April 10, 2013 ([[pdf|./talks/2013/valparaiso/reygers_valparaiso_2013.pdf]])
*''Highlights from ALICE'', Plenarvortrag ~DPG-Tagung Dresden, March 2013 ([[pdf|./talks/2013/dpg/reygers_dpg_2013.pdf]])
*''Quark and Gluons in Heavy-ion collisions: A Quick Tour of Recent Results'', [[DIS 2012|]], March 2012 ([[pdf|./talks/2012/dis/reygers_dis_2012_v4.pdf]]), [[proceedings|]]
*''Particle Production in p+p and A+A and the ~Maximum-Entropy Principle'', ~DPG-Tagung Mainz, March 2012 ([[pdf|./talks/2012/dpg/reygers_dpg_2012.pdf]])
*''Arbeitstreffen Kernphysik, Summary ~Heavy-Ions'', February 2012 ([[pdf|./talks/2012/schleching/reygers_schleching_2012.pdf]])
*''Soft QCD Results from ALICE'', [[QCD@LHC 2011|]], August 2011 ([[pdf|./talks/2011/qcd_at_lhc/reygers_qcd_at_lhc_2011.pdf]])
*''Production of Neutral Pions and Eta-­Mesons in pp Collisions Measured with ALICE'', [[Quark Matter 2011|]], May 2011 ([[pdf|./talks/2011/quarkmatter/reygers_qm2011_pi0_eta_in_pp.pdf]]), [[proceedings|]]
*''The QGP at RHIC'', EMMI seminar on QGP and Cold Atoms, July 2010 ([[pdf|./talks/2010/reygers_qgp_at_rhic.pdf]])
* ''Quarks, Gluonen und das Quark‐Gluon‐Plasma: Das ALICE‐Experiment am LHC'', [[PIzzA-Night|]], Heidelberg, Dezember 2009 ([[pdf|./talks/2009/alice-pizza-night.pdf]])
* ''Jet Quenching in Heavy‐Ion Collisions'', Particle Physics Colloquium, Heidelberg, December 8, 2009 ([[pdf|./talks/2009/hd_colloquium_jet_quenching.pdf]])
* ''Das ALICE‐Experiment: Zeitreise zum Urknall - Schwerionenphysik in 10 Minuten -'', Vortrag im Rahmen der Sommerexkursion der jDPG, Heidelberg, 2009 ([[pdf|./talks/2009/Schwerionenphysik.pdf]],[[keynote|./talks/2009/Schwerionenphysik.key]])
* ''Hard Scattering and the Search for the QGP in ~Nucleus-Nucleus Collisions'', Heidelberg, 2009 ([[pdf|./talks/2009/reygers_hard_scattering_and_the_qgp.pdf]])
* ''Direct Photons at RHIC'', Photon2009, DESY/Hamburg, May 11 - 15, 2009 ([[pdf|./talks/2009/reygers_photon2009.pdf]], [[proceedings|]])
* ''Quark Matter 2009 Summary: High pT and Jets'', Heidelberg, Lunch Meeting, May 2009 ([[pdf|./talks/2009/reygers_qm_summary_high_pt.pdf]]) 
* ''Multiple Partonic Interaction - A brief Introduction'', Heidelberg Jet Meeting, March 2009 ([[pdf|./talks/2009/reygers_mpi_intro_2009.pdf]])
* ''Harte Streuprozesse und die Suche nach dem QGP in ~Kern-Kern-Kollisionen'', Frankfurt, 2009 ([[pdf|./talks/2009/reygers_harte_prozesse_und_das_qgp.pdf]]) 
* ''Die Entdeckung der Teilchennatur des Lichts'', Münster, November 2005 ([[pdf|./talks/2005/Teilchennatur_des_Lichts.pdf]]) 
{{rightpad{[<img(30%,auto)[]]}}} I supervise the [[Advanced Lab Course|]] for physics at the University of Heidelberg.

Below you find some of my lectures:
! 2020
* [[Machine learning for physicists|]] (in German)
* [[Schlüsselexperimente der Teilchenphysik|]]

! 2019
* SS 2019:  ''~Quark-Gluon Plasma Physics '' ([[Website of the lecture|]])
* SS 2019: ''Seminar on 
Advanced Analysis Methods for Heavy-Ion Data'': [[Introduction: Multivariate Analysis and Machine Learning (pdf)|]])
* WS 2019/20: ''Seminar on 
Advanced Analysis Methods for Heavy-Ion Data'': [[Introduction to symbolic regression (pdf)|]])

! 2017
* WS 2017/18: ''Statistical Methods in Particle Physics '' ([[website|]]) <br><br>
## [[Basics concepts|]]
## [[Probability distributions|]]
## [[Uncertainty|]]
## [[Monte Carlo and numerical methods|]]
## [[Parameter estimation|]]
## [[Hypothesis testing|]]
## [[Confidence limits and intervals|]]
## [[Multivariate analysis|]]
## [[Unfolding|]] <br><br>
* SS 2017: ''~Quark-Gluon Plasma Physics '' ([[Website of the lecture|]])

! 2016
* ''Ultra-Relativistic Heavy-Ion Physics:
 A Brief Introduction'', three lectures given at the 'Arbeitstreffen Kernphysik' in Schleching, February 2016 ([[pdf|]])
** Outline:
*** Introduction: Motivation and history
*** Thermodynamics of the QGP
*** Global properties of heavy-ion collisions
*** Strangeness and the statistical model
*** Space-time evolution of the QGP
*** Jet quenching
*** J/ψ and Quarkonia
*** Thermal photons and lepton pairs
! 2015
* WS 2015/16: ''Seminar: Nobel Prizes in Particle Physics'' ([[Website|]])
* SS 2015: ''~Quark-Gluon Plasma Physics - from fixed target to LHC'' ([[Website of the lecture|]])
! 2014
* SS 2014:''Journal club: Ultra-relativistic heavy-ion collisions and the physics of the quark-gluon plasma'' ([[Website of the journal club|]])
! 2013
* SS 2013: ''~Quark-Gluon Plasma Physics - from fixed target to LHC'' ([[Website of the lecture|]])
! 2012
* ''Direct Photons in p+p and A+A Collisions: A Short Introduction'', [[Two Lectures for the Helmholtz Research School - Quark Matter Studies|]], April 2012
** Two 90 min lectures (one file) ([[pdf|./lectures/2012/h-qm-photons/reygers_hqm_photons_2012.pdf]])
** Questions ([[pdf|./lectures/2012/h-qm-photons/reygers_hqm_photons_questions.pdf]])
! 2011
* WS 2011/12: ''Advanced Topics in Particle Physics: Physics at the LHC'' (together with Dr. R. Stamen and J. van Tilburg, [[Website of the lecture|]])
* SS 2011: ''~Quark-Gluon Plasma Physics - from fixed target to LHC'' (together with Prof. Dr. J. Stachel, [[Website of the lecture|]])
! 2010
* ''Data Analysis Methods'' ([[H-QM website|]]), Lectures for the Helmholtz Research School - Quark Matter Studies, November 2010
** Part 1: Invariant Mass Analyses (Example: &pi;^^0^^ analysis) ([[pdf|./lectures/2010/Powerweek/reygers_power_week_2010_inv_mass.pdf]])
** Part 2: Statistics (Error Propagation, Maximum Likelihood Method, Least Squares)  ([[pdf|./lectures/2010/Powerweek/reygers_power_week_2010_statistics.pdf]])
** Initial versions of root macros for [[hands-on exercises|./lectures/2010/Powerweek/hands-on.tgz]]
* ''First p+p Results from Alice'' ([[pdf|./lectures/2010/hd-graduate-days-2010/reygers_alice_first_physics.pdf]]), Graduate Days  Of the Graduate School of Fundamental Physics, Heidelberg, 4-8 October, 2010
* ''QGP and High‐p~~T~~ Physics'', Helmholtz Graduate School of Fundamental Physics Winter School Obergurgl 2010, January 29 ‐ February 2, 2010
** Lecture 1: The Physics of the QGP ([[pdf|./lectures/2010/Obergurgl2010/obergurgl_reygers_1.pdf]])
** Lecture 2: Jets and Jet Quenching ([[pdf|./lectures/2010/Obergurgl2010/obergurgl_reygers_2.pdf]])
! 2009
* [[Probing the High Energy Frontier at the LHC|]] together with U. Husemann and U. Uwer
** ''Heavy‐Ion Physics with ALICE, Lecture 1'' ([[pdf|./lectures/2009/lhc2009/lhc_reygers_1.pdf]])
** ''Heavy‐Ion Physics with ALICE, Lecture 2'' ([[pdf|./lectures/2009/lhc2009/lhc_reygers_2.pdf]])

* ''High‐Energy Collisions with ALICE at the LHC'', Graduate Days of the Graduate School of Fundamental Physics, Heidelberg, October 5-9, 2009
** Lecture 1: Introduction ([[pdf|./lectures/2009/hd-graduate-days-2009/hd_grad_days_2009_01-intro.pdf]])
** Lecture 2: The Alice Experiment ([[pdf|./lectures/2009/hd-graduate-days-2009/hd_grad_days_2009_02-alice-experiment.pdf]])
** Lecture 3: Jets in e+e‐ and p+p(pbar) Collisions ([[pdf|./lectures/2009/hd-graduate-days-2009/hd_grad_days_2009_03-elementary-coll.pdf]])
** Lecture 4: Hard Scattering and Jets in A+A Collisions ([[pdf|./lectures/2009/hd-graduate-days-2009/hd_grad_days_2009_04-AA-coll.pdf]])

|Author|Eric Shulman|
|Description|show/hide right sidebar (SideBarOptions)|
<<tiddler ToggleRightSidebar>>
<<tiddler ToggleRightSidebar with: label tooltip>>
Try it: <<tiddler ToggleRightSidebar##show
	with: {{config.options.chkShowRightSidebar?'►':'◄'}}>>
copy/paste the following settings into a tiddler tagged with <<tag systemConfig>> and then modify the values to suit your preferences:
<<tiddler {{
	var co=config.options;
	if (co.chkShowRightSidebar===undefined) co.chkShowRightSidebar=true;
	var sb=document.getElementById('sidebar');
	var da=document.getElementById('displayArea');
	if (sb) {'block':'none';'':'1em';
'';}}>><html><nowiki><a href='javascript:;' title="$2"
	var co=config.options;
	var opt='chkShowRightSidebar';
	var show=co[opt]=!co[opt];
	var sb=document.getElementById('sidebar');
	var da=document.getElementById('displayArea');
	if (sb) {'block':'none';'':'1em';
	var labelShow=co.txtToggleRightSideBarLabelShow||'&#x25C4;';
	var labelHide=co.txtToggleRightSideBarLabelHide||'&#x25BA;';
	if (this.innerHTML==labelShow||this.innerHTML==labelHide) 
	this.title=(show?'hide':'show')+' right sidebar';
	var sm=document.getElementById('storyMenu');
	if (sm) config.refreshers.content(sm);
	return false;
%/<<tiddler {{
	var src='ToggleRightSidebar';
}} with: {{
	var co=config.options;
	var labelShow=co.txtToggleRightSideBarLabelShow||'&#x25C4;';
	var labelHide=co.txtToggleRightSideBarLabelHide||'&#x25BA;';
}} {{
	var tip=(config.options.chkShowRightSidebar?'hide':'show')+' right sidebar';
<div class='toolbar' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='toolbar' macro="showWhen readOnly">
 <!-- cut-down toolbar for web users -->
 <div macro='toolbar closeTiddler permalink'></div>
<div class='toolbar' macro="hideWhen readOnly">
 <!-- regular toolbar for me  -->
  <div macro='toolbar closeTiddler closeOthers +editTiddler deleteTiddler permalink references jump'></div>
<div class='title' macro='view title'></div>
<div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date'></span> (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span>)</div>
<div class='subtitle'>Last modified <span macro='view modified date'></span> </div>
<div class='tagging' macro='tagging'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
Klaus Reygers, 2020 | [[Impressum|]] | [[Datenschutzerklärung|]]   <<tiddler ToggleRightSidebar >>
if(config.options.txtUserName != "KlausReygers") {
	readOnly = true;
	showBackstage = false;