{"_id":"rehype-highlight","_rev":"4664551","name":"rehype-highlight","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","dist-tags":{"latest":"7.0.2"},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"time":{"modified":"2026-04-10T22:31:15.000Z","created":"2016-06-19T14:45:07.837Z","7.0.2":"2025-02-03T14:14:24.606Z","7.0.1":"2024-10-22T12:18:27.015Z","7.0.0":"2023-09-05T10:08:08.321Z","6.0.0":"2022-10-12T17:25:53.926Z","5.0.2":"2021-12-27T18:31:26.975Z","5.0.1":"2021-12-02T17:43:08.851Z","5.0.0":"2021-08-02T09:36:03.663Z","4.1.0":"2021-02-19T13:49:32.677Z","4.0.1":"2021-02-16T07:43:49.592Z","4.0.0":"2020-03-19T17:12:10.998Z","3.1.0":"2019-11-13T15:16:12.716Z","3.0.0":"2019-06-03T17:02:34.976Z","2.2.2":"2019-06-01T08:55:01.765Z","2.2.1":"2018-11-17T13:22:41.051Z","2.2.0":"2018-08-08T23:53:46.498Z","2.1.0":"2018-01-20T18:49:21.690Z","2.0.1":"2017-06-20T12:01:46.722Z","2.0.0":"2017-02-23T21:53:39.147Z","1.1.0":"2016-11-25T10:51:42.631Z","1.0.0":"2016-06-19T14:45:07.837Z"},"users":{},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"versions":{"7.0.2":{"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"dependencies":{"@types/hast":"^3.0.0","hast-util-to-text":"^4.0.0","lowlight":"^3.0.0","unist-util-visit":"^5.0.0","vfile":"^6.0.0"},"description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","devDependencies":{"@types/node":"^22.0.0","c8":"^10.0.0","prettier":"^3.0.0","rehype-parse":"^9.0.0","rehype-stringify":"^10.0.0","remark-cli":"^12.0.0","remark-preset-wooorm":"^11.0.0","type-coverage":"^2.0.0","typescript":"^5.0.0","unified":"^11.0.0","xo":"^0.60.0"},"exports":"./index.js","funding":{"type":"opencollective","url":"https://opencollective.com/unified"},"keywords":["hast","highlighting","highlight","html","plugin","rehype-plugin","rehype","syntax","unified"],"license":"MIT","name":"rehype-highlight","prettier":{"bracketSpacing":false,"singleQuote":true,"semi":false,"tabWidth":2,"trailingComma":"none","useTabs":false},"remarkConfig":{"plugins":["remark-preset-wooorm"]},"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"scripts":{"build":"tsc --build --clean && tsc --build && type-coverage","format":"remark --frail --output --quiet -- . && prettier --log-level warn --write -- . && xo --fix","test-api":"node --conditions development test.js","test-coverage":"c8 --100 --reporter lcov -- npm run test-api","test":"npm run build && npm run format && npm run test-coverage"},"sideEffects":false,"typeCoverage":{"atLeast":100,"strict":true},"type":"module","version":"7.0.2","xo":{"prettier":true,"rules":{"complexity":"off"}},"_id":"rehype-highlight@7.0.2","gitHead":"86a5e9b1a5a3b43ab94416ac21f17d1d37051224","types":"./index.d.ts","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_nodeVersion":"23.1.0","_npmVersion":"11.0.0","dist":{"shasum":"997e05e3a336853f6f6b2cfc450c5dad0f960b07","size":8275,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-7.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-7.0.2.tgz"},"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/rehype-highlight_7.0.2_1738592064298_0.3790798075100279"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2025-02-03T14:14:24.606Z","publish_time":1738592064606,"_source_registry_name":"default","_cnpm_publish_time":1738592064606},"7.0.1":{"name":"rehype-highlight","version":"7.0.1","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","license":"MIT","keywords":["unified","rehype","rehype-plugin","plugin","html","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"funding":{"type":"opencollective","url":"https://opencollective.com/unified"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"sideEffects":false,"type":"module","exports":"./index.js","dependencies":{"@types/hast":"^3.0.0","hast-util-to-text":"^4.0.0","lowlight":"^3.0.0","unist-util-visit":"^5.0.0","vfile":"^6.0.0"},"devDependencies":{"@types/node":"^22.0.0","c8":"^10.0.0","prettier":"^3.0.0","rehype":"^13.0.0","remark-cli":"^12.0.0","remark-preset-wooorm":"^10.0.0","type-coverage":"^2.0.0","typescript":"^5.0.0","xo":"^0.59.0"},"scripts":{"build":"tsc --build --clean && tsc --build && type-coverage","format":"remark . --frail --output --quiet && prettier . --log-level warn --write && xo --fix","prepack":"npm run build && npm run format","test":"npm run build && npm run format && npm run test-coverage","test-api":"node --conditions development test.js","test-coverage":"c8 --100 --check-coverage --reporter lcov npm run test-api"},"prettier":{"bracketSpacing":false,"singleQuote":true,"semi":false,"tabWidth":2,"trailingComma":"none","useTabs":false},"remarkConfig":{"plugins":["remark-preset-wooorm"]},"typeCoverage":{"atLeast":100,"detail":true,"ignoreCatch":true,"strict":true},"xo":{"prettier":true,"rules":{"complexity":"off"}},"_id":"rehype-highlight@7.0.1","gitHead":"79b5c4f16413b965bb786e1e05e8d5127e1b96f6","types":"./index.d.ts","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_nodeVersion":"22.7.0","_npmVersion":"10.9.0","dist":{"shasum":"38b25d6dacb8719867c97765cef4763224d7f3ce","size":8236,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-7.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-7.0.1.tgz"},"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_7.0.1_1729599506808_0.686651556290764"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-10-22T12:18:27.015Z","publish_time":1729599507015,"_source_registry_name":"default","_cnpm_publish_time":1729599507015},"7.0.0":{"name":"rehype-highlight","version":"7.0.0","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","license":"MIT","keywords":["unified","rehype","rehype-plugin","plugin","html","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"funding":{"type":"opencollective","url":"https://opencollective.com/unified"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"sideEffects":false,"type":"module","exports":"./index.js","dependencies":{"@types/hast":"^3.0.0","hast-util-to-text":"^4.0.0","lowlight":"^3.0.0","unist-util-visit":"^5.0.0","vfile":"^6.0.0"},"devDependencies":{"@types/node":"^20.0.0","c8":"^8.0.0","prettier":"^3.0.0","rehype":"^13.0.0","remark-cli":"^11.0.0","remark-preset-wooorm":"^9.0.0","type-coverage":"^2.0.0","typescript":"^5.0.0","xo":"^0.56.0"},"scripts":{"build":"tsc --build --clean && tsc --build && type-coverage","format":"remark . --frail --output --quiet && prettier . --log-level warn --write && xo --fix","prepack":"npm run build && npm run format","test":"npm run build && npm run format && npm run test-coverage","test-api":"node --conditions development test.js","test-coverage":"c8 --100 --check-coverage --reporter lcov npm run test-api"},"prettier":{"bracketSpacing":false,"singleQuote":true,"semi":false,"tabWidth":2,"trailingComma":"none","useTabs":false},"remarkConfig":{"plugins":["remark-preset-wooorm"]},"typeCoverage":{"atLeast":100,"detail":true,"ignoreCatch":true,"strict":true},"xo":{"prettier":true,"rules":{"complexity":"off"}},"_id":"rehype-highlight@7.0.0","gitHead":"f7a0e0296d6128101aa582f284a2d286bc49e941","types":"./index.d.ts","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_nodeVersion":"20.5.1","_npmVersion":"9.8.0","dist":{"shasum":"f2fd0eaebea7d4d4ce2fca2e8d9e3aea9441aefc","size":7517,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-7.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-7.0.0.tgz"},"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_7.0.0_1693908488116_0.9160013195287762"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-09-05T10:08:08.321Z","publish_time":1693908488321,"_source_registry_name":"default","_cnpm_publish_time":1693908488321},"6.0.0":{"name":"rehype-highlight","version":"6.0.0","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","license":"MIT","keywords":["unified","rehype","rehype-plugin","plugin","html","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"funding":{"type":"opencollective","url":"https://opencollective.com/unified"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"sideEffects":false,"type":"module","main":"index.js","types":"index.d.ts","dependencies":{"@types/hast":"^2.0.0","hast-util-to-text":"^3.0.0","lowlight":"^2.0.0","unified":"^10.0.0","unist-util-visit":"^4.0.0"},"devDependencies":{"@types/tape":"^4.0.0","c8":"^7.0.0","prettier":"^2.0.0","rehype":"12.0.0","remark-cli":"^11.0.0","remark-preset-wooorm":"^9.0.0","rimraf":"^3.0.0","tape":"^5.0.0","type-coverage":"^2.0.0","typescript":"^4.0.0","xo":"^0.52.0"},"scripts":{"build":"rimraf \"lib/**/*.d.ts\" \"*.d.ts\" && tsc && type-coverage","format":"remark . -qfo && prettier . -w --loglevel warn && xo --fix","test-api":"node --conditions development test.js","test-coverage":"c8 --check-coverage --branches 100 --functions 100 --lines 100 --statements 100 --reporter lcov npm run test-api","test":"npm run build && npm run format && npm run test-coverage"},"prettier":{"tabWidth":2,"useTabs":false,"singleQuote":true,"bracketSpacing":false,"semi":false,"trailingComma":"none"},"xo":{"prettier":true},"remarkConfig":{"plugins":["preset-wooorm"]},"typeCoverage":{"atLeast":100,"detail":true,"strict":true,"ignoreCatch":true},"gitHead":"56a02a52728bd16103ef193bc9edbaa4314c2948","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@6.0.0","_nodeVersion":"18.2.0","_npmVersion":"8.19.1","dist":{"shasum":"8097219d8813b51f4c2b6d92db27dac6cbc9a641","size":7893,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-6.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-6.0.0.tgz"},"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_6.0.0_1665595553767_0.6293867586540121"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-10-15T04:46:52.250Z","publish_time":1665595553926,"_cnpm_publish_time":1665595553926},"5.0.2":{"name":"rehype-highlight","version":"5.0.2","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","license":"MIT","keywords":["unified","rehype","rehype-plugin","plugin","html","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"funding":{"type":"opencollective","url":"https://opencollective.com/unified"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"sideEffects":false,"type":"module","main":"index.js","types":"index.d.ts","dependencies":{"@types/hast":"^2.0.0","hast-util-to-text":"^3.0.0","lowlight":"^2.0.0","unified":"^10.0.0","unist-util-visit":"^4.0.0"},"devDependencies":{"@types/tape":"^4.0.0","c8":"^7.0.0","prettier":"^2.0.0","rehype":"12.0.0","remark-cli":"^10.0.0","remark-preset-wooorm":"^9.0.0","rimraf":"^3.0.0","tape":"^5.0.0","type-coverage":"^2.0.0","typescript":"~4.4.0","xo":"^0.47.0"},"scripts":{"build":"rimraf \"lib/**/*.d.ts\" \"*.d.ts\" && tsc && type-coverage","format":"remark . -qfo && prettier . -w --loglevel warn && xo --fix","test-api":"node --conditions development test.js","test-coverage":"c8 --check-coverage --branches 100 --functions 100 --lines 100 --statements 100 --reporter lcov npm run test-api","test":"npm run build && npm run format && npm run test-coverage"},"prettier":{"tabWidth":2,"useTabs":false,"singleQuote":true,"bracketSpacing":false,"semi":false,"trailingComma":"none"},"xo":{"prettier":true},"remarkConfig":{"plugins":["preset-wooorm"]},"typeCoverage":{"atLeast":100,"detail":true,"strict":true,"ignoreCatch":true},"gitHead":"0ccf600d8aa3124c49f4fa7f3adfc637225b5e2f","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@5.0.2","_nodeVersion":"17.0.1","_npmVersion":"8.1.0","dist":{"shasum":"de952123cd4d9672f21a4a38d3b119b88a08eafa","size":7868,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-5.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-5.0.2.tgz"},"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_5.0.2_1640629886802_0.2537667793206524"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-28T01:40:32.556Z","publish_time":1640629886975,"_cnpm_publish_time":1640629886975},"5.0.1":{"name":"rehype-highlight","version":"5.0.1","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","license":"MIT","keywords":["unified","rehype","rehype-plugin","plugin","html","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"funding":{"type":"opencollective","url":"https://opencollective.com/unified"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"sideEffects":false,"type":"module","main":"index.js","types":"index.d.ts","dependencies":{"@types/hast":"^2.0.0","hast-util-to-text":"^3.0.0","lowlight":"^2.0.0","unified":"^10.0.0","unist-util-visit":"^4.0.0"},"devDependencies":{"@types/tape":"^4.0.0","c8":"^7.0.0","prettier":"^2.0.0","rehype":"12.0.0","remark-cli":"^10.0.0","remark-preset-wooorm":"^9.0.0","rimraf":"^3.0.0","tape":"^5.0.0","type-coverage":"^2.0.0","typescript":"~4.4.0","xo":"^0.47.0"},"scripts":{"build":"rimraf \"*.d.ts\" && tsc && type-coverage","format":"remark . -qfo && prettier . -w --loglevel warn && xo --fix","test-api":"node --conditions development test.js","test-coverage":"c8 --check-coverage --branches 100 --functions 100 --lines 100 --statements 100 --reporter lcov npm run test-api","test":"npm run build && npm run format && npm run test-coverage"},"prettier":{"tabWidth":2,"useTabs":false,"singleQuote":true,"bracketSpacing":false,"semi":false,"trailingComma":"none"},"xo":{"prettier":true},"remarkConfig":{"plugins":["preset-wooorm"]},"typeCoverage":{"atLeast":100,"detail":true,"strict":true,"ignoreCatch":true},"gitHead":"173076967676e1598e418e645302372ecefb76a1","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@5.0.1","_nodeVersion":"17.0.1","_npmVersion":"8.1.0","dist":{"shasum":"86b4e1d77589cbd25fe7016319711bbfb412b033","size":5220,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-5.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-5.0.1.tgz"},"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_5.0.1_1638466988706_0.4194268742811289"},"_hasShrinkwrap":false,"publish_time":1638466988851,"_cnpm_publish_time":1638466988851,"_cnpmcore_publish_time":"2021-12-16T18:35:20.448Z"},"5.0.0":{"name":"rehype-highlight","version":"5.0.0","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","license":"MIT","keywords":["unified","rehype","rehype-plugin","plugin","html","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"funding":{"type":"opencollective","url":"https://opencollective.com/unified"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"sideEffects":false,"type":"module","main":"index.js","types":"index.d.ts","dependencies":{"@types/hast":"^2.0.0","hast-util-to-text":"^3.0.0","lowlight":"^2.0.0","unified":"^10.0.0","unist-util-visit":"^4.0.0"},"devDependencies":{"@types/tape":"^4.0.0","c8":"^7.0.0","prettier":"^2.0.0","rehype":"12.0.0","remark-cli":"^9.0.0","remark-preset-wooorm":"^8.0.0","rimraf":"^3.0.0","tape":"^5.0.0","type-coverage":"^2.0.0","typescript":"^4.0.0","xo":"^0.42.0"},"scripts":{"build":"rimraf \"*.d.ts\" && tsc && type-coverage","format":"remark . -qfo && prettier . -w --loglevel warn && xo --fix","test-api":"node --conditions development test.js","test-coverage":"c8 --check-coverage --branches 100 --functions 100 --lines 100 --statements 100 --reporter lcov npm run test-api","test":"npm run build && npm run format && npm run test-coverage"},"prettier":{"tabWidth":2,"useTabs":false,"singleQuote":true,"bracketSpacing":false,"semi":false,"trailingComma":"none"},"xo":{"prettier":true},"remarkConfig":{"plugins":["preset-wooorm"]},"typeCoverage":{"atLeast":100,"detail":true,"strict":true,"ignoreCatch":true},"gitHead":"9a51e105887465c5ed7512d05d9111bf56dd9caf","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@5.0.0","_nodeVersion":"16.6.0","_npmVersion":"7.19.1","dist":{"shasum":"a1814e31180bcc55c37f66c289df69c3d004ece1","size":5194,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-5.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-5.0.0.tgz"},"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_5.0.0_1627896963502_0.7001905898104572"},"_hasShrinkwrap":false,"publish_time":1627896963663,"_cnpm_publish_time":1627896963663,"_cnpmcore_publish_time":"2021-12-16T18:35:20.759Z"},"4.1.0":{"name":"rehype-highlight","version":"4.1.0","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","license":"MIT","keywords":["unified","rehype","rehype-plugin","plugin","html","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"funding":{"type":"opencollective","url":"https://opencollective.com/unified"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"dependencies":{"hast-util-to-text":"^2.0.0","lowlight":"^1.10.0","unist-util-visit":"^2.0.0"},"devDependencies":{"browserify":"^17.0.0","nyc":"^15.0.0","prettier":"^2.0.0","rehype":"11.0.0","remark-cli":"^9.0.0","remark-preset-wooorm":"^8.0.0","tape":"^5.0.0","tinyify":"^3.0.0","xo":"^0.37.0"},"scripts":{"format":"remark . -qfo && prettier . -w --loglevel warn && xo --fix","build-bundle":"browserify . -s rehypeHighlight -o rehype-highlight.js","build-mangle":"browserify . -s rehypeHighlight -o rehype-highlight.min.js -p tinyify","build":"npm run build-bundle && npm run build-mangle","test-api":"node test","test-coverage":"nyc --reporter lcov tape test.js","test":"npm run format && npm run build && npm run test-coverage"},"nyc":{"check-coverage":true,"lines":100,"functions":100,"branches":100},"prettier":{"tabWidth":2,"useTabs":false,"singleQuote":true,"bracketSpacing":false,"semi":false,"trailingComma":"none"},"xo":{"prettier":true,"esnext":false,"ignores":["rehype-highlight.js"],"rules":{"unicorn/prefer-includes":"off"}},"remarkConfig":{"plugins":["preset-wooorm"]},"gitHead":"e154763c09ff0e160f0e696c7b7e0410ba20067c","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@4.1.0","_nodeVersion":"15.1.0","_npmVersion":"7.5.2","dist":{"shasum":"817da5ad61072e6c098703a177db158408625255","size":4512,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-4.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-4.1.0.tgz"},"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_4.1.0_1613742572520_0.6397480150160268"},"_hasShrinkwrap":false,"publish_time":1613742572677,"_cnpm_publish_time":1613742572677,"_cnpmcore_publish_time":"2021-12-16T18:35:21.019Z"},"4.0.1":{"name":"rehype-highlight","version":"4.0.1","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","license":"MIT","keywords":["unified","rehype","rehype-plugin","plugin","html","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"funding":{"type":"opencollective","url":"https://opencollective.com/unified"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"dependencies":{"hast-util-to-text":"^2.0.0","lowlight":"^1.10.0","unist-util-visit":"^2.0.0"},"devDependencies":{"browserify":"^17.0.0","nyc":"^15.0.0","prettier":"^2.0.0","rehype":"11.0.0","remark-cli":"^9.0.0","remark-preset-wooorm":"^8.0.0","tape":"^5.0.0","tinyify":"^3.0.0","xo":"^0.37.0"},"scripts":{"format":"remark . -qfo && prettier . -w --loglevel warn && xo --fix","build-bundle":"browserify . -s rehypeHighlight -o rehype-highlight.js","build-mangle":"browserify . -s rehypeHighlight -o rehype-highlight.min.js -p tinyify","build":"npm run build-bundle && npm run build-mangle","test-api":"node test","test-coverage":"nyc --reporter lcov tape test.js","test":"npm run format && npm run build && npm run test-coverage"},"nyc":{"check-coverage":true,"lines":100,"functions":100,"branches":100},"prettier":{"tabWidth":2,"useTabs":false,"singleQuote":true,"bracketSpacing":false,"semi":false,"trailingComma":"none"},"xo":{"prettier":true,"esnext":false,"ignores":["rehype-highlight.js"],"rules":{"unicorn/prefer-includes":"off"}},"remarkConfig":{"plugins":["preset-wooorm"]},"gitHead":"c244fde1b512ce48cadb1aed7f5703b98117d749","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@4.0.1","_nodeVersion":"15.1.0","_npmVersion":"7.5.2","dist":{"shasum":"3f5c17a823276878ebf34a34a358a17e985b0bdf","size":4153,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-4.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-4.0.1.tgz"},"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_4.0.1_1613461429465_0.6092724276705923"},"_hasShrinkwrap":false,"publish_time":1613461429592,"_cnpm_publish_time":1613461429592,"_cnpmcore_publish_time":"2021-12-16T18:35:21.224Z"},"4.0.0":{"name":"rehype-highlight","version":"4.0.0","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","license":"MIT","keywords":["unified","rehype","rehype-plugin","plugin","html","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"funding":{"type":"opencollective","url":"https://opencollective.com/unified"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"dependencies":{"hast-util-to-text":"^2.0.0","lowlight":"^1.10.0","unist-util-visit":"^2.0.0"},"devDependencies":{"browserify":"^16.0.0","nyc":"^15.0.0","prettier":"^1.0.0","rehype":"9.0.0","remark-cli":"^7.0.0","remark-preset-wooorm":"^6.0.0","tape":"^4.0.0","tinyify":"^2.0.0","xo":"^0.28.0"},"scripts":{"format":"remark . -qfo && prettier --write \"**/*.js\" && xo --fix","build-bundle":"browserify . -s rehypeHighlight > rehype-highlight.js","build-mangle":"browserify . -s rehypeHighlight -p tinyify > rehype-highlight.min.js","build":"npm run build-bundle && npm run build-mangle","test-api":"node test","test-coverage":"nyc --reporter lcov tape test.js","test":"npm run format && npm run build && npm run test-coverage"},"nyc":{"check-coverage":true,"lines":100,"functions":100,"branches":100},"prettier":{"tabWidth":2,"useTabs":false,"singleQuote":true,"bracketSpacing":false,"semi":false,"trailingComma":"none"},"xo":{"prettier":true,"esnext":false,"ignores":["rehype-highlight.js"],"rules":{"unicorn/prefer-includes":"off"}},"remarkConfig":{"plugins":["preset-wooorm"]},"gitHead":"00fe5b6d94fc21fb9068542ff2a2419bc775ff9a","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@4.0.0","_nodeVersion":"13.10.1","_npmVersion":"6.14.2","dist":{"shasum":"6b0539a4996ae09145e8da01c350b24ed66328fb","size":4208,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-4.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-4.0.0.tgz"},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_4.0.0_1584637930897_0.06482380375248642"},"_hasShrinkwrap":false,"publish_time":1584637930998,"_cnpm_publish_time":1584637930998,"_cnpmcore_publish_time":"2021-12-16T18:35:21.562Z"},"3.1.0":{"name":"rehype-highlight","version":"3.1.0","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","license":"MIT","keywords":["unified","rehype","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"funding":{"type":"opencollective","url":"https://opencollective.com/unified"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"dependencies":{"hast-util-to-text":"^1.0.0","lowlight":"^1.10.0","unist-util-visit":"^1.1.0"},"devDependencies":{"browserify":"^16.0.0","nyc":"^14.0.0","prettier":"^1.0.0","rehype":"9.0.0","remark-cli":"^7.0.0","remark-preset-wooorm":"^6.0.0","tape":"^4.0.0","tinyify":"^2.0.0","xo":"^0.25.0"},"scripts":{"format":"remark . -qfo && prettier --write \"**/*.js\" && xo --fix","build-bundle":"browserify . -s rehypeHighlight > rehype-highlight.js","build-mangle":"browserify . -s rehypeHighlight -p tinyify > rehype-highlight.min.js","build":"npm run build-bundle && npm run build-mangle","test-api":"node test","test-coverage":"nyc --reporter lcov tape test.js","test":"npm run format && npm run build && npm run test-coverage"},"nyc":{"check-coverage":true,"lines":100,"functions":100,"branches":100},"prettier":{"tabWidth":2,"useTabs":false,"singleQuote":true,"bracketSpacing":false,"semi":false,"trailingComma":"none"},"xo":{"prettier":true,"esnext":false,"ignores":["rehype-highlight.js"],"rules":{"unicorn/prefer-includes":"off"}},"remarkConfig":{"plugins":["preset-wooorm"]},"gitHead":"ebfdd122216987f2a13c38d91a471f97f6a32920","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@3.1.0","_nodeVersion":"13.0.1","_npmVersion":"6.13.0","dist":{"shasum":"99d4b8b79432ce07ed74c9c7497f7a094db77ad2","size":4204,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-3.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-3.1.0.tgz"},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_3.1.0_1573658172586_0.6786511675229878"},"_hasShrinkwrap":false,"publish_time":1573658172716,"_cnpm_publish_time":1573658172716,"_cnpmcore_publish_time":"2021-12-16T18:35:21.744Z"},"3.0.0":{"name":"rehype-highlight","version":"3.0.0","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","license":"MIT","keywords":["unified","rehype","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"dependencies":{"hast-util-to-text":"^1.0.0","lowlight":"^1.10.0","unist-util-visit":"^1.1.0"},"devDependencies":{"browserify":"^16.0.0","nyc":"^14.0.0","prettier":"^1.0.0","rehype":"7.0.0","remark-cli":"^6.0.0","remark-preset-wooorm":"^5.0.0","tape":"^4.0.0","tinyify":"^2.0.0","xo":"^0.24.0"},"scripts":{"format":"remark . -qfo && prettier --write \"**/*.js\" && xo --fix","build-bundle":"browserify . -s rehypeHighlight > rehype-highlight.js","build-mangle":"browserify . -s rehypeHighlight -p tinyify > rehype-highlight.min.js","build":"npm run build-bundle && npm run build-mangle","test-api":"node test","test-coverage":"nyc --reporter lcov tape test.js","test":"npm run format && npm run build && npm run test-coverage"},"nyc":{"check-coverage":true,"lines":100,"functions":100,"branches":100},"prettier":{"tabWidth":2,"useTabs":false,"singleQuote":true,"bracketSpacing":false,"semi":false,"trailingComma":"none"},"xo":{"prettier":true,"esnext":false,"ignores":["rehype-highlight.js"]},"remarkConfig":{"plugins":["preset-wooorm"]},"gitHead":"ecff7526ccd76bab492447953b40655087b7299c","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@3.0.0","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"shasum":"833929d4bbbb176366dc3731dfb3ab343c1bbfcd","size":3935,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-3.0.0.tgz"},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_3.0.0_1559581354885_0.14333486605058243"},"_hasShrinkwrap":false,"publish_time":1559581354976,"_cnpm_publish_time":1559581354976,"_cnpmcore_publish_time":"2021-12-16T18:35:21.979Z"},"2.2.2":{"name":"rehype-highlight","version":"2.2.2","description":"rehype plugin to highlight code blocks with lowlight (highlight.js)","license":"MIT","keywords":["unified","rehype","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"dependencies":{"hast-util-to-string":"^1.0.0","lowlight":"^1.10.0","unist-util-visit":"^1.1.0"},"devDependencies":{"browserify":"^16.0.0","nyc":"^14.0.0","prettier":"^1.0.0","rehype":"7.0.0","remark-cli":"^6.0.0","remark-preset-wooorm":"^5.0.0","tape":"^4.0.0","tinyify":"^2.0.0","xo":"^0.24.0"},"scripts":{"format":"remark . -qfo && prettier --write \"**/*.js\" && xo --fix","build-bundle":"browserify . -s rehypeHighlight > rehype-highlight.js","build-mangle":"browserify . -s rehypeHighlight -p tinyify > rehype-highlight.min.js","build":"npm run build-bundle && npm run build-mangle","test-api":"node test","test-coverage":"nyc --reporter lcov tape test.js","test":"npm run format && npm run build && npm run test-coverage"},"nyc":{"check-coverage":true,"lines":100,"functions":100,"branches":100},"prettier":{"tabWidth":2,"useTabs":false,"singleQuote":true,"bracketSpacing":false,"semi":false,"trailingComma":"none"},"xo":{"prettier":true,"esnext":false,"ignores":["rehype-highlight.js"]},"remarkConfig":{"plugins":["preset-wooorm"]},"gitHead":"1cb5091ae7c674c339e0e985e55658f5f9e9d6e5","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@2.2.2","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"shasum":"be5423081e961718b7ae3f82aefbc7829798dd02","size":3937,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-2.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-2.2.2.tgz"},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_2.2.2_1559379301635_0.5975730033729385"},"_hasShrinkwrap":false,"publish_time":1559379301765,"_cnpm_publish_time":1559379301765,"_cnpmcore_publish_time":"2021-12-16T18:35:22.175Z"},"2.2.1":{"name":"rehype-highlight","version":"2.2.1","description":"Highlight code blocks","license":"MIT","keywords":["rehype","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"https://wooorm.com"}],"dependencies":{"hast-util-to-string":"^1.0.0","lowlight":"^1.10.0","unist-util-visit":"^1.1.0"},"devDependencies":{"browserify":"^16.0.0","nyc":"^13.0.0","prettier":"^1.13.7","rehype":"6.0.0","remark-cli":"^6.0.0","remark-preset-wooorm":"^4.0.0","tape":"^4.0.0","tinyify":"^2.4.3","xo":"^0.23.0"},"scripts":{"format":"remark . -qfo && prettier --write '**/*.js' && xo --fix","build-bundle":"browserify . -s rehypeHighlight > rehype-highlight.js","build-mangle":"browserify . -s rehypeHighlight -p tinyify > rehype-highlight.min.js","build":"npm run build-bundle && npm run build-mangle","test-api":"node test","test-coverage":"nyc --reporter lcov tape test.js","test":"npm run format && npm run build && npm run test-coverage"},"nyc":{"check-coverage":true,"lines":100,"functions":100,"branches":100},"prettier":{"tabWidth":2,"useTabs":false,"singleQuote":true,"bracketSpacing":false,"semi":false,"trailingComma":"none"},"xo":{"prettier":true,"esnext":false,"ignores":["rehype-highlight.js"]},"remarkConfig":{"plugins":["preset-wooorm"]},"gitHead":"684774b1b4060f050ff2ea59ca2871481dd33723","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@2.2.1","_npmVersion":"6.4.1","_nodeVersion":"11.0.0","_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"dist":{"shasum":"570a7d4a33bd1275e20f5252913c3361b1ad8453","size":3724,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-2.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-2.2.1.tgz"},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_2.2.1_1542460960916_0.5497466593586222"},"_hasShrinkwrap":false,"publish_time":1542460961051,"_cnpm_publish_time":1542460961051,"_cnpmcore_publish_time":"2021-12-16T18:35:22.354Z"},"2.2.0":{"name":"rehype-highlight","version":"2.2.0","description":"Highlight code blocks","license":"MIT","keywords":["rehype","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"http://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"http://wooorm.com"}],"files":["index.js"],"dependencies":{"hast-util-to-string":"^1.0.0","lowlight":"^1.10.0","unist-util-visit":"^1.1.0"},"devDependencies":{"browserify":"^16.0.0","nyc":"^12.0.0","prettier":"^1.13.7","rehype":"6.0.0","remark-cli":"^5.0.0","remark-preset-wooorm":"^4.0.0","tape":"^4.0.0","tinyify":"^2.4.3","xo":"^0.21.0"},"scripts":{"format":"remark . -qfo && prettier --write '**/*.js' && xo --fix","build-bundle":"browserify index.js -s rehypeHighlight > rehype-highlight.js","build-mangle":"browserify index.js -s rehypeHighlight -p tinyify > rehype-highlight.min.js","build":"npm run build-bundle && npm run build-mangle","test-api":"node test","test-coverage":"nyc --reporter lcov tape test.js","test":"npm run format && npm run build && npm run test-coverage"},"nyc":{"check-coverage":true,"lines":100,"functions":100,"branches":100},"prettier":{"tabWidth":2,"useTabs":false,"singleQuote":true,"bracketSpacing":false,"semi":false,"trailingComma":"none"},"xo":{"prettier":true,"esnext":false,"ignores":["rehype-highlight.js"]},"remarkConfig":{"plugins":["preset-wooorm"]},"gitHead":"99fa978665669a5ba93c1a605f8c8703ce502558","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@2.2.0","_npmVersion":"6.3.0","_nodeVersion":"10.0.0","_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"dist":{"shasum":"76f3ded1003b93c00b2da7aa828cf17f169403ec","size":3627,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-2.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-2.2.0.tgz"},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight_2.2.0_1533772426436_0.29027048769504327"},"_hasShrinkwrap":false,"publish_time":1533772426498,"_cnpm_publish_time":1533772426498,"_cnpmcore_publish_time":"2021-12-16T18:35:22.558Z"},"2.1.0":{"name":"rehype-highlight","version":"2.1.0","description":"Highlight code blocks","license":"MIT","keywords":["rehype","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/rehypejs/rehype-highlight.git"},"bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"http://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"http://wooorm.com"}],"files":["index.js"],"dependencies":{"hast-util-to-string":"^1.0.0","lowlight":"^1.2.0","unist-util-visit":"^1.1.0"},"devDependencies":{"browserify":"^15.0.0","esmangle":"^1.0.1","nyc":"^11.0.0","rehype":"^5.0.0","remark-cli":"^5.0.0","remark-preset-wooorm":"^4.0.0","tape":"^4.0.0","xo":"^0.18.0"},"scripts":{"build-md":"remark . -qfo","build-bundle":"browserify index.js --bare -s rehypeHighlight > rehype-highlight.js","build-mangle":"esmangle rehype-highlight.js > rehype-highlight.min.js","build":"npm run build-md && npm run build-bundle && npm run build-mangle","lint":"xo","test-api":"node test","test-coverage":"nyc --reporter lcov tape test.js","test":"npm run build && npm run lint && npm run test-coverage"},"nyc":{"check-coverage":true,"lines":100,"functions":100,"branches":100},"xo":{"space":true,"esnext":false,"ignores":["rehype-highlight.js"]},"remarkConfig":{"plugins":["preset-wooorm"]},"gitHead":"a2c100a5590f71db6c546a48ea5099ba0d68c4e4","homepage":"https://github.com/rehypejs/rehype-highlight#readme","_id":"rehype-highlight@2.1.0","_npmVersion":"5.5.1","_nodeVersion":"9.0.0","_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"dist":{"shasum":"a5563a8f5ba6b820e88e05e77e558a45cce2c58a","size":3463,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-2.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-2.1.0.tgz"},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight-2.1.0.tgz_1516474161489_0.0707495454698801"},"directories":{},"publish_time":1516474161690,"_hasShrinkwrap":false,"_cnpm_publish_time":1516474161690,"_cnpmcore_publish_time":"2021-12-16T18:35:22.915Z"},"2.0.1":{"name":"rehype-highlight","version":"2.0.1","description":"Highlight code blocks","license":"MIT","keywords":["rehype","hast","syntax","highlight","highlighting"],"repository":{"type":"git","url":"git+https://github.com/wooorm/rehype-highlight.git"},"bugs":{"url":"https://github.com/wooorm/rehype-highlight/issues"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"http://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"http://wooorm.com"}],"files":["index.js"],"dependencies":{"hast-util-to-string":"^1.0.0","lowlight":"^1.2.0","unist-util-visit":"^1.1.0"},"devDependencies":{"browserify":"^14.1.0","esmangle":"^1.0.1","nyc":"^11.0.0","rehype":"^5.0.0","remark-cli":"^3.0.0","remark-preset-wooorm":"^3.0.0","tape":"^4.0.0","xo":"^0.18.0"},"scripts":{"build-md":"remark . -qfo","build-bundle":"browserify index.js --bare -s rehypeHighlight > rehype-highlight.js","build-mangle":"esmangle rehype-highlight.js > rehype-highlight.min.js","build":"npm run build-md && npm run build-bundle && npm run build-mangle","lint":"xo","test-api":"node test","test-coverage":"nyc --reporter lcov tape test.js","test":"npm run build && npm run lint && npm run test-coverage"},"nyc":{"check-coverage":true,"lines":100,"functions":100,"branches":100},"xo":{"space":true,"esnext":false,"ignores":["rehype-highlight.js"]},"remarkConfig":{"plugins":["preset-wooorm"]},"gitHead":"28016486bf42b906ef4602397352128c21065dd2","homepage":"https://github.com/wooorm/rehype-highlight#readme","_id":"rehype-highlight@2.0.1","_shasum":"a50dcf922adcc18d9ff47de42845db4374c9793d","_from":".","_npmVersion":"2.14.2","_nodeVersion":"4.0.0","_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"dist":{"shasum":"a50dcf922adcc18d9ff47de42845db4374c9793d","size":3073,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-2.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-2.0.1.tgz"},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rehype-highlight-2.0.1.tgz_1497960105704_0.03171636746264994"},"directories":{},"publish_time":1497960106722,"_hasShrinkwrap":false,"_cnpm_publish_time":1497960106722,"_cnpmcore_publish_time":"2021-12-16T18:35:23.148Z"},"2.0.0":{"name":"rehype-highlight","version":"2.0.0","description":"Highlight code blocks","license":"MIT","keywords":["rehype","hast","syntax","highligh","highlighting"],"repository":{"type":"git","url":"git+https://github.com/wooorm/rehype-highlight.git"},"bugs":{"url":"https://github.com/wooorm/rehype-highlight/issues"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"http://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"http://wooorm.com"}],"files":["index.js"],"dependencies":{"hast-util-to-string":"^1.0.0","lowlight":"^1.2.0","unist-util-visit":"^1.1.0"},"devDependencies":{"browserify":"^14.1.0","esmangle":"^1.0.1","nyc":"^10.0.0","rehype":"^4.0.0","remark-cli":"^3.0.0","remark-preset-wooorm":"^2.0.0","tape":"^4.0.0","unist-util-inspect":"^4.0.0","xo":"^0.17.1"},"scripts":{"build-md":"remark . -qfo","build-bundle":"browserify index.js --bare -s rehypeHighlight > rehype-highlight.js","build-mangle":"esmangle rehype-highlight.js > rehype-highlight.min.js","build":"npm run build-md && npm run build-bundle && npm run build-mangle","lint":"xo","test-api":"node test","test-coverage":"nyc --reporter lcov tape test.js","test":"npm run build && npm run lint && npm run test-coverage"},"nyc":{"check-coverage":true,"lines":100,"functions":100,"branches":100},"xo":{"space":true,"ignores":["rehype-highlight.js"]},"remarkConfig":{"plugins":["preset-wooorm"]},"gitHead":"631e44d26849eea2ed8c667908c9314f4d96b11d","homepage":"https://github.com/wooorm/rehype-highlight#readme","_id":"rehype-highlight@2.0.0","_shasum":"5e02b8d435cd90c95ed09907ac65ef9b34cf9e2a","_from":".","_npmVersion":"4.0.3","_nodeVersion":"7.0.0","_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"dist":{"shasum":"5e02b8d435cd90c95ed09907ac65ef9b34cf9e2a","size":3010,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-2.0.0.tgz"},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/rehype-highlight-2.0.0.tgz_1487886817186_0.4457077372353524"},"directories":{},"publish_time":1487886819147,"_hasShrinkwrap":false,"_cnpm_publish_time":1487886819147,"_cnpmcore_publish_time":"2021-12-16T18:35:23.393Z"},"1.1.0":{"name":"rehype-highlight","version":"1.1.0","description":"Highlight code blocks","license":"MIT","keywords":["rehype","hast","syntax","highligh","highlighting"],"repository":{"type":"git","url":"git+https://github.com/wooorm/rehype-highlight.git"},"bugs":{"url":"https://github.com/wooorm/rehype-highlight/issues"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"http://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"http://wooorm.com"}],"files":["index.js"],"dependencies":{"hast-util-to-string":"^1.0.0","lowlight":"^1.2.0","unist-util-visit":"^1.1.0"},"devDependencies":{"browserify":"^13.0.1","esmangle":"^1.0.1","nyc":"^10.0.0","rehype":"^3.0.0","remark-cli":"^2.1.0","remark-preset-wooorm":"^1.0.0","tape":"^4.0.0","unist-util-inspect":"^4.0.0","xo":"^0.17.1"},"scripts":{"build-md":"remark . -qfo","build-bundle":"browserify index.js --bare -s rehypeHighlight > rehype-highlight.js","build-mangle":"esmangle rehype-highlight.js > rehype-highlight.min.js","build":"npm run build-md && npm run build-bundle && npm run build-mangle","lint":"xo","test-api":"node test","test-coverage":"nyc --reporter lcov tape test.js","test":"npm run build && npm run lint && npm run test-coverage"},"nyc":{"check-coverage":true,"lines":100,"functions":100,"branches":100},"xo":{"space":true,"ignores":["rehype-highlight.js"]},"remarkConfig":{"presets":"wooorm"},"gitHead":"539e420f0ae8777e35e7d4391b2346e01976def2","homepage":"https://github.com/wooorm/rehype-highlight#readme","_id":"rehype-highlight@1.1.0","_shasum":"3b9ab02ad103d7dde476a83fe9cc400085e0af41","_from":".","_npmVersion":"2.14.2","_nodeVersion":"4.0.0","_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"dist":{"shasum":"3b9ab02ad103d7dde476a83fe9cc400085e0af41","size":2982,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-1.1.0.tgz"},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rehype-highlight-1.1.0.tgz_1480071101839_0.5077827656641603"},"directories":{},"publish_time":1480071102631,"_hasShrinkwrap":false,"_cnpm_publish_time":1480071102631,"_cnpmcore_publish_time":"2021-12-16T18:35:23.584Z"},"1.0.0":{"name":"rehype-highlight","version":"1.0.0","description":"Highlight code blocks","license":"MIT","keywords":["rehype","hast","syntax","highligh","highlighting"],"files":["index.js"],"repository":{"type":"git","url":"git+https://github.com/wooorm/rehype-highlight.git"},"bugs":{"url":"https://github.com/wooorm/rehype-highlight/issues"},"author":{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"http://wooorm.com"},"contributors":[{"name":"Titus Wormer","email":"tituswormer@gmail.com","url":"http://wooorm.com"}],"dependencies":{"lowlight":"^1.2.0","unist-util-visit":"^1.1.0"},"devDependencies":{"browserify":"^13.0.1","eslint":"^2.0.0","esmangle":"^1.0.1","istanbul":"^0.4.0","jscs":"^3.0.0","jscs-jsdoc":"^2.0.0","rehype":"^1.0.0","remark-cli":"^1.0.0","remark-comment-config":"^4.0.0","remark-github":"^5.0.0","remark-lint":"^4.0.0","remark-usage":"^4.0.0","remark-validate-links":"^4.0.0","tape":"^4.0.0","unist-util-inspect":"^4.0.0"},"scripts":{"build-md":"remark . --quiet --frail","build-bundle":"browserify index.js --bare -s rehypeHighlight > rehype-highlight.js","build-mangle":"esmangle rehype-highlight.js > rehype-highlight.min.js","build":"npm run build-md && npm run build-bundle && npm run build-mangle","lint-api":"eslint .","lint-style":"jscs --reporter inline .","lint":"npm run lint-api && npm run lint-style","test-api":"node test.js","test-coverage":"istanbul cover test.js","test":"npm run build && npm run lint && npm run test-coverage"},"gitHead":"08c6cf566681460ecad3b34160cba3642f469bd1","homepage":"https://github.com/wooorm/rehype-highlight#readme","_id":"rehype-highlight@1.0.0","_shasum":"5c9f0a64be6c6263c98f765238e3079a1dea076d","_from":".","_npmVersion":"3.3.6","_nodeVersion":"5.0.0","_npmUser":{"name":"wooorm","email":"tituswormer@gmail.com"},"dist":{"shasum":"5c9f0a64be6c6263c98f765238e3079a1dea076d","size":3450,"noattachment":false,"key":"/rehype-highlight/-/rehype-highlight-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/rehype-highlight/download/rehype-highlight-1.0.0.tgz"},"maintainers":[{"name":"kmck","email":"keith@mcknig.ht"},{"name":"remcohaszing","email":""},{"name":"wooorm","email":"tituswormer@gmail.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/rehype-highlight-1.0.0.tgz_1466347506623_0.8135106868576258"},"directories":{},"publish_time":1466347507837,"_hasShrinkwrap":false,"_cnpm_publish_time":1466347507837,"_cnpmcore_publish_time":"2021-12-16T18:35:23.784Z"}},"readme":"# rehype-highlight\n\n[![Build][build-badge]][build]\n[![Coverage][coverage-badge]][coverage]\n[![Downloads][downloads-badge]][downloads]\n[![Size][size-badge]][size]\n[![Sponsors][sponsors-badge]][collective]\n[![Backers][backers-badge]][collective]\n[![Chat][chat-badge]][chat]\n\n**[rehype][]** plugin to apply syntax highlighting to code with\n[`lowlight`][lowlight].\n\n## Contents\n\n* [What is this?](#what-is-this)\n* [When should I use this?](#when-should-i-use-this)\n* [Install](#install)\n* [Use](#use)\n* [API](#api)\n  * [`unified().use(rehypeHighlight[, options])`](#unifieduserehypehighlight-options)\n  * [`Options`](#options)\n* [Example](#example)\n  * [Example: ignoring](#example-ignoring)\n  * [Example: registering](#example-registering)\n  * [Example: aliases](#example-aliases)\n  * [Example: sanitation](#example-sanitation)\n  * [Example: line numbering and highlighting](#example-line-numbering-and-highlighting)\n* [Types](#types)\n* [HTML](#html)\n* [CSS](#css)\n* [Compatibility](#compatibility)\n* [Security](#security)\n* [Related](#related)\n* [Contribute](#contribute)\n* [License](#license)\n\n## What is this?\n\nThis package is a [unified][] ([rehype][]) plugin to perform syntax\nhighlighting.\nIt uses `highlight.js` through `lowlight`, which is pretty fast, relatively\nsmall, and quite good.\nThis package bundles 37 [common languages][lowlight-common] by default and you\ncan register more (190 with [`all`][lowlight-all]).\n\nIt looks for `<code>` elements (when directly in `<pre>` elements) and changes\nthem.\nYou can specify the code language (such as Python) with a `language-*` or\n`lang-*` class, where the `*` can be for example `js` (so `language-js`), `md`,\n`css`, etc.\nBy default, code without such a language class is not highlighted.\nPass `detect: true` to detect their programming language and highlight the code\nanyway.\nYou can prevent specific blocks from being highlighted with a `no-highlight` or\n`nohighlight` class on the `<code>`.\n\n**unified** is a project that transforms content with abstract syntax trees\n(ASTs).\n**rehype** adds support for HTML to unified.\n**hast** is the HTML AST that rehype uses.\nThis is a rehype plugin that applies syntax highlighting to the AST.\n\n## When should I use this?\n\nThis project is useful when you want to perform syntax highlighting in rehype.\nOne reason to do that is that it typically means the highlighting happens once\nat build time instead of every time at run time.\n\nWhen you want a high quality highlighter that can support tons of grammars and\napproaches how GitHub renders code,\nyou can use [`rehype-starry-night`][rehype-starry-night].\n\nThis plugin is built on [`lowlight`][lowlight], which is a virtual version of\nhighlight.js.\nYou can make a plugin based on this one with lowlight when you want to do things\ndifferently.\n\n## Install\n\nThis package is [ESM only][esm].\nIn Node.js (version 16+), install with [npm][]:\n\n```sh\nnpm install rehype-highlight\n```\n\nIn Deno with [`esm.sh`][esmsh]:\n\n```js\nimport rehypeHighlight from 'https://esm.sh/rehype-highlight@6'\n```\n\nIn browsers with [`esm.sh`][esmsh]:\n\n```html\n<script type=\"module\">\n  import rehypeHighlight from 'https://esm.sh/rehype-highlight@6?bundle'\n</script>\n```\n\n## Use\n\nSay we have the following file `example.html`:\n\n```html\n<h1>Hello World!</h1>\n\n<pre><code class=\"language-js\">var name = \"World\";\nconsole.warn(\"Hello, \" + name + \"!\")</code></pre>\n```\n\n…and our module `example.js` contains:\n\n```js\nimport rehypeHighlight from 'rehype-highlight'\nimport rehypeParse from 'rehype-parse'\nimport rehypeStringify from 'rehype-stringify'\nimport {read} from 'to-vfile'\nimport {unified} from 'unified'\n\nconst file = await read('example.html')\n\nawait unified()\n  .use(rehypeParse, {fragment: true})\n  .use(rehypeHighlight)\n  .use(rehypeStringify)\n  .process(file)\n\nconsole.log(String(file))\n```\n\n…then running `node example.js` yields:\n\n```html\n<h1>Hello World!</h1>\n\n<pre><code class=\"hljs language-js\"><span class=\"hljs-keyword\">var</span> name = <span class=\"hljs-string\">\"World\"</span>;\n<span class=\"hljs-variable language_\">console</span>.<span class=\"hljs-title function_\">warn</span>(<span class=\"hljs-string\">\"Hello, \"</span> + name + <span class=\"hljs-string\">\"!\"</span>)</code></pre>\n```\n\n## API\n\nThis package exports no identifiers.\nThe default export is [`rehypeHighlight`][api-rehype-highlight].\n\n### `unified().use(rehypeHighlight[, options])`\n\nApply syntax highlighting.\n\n###### Parameters\n\n* `options` ([`Options`][api-options], optional)\n  — configuration\n\n###### Returns\n\nTransform ([`Transformer`][unified-transformer]).\n\n### `Options`\n\nConfiguration (TypeScript type).\n\n###### Fields\n\n* `aliases` (`Record<string, Array<string> | string>`, optional)\n  — register more aliases;\n  passed to [`lowlight.registerAlias`][lowlight-register-alias]\n* `detect` (`boolean`, default: `false`)\n  — highlight code without language classes by guessing its programming\n  language\n* `languages` (`Record<string, LanguageFn>`, default:\n  [`common`][lowlight-common])\n  — register languages; passed to [`lowlight.register`][lowlight-register]\n* `plainText` (`Array<string>`, optional)\n  — list of language names to not highlight;\n  note you can also add `no-highlight` classes\n* `prefix` (`string`, default: `'hljs-'`)\n  — class prefix\n* `subset` (`Array<string>`, default: default: [all][lowlight-all] registered\n  languages)\n  — names of languages to check when detecting\n\n## Example\n\n### Example: ignoring\n\nThere are three ways to not apply syntax highlighting to code blocks.\nThey can be ignored with an explicit class of `no-highlight` (or `nohighlight`),\nan explicit language name that’s listed in `options.plainText`, or by setting\n`options.detect` to `false` (default), which prevents `<code>` without a class\nfrom being automatically detected.\n\nFor example, with `example.html`:\n\n```html\n<pre><code>this won’t be highlighted due to `detect: false` (default)</code></pre>\n\n<pre><code class=\"no-highlight\">this won’t be highlighted due to its class</code></pre>\n\n<pre><code class=\"language-txt\">this won’t be highlighted due to `plainText: ['txt']`</code></pre>\n```\n\n…and `example.js`:\n\n```js\nimport {rehype} from 'rehype'\nimport rehypeHighlight from 'rehype-highlight'\nimport {read} from 'to-vfile'\n\nconst file = await rehype()\n  .data('settings', {fragment: true})\n  .use(rehypeHighlight, {plainText: ['txt', 'text']})\n  .process(await read('example.html'))\n\nconsole.log(String(file))\n```\n\n…then running that yields the same as `example.html`: none of them are\nhighlighted.\n\n### Example: registering\n\n`rehype-highlight` supports 37 commonly used languages by default.\nThis makes it small to load in browsers and Node.js, while supporting enough\ndefault cases.\nYou can add more languages.\n\nFor example, with `example.html`:\n\n```html\n<pre><code class=\"language-bnf\">a ::= 'a' | 'A'</code></pre>\n```\n\n…and `example.js`:\n\n```js\nimport bnf from 'highlight.js/lib/languages/bnf'\nimport {common} from 'lowlight'\nimport {rehype} from 'rehype'\nimport rehypeHighlight from 'rehype-highlight'\nimport {read} from 'to-vfile'\n\nconst file = await rehype()\n  .data('settings', {fragment: true})\n  .use(rehypeHighlight, {languages: {...common, bnf}})\n  .process(await read('example.html'))\n\nconsole.log(String(file))\n```\n\n…then running that yields:\n\n```html\n<pre><code class=\"hljs language-bnf\">a ::= <span class=\"hljs-string\">'a'</span> | <span class=\"hljs-string\">'A'</span></code></pre>\n```\n\n### Example: aliases\n\nYou can map your own language flags to `highlight.js` languages.\n\nFor example, with `example.html`:\n\n```html\n<pre><code class=\"language-custom-script\">console.log(1)</code></pre>\n```\n\n…and `example.js`:\n\n```js\nimport {rehype} from 'rehype'\nimport rehypeHighlight from 'rehype-highlight'\nimport {read} from 'to-vfile'\n\nconst file = await rehype()\n  .data('settings', {fragment: true})\n  // ???? **Note**: the keys are language names, values are the aliases that you\n  // want to also allow as `x` in `language-x` classes.\n  .use(rehypeHighlight, {aliases: {'javascript': 'custom-script'}})\n  .process(await read('example.html'))\n\nconsole.log(String(file))\n```\n\n…then running that yields:\n\n```html\n<pre><code class=\"hljs language-custom-script\"><span class=\"hljs-variable language_\">console</span>.<span class=\"hljs-title function_\">log</span>(<span class=\"hljs-number\">1</span>)</code></pre>\n```\n\n### Example: sanitation\n\nApplying syntax highlighting in rehype operates on `<code>` elements with\ncertain classes and it injects many `<span>` elements with classes.\nAllowing arbitrary classes is an opening for security vulnerabilities.\n\nTo make HTML safe in rehype, use [`rehype-sanitize`][rehype-sanitize].\nIt specifically allows `/^language-./` class names on `<code>` elements.\nWhich we also use.\nSo you can use `rehype-highlight` after `rehype-sanitize`:\n\n```js\nimport {unified} from 'unified'\nimport rehypeHighlight from './index.js'\nimport rehypeParse from 'rehype-parse'\nimport rehypeSanitize, {defaultSchema} from 'rehype-sanitize'\nimport rehypeStringify from 'rehype-stringify'\n\nconst file = await unified()\n  .use(rehypeParse, {fragment: true})\n  .use(rehypeSanitize)\n  .use(rehypeHighlight)\n  .use(rehypeStringify)\n  .process('<pre><code className=\"language-js\">console.log(1)</code></pre>')\n\nconsole.log(String(file))\n```\n\n…yields:\n\n```html\n<pre><code class=\"hljs language-js\"><span class=\"hljs-variable language_\">console</span>.<span class=\"hljs-title function_\">log</span>(<span class=\"hljs-number\">1</span>)</code></pre>\n```\n\nUsing plugins *after* `rehype-sanitize`, like we just did, is *safe* assuming\nyou trust those plugins.\nIf you do not trust `rehype-highlight`, you can use it before.\nBut then you need to configure `rehype-sanitize` to keep the classes you allow:\n\n```js\nimport {unified} from 'unified'\nimport rehypeHighlight from './index.js'\nimport rehypeParse from 'rehype-parse'\nimport rehypeSanitize, {defaultSchema} from 'rehype-sanitize'\nimport rehypeStringify from 'rehype-stringify'\n\nconst file = await unified()\n  .use(rehypeParse, {fragment: true})\n  .use(rehypeHighlight)\n  .use(rehypeSanitize, {\n    ...defaultSchema,\n    attributes: {\n      ...defaultSchema.attributes,\n      span: [\n        ...(defaultSchema.attributes?.span || []),\n        // Allow all class names starting with `hljs-`.\n        ['className', /^hljs-./]\n        // Alternatively, to allow only certain class names:\n        // ['className', 'hljs-number', 'hljs-title', 'hljs-variable']\n      ]\n    },\n    tagNames: [...(defaultSchema.tagNames || []), 'span']\n  })\n  .use(rehypeStringify)\n  .process('<pre><code className=\"language-js\">console.log(1)</code></pre>')\n\nconsole.log(String(file))\n```\n\n### Example: line numbering and highlighting\n\nYou can add support for line numbers and line highlighting with a separate\nplugin, [`rehype-highlight-code-lines`][rehype-highlight-code-lines].\n\nFor example, with `example.html`:\n\n```html\n<pre><code class=\"language-js\">console.log(\"Hi!\")</code></pre>\n```\n\n…and `example.js`:\n\n```js\nimport {rehype} from 'rehype'\nimport rehypeHighlight from 'rehype-highlight'\nimport rehypeHighlightCodeLines from 'rehype-highlight-code-lines'\nimport {read} from 'to-vfile'\n\nconst file = await rehype()\n  .data('settings', {fragment: true})\n  .use(rehypeHighlight)\n  .use(rehypeHighlightCodeLines, {\n    showLineNumbers: true,\n    lineContainerTagName: 'div'\n  })\n  .process(await read('example.html'))\n\nconsole.log(String(file))\n```\n\n…then running that yields:\n\n```html\n<pre><code class=\"hljs language-js\"><div class=\"code-line numbered-code-line\" data-line-number=\"1\"><span class=\"hljs-variable language_\">console</span>.<span class=\"hljs-title function_\">log</span>(<span class=\"hljs-string\">\"Hi!\"</span>)</div></code></pre>\n```\n\n## Types\n\nThis package is fully typed with [TypeScript][].\nIt exports the additional type [`Options`][api-options].\n\n## HTML\n\nOn the input side,\nthis plugin looks for code blocks with a `language-*` class.\n\nOn the output side,\nthis plugin generates `span` elements with classes that can be enhanced with\nCSS.\n\n## CSS\n\nSee [“CSS” in `lowlight`][github-lowlight-css] for more info.\n\n## Compatibility\n\nProjects maintained by the unified collective are compatible with maintained\nversions of Node.js.\n\nWhen we cut a new major release, we drop support for unmaintained versions of\nNode.\nThis means we try to keep the current release line, `rehype-highlight@^7`,\ncompatible with Node.js 16.\n\nThis plugin works with `rehype-parse` version 1+, `rehype-stringify` version 1+,\n`rehype` version 1+, and `unified` version 4+.\n\n## Security\n\nUse of `rehype-highlight` *should* be safe to use as `highlight.js` and\n`lowlight` *should* be safe to use.\nWhen in doubt, use [`rehype-sanitize`][rehype-sanitize].\n\n## Related\n\n* [`rehype-starry-night`][rehype-starry-night]\n  — apply syntax highlighting with `starry-night`\n* [`rehype-meta`](https://github.com/rehypejs/rehype-meta)\n  — add metadata to the head of a document\n* [`rehype-document`](https://github.com/rehypejs/rehype-document)\n  — wrap a fragment in a document\n* [`rehype-highlight-code-lines`][rehype-highlight-code-lines]\n  — add line numbers and highlight lines\n\n## Contribute\n\nSee [`contributing.md`][contributing] in [`rehypejs/.github`][health] for ways\nto get started.\nSee [`support.md`][support] for ways to get help.\n\nThis project has a [code of conduct][coc].\nBy interacting with this repository, organization, or community you agree to\nabide by its terms.\n\n## License\n\n[MIT][license] © [Titus Wormer][author]\n\n<!-- Definitions -->\n\n[api-options]: #options\n\n[api-rehype-highlight]: #unifieduserehypehighlight-options\n\n[author]: https://wooorm.com\n\n[backers-badge]: https://opencollective.com/unified/backers/badge.svg\n\n[build]: https://github.com/rehypejs/rehype-highlight/actions\n\n[build-badge]: https://github.com/rehypejs/rehype-highlight/workflows/main/badge.svg\n\n[chat]: https://github.com/rehypejs/rehype/discussions\n\n[chat-badge]: https://img.shields.io/badge/chat-discussions-success.svg\n\n[coc]: https://github.com/rehypejs/.github/blob/HEAD/code-of-conduct.md\n\n[collective]: https://opencollective.com/unified\n\n[contributing]: https://github.com/rehypejs/.github/blob/HEAD/contributing.md\n\n[coverage]: https://codecov.io/github/rehypejs/rehype-highlight\n\n[coverage-badge]: https://img.shields.io/codecov/c/github/rehypejs/rehype-highlight.svg\n\n[downloads]: https://www.npmjs.com/package/rehype-highlight\n\n[downloads-badge]: https://img.shields.io/npm/dm/rehype-highlight.svg\n\n[esm]: https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c\n\n[esmsh]: https://esm.sh\n\n[github-lowlight-css]: https://github.com/wooorm/lowlight#css\n\n[health]: https://github.com/rehypejs/.github\n\n[license]: license\n\n[lowlight]: https://github.com/wooorm/lowlight\n\n[lowlight-all]: https://github.com/wooorm/lowlight#all\n\n[lowlight-common]: https://github.com/wooorm/lowlight#common\n\n[lowlight-register]: https://github.com/wooorm/lowlight#lowlightregistergrammars\n\n[lowlight-register-alias]: https://github.com/wooorm/lowlight#lowlightregisteraliasaliases\n\n[npm]: https://docs.npmjs.com/cli/install\n\n[rehype]: https://github.com/rehypejs/rehype\n\n[rehype-highlight-code-lines]: https://github.com/ipikuka/rehype-highlight-code-lines\n\n[rehype-sanitize]: https://github.com/rehypejs/rehype-sanitize\n\n[rehype-starry-night]: https://github.com/rehypejs/rehype-starry-night\n\n[size]: https://bundlejs.com/?q=rehype-highlight\n\n[size-badge]: https://img.shields.io/bundlejs/size/rehype-highlight\n\n[sponsors-badge]: https://opencollective.com/unified/sponsors/badge.svg\n\n[support]: https://github.com/rehypejs/.github/blob/HEAD/support.md\n\n[typescript]: https://www.typescriptlang.org\n\n[unified]: https://github.com/unifiedjs/unified\n\n[unified-transformer]: https://github.com/unifiedjs/unified#transformer\n","_attachments":{},"homepage":"https://github.com/rehypejs/rehype-highlight#readme","bugs":{"url":"https://github.com/rehypejs/rehype-highlight/issues"},"license":"MIT"}