Opened 7 hours ago
Last modified 6 minutes ago
#13863 new defect
Inconsistent link escaping mechanism
Reported by: | Dirk Stöcker | Owned by: | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | wiki system | Version: | 1.6 |
Severity: | normal | Keywords: | |
Cc: | Branch: | ||
Release Notes: | |||
API Changes: | |||
Internal Changes: |
Description
In Trac a link can be escaped with a !, like in ([42])
![42]
The problem is, that this depends on the content of the brackets. e.g. this wont work (![foo]) and print the ! sign as well.
![foo]
This means the escape mechanism on pages depends on the future changes of the wiki (in this case the status will change as soon as somebody adds a page called foo.
Especially strange as it also depends on potential link status like for (![FooBar]) which cannot only be escaped with another method ([FooBar]).
![FooBar] doesn't work [!FooBar] works
My suggestion. ![
should always escape the contents. If the ! should be printed a second ! needs to be added !![
(like in ![42]):
!![42]
That way it would be consistent and not depending on possible future changes.
[...]
is link to a revision in a repository. If the revision part doesn't match with[0-9]+
or[0-9a-f]+
, the text is not convert a link.A user could use the following workarounds:
`...`
or{{{...}}}
(e.g.`[42]`
→[42]
)[[html()]
macro (e.g.[[html([42])]]
→ [42])I think that it might be good to add a syntax like
`...`
without any markups.