Icon automatisch zuweisen

Ich bitte um Entschuldigung, falls ich eine Anleitung dazu im Forum nicht gefunden habe. Ich möchte zum Beispiel PDFs und Webarchiven (beim Importieren) automatisch ein besonderes Icon (und immer dasselbe) zuordnen. So:

Ich hatte gehofft, das mit einer intelligenten Regel zu tun, so wie das mit einem Label möglich ist, aber das scheint nicht zu funktionieren. Oder übersehe ich etwas? Danke für eure Hilfe.

Die Zuweisung von benutzerdefinierten Symbolen ist ohne die Verwendung einer Skriptaktion nicht möglich. Wo befindet sich das Bild, das Sie verwenden möchten?

Etwa so…?
image

image

(Übersetzt mit DeepL)

Die Icons sind in zwei Zwischenablagen. Und im Finder als png Dokumente.

Ich verstehe nichts von Skripts. Kannst du mir das bitte posten und erklären, wie ich es anwende? Vielen Dank.

Am Beispiel von PDF-icon.png im Verzeichnis /Users/FrankT/Schreibtisch:

(() => {
  const app = Application("DEVONthink 3");
  app.selectedRecords().forEach(r => 
    r.thumbnail = '/Users/FrankT/Desktop/PDF-icon.png')
})()

Dieser JavaScript-Code setzt das “Icon” (in DT: Thumbnail) für alle gerade in DT ausgewählten Datensätze auf PDF-icon.png.
Angenehm unkompliziert.

In einer intelligenten Regel, die auf PDF und WebArchive reagiert, würde man das so machen:

function performsmartrule(records) {
  const iconZuordnung = {
    'PDF document': '/Users/FrankT/Schreibtisch/PDF-icon.png',
    'webarchive': '/Users/FrankT/Schreibtisch/WA-icon.png'
  };
  records.forEach(r => r.thumbnail = iconZuordnung[r.type()]);
}

In iconZuordnung legst Du fest, welcher type von Dokument welches Icon bekommen soll (die Werte für Type verrät der Script Editor, wenn Du darin das Funktionsverzeichnis von DEVONthink 3 öffnest).
Also immer 'type':'Pfad zum PNG', und die Einträge durch Komma getrennt.

Die letzte Zeile Code holt sich dann einfach nur abhängig vom type des aktuellen Datensatzes den Namen der Datei und setzt den/die/das Thumbnail darauf.

1 Like

Vielen Dank @chrillek !!!
Ich verstehe das einigermassen und probiere das später sehr gerne aus … allenfalls melde mich dann wieder … vor allem, wenn ich es nicht schaffe, was durchaus möglich ist :slightly_smiling_face: