Gerhard Schlager
e224100023
FIX: Don't convert :) into Emoji when emojis or emoji shurtcuts are disabled
2019-05-22 11:44:39 +02:00
Joffrey JAFFEUX
7334362b77
FEATURE: generic theme component bbcode wrapper ( #7400 )
...
Usage:
```
[wrap=name foo=bar]
hello world
[/wrap]
```
2019-04-24 10:37:34 +02:00
Gerhard Schlager
a7bc1ecbae
FEATURE: Add support for Unicode usernames and group names
...
Co-authored-by: Joffrey JAFFEUX <j.jaffeux@gmail.com>
2019-04-23 13:00:27 +02:00
Maja Komel
7d2ea2d4dd
FEATURE: image resizing discoverability ( #6804 )
2019-02-27 11:46:16 +01:00
Penar Musaraj
2a007bafa2
FEAT: Allow image resize by width or height
...
`|150x` resizes to 150px wide + auto-height. `x150` resizes to 150px tall and auto-width.
Resize value can be from 1 to 999 (incl. for percentages).
2019-02-07 15:04:39 -05:00
Régis Hanol
5ac1e3d4cd
FIX: emojis are hard 🤷
2019-01-04 17:21:16 +01:00
Régis Hanol
95e5f8380d
FEATURE: Allow plugins to add custom emoji translations
...
FIX: buildTranslationTree was erroring when translations overlapped (ie. ":-)" and ":-))")
FIX: emoji translations wasn't working properly when translations overlapped
2019-01-04 15:27:46 +01:00
Vinoth Kannan
2076f371b3
FIX: Hashtags should work for non-english characters
2018-12-26 22:12:40 +05:30
Sam Saffron
69aa8f18c2
FEATURE: allow for custom excerpt BBCODE
...
This allows fidelity in controlling excerpt (text that shows up when you pin a topic or link to it externally):
```
I am some text
[excerpt]
This is some **custom** markdown that should be the excerpt
[/excerpt]
More text
```
Previous solution relied on DIVs, unfortunately DIVs do not play well,
by design with mixing markdown unless you have a preceding newline eg:
```
<div class='hello'>
this will be treated properly as markdown
</div>
```
This extra newline is not desirable.
I am also considering adding
```
[div class=excerpt]
[/div]
```
This would offer lots of flexibility to themes and plugins that do not want the extra annoying newline.
2018-12-25 17:02:28 +02:00
Bianca Nenciu
a8e8473ea5
DEV: Apply code review.
2018-12-05 21:58:55 +01:00
Bianca Nenciu
e9bbdef156
FEATURE: Add support for inline emoji translation.
2018-12-05 21:58:55 +01:00
Guo Xiang Tan
a1e77aa2ed
FEATURE: Reimplement SiteSetting.max_oneboxes_per_post
. ( #6668 )
...
Previously, the site setting was only effective on the client side of
things. Once the site setting was been reached, all oneboxes are not
rendered. This commit changes it such that the site setting is respected
both on the client and server side. The first N oneboxes are rendered and
once the limit has been reached, subsequent oneboxes will not be
rendered.
2018-11-27 16:00:31 +08:00
Guo Xiang Tan
57e2f4990d
PERF: Move processing of inline onebox out of V8 context. ( #6658 )
2018-11-26 09:21:38 +08:00
Guo Xiang Tan
c5a70eca6e
PERF: Move mention lookups out of the V8 context. ( #6640 )
...
We were looking up each mention one by one without any form of caching and that results
in a problem somewhat similar to an N+1. When we have to do alot of DB
lookups, it also increased the time spent in the V8 context which may
eventually lead to a timeout. The change here makes it such that mention lookups only does a single
DB query per post that happens outside of the V8 context.
2018-11-22 14:28:48 +08:00
Vinoth Kannan
fe6c3b7d2e
Make prettier happy
2018-09-04 00:31:41 +05:30
Vinoth Kannan
24a14af15a
FIX: Respect invalidate_oneboxes option for inline oneboxes
2018-09-03 22:33:43 +05:30
OsamaSayegh
f13a7226db
FIX: display tables in posts history diff ( #6032 )
2018-07-12 14:13:52 +10:00
Sam
b54ba4c952
FIX: mentions broken after adding an <abbr> tag
...
A previous shortcut used was not allowing for <abbr and other tags starting with a
If <abbr> appeared anywhere in the text all mentions would fail to link
2018-07-05 09:27:11 +10:00
Joffrey JAFFEUX
03a7d532cf
DEV: introduces prettier for es6 files
2018-06-15 17:03:24 +02:00
Joffrey JAFFEUX
dd76ba90b3
FIX: bbcode regex was greedy and preventing quotes
2018-05-23 11:55:02 +02:00
Sam
a0cd54750c
FIX: inline [code] not handled properly
...
The text
a
[code]test[/code]
Would eat up the `test` text cause translation from inline to block
for replace rule was not properly handled
2018-04-26 15:18:22 +10:00
Robin Ward
58c81db279
Apply a 'no-group' class to quotes for styling
2018-04-02 14:02:16 -04:00
Robin Ward
90d3544db8
UX: Add a class we can use to target quotes without groups
2018-04-02 14:02:16 -04:00
Robin Ward
31a0c4a9be
FEATURE: Add quote-modified
class if a quote has been modified
2018-03-13 13:41:06 -04:00
Arpit Jalan
322618fc34
FIX: capital bbcode tags were broken
2018-03-04 22:10:54 +05:30
Neil Lalonde
3313072957
Remove censored_pattern site setting, which is replaced by watched words
2018-02-26 16:29:27 -05:00
Sam
f028ffaf29
SECURITY: correct local onebox category checks
...
Also removes ugly "source_topic_id" from cooked posts
Patch was authored by @zogstrip
Signed-off-by: Sam <sam.saffron@gmail.com>
2018-02-14 10:40:46 +11:00
Sam
60ee9a4ccf
make tests a bit happier
2018-02-01 15:56:22 +11:00
Sam
ee0d3f15c1
FEATURE: allow better fidelity for auto linkify, disable most tlds based linkify
...
New site settings:
enable_markdown_linkify: which is default on, auto links https:// and http:// and mail://
markdown_linkify_tlds: which allows control of what tlds get autolinked for cases such as www.site.com, default is com|net|gov
2018-02-01 13:22:38 +11:00
Sam
f946db4afe
FIX: inline oneboxer min title length of 2
...
also: cache mini onebox misses as well to cut down traffic
2018-01-30 08:40:04 +11:00
Sam
3492a91056
FEATURE: allow site operators to disable emoji shortcuts
2018-01-24 12:21:44 +11:00
Neil Lalonde
edb3a7f646
FIX: support for watched_words_regular_expressions when censoring words
2018-01-10 14:11:23 -05:00
Sam
a9e2fc59c4
FIX: [constructor] bbcode would cause markdown crash
2017-12-27 16:11:30 +11:00
Joffrey JAFFEUX
fd99e1ef56
FEATURE: site setting enable_mentions to turn on/off mentions
2017-12-07 16:27:58 -05:00
Guo Xiang Tan
4531563717
Hide new advanced editor and preview sync behind a hidden site settings.
2017-12-06 12:34:58 +08:00
Guo Xiang Tan
44333c5de3
REFACTORY: Dry up some composer syncing code.
2017-11-24 14:57:36 +08:00
Guo Xiang Tan
486016acea
UX: Improve editor and preview scroll syncing.
2017-11-23 17:02:02 +08:00
Robin Ward
f8164956dd
Add quote and mention support for username formatters
2017-11-20 16:28:03 -05:00
Sam
38c103c75e
correct spec
2017-11-13 18:09:24 +11:00
Sam
8a66446849
FEATURE: add overflow-y auto to Markdown tables
2017-11-13 17:52:15 +11:00
ckeboss
93633865d9
Adds primary user group as a class to quote ( #5285 )
...
* Adds primary user group as a class to quote
This feature addition will add the class `group-PRIMARY_USER_GROUP` to
the quote `aside`. `PRIMARY_USER_GROUP` will be the primary user group
of the user being quoted. This is similar to the class that is added to
a `topic-post`.
* Remove trailing whitespace
* Fix avatar in test
* Address PR comments
* Fix trailing whitespace
2017-11-03 09:51:40 -04:00
Sam
229a10e142
Missed a whitelist, compensate for strict classes
2017-10-16 10:46:01 +11:00
Sam
9cb088e3f6
FIX: restrict classes allowed for img tag in Markdown
2017-10-16 09:34:30 +11:00
Guo Yunhe
7d29ccf207
bbcode find close tag loop end condition
...
Only break loop when close tag has been found. Otherwise, keep searching until the end of string.
2017-09-06 09:13:57 +03:00
Arpit Jalan
ebbdd4fe0f
FIX: error when rebaking posts
2017-09-02 22:22:29 +05:30
Sam
d7a2584c6e
FEATURE: image uploads now have short urls
...
Shorten all image uploads to use short urls, this is the client
side implementation.
2017-08-22 16:40:08 -04:00
Sam
bcf7dc38c2
FEATURE: server side support for upload:// markdown
...
This allows uploads to be specified using short sha1 hash instead of full
URL
Client side change is pending
2017-08-22 11:46:23 -04:00
Sam
5942ad83c0
Skip inline onebox for domain only
2017-08-02 17:27:58 -04:00
Sam
a4e1920604
FIX: inline oneboxer not applying to lists
2017-08-02 16:10:08 -04:00
Sam
4f574e7c93
FEATURE: support inline bbcode blocks eg: [quote]test[/quote]
2017-07-27 17:55:17 -04:00
Neil Lalonde
24cb950432
FEATURE: Watched Words: when posts contain words, do one of flag, require approval, censor, or block
2017-07-26 11:01:09 -04:00
David Taylor
27539e15e1
Allow whitespace around % scaler in markdown image syntax ( #5000 )
2017-07-26 10:54:20 -04:00
Sam
4da98cdcfe
FIX: allow bbcode to be unquoted for default
2017-07-24 18:36:17 -04:00
Sam
40abcfc2f5
FIX: smart quote edge case with quotes
2017-07-24 12:21:49 -04:00
Sam
9b4f5710e6
api cleanup for before / after rules
2017-07-21 16:12:11 -04:00
Sam
e1ce47a901
Pass the full CommonMark spec
2017-07-21 13:20:52 -04:00
Robin Ward
aa5b8a5749
REFACTOR: Merge onebox and inline onebox code paths
2017-07-21 13:12:30 -04:00
Robin Ward
657e592a39
FIX: Oneboxes were not being previewed
2017-07-20 17:12:54 -04:00
Robin Ward
3882722195
FEATURE: Inline (Mini) Oneboxing
...
see:
https://meta.discourse.org/t/mini-inline-onebox-support-rfc/66400?source_topic_id=66066
2017-07-20 15:38:04 -04:00
Sam
44fb2a2833
DEV: support multiple capture groups for text post process
2017-07-20 15:33:44 -04:00
Sam
1096dcd602
correct bbcode parsing edge case
2017-07-20 13:02:40 -04:00
Sam
911ffbb98c
Correct mention edge cases
...
@sam. was not correctly detected as a mention
2017-07-20 11:52:38 -04:00
Sam
c7b0764089
correct more edge cases with new engine
2017-07-17 17:44:48 -04:00
Sam
8921058c67
FIX: medium URL with @ incorrectly handled as mention
...
Also:
- remove unused code
- rename bbcode_ruler to bbcode.ruler
- add md.core.textPostProcess.ruler to apply at end of chain (excluding links)
2017-07-17 17:44:48 -04:00
Sam Saffron
d0c5205a52
Feature: Change markdown engine to markdown it
...
This commit removes the old evilstreak markdownjs engine.
- Adds specs to WhiteLister and changes it to stop using globals
(Fixes large memory leak)
- Fixes edge cases around bbcode handling
- Removes mdtest which is no longer valid (to be replaced with
CommonMark)
- Updates MiniRacer to correct minor unmanaged memory leak
- Fixes plugin specs
2017-07-17 11:41:34 -04:00
Sam
79a084dd58
Revert "remove old markdown engine work-in-progress"
...
This reverts commit ee470b5317
.
2017-07-12 18:10:51 -04:00
Sam
bcbb9f208d
Revert "Integrate new engine, correct old specs"
...
This reverts commit f1b38ba4fb
.
2017-07-12 18:10:07 -04:00
Sam
f1b38ba4fb
Integrate new engine, correct old specs
...
corrects edge cases with
- full quotes
- [url] with nested tags
- engine overrides
- onebox applying to non http srcs
2017-07-12 17:44:40 -04:00
Sam Saffron
ee470b5317
remove old markdown engine work-in-progress
2017-07-12 17:44:40 -04:00
Sam
98e03b04b5
Don't depend on imports for md extensions
2017-07-11 16:48:25 -04:00
Sam
5d139e461c
FIX: multi option poll not working (new engine)
2017-07-11 14:43:34 -04:00
Sam
3f950a756a
FEATURE: support image dimensions via Markdown image
2017-07-11 12:13:03 -04:00
Sam
ba9898c5a9
FIX: smarter newline handling for <img> tags on line alone
...
Run all of pretty text spec on new engine
2017-07-10 12:22:15 -04:00
Sam
9fb180f839
we don't want that console.log
2017-07-07 16:38:52 -04:00
Sam
6f09df0deb
FIX: don't create tags autolinks inside links (new engine)
2017-07-07 13:04:25 -04:00
Sam
436b894f7a
FIX: mention not working after a newline (new engine)
2017-07-07 11:06:50 -04:00
Robin Ward
754c1e5438
Upgrade to Babel 6
2017-07-05 15:25:23 -04:00
Sam
d2ba543ed3
correct case where %20 decoded as space in auto link
...
correct case where onebox is not applied when url is decoded
2017-07-03 16:32:53 -04:00
Sam
0650c8dbab
optimize rule lookup
...
we have tons of bbcode rules, might as well speed them up
2017-06-30 15:19:16 -04:00
Sam
a55e679563
support wrap function in bbcode rules
2017-06-30 12:21:01 -04:00
Sam
ca40c1725c
add support for a wrap function in bbcode replace
2017-06-29 16:43:57 -04:00
Sam
d941ed90d6
support for bbcode [code] blocks
2017-06-29 16:04:10 -04:00
Sam
de50d8cd35
Support for [email] [url] [img] bbcodes
2017-06-29 14:00:09 -04:00
Sam
c6b83f4714
Correct logic so hashtags are properly ignored in links
2017-06-29 12:48:20 -04:00
Sam
0e391a72a1
use custom whitelister for tables
2017-06-28 16:08:29 -04:00
Sam
6200d7d6ab
correct bug where only a single poll per topic worked
2017-06-28 15:36:19 -04:00
Sam
cfbda863e8
implement unicode emoji replacements
2017-06-28 13:47:30 -04:00
Sam
4c5109ff5b
FEATURE: site setting for Markdown typographer
...
It ships anyway with markdown.it so we might as well expose it
2017-06-27 16:50:13 -04:00
Sam
0d62420cbe
Space prior to onebox stops onebox resolution
2017-06-27 16:16:17 -04:00
Sam
232de90607
explicit autolink should not be oneboxed
2017-06-27 15:34:16 -04:00
Sam
0e0092d738
corrected a parsing edge cases for bbcode blocks
2017-06-27 10:07:06 -04:00
Sam
21f7ac1f25
correct spec, require closing tag for bbcode blocks
2017-06-26 16:51:55 -04:00
Sam
8967d50dc2
Clean up sanitization code
...
- remove html table test, this is soon to be deprecated
- move sanitization tests into pretty text.rb
- fix up whitelister so it makes a copy of options
2017-06-26 15:21:47 -04:00
Sam
e9f55adb3a
FEATURE: add table support
2017-06-26 13:25:05 -04:00
Sam
df5ee0cfc1
correct onebox rendering so it fills in cached
...
the onebox plugin needs to pull in the actual cached onebox
and bypass the whitelister for onebox content
2017-06-26 13:09:58 -04:00
Sam
da5ccd2000
correctly hunt for console.log
2017-06-23 15:24:20 -04:00
Sam
814c8804d4
correct text highlighting for no highlight
2017-06-23 14:35:46 -04:00
Sam
05e5a740a6
FEATURE: consistent bbcode inline and block rulers
2017-06-23 12:01:33 -04:00
Sam
234694b50f
Feature: CommonMark support
...
This adds the markdown.it engine to Discourse.
https://github.com/markdown-it/markdown-it
As the migration is going to take a while the new engine is default
disabled. To enable it you must change the hidden site setting:
enable_experimental_markdown_it.
This commit is a squash of many other commits, it also includes some
improvements to autospec (ability to run plugins), and a dev dependency
on the og gem for html normalization.
2017-06-23 12:01:33 -04:00
Joffrey JAFFEUX
353d059133
Explains sort/reverse of emoji replacements
2017-06-14 17:54:52 +02:00