[GastForen Programmierung/Entwicklung AppleScript TAB und FORCED LINE BREAK in einem String kombinieren

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

TAB und FORCED LINE BREAK in einem String kombinieren

Martin Fischer
Beiträge gesamt: 12783

4. Feb 2007, 09:38
Beitrag # 1 von 6
Bewertung:
(1685 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo (Hans),

ich kann TAB oder FORCED LINE BREAK einer Variablen zur späteren Verwendung in einem content zuweisen. Aber es will mir nicht gelingen, die Kombination TAB + FORCED LINE BREAK einer Variablen zuzuweisen.

Das Ergebnis von
Code
set myString to tab & forced line break 

ist nicht "\t\n", sondern "\tforced line break" (also nicht die Interpretation von forced line break als solchem Zeichen, sondern "forced line break" als string).

Wie kann ich die beiden Sonderzeichen kombinieren?
X

TAB und FORCED LINE BREAK in einem String kombinieren

Hans Haesler
  
Beiträge gesamt: 5826

4. Feb 2007, 19:27
Beitrag # 2 von 6
Beitrag ID: #421467
Bewertung:
(1684 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

entschuldige bitte die verspätete Antwort. Aber heute musste ich den
sonnigen Tag nutzen und in die Berge fahren. Zum Skilanglauf in Villars:
http://www.villars.ch/en/navpage-WinterVG-WintersportVG-51608.html

Zu Deinem Problem: Versuch's mal direkt mit "\t\n":
Code
tell document 1 of application "Adobe InDesign CS2" 
  activate
  set aString to "\t\n"
  tell selection
    set contents of insertion point 1 to aString
  end tell
end tell

Nach dem Prüfen der Syntax bleiben nur das Anführungs- und das Abführungs-
Zeichen sichtbar. Doch beim späteren Einsetzen werden die beiden Zeichen
korrekt umgesetzt.

Gruss, Hans


als Antwort auf: [#421466]

TAB und FORCED LINE BREAK in einem String kombinieren

Martin Fischer
Beiträge gesamt: 12783

4. Feb 2007, 20:25
Beitrag # 3 von 6
Beitrag ID: #421468
Bewertung:
(1684 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hans,

Du brauchst Dich doch nicht zu entschuldigen, wenn Du am Sonntag nicht innerhalb von zwei Stunden nach Verschicken der Frage antwortest. Ich freue mich für Dich, wenn Du die Sonne in Villars auf zwei Brettern genießen durftest.

Danke für Deinen Lösungsvorschlag.
Den hatte ich auch schon ausprobiert, mich dann aber an der Umsetzung dieser Zeichen in einen richtigen TAB und ein interpretiertes FORCED LINE BREAK im Script Debugger nach Ausführung des Skripts gestört.
Deswegen wollte ich die beiden Zeichen als TAB und FORCED LINE BREAK definieren - um gerade diese Interpretation zu verhindern. ;-)

Aber dies ist mir bis jetzt nicht gelungen.
Nun "\t\n" erfüllt ja auch den Zweck - und am Ende zählt, was hinten rauskommt.

Martin


als Antwort auf: [#421466]

TAB und FORCED LINE BREAK in einem String kombinieren

Hans Haesler
  
Beiträge gesamt: 5826

4. Feb 2007, 21:11
Beitrag # 4 von 6
Beitrag ID: #421469
Bewertung:
(1684 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

hier eine Lösung, bei welcher die Sonderzeichen nicht schon beim Prüfen der
Syntax umgesetzt, aber später dennoch richtig eingefügt werden.
---
tell document 1 of application "Adobe InDesign CS2"
   activate
   set aList to {tab, forced line break}
   tell selection
      repeat with i from 1 to 2
         set contents of insertion point 1 to item i of aList
      end repeat
   end tell
end tell
---
Gruss, Hans


als Antwort auf: [#421466]

TAB und FORCED LINE BREAK in einem String kombinieren

Martin Fischer
Beiträge gesamt: 12783

4. Feb 2007, 21:20
Beitrag # 5 von 6
Beitrag ID: #421470
Bewertung:
(1684 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hans,

Du bist klasse!
Deine Lösung läßt mich schmunzeln.

Das heißt aber unterm Strich, daß sich die beiden Zeichen als TAB und FORCED LINE BREAK nicht direkt miteinander kombinieren lassen.
Warum nicht?
Gibt es noch andere Zeichenkombinationen, die sich so nicht kombinieren lassen?

Danke
Martin


als Antwort auf: [#421466]

TAB und FORCED LINE BREAK in einem String kombinieren

Hans Haesler
  
Beiträge gesamt: 5826

5. Feb 2007, 10:00
Beitrag # 6 von 6
Beitrag ID: #421471
Bewertung:
(1684 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

Dein erster Versuch konnte nur halbwegs – d.h. ohne Fehlermeldung –
gelingen, weil tab ein uralter AppleScript-Ausdruck ist, welcher von
InDesign eins zu eins "adoptiert" wurde.

Dieser tab muss ein verkappter String sein, weil beim Anfügen
des forced line break dieser zum String wird.

In der umgekehrten Reihenfolge geht es nicht:
---
set aString to forced line break & tab
---
Beim Einfügen kommt eine Fehlermeldung.

Dasselbe würde mit mehreren Konstanten geschehen. Deshalb ist das
Verwenden einer Liste die beste Lösung:
---
tell document 1 of application "Adobe InDesign CS2"
   activate
   set aList to {bullet character, indent here tab, punctuation space}
   tell selection
      repeat with i from 1 to count of aList
         set contents of insertion point 1 to item i of aList
      end repeat
   end tell
end tell
---
Gruss, Hans


als Antwort auf: [#421466]
X