Vicent Marti
4d51cec6b2
List our awesome bindings
2011-05-11 20:11:55 +03:00
Vicent Marti
fb517dcabf
Add support for versioning
2011-05-11 20:07:28 +03:00
Vicent Marti
26c68ad080
Include the HTML renderer when building the shared lib
2011-05-11 20:01:17 +03:00
Vicent Marti
cf81b53ee8
Do not call bufgrow
unless necessary
2011-05-07 21:24:38 +03:00
Vicent Marti
a8cb69438c
Add MKDEXT_SPACE_HEADERS
extension
2011-05-06 22:28:47 +03:00
Vicent Marti
eb6f5474c2
Upskirt now renders HTML by default
...
The XHTML renderer has been changed to HTML by default, with a new
renderer flag called "HTML_USE_XHTML" that enables closing tags.
2011-05-06 20:29:41 +03:00
Vicent Marti
7cb1a9e027
Do not inline bufgrow()
and bufput()
...
These two methods are no longer used by the SmartyPants parser, so
there's no performance benefit when inlining them.
This reverts commit 8a19bdd635
.
2011-05-05 18:30:13 +03:00
Vicent Marti
789bcd98e1
SmartyPants is now smart
...
SmartyPants is no longer an extension flag for the (X)HTML renderer, but
a separate method.
The new function `ups_xhtml_smartypants` external method is a
SmartyPants post-processor that takes an HTML document (e.g. a document
that has just been rendered with `ups_markdown`) and performs
SmartyPants substitutions in it.
This is the same approach that the original SmartyPants takes.
Postprocessing the HTML instead of performing the substitutions at the
Markdown level allows us to work around many problems of the old
implementation:
- Double quotes now properly open/close between different HTML
tags and blocks.
- Support for ``double quoting style'' has been added, and no
longer conflicts with Markdown code blocks.
- The limitations of the Upskirt parser (which was splitting
SmartyPants replacements mid-word in some cases because of active
character callbacks) no longer apply. All SmartyPants substitutions
work in all situations.
- The new parser is easily extendable with more substitutions.
The new SmartyPants parser is slightly faster than the old one.
2011-05-05 17:47:37 +03:00
Vicent Marti
cfa4e0934d
Add Contributors to the README
2011-05-05 17:46:49 +03:00
Vicent Marti
9fa8438a41
Use a two-layer array for active character callbacks
...
Do not stick 2KB of NULL values inside the `struct render`, use a double
lookup to character -> ptr. This makes the struct 8 times smaller.
2011-05-05 17:40:04 +03:00
Vicent Marti
35a580ffce
More lax support for Table headers
...
The separation row can now be separated with spaces from the column
borders.
2011-05-03 00:05:24 +03:00
Vicent Marti
e2a3063b6e
Fix the HTML filter flag
...
Set all the HTML callbacks to NULL instead of escaping inside methods.
This makes the skipped HTML disappear from the rendered document,
instead of appear as HTML entities or such.
2011-05-01 22:02:01 +03:00
Vicent Marti
bb9dbe8b5f
Rename strict emphasis flag again
...
'Cause I can and I like pretty names
2011-04-30 03:54:29 +03:00
Vicent Marti
d2ffc352f4
More agressive buffer management
...
Use two different buffer queues for span level and block level
elements, with different step sizes for the buffers in each queue.
2011-04-30 03:40:02 +03:00
Vicent Marti
0d11119240
Always print header and footer
...
Even on empty Markdown documents
2011-04-30 03:05:24 +03:00
Vicent Marti
a895484fb5
Improve language rendering in Code Blocks
...
Language classes are now scaped and properly tokenized for multiple
spaces, for both normal code blocks and GitHub code blocks.
2011-04-30 02:42:21 +03:00
Vicent Marti
daedc8e8ce
Much more solid autolinking
...
We now capture links when enclosed in parenthesis and other punctuation
chars.
2011-04-30 02:18:14 +03:00
Vicent Marti
16b4342f24
Lax emphasis is the default
...
With no extension flags, Upskirt now matches the behavior of Gruber's
Markdown when parsing emphasis without surrounded spaces.
2011-04-28 13:33:23 +03:00
Vicent Marti
22794bade8
Build the executable without shared lib
2011-04-28 13:33:23 +03:00
Vicent Martí
cc98beb776
Merged pull request #12 from nono/gitignore.
...
Add a gitignore file
2011-04-28 03:30:32 -07:00
Bruno Michel
244df333d8
Add a gitignore file
2011-04-28 12:29:09 +02:00
Vicent Marti
31d5a528ea
Drop URI escaping
...
It was not being done properly; URI escaping cannot be done
automatically on a whole URI without user intervention, because we don't
know why characters are reserved.
2011-04-28 13:18:09 +03:00
Vicent Marti
1d84eccd45
Do not segfault when unescaping empty links
2011-04-27 15:18:55 +03:00
Vicent Marti
8f0988ab84
Allow escaping characters inside of URL links
2011-04-27 04:26:42 +03:00
Vicent Marti
9c7100e69f
Fix compilation after inlining buffers
2011-04-26 14:00:38 +03:00
Vicent Marti
018fea055e
Fix autolink URI parsing and generation
2011-04-26 00:14:30 +03:00
Ben Noordhuis
8a19bdd635
20-25% of CPU time is spent in bufputc() and bufgrow(). Inline for great performance justice.
2011-04-26 00:14:26 +03:00
Vicent Martí
3bc7d70898
Merged pull request #8 from schacon/5985563.
...
Fix memory leaks
2011-04-25 14:08:34 -07:00
Ben Noordhuis
5985563743
Fix memory leaks in bufrelease() and bufreset().
2011-04-25 02:03:27 +02:00
Ben Noordhuis
fc8c15ede5
Fix memory leak in ups_markdown().
2011-04-25 02:01:05 +02:00
Vicent Marti
ba88cb6ea3
Saner code blocks
...
- The language detection from shebangs has been dropped. Use your
highlighting library to detect this kind of things.
- New flags XHTML_GITHUB_CODEBLOCKS, which generates safer codeblocks
without letting the user specify custom CSS classes.
2011-04-23 00:38:10 +03:00
Vicent Marti
f3fcabda16
Make autolinking case-insensitive
2011-04-22 14:49:48 +03:00
Vicent Marti
08a1b26edb
Make put_scaped_char
more sane
2011-04-22 14:46:12 +03:00
Vicent Marti
4e8cb77e7c
Improve quoting/striking through inner spans
...
- Smart quotes with Smartypants now work across different text spans,
e.g. This "[link][foo]" gets quoted properly
- Strikethrough has now its own rendering callback.
2011-04-22 14:35:32 +03:00
Vicent Marti
3118304d80
Allow newlines inside of link declarations
...
This makes parsing more lax to support syntax like:
* Edit `~/.wmii/config.yaml` to your liking. For a real-life example,
see [my personal configuration file](
http://github.com/sunaku/wmiirc/blob/personal/config.yaml
).
2011-04-21 23:53:45 +03:00
Vicent Marti
129bf7c380
Remove first HTML block lookup pass again
...
Adding it broke the official Markdown test suite
2011-04-21 23:45:19 +03:00
Vicent Marti
cc565992ed
Honor fenced code block standards
2011-04-21 23:39:17 +03:00
Vicent Marti
3f01b80bda
Force PIC when building the library
2011-04-20 12:41:37 +03:00
Vicent Marti
392c51233f
Fix mispelled include name
...
<strings.h> is not what we're looking for.
2011-04-20 12:39:43 +03:00
Vicent Martí
cfc166b0cf
Stupid typo in README
2011-04-19 13:24:44 -07:00
Vicent Marti
550b98b2ea
Lax HTML blocks are now a MD extension
2011-04-18 22:16:59 +03:00
Vicent Marti
8bbc29aa33
Use <del> tag for strikethrough
2011-04-18 10:09:46 +03:00
Vicent Marti
0059d6277a
Remove profiling flags
2011-04-17 14:07:38 +03:00
Vicent Marti
a76c5f40bd
Fix HTML tag detection
2011-04-17 14:05:55 +03:00
Vicent Marti
7c6160bcce
Newline after line break
2011-04-17 13:48:50 +03:00
Vicent Marti
8dd10d10d4
Refactor buffer management
2011-04-16 18:05:24 +03:00
Vicent Marti
ffc20b5cb3
Remove some span-level callbacks for TOC rendering
2011-04-16 17:49:16 +03:00
Vicent Marti
70f7b76700
More strict language declarations
2011-04-16 17:48:32 +03:00
Vicent Marti
14d63dce62
Add support for GitHub-linke <p> hard-wrap
2011-04-16 14:47:29 +03:00
Vicent Marti
7ce14ef3c3
Remove extra newline
...
Nope. Don't add newlines after <pre>
2011-04-16 13:21:46 +03:00