1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-09-18 02:09:43 +00:00
Commit Graph

225 Commits

Author SHA1 Message Date
Cameron Fischer
61714cbda3
Fixed super minor issue with import pragma (#5521) 2021-05-23 17:39:06 +01:00
Miha Lunar
62fdaa633a Fixed fallback range logic + added ranges to tests 2021-04-25 16:03:35 +02:00
Miha Lunar
79f5e6b498 Merge remote-tracking branch 'origin/master' into parser-ranges 2021-04-25 13:17:44 +02:00
Miha Lunar
23bd7e7817 Replaced restructuring and added fallback comment 2021-04-25 13:12:45 +02:00
jeremy@jermolene.com
9f9ce6595b Make it easier to subclass the wikitext parser with a custom rule set
We can now pass arrays of rule classes to the parser constructor, overriding the rules that would normally be used by the parser.

This allows us to create custom variants of the wikitext parser with their own content type.

It could also provide a basis for a new Markdown parser based on our existing wikitext parser but with new rules.
2021-02-03 15:13:56 +00:00
Cameron Fischer
4c7dcb83d1
Fix for #3306, inline/block widget glitch (#5452)
* Fix for #3306, inline/block widget glitch

* Just realized we don't need to set lastIndex anymore

* Forgot that parseBlocks doesn't use options
2021-01-29 14:57:30 +00:00
Cameron Fischer
45355a7fcf
Wikirules now use better macrocall parser (#5451)
* wikirules now use better macrocall parser

Before, wikirules would use a deficient macrocall parser which couldn't
handle certain types of arguments. Now it uses the same one that the
widget parser uses. Less code!

* style changes and removing weird switch statement

That switch statement made more sense in an earlier iteration.

* comment improvements

* oops, wikirule macrocalls could do ONE thing better

* '=' wasn't allowed for widget macros, but why?

Now they're allowed for both widget macros and macrocall macros.
2021-01-29 13:26:31 +00:00
jeremy@jermolene.com
ca95f1069f Fixed comment parsers to match end marker correctly
Fixes #5396
2021-01-13 11:48:42 +00:00
jeremy@jermolene.com
d181b96518 Wikitext parser: Refactor a poorly written utility function 2020-11-18 12:05:06 +00:00
Miha Lunar
1b226c7556 Fixed coding standard nits 2020-11-06 19:56:20 +01:00
Miha Lunar
2bd9cc45fa Added more start/end parser ranges 2020-11-04 21:02:17 +01:00
Nils-Hero Lindemann
322c37d693
Let chained > blockquotes generate valid HTML (#4332)
* Replace "p" with "div" in itemTag

'>> text' will now be valid html.

* Make the new div's behave like p's
2020-04-07 20:39:13 +01:00
Nils-Hero Lindemann
1c5b3e3d8d Remove duplicate code from transcludeblock parser (#4221) 2019-08-30 17:20:16 +01:00
Jermolene
fe85845c3c Add new "\import" pragma 2018-09-28 16:01:32 +01:00
Jermolene
35cbb127a3 Restrict variable substitutions to macros defined with the define pragma
Fixes #3333
2018-06-15 08:31:02 +01:00
Jermolene
ff6aa0570f Check for dollar sign within HTML element name
Fixes #3091
2018-01-16 22:13:40 +00:00
Jermolene
29364cbd08 Change http://*.tiddlywiki.com/* to https:// 2017-11-11 11:56:20 +00:00
Jermolene
d966583854 Add new "\whitespace" pragma
This will allow us to simplify some of the more unreadable core
wikitext tiddlers…
2017-07-12 16:46:13 +01:00
Jermolene
accd4a1b65 Fix regexp performance problem introduced in c7b31b0242
This fixes a problem introduced in
c7b31b0242.

The changes by @tobibeer inadvertently made the regular expression
evaluation significantly more expensive because of lookahead. The is
less elegant but reverts the performance problem.
2016-10-17 19:08:01 +01:00
Jermolene
da298f037d Remove extraneous console.log()
Fixing f97c1226aa
2016-10-12 15:50:43 +01:00
Jermolene
f97c1226aa Prevent HTML parser from mis-recognising email addresses
Email addresses such as `<jeremy@example.com>` were being erroneously
parsed as HTML tags.

Fixes #2604
2016-10-12 13:17:53 +01:00
Tobias Beer
b9299309cc Fixes #2076 single line macros shouldn't need terminating line break 2016-10-08 13:44:30 +01:00
Tobias Beer
c7b31b0242 allows textPrimitives.anyLetter in syslink (#2596)
* allows textPrimitives.anyLetter in syslink

now only supports anyletter as per request by @jermolene
2016-10-08 11:51:07 +01:00
Jermolene
782553eb62 Remove tilde from characters not allowed in external URLs 2016-07-13 14:06:47 +01:00
Jermolene
dca9e008ce Remove single quote from illegal characters in URLs
Fixes #2493
2016-07-12 17:22:20 +01:00
Jermolene
3a3754aebb Add rel="noopener noreferrer" to external links
Background:
https://medium.com/@jitbit/target-blank-the-most-underestimated-vulnerab
ility-ever-96e328301f4c#.hduwdbjlb
2016-05-05 11:49:40 +01:00
Jermolene
df3e39d97a Update wikiparser file comment 2016-02-15 11:33:47 +00:00
Jermolene
ecdae4ceff Make lazy loading message be translateable 2015-09-08 10:41:27 +01:00
Jermolene
a204784c0c Limited implementation of external text tiddlers in the browser
Triggered by the discussion in #1917
2015-08-29 16:33:04 +01:00
Jermolene
58188cf805 Improvements to parser rule configuration
* Ignore parser rule configuration in safe mode
* Made text translatable
* Added new setting for camelcase links
* Added warning on parser rule configuration tab

See #1875
2015-07-31 13:33:33 +01:00
Jermolene
d5e690a06d First pass at global disabling of parser rules
This is to address #1875 more quickly than via #345.

This commit only includes a partial implementation of the UI - see the
ticket for details.
2015-07-30 12:28:29 +01:00
Jermolene
18e38bb2bc Fix bug with 2cb6400773
The problem was that we failed to escape the dash in the regexp,
meaning that it was matching all characters from “.” to “_”.
2015-07-14 08:33:12 +01:00
Jermolene
2cb6400773 Extend automatic system tiddler linking to digits and underscore
Fixes #1877
2015-07-13 14:42:55 +01:00
Jermolene
b0cb17cd83 Re-establish caching of results of parsing a tiddler
I switched this optimisation off back in
ed35d91be6, in October 2013, as part of a
big refactoring of the parsing and widget mechanism. I’ve been meaning
to switch it back on for some time.

My rough measurements suggest that this optimisation can reduce
rendering time by 5-10%.
2015-07-05 17:48:18 +01:00
Jermolene
50c6ce8b73 Improve syslink parsing
Fixes #1767
2015-06-24 09:24:03 +01:00
Tobias Beer
b43d4a33d6 simplified regexp
Ok, I think I've got it now. The following matches all...

1. starting with a literal `$:`
2. then any number of character not a whitespace, `<` or  `|`
3. closing with anything that is, again, not a whitespace, `<` or  `|`

Test here...

http://tbdemo.tiddlyspot.com/#Autolink%20System%20Tiddlers
2015-01-11 11:04:02 +01:00
Tobias Beer
795a929187 create syslink.js, revert extlink.js
introduces new parser for system links
2015-01-09 23:51:07 +01:00
Tobias Beer
8ba3e8973e autolinks system tiddlers
enhanced extlink parser to cover system tiddler links

of course, only those without spaces in their title

didn't want to open up an extra parser for this as extlink has all the
basics
2015-01-08 21:26:48 +01:00
Astrid Elocson
2f42c9fb8d Links and transclusions in railroad diagrams 2015-01-06 01:39:24 +00:00
Jermolene
1600beb193 Move the wikilink regexps into global config 2014-11-26 11:12:25 +00:00
Jermolene
93cb03eeab Allow whitespace after \end in macro definitions
Fixes #1090
2014-11-18 10:26:20 +00:00
Jermolene
a9f46525a0 Stop classifying digits as lower case letters in wikilinks
Fixes #842
2014-09-17 12:55:39 +01:00
Jermolene
3a67fdb768 Obeisance to JSHint for core modules
There are still some warnings about making functions in a loop, but
I’ll fix those as a separate pull request because the fixes are more
than typographic errors.
2014-08-30 20:44:26 +01:00
Jermolene
43aeb47fc3 Skip whitespace from start of inline macro definitions
Now `\define mymacro() yes` will not have a leading space in the
variable value
2014-08-28 20:21:09 +01:00
Jermolene
787481a804 Change more "tw-*" classes to "tc-*"
Part of #764
2014-08-28 18:21:08 +01:00
Jermolene
4a1c530da7 Rename "tw-tiddlylink-*" classes to "tc-tiddlylink-*"
Part of #764
2014-08-28 18:13:46 +01:00
Jermolene
b2e1dd2138 Allow whitespace after first line of multiline macro
Fixes the remaining part of #482
2014-08-11 13:52:10 +01:00
Jermolene
2526bfb078 Disable wikilinking when preceded with dash or underscore
“HelloThere” in “My-HelloThere” shouldn’t be wikified.

Part of #337
2014-08-08 16:20:15 +01:00
Jermolene
f8548cc8f2 Stop classifyinh "÷" (\u00f7) as an upper case letter
Part of #337
2014-08-08 16:12:23 +01:00
Jermolene
9c8564d5b0 Stop classifying "×" (\u00d7) as a lower case letter
Part of #337
2014-08-08 16:09:56 +01:00
Jermolene
d7390dbbe1 Remove support for underscore and dash in wikilinks
Starting to fix #337
2014-08-08 11:13:41 +01:00
Jermolene
5260899d8b Relax requirement for newline after macro definition 2014-08-07 16:00:20 +01:00
Jermolene
bf9a87dc0e Fix CR handling by HTML parser
@pmario and @welford - I’m not presenting this as a fix for #717
because I’m still not in a position to reproduce it.

However, I found this during a review of newline handling code, and
would be interested if it is implicated in the problems you are
reporting.
2014-08-03 09:43:22 +01:00
Mario Pietsch
6de453d796 remove stricethrough.js 2014-07-24 23:51:37 +02:00
Mario Pietsch
bb47f1dbad fix whitespace and filename 2014-07-24 23:49:42 +02:00
Mario Pietsch
95f6c92192 fixed whitespace 2014-07-24 23:47:13 +02:00
Mario Pietsch
7aa6c7c06d splited emphasis.js into several modules to have fine grained control with wikification rules eg: rules except bold ... This fixes #701 2014-07-24 17:43:03 +02:00
buggyj
a2ec4c55e3 added triple double-quotes delimiters for marco/widget parameters (to support json strings) 2014-06-19 07:29:14 +02:00
Jermolene
f44f2b33ed Fixed missing class on external pretty links 2014-05-26 17:57:35 +01:00
Jermolene
c9c1b0fbb4 Get rid of the tweakParseTreeNode() hack
It’s an embarrassing hangover from a refactoring of the parsing
mechanism last year.
2014-05-14 08:51:08 +01:00
Jermolene
854b739a35 Implement explicit external links 2014-05-06 20:05:51 +01:00
Jermolene
abe0ce28b9 Fix typos in docs for image parser 2014-05-06 19:00:34 +01:00
Jermolene
ad4b03506a Added wikitext image support
We’ve added a parser to recognise the `[img[URL or tiddler title]]`
format, and an associated image widget.
2014-04-17 12:52:32 +01:00
Jermolene
ace57dd205 Refactor utilities out of HTML parser
Some of the functions are useful general purpose parser helpers.
2014-04-17 12:00:32 +01:00
Jermolene
4c648e7cdc Exclude more illegal characters from external links 2014-04-14 11:17:28 +01:00
Jermolene
93b9d16d6c Don't include pipe characters in URLs 2014-04-13 21:17:44 +01:00
Jermolene
ccefc1b17b Tolerate more whitespace in block elements
Previously the double newlines marking a block mode element couldn’t be
interspersed with whitespace.
2014-04-10 11:05:27 +01:00
Jermolene
bdbbf94326 Update transclusion wikitext syntax to allow a template without a target tiddler
This allows us to transclude a tiddler without changing the current
tiddler with `{{||MyTiddler}}`.
2014-03-17 21:44:10 +00:00
Jermolene
cdf3e101a8 Fix crash with headings
`this.match[1].length` can get overwritten when we parse the content of
the heading
2014-03-17 20:55:08 +00:00
Jermolene
75ff9fb6c0 Allow the end of text to be treated as a linebreak for parsing HTML tags 2014-02-22 08:43:03 +00:00
Jermolene
c17844b815 Another fix for the block vs inline handline 2014-02-20 22:43:04 +00:00
Jermolene
06a0d21734 Use double linebreaks to indicate content of a widget or html element should be parsed in block mode
Fixes #82.

The old behaviour was to parse the content of a widget or html element
in block mode if the opening tag was followed by a line break. The new
behaviour requires two line breaks.

This makes it possible to include linebreaks more liberally within
wikitext, although care must still be taken to only use double line
breaks when the block mode behaviour is desired.

The code change here is very simple, just a single line change in
html.js. Most of the other changes are to convert various single line
breaks into double line breaks.
2014-02-20 21:42:31 +00:00
Jermolene
d5b526914b Simplify the regular expression for HTML comments
We were getting catastrophic backtracking in Chrome for some input
texts where the closing “—>” of the comment was omitted.
2014-02-12 15:24:03 +00:00
Jermolene
6255b97b14 Resolve merge conflict 2014-01-25 14:41:48 +00:00
Jermolene
2c790d982f Switch to using $tw.fakeDocument for the fakedom document object
So that we can free us `$tw.document` to be the actual DOM document
2014-01-15 14:57:35 +00:00
João Bolila
426f2978cf fixes of a newbie, me 2014-01-12 17:09:24 +00:00
João Bolila
82a48cf85c codeblock as a widget and plugin for highlight code blocks 2014-01-07 22:57:46 +00:00
Stephan Hradek
9fee9b1043 Fix for Paul's concerns 2014-01-07 21:12:59 +01:00
Jermolene
027421f5e6 More coding style consistency 2014-01-03 10:54:00 +00:00
Jermolene
1a74e2538c Cleaning up further coding style inconsistencies that have crept in 2014-01-03 10:50:00 +00:00
Jermolene
8fc5c1d4a0 Further style tweaks to #321 2014-01-03 10:48:00 +00:00
Jermolene
1374bd9d78 Coding style fixes for #321 2014-01-03 10:43:08 +00:00
Jermolene
307b5c7d6b Merging #321 Table valign from @Skeeve 2014-01-03 10:39:55 +00:00
Stephan Hradek
917865c393 fixed an initialization error 2013-12-31 11:09:17 +01:00
Stephan Hradek
ec14a0a16d vertical alignment of cells - version 2 2013-12-31 11:05:08 +01:00
Stephan Hradek
ce8cc7607f changed to conform to Jeremy's standards - sorry… 2013-12-30 13:44:32 +01:00
Jeremy Ruston
2ee5093944 Merge pull request #305 from Skeeve/issue_186
added a fix for issue #186
2013-12-30 04:06:05 -08:00
Stephan Hradek
14868d8228 also fixed issue #315 2013-12-30 00:28:43 +01:00
Stephan Hradek
3cc8138133 fixed issue #314 - fix for > at end of line 2013-12-29 23:57:42 +01:00
Stephan Hradek
8e080eac0a fixed issue #314 2013-12-29 23:51:22 +01:00
Stephan Hradek
f9de55ad5f added fix for issue #94 for horizontal rules, tables and typed block 2013-12-25 23:06:42 +01:00
Stephan Hradek
81106e500d added a fix for issue #186 2013-12-25 14:31:35 +01:00
Jermolene
57adbe5bf7 Fixed typo in hardlinebreak parser 2013-12-14 17:42:50 +00:00
Jermolene
ef9175e7bc Remove debugging info 2013-12-14 17:07:47 +00:00
Jermolene
6a8feb216a Add parser rule for hard linebreaks 2013-12-14 17:05:57 +00:00
Jeremy Ruston
0a93edb1b6 Merge pull request #249 from Skeeve/quotes
added quote rules
2013-12-06 01:16:39 -08:00
Stephan Hradek
b0ff8bee6a as requested - quote.js removed because of quotelist - do not forget to add some css classes 2013-12-06 09:57:56 +01:00
Jermolene
ffcf2bfaac Missing comma
Omitted from 4d4a0e01b4
2013-12-05 16:20:22 +00:00
Stephan Hradek
374743883d inserted > into lists 2013-12-05 00:31:55 +01:00
Stephan Hradek
62b9fb336b fixed a small bug related to closing wiki-tag - no really 2013-12-01 22:05:49 +01:00