we typically reply in under 30 minutes
How to Improve Your Writing Skills
Writing is an essential skill, no matter what profession you're in. In this post, we'll cover some tips and tricks to help you become a better writer. We'll also look at ways to make the writing process easier and more enjoyable.
TIt uses TextMate grammar to tokenize strings, and colors the tokens with VS Code themes. In short, Shiki generates HTML that looks exactly like your code in VS Code, and it works great in your static website generator.
// Example JavaScript
const shiki = require('shiki')
shiki.getHighlighter({
theme: 'nord'
}).then(highlighter => {
console.log(highlighter.codeToHtml(`console.log('shiki');`, {
lang: 'js'
}))
})
// <pre class="shiki" style="background-color: #2e3440"><code>
// <!-- Highlighted Code -->
// </code></pre>
const fs = require('fs')
const markdown = require('markdown-it')
const shiki = require('shiki')
shiki.getHighlighter({
theme: 'nord'
}).then(highlighter => {
const md = markdown({
html: true,
highlight: (code, lang) => {
return highlighter.codeToHtml(code, { lang })
}
})
const html = md.render(fs.readFileSync('index.md', 'utf-8'))
const out = `
<title>Shiki</title>
<link rel="stylesheet" href="style.css">
${html}
<script src="index.js"></script>
`
fs.writeFileSync('index.html', out)
console.log('done')
})
import { tokenColors } from "./custom-theme.json";
// https://astro.build/config
// VS Code Theme is:
export default defineConfig({
markdown: {
shikiConfig: {
theme: {
name: "custom",
type: "dark",
settings: tokenColors,
},
wrap: true,
skipInline: false,
drafts: false,
},
},
});