A Python package to generate snippet images via Carbon programmatically.
import asyncio
from carbono.image import from_code
code = """import asyncio
async def func():
return "Hello, World!"
if __name__ == '__main__':
asyncio.run(func())"""
loop = asyncio.get_event_loop()
loop.run_until_complete(from_code(code))
poetry install
.poetry shell
.pytest -vv
.
To obtain the language map from the Carbon codebase, clone the Carbon repo and follow the steps below:
yarn install
.yarn dev
.- Add the following snippet at the end of the
lib/constants.js
file and copy the generated string from the Console panel (Chrome DevTools), for example.
// lib/constants.js
function searchLanguage(l) {
return (
LANGUAGE_NAME_HASH[l] || LANGUAGE_MODE_HASH[l] || LANGUAGE_MIME_HASH[l]
);
}
function getValue(language) {
const languageMode = searchLanguage(language);
if (languageMode) {
return languageMode.mime || languageMode.mode;
}
return language;
}
function upperCase(str) {
return str.toUpperCase();
}
function slugify(str) {
str = str
.replace(/#/g, "_sharp")
.replace(/\+/g, "_plus")
.replace(/-/g, "_")
.replace(/\//g, "_")
.replace(/\./g, "_")
.replace(/ +/g, "_"); // Replace spaces
return str;
}
const langMap = Object.fromEntries(
LANGUAGES.map((l) => [
upperCase(slugify(l.name)),
getValue(l.short || l.mode),
])
);
console.log(JSON.stringify(langMap, 0, 2));
poetry add "pyppeteer>=0.2.2,<1"
.encodeURIComponent()
(JavaScript) escapes all characters except:A-Z a-z 0-9 - _ . ! ~ * ' ( )
.
- Default values.
- tohash package.
- Open Developer Tools for VS Code:
Help
>Toggle Developer Tools
. - pytest-clarity:
- A plugin for colored diffs.
poetry add -D pytest-clarity
.poetry remove -D pytest-clarity
.
- mypy: