﻿<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[AudioHQ - foobar2000: Title Formatting]]></title>
	<link rel="self" href="https://www.audiohq.de/extern.php?action=feed&amp;tid=1090&amp;type=atom" />
	<updated>2005-07-24T18:41:14Z</updated>
	<generator>PunBB</generator>
	<id>https://www.audiohq.de/viewtopic.php?id=1090</id>
		<entry>
			<title type="html"><![CDATA[foobar2000: Title Formatting]]></title>
			<link rel="alternate" href="https://www.audiohq.de/viewtopic.php?pid=5220#p5220" />
			<content type="html"><![CDATA[<p>Zentrales Element von <a href="https://www.audiohq.de/viewtopic.php?id=14">foobar2000</a> ist eine integrierte Formatierungssprache. Mit Title Formatting werden u.a. die Inhalte und Darstellung verschiedener Elemente der Oberfläche wie Titelleiste, Statusleiste, <a href="https://www.audiohq.de/viewtopic.php?id=1089">Album List</a> oder Playlist definiert, <a href="https://www.audiohq.de/viewtopic.php?id=11">Tagging-Operationen</a> gesteuert, das Schema von Dateinamen beim <a href="https://www.audiohq.de/viewtopic.php?id=1225">Umbenennen</a>, <a href="https://www.audiohq.de/viewtopic.php?id=13">Konvertieren</a> oder der <a href="https://www.audiohq.de/viewtopic.php?id=20414">Suche nach Album Art</a> festgelegt, und Tracks für die <a href="https://www.audiohq.de/viewtopic.php?id=12">ReplayGain-Analyse</a> oder die zufällige Wiedergabe (Shuffle) nach Alben gruppiert.</p><p>Da auch viele Komponenten darauf zurückgreifen, zieht sich Title Formatting wie ein roter Faden durch foobar2000. Um alle Möglichkeiten voll ausschöpfen zu können, sind grundlegende Kenntnisse unentbehrlich. Neue Nutzer sollten sich von Anfang an damit auseinandersetzen.</p><br /><p><strong>Inhaltsverzeichnis</strong></p><p><a href="#reference">Referenz</a><br /><a href="#metdata">Zugriff auf Tags</a><br /><a href="#technical">Zugriff auf technische Informationen</a><br /><a href="#missing">Behandlung von nicht vorhandenen Feldern</a><br /><a href="#escape">Klammern selbst ausgeben</a><br /><a href="#functions">Funktionen</a><br /><a href="#remappings">Field Remappings</a><br />* <a href="#artist">%artist%</a><br />* <a href="#album_artist">%album artist%</a><br />* <a href="#track_artist">%track artist%</a><br />* <a href="#tracknumber">%tracknumber%</a><br />* <a href="#title">%title%</a></p><br /><p><a id="reference"><strong>Referenz</strong></a></p><p>Ziel dieser Anleitung ist es, die wichtigsten Grundlagen zu vermitteln. Eine Auflistung aller Felder und Funktionen erhalten Sie aus dem Programm heraus über das Menü <span style="color: green">Help | Title Formatting Help</span> oder online im <a href="http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Title_Formatting_Reference">offiziellen Wiki</a>. </p><br /><p><a id="metdata"><strong>Zugriff auf Tags</strong></a></p><p>Title Formatting ermöglicht den Zugriff auf die Tags von Audiodateien. Dabei kann es sich zum Beispiel um Playlist-Einträge handeln, oder um die momentan abgespielte Datei, die in Titel- und Statusleiste formatiert wird. Um auf ein bestimmtes Feld zuzugreifen, setzen Sie den Feldnamen in Prozentzeichen:<br /></p><div class="quotebox"><blockquote><p>%title%</p></blockquote></div><p>Bei Anwendung auf einen bestimmten Track fügt foobar2000 den Titel entsprechend ein:<br /></p><div class="quotebox"><blockquote><p>White Shadows</p></blockquote></div><p>Auch mehrere Felder in einem Format sind möglich:<br /></p><div class="quotebox"><blockquote><p>%artist% - %album% - %tracknumber% - %title%</p></blockquote></div><p>Wird zum Beispiel zu:<br /></p><div class="quotebox"><blockquote><p>Coldplay - X&amp;Y - 03 - White Shadows</p></blockquote></div><p>Statischer Text wie Bindestriche, die in der Sprache ohne spezielle Bedeutung sind, wird so wie er dasteht ausgegeben. Ob Sie die Feldnamen groß oder klein schreiben, spielt keine Rolle, durchgängige Kleinschreibung hat sich aber eingebürgert.</p><br /><p><a id="technical"><strong>Zugriff auf technische Informationen</strong></a></p><p>Auch für andere Angaben sind entsprechende Felder vorhanden:<br /></p><div class="quotebox"><blockquote><p>%codec%, %bitrate% kbps, %samplerate% Hz</p></blockquote></div><br /><p><a id="missing"><strong>Behandlung von nicht vorhandenen Feldern</strong></a></p><p>Existiert ein Feld nicht, dann wird ein Fragezeichen zurückgegeben, um darauf aufmerksam zu machen. Folgendes Format:<br /></p><div class="quotebox"><blockquote><p>%tracknumber%. %title%</p></blockquote></div><p>würde bei Nichtvorhandensein einer Tracknumber zu:<br /></p><div class="quotebox"><blockquote><p>?. White Shadows</p></blockquote></div><p>Um dies zu verhindern und fehlende Felder sowie deren angrenzende Zeichen zu ignorieren, setzen Sie diese in eckige Klammern:<br /></p><div class="quotebox"><blockquote><p>[%tracknumber%. ]%title%</p></blockquote></div><p>Ist ein innerhalb von eckigen Klammern angegebenes Feld vorhanden, dann wird der gesamte Text innerhalb der Klammern angezeigt:<br /></p><div class="quotebox"><blockquote><p>03. White Shadows</p></blockquote></div><p>Ist kein zwischen eckigen Klammern angegebenes Feld vorhanden, dann wird alles, was zwischen ihnen steht, ignoriert. Als Ergebnis erhiellten Sie dann z.B. nur den Titel:<br /></p><div class="quotebox"><blockquote><p>White Shadows</p></blockquote></div><br /><p><a id="escape"><strong>Klammern selbst ausgeben</strong></a></p><p>Um runde und eckige Klammern sowie andere Steuerzeichen selbst darzustellen, müssen Sie diese in Anführungszeichen setzen:<br /></p><div class="quotebox"><blockquote><p>[&#039;[&#039;%date%&#039;]&#039; ]%album%</p></blockquote></div><br /><p><a id="functions"><strong>Funktionen</strong></a></p><p>Alternativ können Sie über Funktionen einen alternativen Text für fehlende Felder anzeigen:<br /></p><div class="quotebox"><blockquote><p>$if2(%artist%,Unknown Artist)</p></blockquote></div><p>Bei $if2 handelt es sich um eine Kurzform der aus Programmiersprachen bekannten <a href="https://de.wikipedia.org/wiki/Bedingte_Anweisung_und_Verzweigung">if-Anweisung</a>:<br /></p><div class="quotebox"><blockquote><p>$if(%artist%,%artist%,Unknown Artist)</p></blockquote></div><p>Der erste Parameter stellt dabei die Bedingung dar. Wenn diese dadurch erfüllt ist, dass das angebene Feld vorhanden ist, dann wird der zweite Parameter zurückgegeben, sonst der dritte. <span style="color: darkred">$if2</span> ist die Kurzform für den Fall, dass Bedingung und zweiter Parameter übereinstimmen, wie es hier der Fall ist.</p><br /><p><a id="remappings"><strong>Field Remappings</strong></a></p><p>Einige Felder sind so definiert, dass sie nicht nur einen Tag abfragen. Dies geschieht häufig mit dem Ziel, bedingte Ausdrücke in Form von Funktionen überflüssig zu machen. Dank dieser Definitionen finden Sie in den Formaten, die innerhalb des Programms oder in diesen Anleitungen vorgegeben sind, kaum Funktionen, was Lesbarkeit und Wiederverwendbarkeit deutlich steigert. Im Folgenden einige Beispiele:</p><br /><p><a id="artist"><strong>%artist%</strong></a></p><p>Hier wird nicht nur der Artist aus dem Tag abgefragt, sondern, falls dieser fehlt, zusätzlich Composer und anschließend Performer.<br /></p><div class="quotebox"><blockquote><p>unnötig: $if3(%artist%,%composer%,%performer%)<br />es reicht: %artist%</p></blockquote></div><br /><p><a id="album_artist"><strong>%album artist%</strong></a></p><p>Das Feld &quot;Album Artist&quot; dient dazu, Alben mit mehreren Interpreten zu kennzeichen. Ein Beispiel:<br /></p><div class="codebox"><pre><code>Album Artist: Various Artists
Album: The Very Best of MTV Unplugged

    | Artist            | Title
----+-------------------+--------------------
 01 | Eric Clapton      | Tears in Heaven
 02 | Alanis Morissette | Ironic
 03 | R.E.M.            | Losing My Religion
    | ...               | ...
 17 | Sting             | Walking on the Moon</code></pre></div><p>Würden Sie in einem Benennungsschema für Dateien folgenden Ausdruck eingeben, dann erhielten Sie für jeden Interpreten einen eigenen Ordner:<br /></p><div class="quotebox"><blockquote><p>%artist%\%album%\%tracknumber%. %title%</p></blockquote></div><p>Nutzen Sie stattdessen das Feld Album Artist, dann wird das Album unter einem einzigen Ordner &quot;Various Artists&quot; abgelegt:<br /></p><div class="quotebox"><blockquote><p>%album artist%\%album%\%tracknumber%. %title%</p></blockquote></div><p>Dabei durchsucht der Ausdruck <span style="color: darkred">%album artist%</span> automatisch auch die Felder Artist, Composer und Performer, falls kein Album Artist vorhanden ist. <span style="color: darkred">%artist%</span> in diesem Schema zusätzlich durch Funktionen einzubringen, oder ein anderes Schema für normale Alben anzuwenden, ist nicht erforderlich.<br /></p><div class="quotebox"><blockquote><p>unnötig: $if2(%album artist%,%artist%)<br />es reicht: %album artist%</p></blockquote></div><p>Wenn Sie aus bestimmten Gründen eine Suche in anderen Feldern ausschließen möchten, dann können Sie auf einzelne Felder mit Hilfe der $meta-Funktion zugreifen - z.B. <span style="color: darkred">$meta(album artist)</span>.</p><br /><p><a id="track_artist"><strong>%track artist%</strong></a></p><p>Um bei Alben mit mehreren Interpreten zusätzlich den jeweiligen Artist vor dem Titel anzuzeigen, ergänzen Sie das Format wie folgt:<br /></p><div class="quotebox"><blockquote><p>%album artist%\%album%\%tracknumber%. [%track artist% - ]%title%</p></blockquote></div><p>Das Feld <span style="color: darkred">%track artist%</span> ist so definiert, dass es den Inhalt des Artist-Feldes zurückliefert, wenn sich Album Artist und Artist unterscheiden, und ansonsten ein Fragezeichen (daher die eckigen Klammern). Es wird kein Feld namens Track Artist im Tag benötigt.</p><br /><p><a id="tracknumber"><strong>%tracknumber%</strong></a></p><p>Für die Tracks 1 bis 9 wird die Tracknumber automatisch zweistellig mit führender Null zurückgegeben (d.h. 01 bis 09).<br /></p><div class="quotebox"><blockquote><p>unnötig: $num(%tracknumber%,2)<br />es reicht: %tracknumber%</p></blockquote></div><br /><p><a id="title"><strong>%title%</strong></a></p><p>Auch hier gibt es eine Sonderfunktion, die automatisch den Dateinamen zurückliefert, falls kein Titel existiert.<br /></p><div class="quotebox"><blockquote><p>unnötig: $if2(%title%,%filename_ext%)<br />es reicht: %title%</p></blockquote></div>]]></content>
			<author>
				<name><![CDATA[Frank Bicking]]></name>
				<uri>https://www.audiohq.de/profile.php?id=67109</uri>
			</author>
			<updated>2005-07-24T18:41:14Z</updated>
			<id>https://www.audiohq.de/viewtopic.php?pid=5220#p5220</id>
		</entry>
</feed>
