Sortierung html export


#1

Salve alle zusammen!
Ich weis dieses Thema gab/gibt es schon mehrfach, jedoch haben mir die bisherigen Themen nicht wirklich weitergeholfen.
Irgendwie komm ich mit dem neuen Aufbau der exportkonfiguration ned klar :frowning:
Ich hab es zwar geschafft, eine Standardkonfig soweit abzuÀndern, das es einigermassen so ist wie ich mir des vorstell, aber mit der sortierreihenfolge, des bekomm ich irgendwie ned hin. WÀre super, wenn mir da einer helfen könnte, beispiel hÀng ich dazu.


Export geht nicht mehr
#2

Das ist die "magische Zeile":

$loop(%_filename_ext%)

Wenn du "%_filename_ext%" durch "%artist%" ersetzt, mĂŒsste alles nach Interpret sortiert werden.


#3

Das alleine genĂŒgt leider noch nicht, da so nur nach Interpreten sortiert werden wĂŒrde.

Um zunÀchst nach Interpret und dann nach Titel zu sortieren, musst Du die $loop-Anweisungen verschachteln, wie es z.B. in der Exportkonfiguration html_newexport (558 Bytes) gemacht wurde.

Viele GrĂŒĂŸe,
~ Florian


#4

Erst mal danke fĂŒr die rasche Hilfe (nach einigem rumprobieren mit der von Florian genannten new export.mte, hab ich es geschafft das wie gewĂŒnscht sortiert wird), allerdings ein kleines Prob hab ich da noch :wink: - nĂ€mlich die Formatierung.
Normalerweise werden die Farben (hell/dunkel) abwechselnd gezeigt, nun ist es allerdings so, das dies nun völlig unterschiedlich gemacht wird (sprich hell/hell/hell/dunkel/hell/dunkel etc.) erscheint irgendwie willkĂŒrlich. :w00t:
Im moment sieht die Syntax so aus bei mir. (wenn man es dennn so nennt :wink: )

<table>
<tr>
<th class="title">Interpret</th>
<th class="title">Titel</th>
<th class="title">Album</th>
<th class="title">Track</th>
</tr>

$loop(%artist%)
$loop(%title%)
<tr>
<td$if($odd(%_counter%), class="odd",)>%artist%</td>
<td$if($odd(%_counter%), class="odd",)>%title%</td>
<td$if($odd(%_counter%), class="odd",)>%album%</td>
<td$if($odd(%_counter%), class="odd",)>%track%</td>
</tr>

$loopend()
$loopend()
</table>

Wenn ihr mir jetzt noch sagen könntet, wie ich es schaffe, das die einzelnen "Zeilen" wieder abwechselnd dargestellt werden, dann bin ich wieder glĂŒcklich und zufrieden bis zur nĂ€chsten syntaxumstellung g
LG
Artaios


#5

Ist zZ nicht möglich.
Aber Florian arbeitet daran.


#6

Na ja dann werd ich vorlĂ€ufig wohl damit leben mĂŒssen :wink: und hoffen, das es demnĂ€chst eine Lösung dafĂŒr gibt. Danke jedenfalls fĂŒr die Auskunft.
Gruß
Artaios


#7

Hallo Artaios,

eine Lösung dafĂŒr dĂŒrfte es relativ bald geben, ich arbeite daran :slight_smile:

Viele GrĂŒĂŸe,
~ Florian


#8

Hallo Artaios,

der aktuelle Development Build bietet nun die Möglichkeit benutzerdefinierte Variablen im Export zu benutzen.

Eine Beispielanwendung

