Comments (7)
Still some refactor to do to support multiple token highlight
from shikiji.
I am willing to submit a fix
from shikiji.
Perhaps we can include other common symbols like " | . - ,
. But that is possible to have edge cases where the word is separated into multiple tokens.
Quotes are usually separated into another token, so matching "jsx"
will not work with options: "jsx"
for example. We have to allow a word to transcend multiple tokens?
from shikiji.
Great, here is a reference in twoslash integration:
shikiji/packages/shikiji-twoslash/src/core.ts
Lines 202 to 228 in 4b61e33
from shikiji.
I think vuejs/vitepress#3503 is also related to this. There, the text that's being matched against the regex is not the whole line instead individual tokens 👀 The comments like // [!code error]
don't work if they are not entirely in the same text node.
from shikiji.
I think vuejs/vitepress#3503 is also related to this. There, the text that's being matched against the regex is not the whole line instead individual tokens 👀 The comments like
// [!code error]
don't work if they are not entirely in the same text node.
That is caused by the limitation of design rather than the transformer itself, adding comments after attributes is not valid in Vue. Therefore, you'll see a weird highlighting here:
<template>
<div
class="container max-w-250 mx-a my-10 min-h-250 vp-doc p4" // something
of-hidden
>
<ShikijiMiniPlayground />
</div>
</template>
Writing this in real code even gives you syntax errors, which is not supposed to work.
from shikiji.
@brc-dd Feel free to open an issue on https://github.com/shikijs/shiki and we could discuss what would be the solution for that :)
from shikiji.
Related Issues (20)
- Extra <span class="line"></span> added to code blocks? HOT 2
- Undocumented differences compared to Shiki-Twoslash HOT 3
- Docs: Nav: Typo "Compatibly" HOT 1
- Support for inline code HOT 2
- `rehype-shikiji` support metastring from `node.properties`
- Add ability for language alias rehype-shiki
- Extra leading space in `span`s containing TypeScript types causes underlines to start early HOT 2
- Allow CSS Variables theme HOT 4
- Compatibility with unwasm HOT 6
- Additional types for ThemeRegistrationResolved HOT 7
- Setting up fine-grained highlighter from web bundle bundles all themes HOT 1
- Improve In-Browser Markdown Processing Speed with Caching HOT 4
- Code overflow in the type information popup
- code block bg parm HOT 1
- Support Vue SFC for TwoSlash HOT 1
- vitepress-plugin-twoslash: Unknown file extension ".css" HOT 3
- [markdown-it-shikiji]: Issues with line number highlights while using markdown-it-attrs HOT 4
- Word highlighting
- Issue template mentions unrelated project HOT 1
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 shikiji.