Bjorn's Book Studio-PRO

Google Docs + Single Sourcing == TRUE

- a Google Docs extension -

Use this add-on to combine many (chapter) documents into a final long Google Doc, PDF or MSWord-document.

Book folders

Best practice is to user one Gdrive folder for each book you want to create.


You can apply a stylesheet to the final document, making sure that for example all headings look the same.


Footnotes are converted to endnotes at the end of the final document.


You can include text that frequently changes and appears often in your documents as variables. Variables are also useful for providing information that is updated automatically, such as the current date or time. They are also very useful when single sourcing - using the same source document to generate different versions of a document.

System variables

DateThe date when document is created
Date:shortThe date when document is created, short format
Date:isoThe date when document is created, ISO format
TimeThe time when document is created
Time:shortThe time when document is created, short format
Time:isoThe time when document is created, ISO format
UserEMailYour email address
UserNameYour name
UserFirstNameYour first name


Quickly reuse content by using and managing your library of small snippet documents.


You can create an index for the final book by marking text to be included in the index.

You insert "index keywords" by inserting hyperlinks with a specific syntax. These hyperlinks are removed when the final book is generated. You don't have to remember the syntax, there is a dedicated "Insert Keyword" UI.

The link syntax is a follows http://index?keyword:subkeyword. You can enter multiple keywords using a semicolon (;) as separator, e.g. http://index?keyword:subkeyword:keyword2:subkeywords2

The look of the index entries are controlled by styles in the selected stylesheet. Look for the styles "IndexEntry 1", "IndexEntry 2" etc.

Conditional text (filter values, aka. filter tags)

The add-on supports conditional text within your Google documents. Filter values (conditional text) are useful when single sourcing - using the same source document to generate different versions of a document.

Conditional text is content within a document that is meant to appear in some renditions of the document, but not other renditions. For example, a writer can produce Mac and Windows versions of the same manual by marking Mac-specific content as "Mac only" and Windows-specific content as "Windows only." Everything that is not marked for one platform or the other, appears in the manuals for both platforms.

Our solution is mimicked by conditional text (profiling) support in the DITA standard.

Sets of paragraphs, parts of paragraphs as well as chapters can be marked with four different types of filter tags (aka. filter values).

  • Audience
  • Platform
  • Product
  • Revision

Filter values are defined per book by a “filtervalue set”. For our samples below, you would define two audiences – “Marketing” and “Support” as well as two products – “Windows” and “Apple”.

At compile time, you tell the add-on to either include or exclude the text marked with the different tags. This is done by with the “Filters” tab in the "Build dialog".

There are two kinds of control markup in Google Docs, one for sets of paragraphs and one for text within a paragraph.

Below is a sample of paragraphs in a Google Doc marked for the “Marketing” and “Support” audience. The gray text is part of the document but is the special control text that DocsX uses to mark blocks of text. This gray text is always removed by the compiler. You do not have to remember the syntax, the add-on provides dedicated UI to add this special markup. You can associated text/hightlight colors to each filtervalue, making it easier to see where the markup is within the chapters.

This is text before the conditional text.

Audience{ Marketing, Support

This is a paragraph marked for the Marketing and the Support audience.

This is another paragraph only for the eyes of Marketing people.


This is text after the conditional text.

Here is a sample of text within a paragraph in a Google Doc marked for the “Marketing” audience.

This is text before. {a:Marketing}This is text for marketing eyes.{:a} This is text after the marketing text.

This is text before. {p:Windows}This is text for the Windows platform.{:p} This is text after the conditional text. {p:Apple}This is text for the Apple platform.{:p}

Audience in-text syntax. “tags” below is a comma delimited list of filter values.

{a:tags}text text text{:a}

Platform in-text syntax:

{p:tags}text text text{:p}

Product in-text syntax:

{pr:tags}text text text{:pr}

Revision in-text syntax:

{r:tags}text text text{:r}


There is no dedicated video for this app (yet) but please check out the YouTube for the Google Docs extension version.

Check out screenshots and install from the web store.

Please also see the standard version.


Note - if you have installed the add-on and the add-on submenu only contains the 'Help' option - PLEASE RELOAD THE DOCUMENT - and the other options will appear.

Please report bugs here or reach out 2 me with questions @

Got an idea for a new feature/app/add-on? Use the suggestions portal.

Follow me at Instagram @bjornsplayground and check out more videos at my YouTube channel.

You can view our privacy policy here.