summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.txt69
-rwxr-xr-xasciidoc.py4
-rw-r--r--doc/asciidoc.txt10
-rw-r--r--examples/website/index.txt26
-rw-r--r--examples/website/main.aap1
-rw-r--r--images/icons/caution.pngbin2554 -> 2734 bytes
-rw-r--r--images/icons/example.pngbin2354 -> 2599 bytes
-rw-r--r--images/icons/important.pngbin2657 -> 2980 bytes
-rw-r--r--images/icons/note.pngbin2730 -> 2494 bytes
-rw-r--r--images/icons/tip.pngbin2602 -> 2718 bytes
-rw-r--r--images/icons/warning.pngbin2828 -> 3214 bytes
-rw-r--r--vim/syntax/asciidoc.vim8
12 files changed, 92 insertions, 26 deletions
diff --git a/CHANGELOG.txt b/CHANGELOG.txt
index c9f78cb..494ce0f 100644
--- a/CHANGELOG.txt
+++ b/CHANGELOG.txt
@@ -3,6 +3,75 @@ AsciiDoc ChangeLog
:replacements.\bweb:: http://www.methods.co.nz/asciidoc/
+Version 8.4.1 (2009-03-??)
+--------------------------
+.Additions and changes
+- AsciiDoc now has a web:asciidocapi.html[Python API]. The following
+ minimal example compiles `mydoc.txt` to `mydoc.html`:
++
+[source,python]
+-------------------------------------------------------------------------------
+from asciidocapi import AsciiDocAPI
+asciidoc = AsciiDocAPI()
+asciidoc.execute('mydoc.txt')
+-------------------------------------------------------------------------------
+
+- Backtick quoting for monospaced text is now implemented as an
+ 'inline literal' passthrough. This makes more sense since monospace
+ text is usually intended to be rendered literally. See
+ <<X2,Regression issues>> below for the impact this may have on
+ existing documents. Here are some examples that would previously
+ have had to be escaped:
+
+ The `++i` and `++j` auto-increments.
+ Paths `~/.vim` and `~/docs`.
+ The `__init__` method.
+ The `{id}` attribute.
+
+- Added `--doctest` option to `asciidoc(1)` command.
+- Added an optional second argument to 'BlockId' element, this sets
+ the `{label}` attribute which in turn is used to set the `xreflabel`
+ attribute in DocBook outputs.
+- Added lists to `--help` syntax summary.
+- `{infile}` and `{indir}` attributes reflect the current input file
+ (previously always refered to the root document).
+- `{docfile}` (new) and `{docdir}` (previously deprecated) attributes
+ refer to the root document specified on the `asciidoc(1)`
+ command-line.
+- Vim syntax highlighter improvements.
+- Admonition icons now have transparent backgrounds.
+
+.Bug fixes
+- Dropped `asciidoc(1)` broken undocumented `--profile` option.
+- Changed yellow W3C badges to blue ones in page footers.
+- Emdash replacement now recognized at start of block.
+
+
+[[X2]]
+Regression issues
+~~~~~~~~~~~~~~~~~
+Replacing backtick quoting with the 'inline literal' passthrough
+raises two regression scenarios for existing documents:
+
+1. You have escaped the expansion of enclosed inline elements, for
+ example: `\{id}`. You would need to delete the backslashes: `{id}`
+ (if you don't the backslashes will be printed). Mostly it's just a
+ case of interactively finding and replacing of all occurences of
+ `\.
+
+2. There are enclosed inline elements, for example: `some *bold*
+ monospaced`. You would need to switch to plus character monospace
+ quoting: `+some *bold* monospaced+` (if you don't the enclosed
+ elements won't be expanded).
+
+If your existing documents include these cases and you don't want to
+upgrade then use the `-a no-inline-literal` command-line option,
+alterantively put this in `~/.asciidoc/asciidoc.conf`:
+
+ [attributes]
+ no-inline-literal=
+
+
Version 8.3.5 (2009-02-02)
--------------------------
.Additions and changes
diff --git a/asciidoc.py b/asciidoc.py
index a846fd4..6330d4a 100755
--- a/asciidoc.py
+++ b/asciidoc.py
@@ -407,14 +407,14 @@ def subs_quotes(text):
if tag[0] == '#':
tag = tag[1:]
# Unconstrained quotes can appear anywhere.
- reo = re.compile(r'(?msu)(^|[^[])(\[(?P<attrlist>[^[]+?)\])?' \
+ reo = re.compile(r'(?msu)(^|.)(\[(?P<attrlist>[^[\]]+?)\])?' \
+ r'(?:' + re.escape(lq) + r')' \
+ r'(?P<content>.+?)(?:'+re.escape(rq)+r')')
else:
# The text within constrained quotes must be bounded by white space.
# Non-word (\W) characters are allowed at boundaries to accomodate
# enveloping quotes.
- reo = re.compile(r'(?msu)(^|[^\w[])(\[(?P<attrlist>[^[]+?)\])?' \
+ reo = re.compile(r'(?msu)(^|\W)(\[(?P<attrlist>[^[\]]+?)\])?' \
+ r'(?:' + re.escape(lq) + r')' \
+ r'(?P<content>.*?\S)(?:'+re.escape(rq)+r')(?=\W|$)')
pos = 0
diff --git a/doc/asciidoc.txt b/doc/asciidoc.txt
index ad23e87..8460f02 100644
--- a/doc/asciidoc.txt
+++ b/doc/asciidoc.txt
@@ -490,9 +490,9 @@ special section titles and the corresponding backend markup templates.
a configuration file markup template section. If the `<pattern>`
matches an AsciiDoc document section title then the backend output is
marked up using the `<name>` markup template (instead of the default
-`sect<level>` section template). The \{title} attribute value is set
+`sect<level>` section template). The `{title}` attribute value is set
to the value of the matched regular expression group named 'title', if
-there is no 'title' group \{title} defaults to the whole of the
+there is no 'title' group `{title}` defaults to the whole of the
AsciiDoc section title.
AsciiDoc comes preconfigured with the following special section
@@ -2433,8 +2433,10 @@ $$::
[[X80]]`::
Text quoted with single backtick characters constitutes an 'inline
literal' passthrough. The enclosed text is rendered in a monospaced
- font and is only subject to special character substitution (see also
- <<X81,quoted monospaced text>>).
+ font and is only subject to special character substitution. This
+ makes sense since monospace text is usually intended to be rendered
+ literally and often contains characters that would otherwise have to
+ be escaped. See also <<X81,quoted monospaced text>>.
Macro Definitions
~~~~~~~~~~~~~~~~~
diff --git a/examples/website/index.txt b/examples/website/index.txt
index 1ad93f5..5fbe1e3 100644
--- a/examples/website/index.txt
+++ b/examples/website/index.txt
@@ -5,22 +5,16 @@ AsciiDoc Home Page
************************************************************************
Additions and change in this release include:
-- Up to 250% faster than previous release (precompiled regular
- expression optimization).
-- Bulleted lists can now be nested up to six deep with the addition of
- two, three, four and five asterisk bullet syntaxes.
-- Implicitly numbered lists can now be nested up to six deep with the
- addition of two, three, four and five period character syntaxes.
-- Labeled lists can now be nested up to four deep with the addition of
- three and four colon syntaxes.
-
-Plus a number of smaller additions along with the usual documentation
-polishing. Read the link:CHANGELOG.html[CHANGELOG] for a full list of
-all additions and changes.
-
-One final note: if you are upgrading from version 8.2.7 or less please
-read about possible link:CHANGELOG.html#X1[compatibility issues]
-first.
+- AsciiDoc now has a link:asciidocapi.html[Python API].
+- Backtick quoting for monospaced text is now implemented as an
+ 'inline literal' passthrough. This makes more sense since monospace
+ text is usually intended to be rendered literally. This change may
+ raise link:CHANGELOG.html#X2[regression issues] in existing
+ documents.
+
+Plus there are a number of smaller additions along with the usual
+documentation polishing. Read the link:CHANGELOG.html[CHANGELOG] for
+a full list of all additions and changes.
mailto:srackham@gmail.com['Stuart Rackham']
************************************************************************
diff --git a/examples/website/main.aap b/examples/website/main.aap
index 4758564..7d825fc 100644
--- a/examples/website/main.aap
+++ b/examples/website/main.aap
@@ -17,6 +17,7 @@ WEB_ROOT =
asciidoc-docbook-xsl
asciidoc-graphviz-sample
asciimathml
+ asciidocapi
CHANGELOG
downloads
faq
diff --git a/images/icons/caution.png b/images/icons/caution.png
index cb9d5ea..9a8c515 100644
--- a/images/icons/caution.png
+++ b/images/icons/caution.png
Binary files differ
diff --git a/images/icons/example.png b/images/icons/example.png
index bba1c00..1199e86 100644
--- a/images/icons/example.png
+++ b/images/icons/example.png
Binary files differ
diff --git a/images/icons/important.png b/images/icons/important.png
index 1096c23..be685cc 100644
--- a/images/icons/important.png
+++ b/images/icons/important.png
Binary files differ
diff --git a/images/icons/note.png b/images/icons/note.png
index 841820f..7c1f3e2 100644
--- a/images/icons/note.png
+++ b/images/icons/note.png
Binary files differ
diff --git a/images/icons/tip.png b/images/icons/tip.png
index a3a029d..f087c73 100644
--- a/images/icons/tip.png
+++ b/images/icons/tip.png
Binary files differ
diff --git a/images/icons/warning.png b/images/icons/warning.png
index 0b0c419..d41edb9 100644
--- a/images/icons/warning.png
+++ b/images/icons/warning.png
Binary files differ
diff --git a/vim/syntax/asciidoc.vim b/vim/syntax/asciidoc.vim
index 56fa621..045eeaa 100644
--- a/vim/syntax/asciidoc.vim
+++ b/vim/syntax/asciidoc.vim
@@ -39,13 +39,13 @@ syn match asciidocAdmonition /^\u\{3,15}:\(\s\+.*\)\@=/
" line (see 'Limitations' above).
syn match asciidocQuotedSubscript /\\\@<!\~\S\_.\{-}\(\~\|\n\s*\n\)/
syn match asciidocQuotedSuperscript /\\\@<!\^\S\_.\{-}\(\^\|\n\s*\n\)/
-syn match asciidocQuotedMonospaced /\(^\|[| \t([.,=]\)\@<=+\([ )\n]\)\@!\_.\{-}\S\(+\([| \t)[\],.?!;:=]\|$\)\@=\|\n\s*\n\)/
+syn match asciidocQuotedMonospaced /\(^\|[| \t([.,=\]]\)\@<=+\([ )\n]\)\@!\_.\{-}\S\(+\([| \t)[\],.?!;:=]\|$\)\@=\|\n\s*\n\)/
syn match asciidocQuotedMonospaced2 /\(^\|[| \t([.,=]\)\@<=`\([ )\n]\)\@!\_.\{-}\S\(`\([| \t)[\],.?!;:=]\|$\)\@=\|\n\s*\n\)/
syn match asciidocQuotedUnconstrainedMonospaced /\\\@<!++\S\_.\{-}\(++\|\n\s*\n\)/
-syn match asciidocQuotedEmphasized /\(^\|[| \t([.,=]\)\@<=_\([ )\n]\)\@!\_.\{-}\S\(_\([| \t)[\],.?!;:=]\|$\)\@=\|\n\s*\n\)/
-syn match asciidocQuotedEmphasized2 /\(^\|[| \t([.,=]\)\@<='\([ )\n]\)\@!\_.\{-}\S\('\([| \t)[\],.?!;:=]\|$\)\@=\|\n\s*\n\)/
+syn match asciidocQuotedEmphasized /\(^\|[| \t([.,=\]]\)\@<=_\([ )\n]\)\@!\_.\{-}\S\(_\([| \t)[\],.?!;:=]\|$\)\@=\|\n\s*\n\)/
+syn match asciidocQuotedEmphasized2 /\(^\|[| \t([.,=\]]\)\@<='\([ )\n]\)\@!\_.\{-}\S\('\([| \t)[\],.?!;:=]\|$\)\@=\|\n\s*\n\)/
syn match asciidocQuotedUnconstrainedEmphasized /\\\@<!__\S\_.\{-}\(__\|\n\s*\n\)/
-syn match asciidocQuotedBold /\(^\|[| \t([.,=]\)\@<=\*\([ )\n]\)\@!\_.\{-}\S\(\*\([| \t)[\],.?!;:=]\|$\)\@=\|\n\s*\n\)/
+syn match asciidocQuotedBold /\(^\|[| \t([.,=\]]\)\@<=\*\([ )\n]\)\@!\_.\{-}\S\(\*\([| \t)[\],.?!;:=]\|$\)\@=\|\n\s*\n\)/
syn match asciidocQuotedUnconstrainedBold /\\\@<!\*\*\S\_.\{-}\(\*\*\|\n\s*\n\)/
"syn match asciidocQuotedSingleQuoted /\(^\|[| \t([.,=]\)\@<=`\([ )\n]\)\@!\_.\{-}\S\('\([| \t)[\],.?!;:=]\|$\)\@=\|\n\s*\n\)/
" Don't allow ` in single quoted (a kludge to stop confusion with `monospaced`).