Schriftenvoransicht im Format/Zeichensatz-Menü

Moin,
eben ging ich in einer »stillen Minute« (Vorbereitung für Größeres = :-) die Grundeinstellungen und Dokumenteinstellungen durch. Und da finde ich tatsächlich:
Menü Extras/Grundeinstellung…/Programm :: [ ]Schriftenvoransicht im Menü (hoher Speicherbedarf),
einen für mich latenten Wunsch erfüllt, in der Fülle der Schriften, mit der ich im Laufe der Zeit überschüttet bin, einen Hauch von Voransicht der Schriftgestalt zu bekommen.
Vielleicht begeistert sich noch wer mehr dafür. :-)
Im Dokumentmenü Format/Zeichensatz ändert sich dadurch die Schriften-Liste mit den anmutenden Schriftgestalten.

Apple hat nachgelegt mit dem Programm Schriftsammlung, in dem ich als Nutzer meine eigenen Ordner anlegen kann, um meine Schriften zu gruppieren. Solche eigenen Ordner mit eigenen Schriftgruppen tauchen in den Apple-Programmen (Mail.app, TextEdit.app, Pages.app) auf. Das macht oft genug Schriftauswählen sehr übersichtlich.

Diesen Komfort baute ich eben in RagTime nach, indem in einem Rechenblatt meine wenigen Lieblingsschriften mit Textbeispielen in einer Spalte »eingesammelt« wurden. In einer zweiten Spalte notiere ich das, was folgendes AppleScript ausliest:

tell application "RagTime 7"
   tell table "Rechenblatt 1" of document 1
      get font of value of cell "A4"
   end tell
end tell

Klar, nun will ich mehr und eine ganze Spalte mit diesem AppleScript abklappern und die Werte in die jeweils rechts benachbarte Zelle eintragen …
Freundliche Grüße,
Norbert Lindenthal

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13913 On 15 September, 2025 07:57 admin said,

Hallo Herr Lindenthal,

eben ging ich in einer »stillen Minute« (Vorbereitung für Größeres = :-) die Grundeinstellungen und Dokumenteinstellungen durch. Und da finde ich tatsächlich:
Menü Extras/Grundeinstellung…/Programm :: [ ]Schriftenvoransicht im Menü (hoher Speicherbedarf),
einen für mich latenten Wunsch erfüllt, in der Fülle der Schriften, mit der ich im Laufe der Zeit überschüttet bin, einen Hauch von Voransicht der Schriftgestalt zu bekommen.
Vielleicht begeistert sich noch wer mehr dafür. :-)
Im Dokumentmenü Format/Zeichensatz ändert sich dadurch die Schriften-Liste mit den anmutenden Schriftgestalten.

Es freut uns zu hören, dass Ihnen die Schriftenvorschau im Menü „Format > Zeichensatz“ gefällt!

Dieses Feature haben wir aber bereits in Build 2014 vom 25.05.2023 implementiert und dies auch im zugehörigen Newsletter-Mailing (http://www.ragtime.de/Newsletter/2023_05_25-d/page1.html) kundgetan ;)

Ihr RagTime.de-Team

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13911 On 12 September, 2025 23:27 Steffen said,

Find ich spannend! Hältst du uns auf dem Laufenden?
Herzliche Grüße
Steffen

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13912 On 14 September, 2025 15:56 werkwelt said,

Moin, Steffen,
hier ein ganz kleiner nächster Schritt:

AppleScript:

tell application "RagTime 7_2078"
   tell table "Rechenblatt 1" of document 1
      set value of cell "B7" to (get font of value of cell "A7")
   end tell
end tell

Ich weiß noch nicht, wie ich die Zellennummer (hier A7 oder B7) per AppleScript auslesen könnte, indem ich frage, wie die Zellennummer einer »Selection« ist.
Und wenn in einer Zelle zwei Schriftstile in Verwendung sind, dann geht der AppleScript-Befehl »font« nicht.

Ja, und es gibt viele weitere Fragezeichen. :-)

In meiner Vision wäre es intuitiv, wenn mein AppleScript meine Schrift-Notiz in einer »selected« Zelle auslesen und in der rechts benachbarten Zelle notieren würde. Den Weg dazu finde ich noch nicht.

RagTime, FileTime, FileMaker, AppleScript, Zeichenmaschine, SVG und der Arc Fritz FM geben Flügel.

Mit freundlichen Grüßen,
Norbert Lindenthal

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13916 On 15 September, 2025 20:51 Steffen said,

Moin Norbert,
Meine Idee ging so etwa in die Richtung von Thomas Kaegis Set_Color.rtd, wo er sowas ähnliches, nur mit Farben gemacht hat.
Aber meine Versuche scheiterten bisher ...
LG
Steffen

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13914 On 15 September, 2025 12:51 GreatOm said,

Vielleicht in etwa so?

on IncCol(cellName)
	set l to characters of cellName as list
	set item 1 of l to ASCII character ((ASCII number of (item 1 of l)) + 1)
	return l as string
end IncCol

tell application "RagTime 7"
	activate
	set selectedCell to selection -- cell "E18" of table "Rechenblatt 1" of document id 1 of application "RagTime 7"
	if class of selectedCell is not cell then return "Error: wrong selection type"
	set cellName to name of selectedCell -- "E18"
	tell me to set nextCell to IncCol(cellName) -- "F18"
	
	tell document id 1
		tell table "Rechenblatt 1"
			set value of cell nextCell to get font of value of selectedCell
		end tell
	end tell
end tell

Das funktioniert allerdings nur bei der Selektion einer Zelle. Die Schleife für mehrere ausgewählte Zellen überlasse ich dem geneigten Leser :-)

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13915 On 15 September, 2025 19:00 werkwelt said,

Moin, GreatOm,

on IncCol(cellName)
   set l to characters of cellName as list
   set item 1 of l to ASCII character ((ASCII number of (item 1 of l)) + 1)
   return l as string
end IncCol
   
tell application "RagTime 7"
   activate
   set selectedCell to selection -- cell "E18" of table "Rechenblatt 1" of document id 1 of application "RagTime 7"
   if class of selectedCell is not cell then return "Error: wrong selection type"
   set cellName to name of selectedCell -- "E18"
   tell me to set nextCell to IncCol(cellName) -- "F18"
   
   tell document id 1
      tell table "Rechenblatt 1"
         set value of cell nextCell to get font of value of selectedCell
      end tell
   end tell
end tell
   
Das funktioniert allerdings nur bei der Selektion einer Zelle. Die Schleife für mehrere ausgewählte Zellen überlasse ich dem geneigten Leser :-)

ja, so. Bei mir läuft das, wie ich es mir wünschte, aber noch nicht wußte, wie das laufen könnte.
Durch Deine Idee ist das Skript sehr universell. Es nimmt ganz einfach die aktivierte Zelle und (über-)schreibt in die rechts benachbarte Zelle.

Nun kommen Feinheiten, die aber beim ersten Lernen verwirren:
Wenn zwei Zellen aktiviert/ausgewählt/selektiert/markiert sind, wird eine Fehlermeldung nicht abgefangen und nicht per Dialog erläutert.
Wenn ein zweites Dokument existiert, kann eine nicht mit einbezogene »document id« einen Fehler erzeugen.

Alle Anerkennung für diesen Stand, lieber GreatOm.
Mal sehen, was sonst noch beigetragen wird.
Ich jedenfalls kann so innerhalb RagTime eine Schriftart erkunden oder eine Schriftartnotiz in Erinnerung rufen. Dadurch gehe ich nicht unter in einem überfüllten Schriftmenü. Danke.

RagTime, FileTime, FileMaker, AppleScript, Zeichenmaschine, SVG und der Arc Fritz FM geben Flügel.

Mit freundlichen Grüßen,
Norbert Lindenthal

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13917 On 16 September, 2025 14:05 GreatOm said,

Hm… irgendwo hatte ich was von "Selection" gelesen und daher damit gearbeitet.
Man könnte natürlich auch mal eben in AppleScript eine Schleife nehmen, die unabhängig von der Selektion ist.
Wie wäre es damit:

tell application "RagTime 7"
    activate
    set colName to "B"
    set startRow to 8
    set endRow to 10
    
    repeat with currentRow from startRow to endRow
        set cellName to colName & currentRow
        set outputCell to (ASCII character ((ASCII number of colName) + 1)) & currentRow
        tell document 1
            tell table "Rechenblatt 1"
                set cell outputCell to font of value of cell cellName
            end tell
        end tell
    end repeat
end tell

Hier kann Nan einfach colName sowie start und ende der Zellen festlegen.

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13919 On 17 September, 2025 12:10 Steffen said,

Das finde ich ist schon mal ein Riesenschritt, vielen Dank!
Ich hab jetzt mal weitergesponnen und folgendes Dokument "Fontliste.rtd" angelegt (RagTime 7.0.4_2072):
2 Rechenblätter: "Liste" und "Glyphen"

