Comments (7)
Can see same thing with
[hi]({#ab})
[hi]({.ab})
from djot.js.
When we match a destination, we (inlines.ts l. 440)
// convert all matches inside destination to str
The problem is that the attribute parser gives us events for key and value, but not for the =
; similarly for the identifier or class, but not the markers #
or .
. Interior whitespace is also not given an event, so it too will be lost:
% ./djot
[hi]({a=b c=d})
<p><a href="{abcd}">hi</a></p>
Probably the best fix is to use a different strategy for matching destinations. You might ask, why not just use the position after the (
as the start of the destination and the position before the )
as the end? Because the destination might be broken up by newlines and thus might not occupy a contiguous segment of the input text.
from djot.js.
One idea for fixing this would be to have the events parser create multiple +destination
/-destination
pairs when the URL is split over lines.
parse.ts could then look for multiple destinations and concatenate them. If we were sure that each +destination
/-destination
pair was on a single line, we could just take all the text between the start and the end.
from djot.js.
Reopening; I had to revert the fix because it was buggy.
See #64.
from djot.js.
I think the problem is with strMatches
in inlines.ts
.
from djot.js.
Similar issue: [link]({.class})
from djot.js.
The function converts all matches to str
, but some of the characters, like .
, don't generate match events, so they are lost.
from djot.js.
Related Issues (20)
- Add docstrings HOT 6
- Update pandoc API version emitted HOT 4
- URLs with parenthesis break parser HOT 11
- TaskListItem: "undefined" ? HOT 6
- Caption parsing is buggy HOT 3
- Include package-lock.json in the repository
- Issues with ellipses and dashes when converting to pandoc format HOT 1
- Multiline references HOT 11
- multiline link urls no longer trimmed and concatenated HOT 4
- Shared HTML id in multiple references to the same footnote HOT 7
- Clarification around list items HOT 6
- Make library available via CDN HOT 1
- Deno Third Party Module HOT 2
- Can we remove auto generated anchor in renderDjot output? HOT 6
- Crash when render tasklist as pandoc HOT 2
- No renderer for span when rendering as djot HOT 1
- Add recursive file inclusion HOT 2
- Error when trying to run `npm run test` HOT 2
- question: Add class name to all sections HOT 3
- Add comment in AST HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from djot.js.