Automated Solutions for FrameMaker..

Posts tagged ‘extendscript’

Extendscript solution to generate Paragraph, Character and Table Format Descriptives

Hello FrameMaker users and Friends,

Too much of travelling kept us busy last fortnight. Was taking a look on the Framers list and found an interesting problem to solve- Link.

This script pulls out information on Paragraph, Character & Table tags from the active document and displays it in a HTML report.

HTML Tag Descriptives Report

Tag Descriptives Report

The report has three sections:

  1. Paragraph Formats
  2. Character Formats
  3. Table Formats

Each listing down different tag definitions and some associated properties for each tag in the document.

You can modify the script to add fields that are important to be captured in the report.

Overall a nice report to keep track of all tags and the related info in one report. We found it very useful while designing templates for a project. Hopefully anyone using this script will derive some benefit using this report.

Download the extendscript here (Right click and Save as) and rename pdf to jsx- TagDescriptives.jsx

Feel free to share your thoughts on it.



FrameMaker 11 – Beyond Expectations


FrameMaker 11

The news is abuzz about the launch of Adobe FrameMaker 11.

We evaluated some of the new features and have a good word to share about most of them. We thought of documenting the new features and capabilities in FrameMaker 11 so that we could share it with the entire community. And have some feedback too!


  1. Multiple views for XML Authoring
  2. .. With the aim of breaking the cocoon of not being recognized as a complete XML editor, the multiple views(WYSIWYG, Author, XML Code) in the latest version of FrameMaker serve an apt reply to all those who did not recognize the XML capabilities in FrameMaker

    .. more

  3. Smart Paste structured content from alternative sources directly to valid XML elements. Easy migration from HTML and Microsoft Office applications.
  4. .. Do you author in DITA ? Need to assemble your content from various sources(HTML, Word etc.)? “Smart Paste” offers a great and a quick solution.

    .. more

  5. Improved Ctrl shortcuts– Hierarchical and much more usable
  6. .. Real productivity improvements can be realized using one of the greatest feature in Framemaker history-the Ctrl shortcuts, in a brand new Avatar. FrameMaker 11 redefines control keys aka “Quick Catalogs“.

    .. more

  7. Print ready DITA Publishing along with cover pages, TOC and Index etc.
  8. .. For the authors that author in DITA standard and love the FrameMaker book capabilities, this is a feature to appreciate. Hopefully it would reduce the post processing effort which organizations commonly spend on publishing ditamaps from FrameMaker.

    .. more

  9. Ready and customizable Banner Text (document skeleton) for new DITA XMLs with instructional placeholder content. Basically powered from the EDD.
  10. .. If the authors in an organization need to be guided on what context each element in a structured application holds, then this is a great feature. For template designers, this is a feature that should definitely be explored because they can place a basic structure along with helpful information for authors who start authoring an XML.

    .. more

  11. Object Style Designer saves lot of manual effort.
  12. .. Have you commonly encountered scenarios where you have multiple images and you wanted to apply some common settings across all of them? Earlier you would have modified each one individually. Object Style Designer(OSD) in FrameMaker 11 solves it well by doing it all in one go!

    .. more

  13. Hotspots enable markup of content while adding active links to related sources.
  14. .. Add life to your ‘so far’ dead content by adding active links to relevant content anywhere in your document! Now it will be possible to add links to any parts of an object/image and take the reader to where he would find more information on that object/image part.

    .. more

  15. Revamped New XML/Preferences Dialogs.
  16. .. Recent releases of FrameMaker have tended towards being feature heavy. A number of these come along with a lot of configuration parameters. Some reach the ini files and some make it to the UI dialogs. FrameMaker 11 seems to have taken the first baby step towards providing all such preferences under one roof.

    .. more

  17. 3D and Multimedia interaction
  18. .. The Adobe team realizes well that the future of technical communication lies in the rich media and 3D direction. And they sure have attempted to address some new requirements from the users of such building blocks.
    The play, stop and and capture frame functionality in supported video formats, to be later used as the poster image when the file gets published to PDF, is also a time-saver and helps create better looking outputs.

    .. more

  19. Line Numbers-a helpful feature but a bit half baked. Tables are totally ignored, could be a bug, but it seems the Adobe folks realize this. We too agree that even without finesse, the feature does address the basic requirements of a user.
  20. The ability to view line numbers in a document being authored was long overdue. Good to find it in FrameMaker 11.

  21. Workspaces
  22. Lot has been heard about the workspaces in FrameMaker – the benefits and the pain points. In FrameMaker 11, a user can manipulate UI options by editing the workspaces files(cfws, cfg).

  23. More to come …

We continue to spend time with the new features in FrameMaker 11 and plan to post elaborately on each individually. Hope it will be useful for everyone!

Most features will impress you when it comes to the thoughtfulness behind them and hopefully address most requirements that the users would have wanted.

We encourage you to go ahead and download the trial version from the official download page:

Extendscript: Remove trailing spaces after variables in your document

Hello everyone:

I was going through a query on the Adobe FrameMaker user to user forums, found this interesting problem statement:

And I thought, why not try and solve this problem statement. Had fun solving it.
Sharing it for the benefit of the FrameMaker Extendscript community.
var doc = app.ActiveDoc
var variable = doc.FirstVarInDoc

var tr1 = variable.TextRange; //text range of the variable

	/*text range for next possible char*/
    var tl1 = new TextLoc(tr1.end.obj, tr1.end.offset + 1);	
    var tl2 = new TextLoc(tr1.end.obj, tr1.end.offset + 2);	
    var tr2  = new TextRange (tl1, tl2)

	var textitems = doc.GetTextForRange (tr2, Constants.FTI_String);

	if (textitems.length > 0)
		var str = textitems[0].sdata;
		if(str != " ") //if space then add text
			 doc.AddText (tr2.beg, " ");        
	variable = variable.NextVarInDoc;

Hope this solution nails the problem statement. It might also lead you to attack similar problems under different contexts.

Best Wishes:

Extendscript for FrameMaker

ExtendScript is an extended implementation of JavaScript that provides a scripting interface for FrameMaker and many other Adobe applications. For more information on ExtendScript, see JavaScript Tools Guide.

ExtendScript is easy to learn, especially if you are familiar with FDK or a scripting language like JavaScript.

Available Documentation:

Introduction to Scripting in FrameMaker