Registry / devops / esbuild-plugin-prismjs

esbuild-plugin-prismjs

JSON →
library1.0.8jsnpmunverified

An esbuild plugin for PrismJS that bundles specified languages, plugins, and themes at build time. Current stable version is 1.0.8, updated infrequently. It mirrors the options of babel-plugin-prismjs, allowing developers familiar with that plugin to switch seamlessly. Offers an inline option to embed CSS directly. Designed for projects using esbuild and needing syntax highlighting via PrismJS without runtime loading of languages.

npm install esbuild-plugin-prismjs
INSTALL
IMPORT
SIG · ESBUILD-PLUGIN-PRI
E
esbuild-plugin-prismjs
devopsjavascriptv1.0.8
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

prismjsPlugin
import { prismjsPlugin } from 'esbuild-plugin-prismjs'
const prismjsPlugin = require('esbuild-plugin-prismjs')
ESM-only; does not support CommonJS require.
PrismjsPluginOptions
import type { PrismjsPluginOptions } from 'esbuild-plugin-prismjs'
import { PrismjsPluginOptions } from 'esbuild-plugin-prismjs'
This is a TypeScript type, not a runtime value.
default
import prismjsPlugin from 'esbuild-plugin-prismjs'
Default export is also available (same as named export).

Configures esbuild with prismjsPlugin to bundle JavaScript and CSS highlighting, with line-numbers plugin and okaidia theme.

import { prismjsPlugin } from 'esbuild-plugin-prismjs'; import { build } from 'esbuild'; build({ entryPoints: ['./src/index.js'], outdir: 'dist', bundle: true, plugins: [ prismjsPlugin({ inline: true, languages: ['javascript', 'css'], plugins: ['line-numbers'], theme: 'okaidia', css: true, }), ], }).catch(() => process.exit(1));
Debug
Known issues
breakingOnly supports ESM imports, CommonJS require will throw an error.
fix
Use ES import syntax (import { prismjsPlugin } from 'esbuild-plugin-prismjs').
affects: >=1.0.0
gotchaThe 'inline' option defaults to true, embedding CSS. If you want separate CSS files, set it to false.
fix
Set inline: false in the plugin options to get separate CSS output.
affects: >=1.0.0
gotchaThe 'css' option must be true if you want the theme CSS to be included. It defaults to true but can be disabled.
fix
Ensure css: true (or omit) to include theme CSS.
affects: >=1.0.0
Errors
Common errors & fixes
TypeError: prismjsPlugin is not a function
Incorrect import using CommonJS require()
fix
Change to ES import: import { prismjsPlugin } from 'esbuild-plugin-prismjs'
Error: Cannot find module 'prismjs'
PrismJS is not installed as a dependency
fix
Run: npm install prismjs
Error: Unknown language 'xyz'
An unsupported or misspelled language name was provided in the options
fix
Check the language list: https://prismjs.com/#languages-list
Upgrade
Version history
1.0.8latest on npm
Audit
Dependencies
prismjsrequiredRequired as a peer dependency to provide the PrismJS library
Agent activity
4 hits · last 30 days
node
4
Resources
esbuild-plugin-prismjs — npm install esbuild-plugin-prismjs · libregistry