Lade...
 

FrameMaker ExtendScript

Inhalt in einem Element markieren

Mit diesen beiden Skripts ist es möglich über Tastaturkürzel den Inhalt eines Elements auszuwählen. Das erste Skript markiert den aktuellen Textknoten. Das Zweite markiert den gesamten Inhalt inklusive der inline Elemente.
Die Funktion steht hier zum download bereit. Das Skript einfach in das FrameMaker Verzeichnis ($FMHome\startup) kopieren und FrameMaker ggf. neu starten.
Shortcut: Esc+h+e+t
Textknoten auswählen
  1 . var doc = app.ActiveDoc;
  2 . var sel = doc.ElementSelection;
  3 . sel.beg.offset=0;
  4 . sel.end.offset=Constants.FV_OBJ_END_OFFSET;
  5 . var begLoc = doc.ElementLocToTextLoc (sel.beg);
  6 . var endLoc = doc.ElementLocToTextLoc (sel.end);
  7 . var textRange = new TextRange (begLoc, endLoc);
  8 . doc.TextSelection = textRange;
Shortcut: Esc+h+e+c
Elementinhalt auswählen
  1 . var doc = app.ActiveDoc;
  2 . var sel = doc.ElementSelection;  
  3 . var currentElement = null;
  4 . if (sel.beg.child.ObjectValid() && 
  5 .     sel.beg.child.ElementDef.ObjectValid() && 
  6 .     sel.beg.offset==0)
  7 .     currentElement = sel.beg.child;
  8 . else
  9 .     currentElement = sel.beg.parent;
 10 . var textRange = currentElement.TextRange;
 11 . textRange.beg.offset = textRange.beg.offset + 1 ;
 12 . doc.TextSelection = textRange;
Die Shortcuts können zu Beginn des Skripts beliebig geändert werden.
Lizenzbedingungen
veröffentlicht am 04 11 2011
Drucken