"Liste" Spalte A1: 1. Zeichensatz ausgewählt; A2: 2. Zeichensatz ausgewählt; ... A88: 88. Zeichensatz ausgewählt (manuell mal bis dahin)
Gleichzeitig habe ich als Formel die jeweils rechts benachbarte Zelle angegeben, also "B1" in A1, "B2" in A2, ...

Für "Liste" Spalte B habe ich das Script von GreatOm entsprechend angepasst und laufen lassen:

tell application "RagTime 7"
    activate
    set colName to "A"
    set startRow to 1
    set endRow to 88
    repeat with currentRow from startRow to endRow
        set cellName to colName & currentRow
        set outputCell to (ASCII character ((ASCII number of colName) + 1)) & currentRow
        tell document 1
            tell table "Liste"
                set cell outputCell to font of value of cell cellName
            end tell
        end tell
    end repeat
end tell

Da die Schriften, z.B. bei Symbolfonts, nicht lesbar sind, habe ich eine dritte Spalte angelegt, die auf die Zelle A1 der Rechenblatts "Glyphen" mit einem ausgewählten Glyphensatz zugreift, den ich über die Formel "#A1&': '&Glyphen!$A$1" mit dem Fontformat aus Spalte A verbinde (kopiert bis Zeile 88, aber könnte man sicher besser über einen Suchlauf machen ...).
Als Glyphensatz habe ich z.B. "ABCDEFGHIJKLMNOPQRSSSTUVWXYZÄÖÜ abcdefghijklmnopqrstuvwxyzäöüß 1234567890" verwendet.

Das Ergebnis ist eine dreispaltige Tabelle:
1. Spalte: Fontname in der jeweiligen Schrift
2. Spalte: Fontname in Dokument-Grundschrift
3. Spalte: Fontname: Glyphensatz in der jeweiligen Schrift

Wo ich jetzt nicht weiterkomme:
Großartig wäre jetzt der gewissermaßen umgekehrte Weg, aus der Liste der verfügbaren Fonts aus dem Zeichensatzmenue, entweder direkt (AppleScript-Schleife?) oder die z.B. aus Fontbook gewonnen werden könnte, und in meinem Fall Spalte B in "Liste" automatisch füllen würde, möglichst ebenfalls über eine AppleScript-Schleife.

Viele Grüße
Steffen

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13920 On 17 September, 2025 12:51 GreatOm said,

Großartig wäre … aus der Liste der verfügbaren Fonts aus dem Zeichensatzmenue, entweder direkt (AppleScript-Schleife?) oder die z.B. aus Fontbook gewonnen werden könnte…

Das sehe ich zurzeit nicht. In macOS26 ist FontBook nicht mehr scriptfähig. Auch in macOS 15 nicht (habe gerade noch geschaut).
Da bleibt nur so etwas wie die Ausgabe vom Systemprofiler zu parsen.

system_profiler -xml SPFontsDataType

Ist aber auch nicht mal eben getan…

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13924 On 17 September, 2025 16:38 Steffen said,

Ja, ich hätte Fontbook nicht gescripted, das geht nicht mehr, hab ich auch gesehen, sondern als Workaround möglichst kompakte Layouts generiert, via PDF "gedruckt", Text kopiert und GREP auf die Glyphen, um sie zu löschen und damit die reinen Fontnamen zu extrahieren. Ging ganz gut!

Der Vorteil: Ich habe die tatsächlichen Namen der Fonts, wie im Zeichensatzmenue, und nicht die Dateinamen, incl. Extention, wie sie der system_profiler-Befehl ausspuckt, die bekäme ich u.U. auch über eine einfache Dateiliste des Library/Fonts-Ordners.

Da gibt es sicher viele Wege ...

Aber das eigentlich Interessante ist, wenn ich denn die Liste mal habe, wie mache ich in Applescript folgende Abfrage:

In Zelle A1 steht (z.B.) "Adobe Caslon Pro Bold". Formatiere Zelle B1 in diesem Font.
Oder umfassend dann: In Spalte A stehen alle Fontnamen. Formatiere alle Zellen in Spalte B jeweils in dem Font, der in der korrespondierenden Zelle in Spalte A steht.

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13927 On 18 September, 2025 10:13 GreatOm said,

In Zelle A1 steht (z.B.) "Adobe Caslon Pro Bold". Formatiere Zelle B1 in diesem Font.
Oder umfassend dann: In Spalte A stehen alle Fontnamen. Formatiere alle Zellen in Spalte B jeweils in dem Font, der in der korrespondierenden Zelle in Spalte A steht.

So:

tell application "RagTime 7"
    activate
    set fontNameCell to "C10"
    set targetCell to "E8"
    tell document 1
        tell table "Rechenblatt 1"
            
            set font of value of cell targetCell to value of cell fontNameCell
        end tell
    end tell
end tell

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13928 On 19 September, 2025 15:10 Steffen said,

Perfekt, jetzt habe ich tatsächlich die Liste aufstellen können:
Spalte A: Namen der verfügbaren Fonts in Dokumentgrundschrift
Spalte B: dto., und nach dem Lauf des AppleScripts die Namen ausgezeichnet in der jeweiligen Schrift:

tell application "RagTime 7"
	activate
	set colName to "A"
	set startRow to 1
	set endRow to 200
	repeat with currentRow from startRow to endRow
		set fontNameCell to colName & currentRow
		set targetCell to (ASCII character ((ASCII number of colName) + 1)) & currentRow
		tell document 1
			tell table "Rechenblatt 1"
				set font of value of cell targetCell to value of cell fontNameCell
			end tell
		end tell
	end repeat
end tell

Dabei meldet RagTime des Öfteren:
Damit Zeichen aus "EinBestimmterFont" dargestellt werden können, muss Ihre Eingabe einmalig an den Unicode-Bereich des Zeichensatzes angepasst werden.
Diese Anpassung kann bei späteren Zeichensatzwechseln nicht zurück genommen werden.

mit der ich nicht wirklich was anzufangen weiß (vielleicht können mich die Entwickler aufklären?), ist aber nicht tragisch, zumindest läuft es ... :)

Jetzt wollte ich natürlich ein Abbruchkriterium für die Schleife einbauen, damit nicht immer die Variable endRow angepasst werden muss:

tell application "RagTime 7"
	activate
	set colName to "A"
	set startRow to 1
	set endRow to 16000
	repeat with currentRow from startRow to endRow
		set fontNameCell to colName & currentRow
		set targetCell to (ASCII character ((ASCII number of colName) + 1)) & currentRow
		set fontNameCellValue to value of cell (colName & currentRow)
		if fontNameCellValue is missing or fontNameCellValue is "" then
			exit repeat
		end if
		tell document 1
			tell table "Rechenblatt 1"
				set font of value of cell targetCell to value of cell fontNameCell
			end tell
		end tell
	end repeat
end tell

Das jedoch klappt nachhaltig in unterschiedlichsten Varianten, selbst mit KI-Hilfe nicht 8-(

"RagTime 7" hat einen Fehler erhalten: Die Aktion konnte nicht ausgeführt werden. -10010: Der Vorgang konnte nicht abgeschlossen werden. (OSStatus-Fehler -10010.)

Kann mir jemand auf die Sprünge helfen?

Viele Grüße
Steffen

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13929 On 19 September, 2025 17:45 Thomas Kaegi said,

Hallo Steffen

Ich habe diese Diskaussion bis jetzt nicht verfolgt. Aber zu deinem letzten Beitrag folgende Beobachtungen und Gedanken:
1. Bei den von mitr für den TExt verwendeten Schriftnamen ist die Meldung betr. Schriftdarstellung nie gekommen.
2. Den Schriftnamen musst du doch nur in Spalte A eintragen. Er kann im Script in die Spalte B übertragen werden.
3. Das Abbruchkriterium habe ich anders ermittelt.

tell application "RagTime 7"
activate
set colName to "A"
set startRow to 1
set endRow to 16000
repeat with currentRow from startRow to endRow
set fontNameCell to colName & currentRow
set targetCell to (ASCII character ((ASCII number of colName) + 1)) & currentRow
tell document 1
tell table "Rechenblatt 1"
if cell (colName & currentRow) is empty then
exit repeat
end if
set value of cell targetCell to value of cell fontNameCell
set font of value of cell targetCell to value of cell fontNameCell
end tell
end tell
end repeat
end tell

Gruss, Thomas

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13930 On 20 September, 2025 15:59 Steffen said,

Manchmal denkt man einfach zu komplziert ...

Danke, Thomas!

Funktioniert perfekt!

Und auch nochmal vielen Dank an GreatOm.

Grüße
Steffen

Re: Schriftenvoransicht im Format/Zeichensatz-Menü

#13918 On 17 September, 2025 07:43 GreatOm said,

Oder auch einfacher

tell application "RagTime 7"
    activate
    set sourceCol to "B"
    set targetCol to "C"
    set startRow to 8
    set endRow to 10
    
    repeat with currentRow from startRow to endRow
        tell document 1
            tell table "Rechenblatt 1"
                set cell (targetCol & currentRow) to font of value of cell (sourceCol & currentRow)
            end tell
        end tell
    end repeat
end tell