<head><title>Test</title></head>
<style type="text/css"><!--
.table1 { background: #FF9900; }
.table2 { background: #FFFFE0; }
--></style>
<body>
$puts(cnt,0)
<table>
<tr>
<th class="title">Interpret</th>
<th class="title">Titel</th>
<th class="title">Album</th>
<th class="title">Track</th>
</tr>

$loop(%artist%)
$loop(%title%)
<tr>
<td$if($odd($get(cnt)), class="table1", class="table2")>%artist%</td>
<td$if($odd($get(cnt)), class="table1", class="table2")>%title%</td>
<td$if($odd($get(cnt)), class="table1", class="table2")>%album%</td>
<td$if($odd($get(cnt)), class="table1", class="table2")>%track%</td>
</tr>
$puts(cnt,$add($get(cnt),1))
$loopend()
$loopend()
</table>
</body>
</html>

Hier wurde die benutzerdefinierte Variable "cnt" verwendet.

Viele GrĂŒĂŸe,
~ Florian


exporting html question
#9

jajaja :smiley:

darauf habe auch ich gewartet!
nun kann nÀmlich auch ich mein problem mit den verschachteltetn schleifen und den
trennlinen lösen denke ich!

Topic 1
Topic 2

DANKE fĂŒr dieses geniale programm florian!
atmosfear


#10

Mein Ziel ist es, eine Variable vor der loop auf einen Anfagswert setzten, der nicht Null ist, und ihn dann in der Schleife um je 1 heraufsetzen. Ich habe gerade versucht, dafĂŒr eine benutzerdefinierte Variable zu benutzen. Dabei sind mir ein Fehler aufgefallen. Ich versuche, sie an Florians Beispiel zu erklĂ€ren. Um den Counterwert anzuzeigen habe ich hinter der Zeile

noch die Zeile $get(cnt) eingefĂŒgt.
Bei der ersten Zeile steht gar nichts in cnt. Das $puts(cnt,0) außerhalb der loops hat ĂŒberhaupt keinen Effekt. Erst durch $puts(cnt,$add($get(cnt),1)) wird die Variable angelegt und ist zuerst auf 0 und wird durch diese Anweisung um 1 erhöht. Es besteht also keine funktionierende Möglichkeit, den Startwert der Variablen festzulegen.
Florian, bitte sieh dir die Funktionen noch einmal an oder erklÀr mir, wie ich es richtig machen kann.
Gruß,
Julchen

#11

Meines Wissens haut das wegen der internen Verarbeitungsreihenfolge nicht hin. Ich habe etwas probiert, um trotzdem einen Startwert zu simulieren, das scheitert aber auch.
$if($eql($get(cnt),),$put(cnt,"startwert"),)


#12

Hallo Julchen,

dano hat Recht: das Ganze ist im Moment nicht möglich und liegt tatsĂ€chlich an der internen AusfĂŒhrungs- und Ersetzungreihenfolge des Generators fĂŒr die Exportdateien.

Ich werde versuchen eine Lösung zu finden ... :rolleyes:

Viele GrĂŒĂŸe,
~ Florian


#13

Hallo Julchen, Hallo dano!

Ich habe jetzt einen Workaround gefunden, auf den mich dano gebraucht hat: $puts(cnt,$if($eql($get(cnt),),5,$get(cnt))) wobei die 5 hier der Startwert ist.

ErklĂ€rung: $if liefert das zurĂŒck, was Parameter 2 und 3 zurĂŒck liefern. Die Auswertungsreihenfolge ist dabei von innen nach außen - d.h. in dano's Beispiel werden beide $put ausgefĂŒhrt.

Viele GrĂŒĂŸe,
~ Florian


#14

Ich habe eine Weile probiert, wo ich Florians Code einfĂŒgen muss. Jetzt habe ich es hinbekommen und bedanke mich herzlich fĂŒr diese Lösung.


#15

Hi

Ich habe auch ein Problem mit der Sortierung.

Nur nach dem Interpret sortieren geht, sonst funktionierts bei mir aber nicht. Vielleicht kann mir ja jemand kurz sagen, was falsch ist.

$filename(html)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
<head>
    <meta name="GENERATOR" content="Mp3tag - http://www.mp3tag.de" />
    <title>Mp3tag - Datei&uuml;bersicht</title>
    <style type="text/css"><!--
  h1 { font-family: Verdana, Tahoma, Arial, sans-serif; font-size: 16pt; color: #000 }
  body { font-family: Verdana, Tahoma, Arial, sans-serif; font-size: 8pt; background: #fff }
  table, tr, td { font-family: Verdana, Tahoma, Arial, sans-serif; font-size: 9pt; color: #000; }
  a:link, a:visited, a:active { text-decoration: none; color: #03f; }
  a:hover { text-decoration: none; color: #f03; }
  .title { font-weight: bold; padding: 7px; margin: 0px; color: #000; }
  .odd { background-color: #ccc; }
    --></style>
</head>
<body>
    <h1>Mp3tag - Datei&uuml;bersicht</h1>
    <p>%_date%</p>
    <table>
  <tr>
      <th class="title">Interpret</th>
      <th class="title">Album</th>
      <th class="title">Titel</th>
      <th class="title">Jahr</th>
      <th class="title">Nr.</th>
      <th class="title">LĂ€nge</th>

      
  </tr>

$loop(%artist%)
$loop(%album%)
$loop(%track%)

  <tr>
      <td$if($odd(%_counter%), class="odd",)>%artist%</td>
      <td$if($odd(%_counter%), class="odd",)>%album%</td>
      <td$if($odd(%_counter%), class="odd",)>%title%</td>
      <td$if($odd(%_counter%), class="odd",)>%year%</td>
      <td$if($odd(%_counter%), class="odd",)>%track%</td>
      <td$if($odd(%_counter%), class="odd",)>%_length%</td>
      
  
  </tr>
$loopend()

    </table>
    <p>Erstellt am %_date% mit %_app% - dem universellen Tag Editor <a href="http://www.mp3tag.de/" title="Mp3tag Website">www.mp3tag.de</a></p>
</body>
</html>

Weiter wĂŒrde ich gerne am Schluss der Liste die Anzahl, GesamtlĂ€nge und Gesamtgrösse der Tracks einfĂŒgen. Wie mache ich das?


#16

Hi Gladiator!

Hier:

fehlen noch 2 $loopend() (jede Schleife muss geschlossen werden).

Die abwechselde Farbformatierung mit %_counter% wird durch die 3 Schleifen gestört, siehe dazu den Anfang von diesem Thread (benutzerdefinierte Variablen).

und fĂŒr GesamtlĂ€nge usw. gibts entsprechende Platzhalter wie %_total_files%, %_total_size%, %_total_time% (siehe auch Hilfe->Export dazu).

Gruß
nickless


#17

Vielen Dank

Das mit den Platzhalter weiss ich, ich habe die Hilfe schon gelesen. Ich weiss jedoch nicht, wo ich die platzieren muss!


#18

Dahin, wo du sie haben willst? :huh:
z.B. gleich nach dem - Tag.

Am besten erklÀrst du etwas genauer, was du haben willst, wenn du dich mit HTML nicht auskennst.


#19

Hm irgend wie krieg ich das nicht wirklich hin. Jemand der das kann hat das schnell, vielleicht kann mir ja jemand die paar Script Zeilen kurz schreiben.

Ich möchte ein Script, welches mir eine Liste mit allen Mp3 Files erstellt, und zwar nach folgendem Muster:

Zuerst eine Nummerierung von 1-x (Anzahl Tracks gesamt). Dann sollten Interpret, Album, Titel, Track, Jahr und die Zeit des einzelnen Mp3s (formatiert) kommen. Sortierung nach Interpret, Album, Track.

Am Schluss sollte dann noch stehen, wieviele Mp3s dass es sind, wie lange die Gesamtspielzeit betrÀgt (formatiert) und wie gross alle Mp3s sind.


#20

Also so was?

$filename(DateiĂŒbersicht.htm)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
<head>
<meta name="GENERATOR" content="Mp3tag - http://www.mp3tag.de" />
<title>Mp3tag - Datei&uuml;bersicht</title>
<style type="text/css"><!--
  h1 { font-family: Verdana, Tahoma, Arial, sans-serif; font-size: 16pt; color: #000; text-align: center }
  body { font-family: Verdana, Tahoma, Arial, sans-serif; font-size: 8pt; background: #fff }
  table, tr, td { font-family: Verdana, Tahoma, Arial, sans-serif; font-size: 9pt; color: #000; }
  a:link, a:visited, a:active { text-decoration: none; color: #03f; }
  a:hover { text-decoration: none; color: #f03; }
  .title { font-weight: bold; padding: 7px; margin: 0px; color: #000; }
  .odd { background-color: #ccc; }
--></style>
</head>
<body>
<h1>Mp3tag - Datei&uuml;bersicht</h1>
<table>
 <tr>
  <th class="title">Nr.</th>
  <th class="title">Interpret</th>
  <th class="title">Album</th>
  <th class="title">Titel</th>
  <th class="title">Track</th>
  <th class="title">Jahr</th>
  <th class="title">L&auml;nge</th>

 
 </tr>

$puts(counter,0)
$loop(%artist%)
$loop(%album%)
$loop(%track%)
$puts(counter,$add($get(counter),1))
 <tr>
  <td$if($odd($get(counter)), class="odd",)>$get(counter)</td>
  <td$if($odd($get(counter)), class="odd",)>%artist%</td>
  <td$if($odd($get(counter)), class="odd",)>%album%</td>
  <td$if($odd($get(counter)), class="odd",)>%title%</td>
  <td$if($odd($get(counter)), class="odd",)>%track%</td>
  <td$if($odd($get(counter)), class="odd",)>%year%</td>
  <td$if($odd($get(counter)), class="odd",)>%_length%</td>
 
 
 </tr>
$loopend()
$loopend()
$loopend()
</table>

<center>


<table style="width: 75%%;">
<tbody>
<tr>
<td style="text-align: right; font-weight: bold;">Gesamtanzahl:</td>
<td style="width: 30px"></td>
<td style="text-align: left;">%_total_files%</td>
</tr>
<tr>
<td style="text-align: right; font-weight: bold;">Gesamtspielzeit:</td>
<td style="width: 30px"></td>
<td style="text-align: left;">%_total_time%</td>
</tr>
<tr>
<td style="text-align: right; font-weight: bold;">Gesamtgr&ouml;&szlig;e:</td>
<td style="width: 30px"></td>
<td style="text-align: left;">%_total_size%</td>
</tr>
</tbody>
</table>

<p>Erstellt am %_date% mit %_app% - dem universellen Tag Editor <a href="http://www.mp3tag.de/" title="Mp3tag Website">www.mp3tag.de</a></p>
</center>
</body>
</html>