Need training at your office? Request a quote for custom training.

Home / Adobe FrameMaker / Adobe FrameMaker: How to create a list of effective pages

Adobe FrameMaker: How to create a list of effective pages

by Barb Binder, Adobe Certified Instructor on FrameMaker
Updated: May 22, 2020

A List of Effective pages (aka LEP or LOEP) is a list of every page in a document along with the current revision number and the date of each page’s revision. This is a common requirement for many of our FrameMaker students, and not a particularly fun part of their job. However, one of the fun parts of my job is helping my students solve their layout issues and this one came up yesterday. Up until these students attended our Advanced FrameMaker training class, they were updating their LEP manually, copying and pasting the revision numbers, one line at a time. Ouch.

Note: You can purchase a plug-in to automate this process from Steve Kubis at Silicon Prairie Software. As of the last update, a single-user license is US$30, and a site license is US$300. Please direct questions on the plug-in to

Setting up an LEP is a complex, multi-step process. The steps below detail how to set up your own LEP, using the tools found within unstructured FrameMaker (any version). Please note that this is a task for an advanced FrameMaker user: someone who is already comfortable using master pages, reference pages, variables, books and generated files.

Feel free to ask a specific question about the process using the form at the bottom of this post. I am also available for hourly, online coaching and can help you set up your own basic LEP in about an hour. See One-on-One Online Coaching.

1. Set up the running heads on the master pages

  1. In addition to the normal running heads in background frames, each chapter in your book will need to have an empty template frame with a flow tag that can accept the revision number and date on the body pages. You will need to add these frames to the master pages.
  2. Assign clear, concise paragraph style names to the running heads (i.e., Revision#Left and Revision#Right for the left and right pages). You will be generating a list of paragraphs using these paragraph styles.
  3. I recommend removing the auto-connect property from the template frames so that a novice FrameMaker user won’t accidentally overset text in a frame and generate unintentional extra pages.

For information on using master pages, including defining template frames, see Adobe FrameMaker: Master Page Basics.

Here is an animation to show the process. Note that the page number and the words Rev. No and Date are in a background frame already. I am showing how to add a template frame that you can use to enter the revision numbers and dates on the body pages. For a double sided document, you would need to repeat the process for the left master page. Once you add the template frame to the master page, you can now type the revision numbers and dates in the template frame on each body page. These are the paragraphs I will collect in step 3.

Adobe FrameMaker: List of Effective Pages

2. Chapter numbering

  1. Set up your chapter numbers in the chapter files using Paragraph Designer > Numbering and the <$chapnum> building block.
  2. If you need words and not just numbers, assign the chapter numbers in the book window. For example, for the front and back matter, you can set a chapter number to use text by right-clicking the file in the book window, and choosing Numbering > Chapter > Format: Text. This is necessary to show TOC–1, or APP–1 (where TOC and APP are the chapter numbers) on the LEP.

For information on setting up chapter numbers with the Paragraph Designer, see Adobe FrameMaker: Numbered Headings and Adobe FrameMaker: Numbered Headings, Continued.

3. Add a List of Paragraphs

Next FrameMaker needs to collect the list of revision numbers and dates along with their page numbers via a generated file.

  1. Add a chronological List of Paragraphs (LOP) via the Insert menu in the book window, and reference the paragraph styles used on the running heads (i.e., Revision#Left and Revision#Right).
  2. Like all generated files, initially the text is presented without formatting. You will need to set up the columns, the paragraph styles for the LOP paragraphs and the all-important reference pages to control the presentation of the data. A typical LOP reference page might be formatted something like this:
    <$chapnum> – <Spagenum>             <$paratext>
    These building blocks will add the chapter number–page number in front of the revision numbers/dates automatically. The gap in front of <$paratext> might be handled via a tab stop. Depending on your formatting, you may need to rearrange these building blocks.

For information on working with generated files, see Adobe FrameMaker: What to know about working with generated files.

4. Add the revision dates and numbers manually, or with user variables

  1. Once the running heads, the chapter numbers and the generated LOP file are all working, you can begin entering the document edits.
  2. As each page is update, you will need to update the empty template frame in the running head with the current revision number/date on the body pages. This is most easily accomplished by setting up a user variable in the Variables panel, and adding the variable to the empty template frame in the running head. Alternatively, you can just type in the new dates and revision numbers manually.

For more information on working with variables, see Adobe FrameMaker: Variables.

5. Update the list when you update your book

When the edits are complete and the running heads are up to date, you can simply update your book, and along with the generated files. FrameMaker will scan all of the pages of all of the chapters in your book, and collect the latest page and revision numbers/dates. If you have everything set up correctly, you are done!

Leave a Comment

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

10 thoughts on “Adobe FrameMaker: How to create a list of effective pages

  1. I find FM difficult enough to use as it is what does not help is its own manual clearly assuming some kind of prior knowledge. I can’t even find a button to centre text – how on earth can it be called a publishing tool and not have simple, word like, buttons for formatting text…????? All I need is a list of effective pages saved as an .fm file I can include with the rest of the file, which is smashed in to bits but stored as a .book. None of the above makes any sense at all.

    1. Hi Huw,

      Unlike most of the FrameMaker tutorials on this site—which are step-by-step and include images—this one is meant to be an outline of the process and geared towards for my advanced students. You will find this note in the third paragraph: “Please note that this is a task for an advanced FrameMaker user: someone who is already comfortable using master pages, reference pages, variables, books and generated files.”

      I highly recommend attending a FrameMaker training class, or two. I can’t speak for all instructors, but on the first day of our classes you will learn how to control both paragraph and character formatting, including how to center text.

      FrameMaker is not an intuitive application and I don’t think it ever will be. I highly encourage you to start at the beginning, and work your way up to the task described on this page.

      I wish you the best,


  2. Barb …. thanks for all the great content you have posted. You have a gift for explaining how to use the program.
    I am working on a List of Effective Pages for a book and am stuck on a minor detail. When I try to build the LOEP using Insert>List of>Paragraphs and insert the paragraph tag for the revision number, it does not show up on the Body Page. Instead, the filename is printed twice.

    The reference page looks like the following with ‘RevDateText’ as the paragraph tag for the revision date. Thanks for any insight you can provide.

    r/ Patrick

    openXmlElementId :
    openObjectId :

    1. Hi Patrick:

      Those two lines (openXmlElementID and openObjectId) control the hyperlinks that are built into the generated files.

      When you add the paragraph style to the LOP (RevDateText), that should initially produce
      <$paratext> <$pagenum>
      on the LOP reference page. It will automatically be tagged RevDateTextLOP.

      If that line isn’t there, there is a problem adding the style to the LOP Setup dialog box.


      1. Barb … thank you for the clarification. I am missing a small point. Most likely, I do not have the running head set up correctly. When I add the frame to the master page footer and select ‘template frame with flow tag’, I am unable to insert the cursor and ‘insert header & footer’.
        How full is your schedule? I am open to some online ‘coaching’ to clean this up, as it will save hours in the long run. Unfortunately, I am on a tight schedule and have to finish this up by the end of the day tomorrow (Wed). 🙁 If that is unworkable, perhaps I can get your assistance for the next version.

        Thanks again for your assistance! r/ Patrick

  3. Hi Barb,
    I tried the steps in your tutorial, but when I add a text frame using your steps, no paragraph marker comes up so I can’t add any text. I must be missing something. I’ve been using Frame for more than 20 years. I’m using Frame version I have a large manual with more than 1000 pages and would love a to build an automated LEP. Any help would be greatly appreciated. TIA

    1. Hi Jenn:

      May I assume that you are stuck on step 1? Be sure that the frame that you add to the master page for the date/revision number is a template frame and not a background frame. That is the only way to add content to the body pages.


  4. Hi.
    Just wondering if the advanced FrameMaker class would include how to create LEP and list of revisions? I have these specific requirements

    1. Hi Shachi:

      No. I will cover all of the topics necessary to understand how to set up an LEP: master pages, variables, template and backgrounds frames in the intro class, and generated files and reference pages in the advanced class. Once you have an understanding of these topics, the instructions on this page will make sense and should be easy to follow. I am always happy to address random questions at the end of any of my advanced classes, so if you give it a shot, I can help you troubleshoot in the last hour.