Appendix A: Support
Write to us and share your experience.
A.1. System Requirements
adoc Studio requires at minimum:
-
macOS 15 Sequoia
-
iOS 18
A.2. First Aid
- Forum
-
A free forum is available where you can get support from other users and from the ProjectWizards team.
- AsciiDoc Command Reference
-
The always-current AsciiDoc Command Reference is available online. Currently in English only; a German translation is planned.
- Personal Experiences with AsciiDoc
-
The ProjectWizards website blog contains many practical articles and tips about AsciiDoc.
- AsciiDoc Tips
-
An extensive collection of tricks and guides is available at Awesome Asciidoc(tor).
A.3. Help with Templates and Styles
A partner network is currently being established to assist with building templates and designing product styles. The current list of partners is available on the website. Over time, a directory of all styles will also be created there. If you want to contribute actively, write to: office@projectwizards.net.
A.4. Attributes
We explained the concept and usage in the Attributes chapter. Below is a list of all the attributes used in adoc Studio.
adoc Studio Attributes
- ads-compat-mode
-
When set, compatibility with Asciidoctor is maximised. For example, date and time information is not localised, author names are split differently, and icon directories point to different locations. Other AsciiDoc modernisations are also disabled, such as source-highlighter or stem.
- ads-device v3
-
Contains Mac, iPhone or iPad. Depending on which device you use adoc Studio on.
- ads-max-image-resolution v3
-
Set the maximum resolution for images in HTML- and PDF exports. Specify the resolution values in dpi, dpcm, or dppx. For HTML, this setting only affects images for which a width or height is explicitly specified in the source code. To limit the size of images without a predefined width or height in HTML, use the ads-max-image-width attribute.
- ads-max-image-width v3
-
For the HTML export, set the maximum pixel width for those images for which you have not specified a width or height in the source text.
- ads-pdf-ua v4
-
When set, PDF exports add accessibility information according to the PDF/UA standard. This attribute is not activated by default.
- ads-platform
-
Contains macOS or iOS. Depending on which platform you use adoc Studio on.
- ads-static-stem
-
By default, STEM equations in HTML exports are created dynamically via JavaScript when you open the exported document in a web browser. If this option is enabled, the equations are exported as static SVG images, so no JavaScript is required to view them.
- ads-static-stem → inline
-
Exports STEM equations as inline SVG elements
- ads-static-stem → external
-
Exports STEM equations as external SVG images.
- ads-subtitle
-
Outputs the subtitle.
Intrinsic Attributes
- backend
-
Always set to html5 for compatibility with Asciidoctor.
- backend-html5
-
Always set for compatibility with Asciidoctor.
- basebackend
-
Always set to html for compatibility with Asciidoctor.
- basebackend-html
-
Always set for compatibility with Asciidoctor.
- docdate
-
Last modification date of the source document without time. Localized according to the language and locale provided via the lang attribute.
- docdatetime
-
Last modification date and time of the source document. Localized according to the language and locale provided via the lang attribute.
- docdir
-
Path to the directory that contains the source document. The path starts with a slash and the root directory of the project.
- docfile
-
Path to the source document. The path starts with a slash and the root directory of the project.
- docfilesuffix
-
File extension of the source document including the leading period.
- docname
-
Name of the source document without file extension.
- doctime
-
Last modification time of the source document. Localized according to the language and locale provided via the lang attribute.
- docyear
-
Year that the source document was last modified. Localized according to the language and locale provided via the lang attribute.
- embedded
-
Can be set as an option for an HTML export. The generated HTML then does not contain head or body tags and can therefore be embedded directly in another HTML page.
- filetype
-
File extension of the main output file of the document, without leading period. The extension depends on the selected output format.
- filetype-html
-
A convenience attribute for checking whether the output filetype is html.
- filetype-pdf
-
A convenience attribute for checking whether the output filetype is pdf.
- filetype-rtfd
-
A convenience attribute for checking whether the output filetype is rtfd (rich text).
- filetype-txt
-
A convenience attribute for checking whether the output filetype is txt (plain text).
- filetype-website v4
-
A convenience attribute for checking whether the output is a website.
- htmlsyntax
-
Currently always html as adoc Studio does not support xhtml output yet.
- outfilesuffix
-
File extension of the actual output file of the document, with leading dot. The value depends on the selected output format.
- localdate
-
Date when the document was converted to the output format.
- localdatetime
-
Date and time when the document was converted to the output format.
- localtime
-
Time when the document was converted to the output format.
- localyear
-
Year when the document was converted to the output format.
Compliance Attributes
- attribute-missing
-
Controls how missing attribute references are handled.
- attribute-missing → skip
-
Leave the unresolved reference in place and create an error.
- attribute-missing → drop
-
Drop the reference.
Localization and numbering attributes
- lang
-
Language tag like en or en-US. Is added to the root element of the HTML output. Controls hyphenation and localization of dates.
- nolang
-
Prevents lang attribute from being added to root element of the HTML output.
- appendix-caption
-
Label added before the title of an appendix.
- appendix-number
-
Sets the seed value for the appendix number sequence.
- Callouts
-
Callout numbers (aka callouts) provide a means to add annotations to lines in a verbatim block.
- caution-caption
-
Text used to label caution admonitions when icons aren’t enabled.
- chapter-number
-
Sets the seed value for the chapter (level 1 section titles) number sequence when using doctype book.
- chapter-signifier
-
Label added to level 1 section titles (chapters) when using doctype book.
- example-caption
-
Text used to label example blocks.
- example-number
-
Sets the start value for the example number sequence. Is only used if the example-caption attribute is set and the example has a title.
- figure-caption
-
Text used to label images and figures.
- figure-number
-
Sets the seed value for the figure number sequence. Is only used if the figure-caption attribute is set and the figure has a title.
- important-caption
-
Text used to label IMPORTANT admonitions when icons aren’t enabled.
- last-update-label
-
Text displayed in the footer before the last modification date.
- listing-caption
-
Text used to label listing blocks.
- listing-number
-
Sets the seed value for the listing number sequence. Is only used if the listing-caption attribute is set and the listing has a title.
- note-caption
-
Text used to label NOTE admonitions when icons aren’t enabled.
- table-caption
-
Text of label prefixed to table titles.
- table-number
-
Sets the seed value for the table number sequence. Is only used if the table-caption attribute is set and the table has a title.
- tip-caption
-
Text used to label TIP admonitions when icons aren’t enabled.
- toc-title
-
Title for table of contents.
- untitled-label
-
Default document title if document doesn’t have a document title.
- version-label
-
The label displayed before the revision number in the document title byline.
- warning-caption
-
Text used to label WARNING admonitions when icons aren’t enabled.
Attributes for Styling & Layout
- hyphens → none
-
Words are not broken at line breaks, even if characters inside the words suggest line break points. Lines will only wrap at whitespace.
- hyphens → manual
-
Words are broken for line-wrapping only where characters inside the word suggest line break opportunities.
- hyphens → auto
-
Words are broken automatically at appropriate hyphenation points according to the chosen language in the lang attribute. However, suggested line break opportunities will override automatic break point selection when present.
- title-page
-
Puts a dedicated title page at the start of a PDF document. The title page contains the doctitle, author, date and revision informationen.
- pagenums
-
Enables showing of page numbers in PDF documents.
- outline
-
By default, adoc Studio generates a PDF outline for PDF documents. You can turn it off by unsetting this attribute.
- outline-title
-
By default, the document title is displayed as the title of the PDF outline. You can customize this using this attribute.
Document metadata attributes
- app-name
-
Value for application-name meta element for mobile devices inside HTML document head.
-
Extracted from author info line by default. Can be any inline macro, such as a URL. Can also set set explicitly.
- firstname
-
Derived from the author attribute by default. Can also be set explicitly.
- middlename
-
Derived from the author attribute by default. Can also be set explicitly.
- lastname
-
Derived from the author attribute by default. Can also be set explicitly.
- copyright
-
Value for copyright meta element inside HTML document head.
- doctitle
-
Set to the level 0 section title by default. Can be set explicitly.
- description
-
Value for description meta element inside HTML document head.
- keywords
-
Value for keywords meta element inside HTML document head.
- publisher
-
Is put into the producer metadata field of PDF documents.
- subject
-
Is put into the subject metadata field of PDF documents.
- revnumber
-
Extracted from revision info line.
- revdate
-
Extracted from revision info line.
- revremark
-
Extracted from revision info line.
- page-background-image
-
Set this attribute to add a background image to all PDF content pages. For the value you can either specify a simple path to an image or an inline image macro. The latter allows to specify further attributes to control the image scale and position.
- page-background-image-recto
-
Set this attribute to add a background image separately for all recto PDF content pages. For the value you can either specify a simple path to an image or an inline image macro. The latter allows to specify further attributes to control the image size and position.
- page-background-image-verso
-
Set this attribute to add a background image separately for all verso PDF content pages. For the value you can either specify a simple path to an image or an inline image macro. The latter allows to specify further attributes to control the image size and position.
- title-page-background-image
-
Places a logo image in the content area of the title page. The title page needs to be enabled via the title-page attribute. For the value you can either specify a simple path to an image or an inline image macro. The latter allows to specify further attributes to control the image size and position.
- front-cover-image
-
Creates a separate cover PDF page at the very beginning of the document containing only an image. For the value you can either specify a simple path to an image or an inline image macro. The latter allows to specify further attributes to control the image size and position.
- back-cover-image
-
Creates a separate cover PDF page at the very end of the document containing only an image. For the value you can either specify a simple path to an image or an inline image macro. The latter allows to specify further attributes to control the image size and position.
- pdf-page-size
-
Setting this attribute overrides the PDF page size defined in the preview or product options.
- pdf-page-layout
-
Setting this attribute overrides the portrait or landscape PDF page orientation defined in the preview or product options.
- pdf-page-margin
-
Setting this attribute overrides the PDF page margins defined in the preview or product options.
- pdf-page-margin-rotated
-
Define separate PDF page margins for landscape orientation.
- text-align
-
Overrides the default text alignment of the chosen style.
Section title and table of contents attributes
- idprefix
-
By default, auto-generated section IDs begin with an underscore. You can change it by setting this attribute. The value must begin with a valid ID start character and can have any number of additional valid ID characters. If you want to remove the prefix, set the attribute to an empty value.
- idseparator
-
The default section ID word separator is an underscore. You can change it with this attribute. Unless empty, the value must be exactly one valid ID character.
- leveloffset
-
Changes the level depth of all headings by the specified number of steps. The value is relative and begins with + or -. This allows you to publish each chapter as a standalone document, complete with a document title.
- partnums
-
To autogenerate book part numbers, set this attribute in the book header.
- sectanchors
-
When enabled, an anchor (empty link) is added before the section titles. The default stylesheet renders it as a § symbol that floats to the left of the section title.
- sectids
-
Section and discrete headings without an explicitly set identifier receive an auto-generated ID. You can disable this by unsetting this attribute. Elements without an ID cannot be cross-referenced.
- sectlinks
-
When set, section titles are turned into links. The default stylesheet shows them with the same style as unlinked section titles. Linked section titles allow for easier bookmarking in a Webbrowser.
- sectnums
-
Sections aren’t numbered by default. However, you can enable this feature by setting this attribute. You can toggle numbering on and off throughout a document.
- sectnums → all
-
Sections that are assigned a built-in special style aren’t numbered by default. To number regular sections as well as special sections, set sectnums and assign it a value of all.
- sectnumlevels
-
When sectnums is set, level 1-3 section titles are numbered by default. You can adjust the level limit to value of 0 through 5.
- toc
-
Turns on table of contents and specifies its location. By default, it is inserted directly below the document title, author, and revision lines.
- toc → auto
-
The table of contents is inserted directly below the document title, author, and revision lines.
- toc → left
-
The table of contents is positioned to the left of the main content column. It is both fixed and scrollable.
- toc → right
-
The table of contents is positioned to the right of the main content column. It is both fixed and scrollable.
- toc → preamble
-
The table of contents is positioned immediately below the preamble, the content between the end of the document header and the first section title.
- toc → macro
-
Place the table of contents in a specific location. Assign the macro value, then enter the table of contents block macro (toc::[]) on the line in your document where you want the table of contents to appear.
- toclevels
-
By default, the table of contents displays level 1 and 2 section titles. Use this attribute to adjusts the depth to a value from 1 through 5.
- toc-class
-
CSS class on the table of contents container HTML element.
- media
-
Enables behavior specific to a PDF media type.
- media → print
-
Shows the URLs for links unless the link text matches the URL.
- media → prepress
-
In addition to print mode also uses double-sided (mirror) page margins and automatic facing pages.
General content and formatting attributes
- data-uri
-
Embeds images and other media in HTML files as data-uri elements. This attribute only comes into effect if you select the value From Attributes in the export settings for resources.
- doctype → book
-
Builds on the article doctype with the additional ability to use a top-level title as part titles. There’s also the concept of a multi-part book, but the distinction from a regular book is determined by the content. A book only has chapters and special sections, whereas a multi-part book is divided by parts that each contain one or more chapters or special sections.
- doctype-article
-
A convenience attribute for checking whether the doctype is article.
- doctype-book
-
A convenience attribute for checking whether the doctype is book.
- hardbreaks-option
-
Preserve line breaks in all paragraphs throughout the entire document.
- notitle
-
Hides the document title in a document. Mutually exclusive with the showtitle attribute.
- showtitle
-
Shows the document title in an embedded document. Mutually exclusive with the notitle attribute.
- noheader
-
Turns off document header
- table-frame
-
Controls default value for frame attribute on tables.
- table-grid
-
Controls default value for grid attribute on tables.
- table-stripes
-
Controls default value for stripes attribute on tables.
Image and icon attributes
- icons
-
Chooses images or font icons instead of text for admonitions. Any other value is assumed to be an icontype and sets the value to empty (image-based icons).
- icons → image
-
Icons resolve to image files in the directory specified by the iconsdir attribute.
- icons → font
-
Icons are loaded from an icon font like Font Awesome.
- iconsdir
-
Location of non-font-based image icons. Defaults to the icons folder under imagesdir if imagesdir is specified and iconsdir is not specified. v3 now uses the media folder as default. If ads-compat-mode is set, the old behavior is active again.
- icontype
-
File type for image icons. Only relevant when using image-based icons.
- icon-set
-
For use with icon macros: Choose a set from which the font-based icons are taken. This attribute only has an effect if you have activated font-based icons via the icons attribute.
- icon-set → apple v3
-
Icon macros display symbols from the SF symbols. The different palettes (multicolor, hierachical, monochrome) are also supported, as are the different font weights.
- icon-set → fa
-
Icon macros show symbols from the deprecated Font Awesome 4 set. In adoc Studio, this is equal to the Regular set. This is the default setting.
- icon-set → fas
-
Icon macros show symbols from the Font Awesome set Solid.
- icon-set → fab
-
Icon macros show symbols from the Font Awesome set Brands.
- icon-set → far
-
Icon macros show symbols from the Font Awesome set Regular.
- imagesdir
-
By default, media files for images or movies are picked based on the path specified in the macro’s target. The text set in imagesdir is automatically added to the beginning of this path.
- source-highlighter v4
-
To enable syntax highlighting, you had to set the attribute in document header via an attribute entry. From version 4 onwards, it is set implicitly in every document.
- stem v4
-
To enable support for equations and formulas, set this attribute in the document header. From version 4 onwards, the attribute is set to
asciimathimplicitly.
HTML styling attributes
- linkcss
-
Inserts a reference to the stylesheet in HTML files instead of embedding it completely. This attribute is only used if you select the value From Attributes in the export settings for resources.
- stylesheet
-
Normally, you select one of the installed styles to design your documents. If you set this attribute to the name of a CSS file in your project, this stylesheet will be used for the preview and export instead. If the style file is not in the same folder as the document, you can also specify the path to its folder in the stylesdir attribute.
- stylesdir
-
The file path optionally specified here is prefixed to the file name contained in the stylesheet attribute in order to localize the CSS stylesheet file in the project.
A.5. Notes on AsciiDoc Compatibility in adoc Studio
adoc Studio largely follows the AsciiDoc standard, but deliberately takes its own approach in some areas.
Known bugs in the standard are not adopted — they are corrected. Selected features have also been extended to enable more consistent usage. This section describes the differences and the additional capabilities of adoc Studio.
The App
-
The concept of composite documents is not supported by AsciiDoc.
If you want to switch between different editors or parsers, use a folder with an index file instead, in which all files to be used are linked or included.
-
Working on an iPad requires adoc Studio. Asciidoctor cannot run on iPadOS without special modifications.
If you have previously used Asciidoctor.js to preview .adoc files and projects, you may notice a new security change in current browsers: includes in AsciiDoc are now no longer loaded. This problem does not occur in adoc Studio. |
Attributes
adoc Studio introduces a set of custom attributes to extend functionality. All of these begin with ads-.
-
:ads-compat-mode:When set, compatibility with Asciidoctor is maximized, and all other ads- attributes are ignored. For example, date and time formats are no longer localized, author names are split differently, and icon directories point to different locations. -
:ads-platform:Contains macOS or iOS, depending on which platform you use adoc Studio on. -
:ads-device:Contains Mac, iPhone, or iPad, depending on which device you use adoc Studio on. -
:ads-max-image-resolution:Sets the maximum resolution for images in HTML and PDF exports. Specify resolution values in dpi, dpcm, or dppx. For HTML, this setting only affects images for which you have explicitly specified a width or height in the source code. To limit the size of images without a predefined width or height in HTML, set the ads-max-image-width attribute. -
:ads-max-image-width:For HTML export, sets the maximum pixel width for images that have no width or height specified in the source code. -
:ads-rasterizing-resolution:When a value is set, PDF and SVG images as well as STEM equations in HTML exports are converted to PNG images. Specify resolution values indpi,dpcm, ordppx. -
:ads-static-stem:By default, STEM equations in HTML exports are dynamically generated via JavaScript when you open the exported document in a web browser. When this option is enabled, equations are exported as static SVG images, so JavaScript is no longer required to display them. -
:ads-static-stem: → inlineExports STEM equations as inline SVG elements. -
:ads-static-stem: → externalExports STEM equations as external SVG images.
Three additional notes about standard AsciiDoc attributes:
-
:experimental:This attribute is no longer used in adoc Studio and has no effect. -
:source-highlighter:This attribute is implicitly set in adoc Studio since v3. -
:stem:This attribute is implicitly set in adoc Studio since v3.
Styles
-
All product types use the same stylesheet.
-
Styles are collected centrally and can be used directly, adapted for your own purposes, and extended.
Icons
-
Unlike regular images, the AsciiDoc processor does not support direct embedding of SVG images in the icon macro. In adoc Studio, the
inlineoption is available. The SVG is then embedded directly into the exported HTML file, without a separate file.icon:tiger.svg[opts=inline] -
The
:iconsdir:attribute in adoc Studio points to the media folder by default.
Macros
-
footnotesare displayed in PDFs on the same page where they are placed.
A.6. Regular Expressions
As the scope of a writing project grows, searching for content quickly becomes complex. Instead of searching each file word by word, you can search for specific patterns in the text — these are called regular expressions.
Because the term can feel unwieldy, many use the abbreviation RegEx.
A short example shows the power of this approach:
The search for h*.us interprets *. as "one or more arbitrary characters." This finds words like House, Haus, or Huus, but not Hans — only words that start with "h" and end with "us".
Regular expressions consist of characters, operators, and special constructs that allow very flexible search patterns. The following sections provide a first overview of the most important elements.
Regular Expression Metacharacters
The following tables explain the metacharacters that regular expressions use to recognize patterns in text:
-
Character expressions: Define which characters are matched in the text.
-
Pattern operators: Determine how many times a pattern is matched and under what conditions.
-
Flags: Can be inserted into the expression to control search behavior, for example across multiple lines.
The table Regular Expression Metacharacters describes the character sequences used to match characters within a string.
|
Character Expression |
Description |
|
\a |
Match a BELL, \u0007 |
|
\A |
Match at the beginning of the input. Differs from ^ in that \A will not match after a new line within the input. |
|
\b, outside of a [Set] |
Match if the current position is a word boundary. Boundaries occur at the transitions between word (\w) and non-word (\W) characters, with combining marks ignored. |
|
\b, within a [Set] |
Match a BACKSPACE, \u0008. |
|
\B |
Match if the current position is not a word boundary. |
|
\cX |
Match a control-X character. |
|
\d |
Match any character with the Unicode General Category of Nd (Number, Decimal Digit). |
|
\D |
Match any character that is not a decimal digit. |
|
\e |
Match an ESCAPE, \u001B. |
|
\E |
Terminates a \Q … \E quoted sequence. |
|
\f |
Match a FORM FEED, \u000C. |
|
\G |
Match if the current position is at the end of the previous match. |
|
\n |
Match a LINE FEED, \u000A. |
|
\N\{UNICODE CHARACTER NAME} |
Match the named character. |
|
\p\{UNICODE PROPERTY NAME} |
Match any character with the specified Unicode Property. |
|
\P\{UNICODE PROPERTY NAME} |
Match any character not having the specified Unicode Property. |
|
\Q |
Quotes all following characters until \E. |
|
\r |
Match a CARRIAGE RETURN, \u000D. |
|
\s |
Match a white space character. White space is defined as [\t\n\f\r\p{Z}]. |
|
\S |
Match a non-white space character. |
|
\t |
Match a HORIZONTAL TABULATION, \u0009. |
|
\uhhhh |
Match the character with the hex value hhhh. |
|
\Uhhhhhhhh |
Match the character with the hex value hhhhhhhh. Exactly eight hex digits must be provided, even though the largest Unicode code point is \U0010ffff. |
|
\w |
Match a word character. Word characters are [\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}]. |
|
\W |
Match a non-word character. |
|
\x{hhhh} |
Match the character with hex value hhhh. From one to six hex digits may be supplied. |
|
\xhh |
Match the character with the two-digit hex value hh. |
|
\X |
Match a Grapheme Cluster. |
|
\Z |
Match if the current position is at the end of input, but before the final line terminator, if one exists. |
|
\z |
Match if the current position is at the end of input. |
|
\n |
Back Reference. Match whatever the nth capturing group matched. n must be a number ≥ 1 and ≤ total number of capture groups in the pattern. |
|
\0ooo |
Match an Octal character. ooo is from one to three octal digits. 0377 is the largest allowed Octal character. The leading zero is required; it distinguishes Octal constants from back references. |
|
[pattern] |
Match any one character from the pattern. |
|
. |
Match any character. See dotMatchesLineSeparators and the s character expression in Table 4. |
|
^ |
Match at the beginning of a line. See anchorsMatchLines and the \m character expression in Table 4. |
|
$ |
Match at the end of a line. See anchorsMatchLines and the m character expression in Table 4. |
|
\ |
Quotes the following character. Characters that must be quoted to be treated as literals are * ? + [ ( ) { } ^ $ | \ . / |
Regular Expression Operators
The table Regular Expression Operators shows the most important regular expression operators and explains how they work.
|
Operator |
Description |
|
Alternation. A |
B matches either A or B. |
|
* |
Match 0 or more times. Match as many times as possible. |
|
+ |
Match 1 or more times. Match as many times as possible. |
|
? |
Match zero or one times. Prefer one. |
|
{n} |
Match exactly n times. |
|
{n,} |
Match at least n times. Match as many times as possible. |
|
{n,m} |
Match between n and m times. Match as many times as possible, but not more than m. |
|
*? |
Match 0 or more times. Match as few times as possible. |
|
+? |
Match 1 or more times. Match as few times as possible. |
|
?? |
Match zero or one times. Prefer zero. |
|
{n}? |
Match exactly n times. |
|
{n,}? |
Match at least n times, but no more than required for an overall pattern match. |
|
{n,m}? |
Match between n and m times. Match as few times as possible, but not less than n. |
|
*+ |
Match 0 or more times. Match as many times as possible when first encountered. Do not retry with fewer, even if overall match fails (possessive match). |
|
++ |
Match 1 or more times (possessive match). |
|
?+ |
Match zero or one times (possessive match). |
|
{n}+ |
Match exactly n times. |
|
{n,}+ |
Match at least n times (possessive match). |
|
{n,m}+ |
Match between n and m times (possessive match). |
|
(…) |
Capturing parentheses. Range of input that matched the parenthesized subexpression is available after the match. |
|
(?:…) |
Non-capturing parentheses. Groups the included pattern, but does not provide capturing of matching text. Somewhat more efficient than capturing parentheses. |
|
(?>…) |
Atomic-match parentheses. First match of the parenthesized subexpression is the only one tried; if it does not lead to an overall pattern match, back up the search for a match to a position before the "(?>" |
|
(?# … ) |
Free-format comment (?# comment). |
|
(?= … ) |
Look-ahead assertion. True if the parenthesized pattern matches at the current input position, but does not advance the input position. |
|
(?! … ) |
Negative look-ahead assertion. True if the parenthesized pattern does not match at the current input position. Does not advance the input position. |
|
(?⇐ … ) |
Look-behind assertion. True if the parenthesized pattern matches text preceding the current input position, with the last character of the match being the input character just before the current position. Does not alter the input position. The length of possible strings matched by the look-behind pattern must not be unbounded (no * or + operators). |
|
(?<! … ) |
Negative look-behind assertion. True if the parenthesized pattern does not match text preceding the current input position, with the last character of the match being the input character just before the current position. Does not alter the input position. The length of possible strings matched by the look-behind pattern must not be unbounded (no * or + operators). |
|
(?ismwx-ismwx: … ) |
Flag settings. Evaluate the parenthesized expression with the specified flags enabled or disabled. The flags are defined in the Flag Options. |
|
(?ismwx-ismwx) |
Flag settings. Change the flag settings. Changes apply to the portion of the pattern following the setting. For example, (?i) changes to a case-insensitive match. The flags are defined in the Flag Options. |
Template Matching Format
Regular expressions can be used for find-and-replace operations on both immutable and mutable strings using the technique of template matching.
Table Template Matching Format explains the syntax.
|
Character |
Description |
|
$n |
The text of capture group n is substituted for $n. n must be >= 0 and not greater than the number of capture groups. A $ not followed by a digit has no special meaning, and will appear in the substitution text as itself, a $. |
|
\ |
Treats the following character as a literal, suppressing any special meaning. Backslash escaping in substitution text is only required for '$' and '\', but may be used on any other character without bad effects. |
Flag Options
Flags let you control various aspects of regular expression matching. These flag values can be specified within the pattern using the (?ismx-ismx) pattern options. Alternatively, these options can also be set for the entire expression when you initialize a regular expression.
|
Flag (Pattern) |
Description |
|
i |
If set, matching is case-insensitive. |
|
x |
If set, allows the use of white space and #comments within patterns. |
|
s |
If set, a "." in a pattern matches a line terminator in the input text. By default, this is not the case. Note that a carriage-return / line-feed pair in text behaves as a single line terminator and matches a single "." in a regular expression pattern. |
|
m |
Controls the behavior of "^" and "$" in a pattern. By default these only match at the start and end of the input text. If this flag is set, "^" and "$" also match at the start and end of each line within the input text. |
|
w |
Controls the behavior of \b in a pattern. If set, word boundaries are found according to the definitions of word in Unicode UAX 29, Text Boundaries. By default, word boundaries are identified by a simple classification of characters as either "word" or "non-word", which approximates traditional regular expression behavior. The results obtained with the two options can differ significantly in runs of spaces and other non-word characters. |
A.7. Something Missing?
The current state of development is available on the website.
The focus is initially on features that most users need. But you may be missing exactly one specific feature.
Register for free in the adoc Studio Forum and share your idea.
When other users support your suggestions, their priority increases — so the most important features get implemented first.
A.8. Tips for External Tools
Since adoc Studio stores all created texts using the UTF-8 standard, UNIX-based tools work especially well with it. The following list shows external tools that have proven themselves in practice:
-
Git with Tower: Git is free software for distributed version control, initiated by Linus Torvalds. Tower provides the graphical user interface for Git on macOS.
-
Make and Makefiles: Build management tools that execute commands depending on defined conditions.
-
Vale: Vale is an open-source command-line tool that automatically checks and enforces your editorial style guide.
Recommend another tool in the adoc Studio Forum. We are happy to include it in this documentation.