tedgo's "Dark One"-Theme für CUI

Begonnen von tedgo, 28. November 2008, 20:43:46

Vorheriges Thema - Nächstes Thema

tocothetronic

okay, nun endlich funktioniert wieder alles, auch chronflow (die sache war das forced layout, das muß wohl doch inaktiv sein).
sieht ganz schön aus, und ich kanns weg und hin machen und auch deine cover ansichten wählen.
wie immer ganz toll.

das tolle an dark one: für mich...hat es mir neue möglichkeiten geschaffen - selber hätte ich mich nie an panel stack splitter oder WSH panel mod rangetraut. mit deiner vorarbeit macht es aber total spass sich da etwas rein zu knien. foobar, die ewige baustelle. aber auch die beste...

lg to<o

tedgo

#511
Forced Layout muss trotzdem aktiv sein, sonst werden die Werte für top/left/width/height ignoriert!
Nur "Hide panel on startup" dann eben nicht. Das war nur für den ersten Vorschlag gedacht.

Übrigens:
Die Panelnummer ist die Reihenfolge, in der sich die Panel in der PanelList des PSS befinden, angefangen von "0" für das erste Panel in der Liste.
So hat man zwei Möglichkeiten: entweder ein Panel mit dessen Nummer ansprechen (so habe ich das im rechten Multipanel-Switcher gemacht, damit man die leicht austauschen/verschieben kann) oder anhand ihres Namens ("Caption").
Möchtest du das Panel mit dessen "Caption" ansprechen, dann sieht das so aus:
$showpanel_c(Chronflow,...)
Dasselbe funktioniert auch mit $movepanel (dann eben $movepanel_c).

Takashi

Hallo,

ich benutze seit jjjaaaaaaahhhhhrrreeeen Foobar und habe auch schon viel gefrickelt,
doch die letzten zwei Jahre mit dem StandardUI, einfach simpel und unproblematisch.
Doch als ich Dein Skin gefunden habe, da habe ich nicht lange überlegt und installiert.

Ich habe aber nun noch einige Fragen bzw Anregungen.

1.)  Library-Suchfeld

Kommt ein Sonderzeichen darin vor, erkennt er nicht den Tracktitel, heißt, wenn zb,
nach "Keimzeit - Reprise" suche, bekomme ich kein Ergebnis, sondern muss erst den "-" löschen,
ähnlich ist es mit  `  ' ´ zB in can't.
Wenn mal also bestimmte Zeichen gegen ein leerzeichen tauschen könnte in der Suchanfrage super,
per "%title& IS can't" kann man ja immernoch nach Spezialformen suchen, in den neueren DefaultUI
ist das übrigens so gelöst.


2.)  Artistbilder

Leidiges Thema


// ARTIST PICTURES
$puts(artist,
$select(%do.pic.switch%,
G:\00_ArtistPictures\%artist%.*,
[...]


sample oben funktioniert, lasse ich "%do.artist.pic%," drin, bekomme ich IMMER einen Fehler auf dem ERSTEN Artistfeld,
egal an welcher Stelle die Variable steht. Der Fehler tritt auch auf obwohl ich den Pfad versucht
habe als Globalvariable unter ELPlaylist und/oder Cover zu setzen
// ----- ARTIST PICTURE ------
$set_ps_global(do.artist.pic,G:\00_ArtistPictures\%artist%.*)


Ich bin jetzt zufrieden, mit meiner Lösung, er zeigt mir die Artistpix an, warum er so zickt wenn %do.artist.pic% drinn steht, würde ich nur gerne verstehen!


3.) Coverart,

an der selben Stelle, Coverart habe ich nicht zum laufen bekommen, keine Chance, habe die Buttons Cover <-> Artist jetzt vertauscht,
damit wenigstens die funktionierenden Artistspix angezeigt werden und ich mich weniger aufrege *g*


4.) Coverart Dateinamen

die zulässsigen Dateinamen für coverart sind ja irgendwie: cover.*, disc.*, icon.*, artist.*
Wie kann ich da weitere hinzufügen, so dass also auch "*back*.jpg" oder "*front*.jpg" erkannt und angezeigt werden?
An welcher Stelle muss ich schrauben? Ich habe herausgelesen, dass es irgendwo im "artreader-core" codiert ist,
aber hey ? Where ?


// COVERS
$puts(cover,
$ifequal(%do.artreader.switch%,0,
$select(%do.cover.switch%,
artreader,
G:\00_AlbumPictures\%artist%-%album%.*,
$directory_path(%path%)\*back*.jpg,
$directory_path(%path%)\*cd*.jpg,
$directory_path(%path%)\*cover*.jpg,
$directory_path(%path%)\*disc*.jpg,
$directory_path(%path%)\*icon*.jpg,
$directory_path(%path%)\*artist*.jpg,
$directory_path(%path%)\*front*.jpg


ist ja sicherlich erklärent, er soll mir einfach das, was im Ordner ist auch anzeigen *gg*


4.) Coverart Dateinamen im MiniCover (ist doch das Playlistcover oder)

Also das ist okay, da soll cover.jpg bleiben, wenns geht, wenn noch *front*.jpg als alternative angezeigt würde, wärs türlich toll.


5.) Coverart im linken unteren Fenster

selbes wie bei Punkt drei... anzeige von mehr Suchmasken, aber wo eingeben ?




Ich muss echt sagen, sehr schönes Skin, gefällt mir auch farblich sehr und mit tollen funktionen, auch wenn ich den klassischen library-view mit Sofortvorschau etwas vermisse, man hatte eben gleich mehr tracks in der Übersicht und konnte schön sortieren , trotzdem genial und danke für die Arbeit.

tedgo

#513
zu 1.) Das liegt am Quicksearch Plugin. Wenn dir die Library Search lieber ist, kannst du diese über die Toolbar --> Library (oder du erstellst dir einen Shortcut) nutzen, oder nimmst einfach Strg+F für die Playlist Suche.
Eine Alternative wäre die Nutzung der Filter auf der rechten Seite. Auch hier kannst du per Rechtsklick für jede Kategorie eine Suche aktivieren und bekommst dann die Ergebnisse aufgelistet.

zu 2.) Was steht denn im Anzeigefeld?
Dass der Pfad nicht korrekt ist?
Sobald die globale Variable angelegt ist, müsste es eigentlich funktionieren. Verstehe ich nicht...

Der Eintrag sollte also so aussehen:

// ARTIST PICTURES
$puts(artist,
$select(%do.pic.switch%,
%do.artist.pic%,
<PATH2>,
<PATH3>,
<PATH4>,
<PATH5>))


zu 3.), 4,.) und 5.) Das geht mit dem neuesten foobar2000 v1.0 (auch wenn es noch Beta ist).
Mit vorigen Versionen, also falls du noch 0.9.6.9 benutzt, geht es mit foo_covers. Ist aber weniger zu empfehlen.
Die Einträge im Script solltest du aber wieder ändern, damit es klappt

// COVERS
$puts(cover,
$ifequal(%do.artreader.switch%,0,
$select(%do.cover.switch%,
artreader,
$directory_path(%path%)\back.*,
$directory_path(%path%)\disc.*,
$directory_path(%path%)\icon.*,
$directory_path(%path%)\artist.*)
,
$select(%do.cover.switch%,
artreader_front,
artreader_back,
artreader_disc,
artreader_icon,
artreader_artist)))

Und dann mit zweifachem Klick auf den Covers-Button den artreader anschalten (der Button wird dadurch in etwas dunklerem Blau dargestellt).

Das MiniCover-Panel (links unten ;)) nimmt sich automatisch die Einträge, die man im artreader (ab foobar2000 v1.0) bzw. foo_covers vorgenommen hat.
Die Playlist-Cover-Anzeige ebenfalls. Du kannst allenfalls hier per Rechtsklick in die Playlist --> Settings --> Registerkarte "Field Definition" auf den Eintrag "ART.OPTION" doppelklicken und auf artreader_front nodelay ändern.

EDIT:
Habe gerade festgestellt, dass das Album Art Setup von foobar2000 v1.0 irgendwie für Columns UI nicht hinhaut...
Zumindest ignoriert sowohl der PSS, als auch WSH Panel mod und ELPlaylist die hier gesetzten Einträge.
Da bleibt also doch nur foo_covers. Oder warten auf Plugin-Updates.

Zumindest für die BigCover-Ansicht könntest du dir solange derart ohne foo_covers behelfen:

$puts(cover,
$ifequal(%do.artreader.switch%,0,
$select(%do.cover.switch%,
artreader
$directory_path(%path%)\cover.*
$directory_path(%path%)\front.*
$directory_path(%path%)\folder.*,
$directory_path(%path%)\back.*,
$directory_path(%path%)\cd.*
$directory_path(%path%)\disc.*,
$directory_path(%path%)\icon.*,
$directory_path(%path%)\artist.*)
,
$select(%do.cover.switch%,
artreader_front,
artreader_back,
artreader_disc,
artreader_icon,
artreader_artist)))

Sollte funktionieren, habs aber nicht getestet.
Für das WSH Panel mod habe ich derzeit keine Lösung...
Auch nicht für die ELPlaylist. Da musst du dich vorerst mit einem fest definierten Namensschema begnügen.

tocothetronic

#514
so, erstmal fertig!

defekter link entfernt - grimes

Legolas

Hi :)
erstmal: Geiles Ding. Funktioniert echt gut. Ich hab da nur ein kleines Problem mit dem Rating. Zuerst: Ich bin völlig überfordert mit dem ganzen Code, der sich in deinem Skin tummelt und frag deshalb mal hier, ob es möglich ist die Sterne beim Rating automatisiert nach %play_count% darzustellen. Ich habe da vor ewigkeiten mal was gecoded: http://foobar-users.de/index.php?topic=332.msg5088#msg5088 es muss aber nicht in dieser komplexen form eingebaut werden. Es würde mir folgendes reichen:
Wenn %rating% vorhanden ist
- zeige die Sterne anhand von %rating%
Sonst
- zeige die Sterne entsprechend von %play_count%

- %play_count% = 2 entspricht einem Stern
- %play_count% = 4 entspricht zwei Sternen
- %play_count% = 8 entspricht drei Sternen
- %play_count% = 14 entspricht vier Sternen
- %play_count% = 20 entspricht fünf Sternen

Ich will jetzt kein fertig umgecodetes teil, sondern einen hint, wo ich das umprogrammieren müsste. ich finde mich da gerade nicht zurecht.

tedgo

So etwas ähnliches ist schon drin ;).

Stell das Rating Panel per Rechtsklick (während ein Lied aus der Medienbibliothek spielt!) auf "Show Playcounts". Dann per erneuten Rechtsklick auf "Properties --> bei "Playcounter Limit" auf die "50" doppelklicken und mit 20 überschreiben --> OK.
Allerdings leuchten die Sterne linear auf, d. h.:
4 Playcounts = 1 Stern
8 Playcounts = 2 Sterne
12 Playcounts = 3 Sterne
16 Playcounts = 4 Sterne
20 Playcounts = 5 Sterne

Das Rating ist dann aber abgeschaltet! Die Möglichkeit zu bewerten gibt es nur im Modus "Show/enable rating".
(Ich habe die Modi extra auf Anfrage einiger User getrennt...).

Alternativ kannst du das Rating-Panel auf "Show /enable rating" belassen und dir die Playcounts in der Playlist anzeigen lassen:
Rechtsklick auf die Playlist --> Settings --> Registerkarte "Field definition" --> Auf den Eintrag "RATE.DISPLAY" doppelklicken und "Definition" auf 2 ändern.
Dann auf "PLAYCOUNT.LIMIT" doppelklicken und die "Definition" auf 20 ändern.
Du kannst das ganze dann alternativ auch als Balken anstatt der Sterne darstellen lassen, indem du auf "RATE.BAR.MODE" doppelklickst und die Definition auf 1 änderst.

Oder du benutzt die Anzeige einer automatischen Bewertung (die allerdings nur angezeigt, nicht getaggt oder in eine Datenbank geschrieben wird, sondern lediglich aus der Verweilzeit in der Media Library und den Abspielvorgängen, die in dieser Zeit "absolviert" wurden errechnet wird).

Legolas

Mir ging es darum, dass zumindest in der Playlist beim Rating "auch" der Playcount mitbestimmungrecht hat. Ich habe jetzt meine Änderung machen können. Habe jetzt auch andere Plätze gefunden, an denen ich noch was ändern werde. Danke dir :)

tedgo

Dir geht es also mehr um die "Hotness"-Berechnung?
Die ließe sich in die Playlist schon einbauen (auch im Rating Panel, das wäre allerdings etwas aufwändiger).

Du könntest dafür die Berechnungen fürs Auto-Rating ändern.
In den Settings --> Script --> Registerkarten "TrackList" und "Per Second" jeweils im Bereich // ----- RATING.
Alles, was zur Bedingung $ifequal(%RATE.DISPLAY%,1,... gehört, erstellt das Auto-Rating.
Da du ja offenbar ein wenig scripten kannst, nur soviel als Hinweis:
Das aktuelle Datum im Format YYYY-MM-DD erhältst du in DarkOne mit $puts(cur.date,$right($findfile(%el_user_profile_path%\DO_current_date_*),10)) (wobei du die Variable natürlich auch anders benennen kannst, sie muss nicht "cur.date" heißen ;)).

Der Internet

Hallo bin neu hier und erstmal vielen Dank für deine Arbeit!

Ich würde gerne wissen, ob es möglich für den Hintergrund in der Standard-Playlist das Artistbild von last.fm zu verwenden. Unter Settings>Field Definition kann man ja einen Pfad angeben. Denn falls das nicht möglich ist: Ich habe die Artist Bilder (Artist.jpg) entweder ein oder bei Multidiskreleases 2 Ebenen über den Mp3-Dateien. Also zB L\Lampshade\2009 - Stop Pause Play\ . Die artist.jpg ist im Ordner Lampshade, damit nicht jedes Album eine eigene Artist Datei braucht. Kann ich das einstellen das der entweder eine oder zwei Ebenen (für Doppelalben da dann noch ein Extraordner mit CD1\ oder CD2\ usw folgt) nach dem Bild sucht? Danke  :)

tedgo

Ob man das last.fm Artistbild direkt abgreifen kann, kann ich dir im Moment nicht sagen.

Solange der Albumtitel keine Sonderzeichen beinhält (sonst muss man noch etwas tricksen), müsste dein zweiter Vorschlag jedoch so funktionieren:
$replace($directory_path($directory_path(%path%)),\%date% - %album%,)\artist.*

Der Internet

#521
Das hat schonmal super geklappt, vielen Dank! Der Artist-Hintergrund erscheint jetzt bei normalen Alben - allerdings nicht wenn diese noch eine Ebene tiefer in CD1 liegt. Man brauch doch vermutlich nur noch mal eine alterntive Abfrage dass er nochmal eine Ebene höher schaut. Denn selbst wenn er das dann bei den normalen Releases macht, wird er bei denen nichts finden. bei Multidiskreleases aber schon.

Was anderes, was mich schon beim Default UI gestört hat war ist die Gruppierung in der Playlist bei Compilations. Bisher tagge ich noch keine Album-Interpreten, wodurch Compilations natürlich immer völlig auseinandergerissen werden und nicht als ein Album angezeigt werden. Die erste Lösung wäre natürlich endlich mal anzufangen, auch den Albuminterpreten zu taggen. Allerdings frage ich mich, was ich dann zB. bei Sampler-Reihen, die keinen Albuminterpreten haben..sprich ganz platt eine Bravo Hits CD eingeben soll. Und wie das dann in der Playlist angezeigt wird wenn ich zB dann einfach Sampler dort eintrage. Viel eleganter wäre ja eine Lösung, die überprüft ob das Album verschiedene Interpreten aufweist und nur dann zB. nur den Samplernamen anzeigt und die Artists dann alle in einer Liste. Ich weiß aber nicht ob sowas möglich ist - if then abfragen in der Scriptsprache bei der Gruppierung! Danke und Gruß  8)

tedgo

#522
1.) Mein String sollte eigentlich für Alben mit einer zusätzlichen Ebene ebenfalls funktionieren...

2.) Normale Alben, die nur einen Interpreten haben, braucht man nicht mit einem ALBUM ARTIST zu taggen.
Bei Samplern (wie Bravo Hits) tagge ich immer mit Various Artists oder einfach VA.
Sobald ein Album einen Album Artist getaggt hat, werden Artists, die sich von diesem Tag unterscheiden, in der Playlist bei den Titeln dargestellt.
Taggst du also z. B. BRAVO HITS mit einem Album Artist Tag VA, dann wird bei jedem Trackeintrag in der Playlist der Interpret des Titels vorangestellt (das ist beireits vordefiniert. Probier es doch einfach mal aus :)).

Der Internet

dann funktioniert dein String leider nur halb.

$set_ps_global(do.artist.pic,$replace($directory_path($directory_path(%path%)),\%date% - %album%,)\artist.*)

habe ich da stehen

tedgo

Du hast deine Alben aber schon wie folgt in Ordnern abgelegt:
...\Interpret\Datum - Albumtitel
bzw.
...\Interpret\Datum - Albumtitel\CD 1

Und die Interpretenbilder liegen im Ordner des Interpreten?

Oder habe ich da etwas falsch verstanden?

Heißen denn auch alle deine Bilder Artist.jpg oder wie der Interpret (also z. B. Lampshade.jpg)?
Ich habe den String jetzt getestet und er funktioniert auch bei Alben mit einer zusätzlichen Ordnertiefe...