@vanillawc/wc-code
v0.3.3
Published
run code in the browser for multiple programming languages !
Downloads
10
Maintainers
Readme
Installation
Installation
npm i @vanillawc/wc-code
Import from NPM
<script type="module" src="node_modules/@vanillawc/wc-code/build/index.js"></script>
Import from CDN
<script type="module" src="https://cdn.jsdelivr.net/gh/vanillawc/wc-code@0/build/index.js"></script>
Usage NOTE
wc-code
requires the use of <!DOCTYPE html>
don't ask me why, ask the forgotten html God of proscii
Usage
Attributes
src
- load an external source filestyle
- CSS styling (defaultheight:100%;width:100%;
)mode
- the language you want to usetheme
- the codemirror theme you want to usefile-name
- this will be the file name used when the file is downloadedviewport-margin
1 - sets theviewportMargin
option of the CodeMirrror editor instance (default10
)readonly
- sets the codemirror's "readOnly" configuration attribute to true, you may setreadonly="nocursor"
if you want to disable the cursor and not let the user select the text inside
1Setting viewport-margin
to infinity
will auto-resize the editor to its contents. To see this in action, check out the CodeMirror Auto-Resize Demo.
Basic Usage
all language modes/themes are dynamically loaded, and the css is dynamically loaded, you don't need to add any additional files for them
JavaScript example
<!DOCTYPE html>
<head>
<script type="module" src="https://cdn.jsdelivr.net/gh/vanillawc/[email protected]/build/index.min.js"></script>
</head>
<body>
<wc-code mode="javascript">
<script type="wc-content">
const resp = await fetch("https://sv443.net/jokeapi/v2/joke/Any?blacklistFlags=nsfw,racist,sexist&format=txt");
const text = await resp.text();
console.log(text);
</script>
</wc-code>
</body>
Python Example
<!DOCTYPE html>
<head>
<script type="module" src="https://cdn.jsdelivr.net/gh/vanillawc/[email protected]/build/index.min.js"></script>
</head>
<body>
<wc-code mode="python">
<script type="wc-content">
a = 1
b = 1
print(a+b)
</script>
</wc-code>
</body>
Theme Example
<!DOCTYPE html>
<head>
<script type="module" src="https://cdn.jsdelivr.net/gh/vanillawc/[email protected]/build/index.min.js"></script>
</head>
<body>
<wc-code mode="python" theme="monokai">
<script type="wc-content">
a = 1
b = 1
print(a+b)
</script>
</wc-code>
</body>
see https://codemirror.net/theme/ for a list of supported themes
Contributing
See CONTRIBUTING.md