Merge TextFrames Extension for Adobe InDesign

Justin | ExtendScript,extensions,InDesign | Friday, November 28th, 2008

By request—following similar extensions for Flash and Illustrator—here’s an extension for InDesign that merges multiple textframes into one, while retaining the original styles.

Because of properties within InDesign, this extension is actually the most powerful of the three. It accepts characters in the separator field for hard returns, soft returns, and tabs (as well as any combination of any other standard characters).

There are also options in the dialog box that control the size of the textframe once it’s been merged (see the variations in the graphic down the page).

Merge Textframes Extension for Adobe InDesign

Download and instructions below…

Download

Merge Textframes is totally free to use by subscribing to our newsletter.

Enter your information below to get the free download.

You can unsubscribe at any time. I will never spam you or sell your information.

Installation

The download package comes with installers for InDesign CC, as well as CS4 – CS6.

Simply double-click on the installer that matches your setup and follow the onscreen instructions.

There’s also an older version of the script for CS – CS3.

More details provided in the README.txt file.

Usage

Start by select the textframes you want to merge in InDesign (unless you want to merge entire pages).

Running from the Object or Context (right-click) menus

As of v2, you can now get easy access to Merge Textframes from the Object menu, or by right-clicking and choosing Merge Textframes…
InDesign Object menu option

And you can still run it from the Scripts panel.

Running from the Scripts panel

Open the Scripts panel, Windows > Utilities (or Automation pre-CS5) > Scripts.

InDesign Scripts Panel

Locate the MergeTextframes_ID.jsxbin script in the Scripts panel and double-click to run the script. If you installed the script using the CC installer or the MXP file, the script with be in the Ajar Productions subfolder.

Choose options from the dialog

If you’re running InDesign CS4 or newer you will be prompted with a dialog box. The dialog box will allow you to select the orientation of the sorting (top, left, bottom, right), use a custom separator character(s), and select options to fit the merged textframe once complete.

Frame fitting options

Update (6/13/2017)

Version 2.0 adds the following highly-requested features

  • Single-step undo
  • Saves and restores previous settings
  • Lets you merge text frames that are part of a linked story

Plus a CC-friendly installer. 🙂

Update (3/02/2010)

Version 1.1.0 now has the ability to batch-merge textframes within every page of the current document. I had several requests for something like this (including from a recent donor). Here it is! The download links above have been updated.

The new version now has the “Apply to” and “Ignore locked layers” as shown in the image below.

Merge Textframes version 1.1.0 new features

Note that any warning messages about having too few textframes selected have been delayed until after the dialog box appears to reflect the new options.

Thanks for visiting this page and using our extension!

Before you go, grab another free InDesign extension

Need to do the opposite? Grab Split Text to break InDesign text frames apart.

Get updates from Ajar Productions

Splittext_id_400px

Sign up today and get the InDesign Split Text premium extension for free!

Unsubscribe at any time. Powered by ConvertKit

Related Articles

127 thoughts on “Merge TextFrames Extension for Adobe InDesign”

  1. ariyamuthu says:

    Nice… Thanks

  2. Rachel says:

    Hi Justin,
    This script is just what I have been looking for. Unfortunately, I am unable to make it work how I’d like. When I run the script I get the following error:

    JavaScript Error!
    Error Number: 30614
    Error String: Invalid object for this request.
    Engine: main
    Line: 537
    Source: arr[i].previousTextFrame = arr[i-1];

    I am trying to run the script across multiple pages of text boxes using the “all pages” feature, but the script will only combine 1 page of text boxes at a time. (I get the error but the script does actually do its job for one page.) Subsequent pages can also be done, but each page saves into its own separate text box. I have dozens of pages so this is somewhat helpful but I was hoping to wind up with one single text box with text from every single page. Can you help!!?? I am running CS6 on Windows 7

    1. Justin says:

      Hi Rachel,
      If you’d like to email us a small INDD file that replicates the issue, we can take a look.
      support (at) ajarproductions (dot) com.

      1. Steven says:

        It seems I can reproduce this error when trying to merge threaded text frames. So perhaps unthread them first before merging text boxes.

      2. Justin says:

        Thanks, Steven. We’ve found this too and we’re investigating. In the meantime, there is a sample script installed with InDesign the will unthread text frames. Running that first may do the trick.

  3. Steven says:

    I’m also having this issue.

  4. dan says:

    same here, CS6, not seeing an error, but it’s only merging boxes on one page, not all pages as hoped.

  5. dan says:

    Is that how it’s intended? Batch merging each individual page per page? Was hoping to be able to merge all text into one long text box.

    1. Justin says:

      Hi Dan and Steven,
      Are any of your text frames linked?

      1. Dan says:

        No, this was just a test document, I made 3 separate text boxes, 1 on the first page, 2 on the second, and when I run the script it merges the two on the second page but leaves the first.

      2. Justin says:

        Ah, that is how it’s supposed to work. It merges all the text frames on each page, but does not merge across pages. So, if you had 2 text frames on the 2nd page, those would be merged together, but would not be moved to the 1st page.

  6. Isobel says:

    Thanks so much for this script, incredibly handy and saved me a huge amount of time

    1. Justin says:

      Glad to hear it, Isobel!

  7. Bill Siegler says:

    Would love to use this with InDesign CC 2017. Unable to install the extension. Would you be able to fix this?

    1. Kait says:

      I’m also unable to install with InDesign CC 2017, would love a fix!

      1. Kait says:

        I finally figured out to just use the MergeTextframes_ID.jsx file

  8. joseph san andres says:

    Hi,
    Can you help me on how to make the separator be default to \r, no need to enter in the field separator.
    Thanks!

  9. Brian Langhoff says:

    Using this nice little script with CC2017. Works like a charm with two text boxes. Inserting hard return in the prefs and between the two text boxes it inserts this hard return. But as soon as I select 3 or more text boxes, it does not insert this return. The last line of box 1 continues with first line of box 2 etc. …

    1. Brian Langhoff says:

      Tested some more, that was incorrect. It works – UNLESS the text frame has text overflow (ie. little red plus in bottom right corner) – if the text frame is too small it does NOT insert the hard return… 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *