Awesome
<p align="center"> <img src="https://github.com/antfu/wenyan-lang-vscode/raw/master/screenshots/logo-with-text.png" alt="logo" width="500"/> </p> <p align="center"> <a href="https://marketplace.visualstudio.com/items?itemName=antfu.wenyan-lang" target="__blank"><img src="https://img.shields.io/visual-studio-marketplace/v/antfu.wenyan-lang.svg?color=blue&label=VSCode%20Marketplace&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgMjU2IDI1NiI+PGRlZnM+PHN0eWxlPi5he2ZpbGw6I2ZmZjt9LmEsLmd7ZmlsbC1ydWxlOmV2ZW5vZGQ7fS5ie21hc2s6dXJsKCNhKTt9LmN7ZmlsbDojMDA2NWE5O30uZHtmaWxsOiMwMDdhY2M7fS5le2ZpbGw6IzFmOWNmMDt9LmZ7b3BhY2l0eTowLjI1O30uZ3tmaWxsOnVybCgjYik7fTwvc3R5bGU+PG1hc2sgaWQ9ImEiIHg9Ii0wLjE2IiB5PSIwLjY2IiB3aWR0aD0iMjU2LjE2IiBoZWlnaHQ9IjI1NC42OCIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHBhdGggY2xhc3M9ImEiIGQ9Ik0xODEuNTMsMjU0LjI1YTE1LjkzLDE1LjkzLDAsMCwwLDEyLjctLjQ5bDUyLjcxLTI1LjM2QTE2LDE2LDAsMCwwLDI1NiwyMTRWNDJhMTYsMTYsMCwwLDAtOS4wNi0xNC40MkwxOTQuMjMsMi4yNEExNS45NCwxNS45NCwwLDAsMCwxNzgsMy43YTE2LjMsMTYuMywwLDAsMC0xLjkxLDEuNjNMNzUuMTUsOTcuMzksMzEuMiw2NGExMC42NSwxMC42NSwwLDAsMC0xMy42MS42MUwzLjQ5LDc3LjQ1YTEwLjY4LDEwLjY4LDAsMCwwLDAsMTUuNzhMNDEuNTksMTI4LDMuNDgsMTYyLjc3YTEwLjY4LDEwLjY4LDAsMCwwLDAsMTUuNzhsMTQuMSwxMi44MkExMC42NSwxMC42NSwwLDAsMCwzMS4yLDE5Mmw0NC0zMy4zNywxMDAuOSw5Mi4wNkExNiwxNiwwLDAsMCwxODEuNTMsMjU0LjI1Wk0xOTIsNjkuODksMTE1LjQ4LDEyOCwxOTIsMTg2LjEyWiIvPjwvbWFzaz48bGluZWFyR3JhZGllbnQgaWQ9ImIiIHgxPSIxMjcuODQiIHkxPSIyNTUuNDIiIHgyPSIxMjcuODQiIHkyPSIwLjc0IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDEsIDAsIDAsIC0xLCAwLCAyNTYuMDgpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjZmZmIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjZmZmIiBzdG9wLW9wYWNpdHk9IjAiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48dGl0bGU+QXJ0Ym9hcmQgMTwvdGl0bGU+PGcgY2xhc3M9ImIiPjxwYXRoIGNsYXNzPSJjIiBkPSJNMjQ2Ljk0LDI3LjY0LDE5NC4xOSwyLjI0QTE1Ljk0LDE1Ljk0LDAsMCwwLDE3Niw1LjMzTDMuMzIsMTYyLjc3YTEwLjY3LDEwLjY3LDAsMCwwLDAsMTUuNzhsMTQuMSwxMi44MmExMC42NywxMC42NywwLDAsMCwxMy42Mi42MUwyMzksMzQuMjNhMTAuNTksMTAuNTksMCwwLDEsMTcsOC40NHYtLjYyQTE2LDE2LDAsMCwwLDI0Ni45NCwyNy42NFoiLz48cGF0aCBjbGFzcz0iZCIgZD0iTTI0Ni45NCwyMjguMzZsLTUyLjc1LDI1LjRBMTUuOTQsMTUuOTQsMCwwLDEsMTc2LDI1MC42N0wzLjMyLDkzLjIzYTEwLjY3LDEwLjY3LDAsMCwxLDAtMTUuNzhsMTQuMS0xMi44MkExMC42NywxMC42NywwLDAsMSwzMS4wNiw2NEwyMzksMjIxLjc3YTEwLjU5LDEwLjU5LDAsMCwwLDE3LTguNDRWMjE0QTE2LDE2LDAsMCwxLDI0Ni45NCwyMjguMzZaIi8+PHBhdGggY2xhc3M9ImUiIGQ9Ik0xOTQuMiwyNTMuNzZhMTYsMTYsMCwwLDEtMTguMi0zLjA5QTkuMzcsOS4zNywwLDAsMCwxOTIsMjQ0VjEyYTkuMzcsOS4zNywwLDAsMC0xNi02LjYzLDE2LDE2LDAsMCwxLDE4LjItMy4wOUwyNDYuOTMsMjcuNkExNiwxNiwwLDAsMSwyNTYsNDJWMjE0YTE2LDE2LDAsMCwxLTkuMDcsMTQuNDJaIi8+PGcgY2xhc3M9ImYiPjxwYXRoIGNsYXNzPSJnIiBkPSJNMTgxLjM4LDI1NC4yNWExNS45MywxNS45MywwLDAsMCwxMi43LS40OWw1Mi43LTI1LjM2QTE2LDE2LDAsMCwwLDI1NS44NCwyMTRWNDJhMTYsMTYsMCwwLDAtOS4wNi0xNC40MkwxOTQuMDgsMi4yNEExNiwxNiwwLDAsMCwxNzcuOCwzLjdhMTYuMywxNi4zLDAsMCwwLTEuOTEsMS42M0w3NSw5Ny4zOSwzMSw2NGExMC42NSwxMC42NSwwLDAsMC0xMy42MS42MUwzLjMzLDc3LjQ1YTEwLjY4LDEwLjY4LDAsMCwwLDAsMTUuNzhMNDEuNDQsMTI4LDMuMzIsMTYyLjc3YTEwLjY4LDEwLjY4LDAsMCwwLDAsMTUuNzhsMTQuMSwxMi44MkExMC42NSwxMC42NSwwLDAsMCwzMSwxOTJMNzUsMTU4LjYxbDEwMC45LDkyLjA2QTE1Ljk0LDE1Ljk0LDAsMCwwLDE4MS4zOCwyNTQuMjVabTEwLjUtMTg0LjM2TDExNS4zMiwxMjhsNzYuNTYsNTguMTJaIi8+PC9nPjwvZz48L3N2Zz4=" alt="Visual Studio Marketplace Version" /></a> <a href="https://marketplace.visualstudio.com/items?itemName=antfu.wenyan-lang" target="__blank"><img src="https://img.shields.io/visual-studio-marketplace/d/antfu.wenyan-lang.svg?color=4bdbe3" alt="Visual Studio Marketplace Downloads" /></a> <a href="https://marketplace.visualstudio.com/items?itemName=antfu.wenyan-lang" target="__blank"><img src="https://img.shields.io/visual-studio-marketplace/i/antfu.wenyan-lang.svg?color=63ba83" alt="Visual Studio Marketplace Installs" /></a> <a href="https://marketplace.visualstudio.com/items?itemName=antfu.wenyan-lang" target="__blank"><img src="https://vsmarketplacebadge.apphb.com/trending-monthly/antfu.wenyan-lang.svg?color=a1b858" alt="Marketplace Trending Monthly" /></a> <br/> <a href="https://github.com/antfu/wenyan-lang-vscode" target="__blank"><img src="https://img.shields.io/github/last-commit/antfu/wenyan-lang-vscode.svg?color=a38eed" alt="GitHub last commit" /></a> <a href="https://github.com/antfu/wenyan-lang-vscode/issues" target="__blank"><img src="https://img.shields.io/github/issues/antfu/wenyan-lang-vscode.svg?color=c977be" alt="GitHub issues" /></a> <a href="https://github.com/antfu/wenyan-lang-vscode" target="__blank"><img alt="GitHub stars" src="https://img.shields.io/github/stars/antfu/wenyan-lang-vscode?style=social"></a> </p> <p align="center"> for <a href='https://github.com/LingDong-/wenyan-lang' target="__blank">文言 Wenyan Lang, a programming language for the ancient Chinese.</a> </p>Compile & Execute
View the compiled Javascript side by side or Direct execute it.
The compiler is shipped with this extension, no installation required.
Punctuations Replacement
Punctuations will be automatically replaced to fit the language.
You will get the result immediately, the delay is added for demostraction purpose
Snippets
You can write Wenyan quickly by using snippets:
Here are some common snippets. For full list, check out this file.
Triggers | Snippet |
---|---|
if | 若⋯者。⋯也。 |
else | 若非。⋯也。 |
for | 為是⋯遍。⋯云云。 |
break | 乃止。 |
while | 恆為是。⋯云云。 |
function | 吾有一術。名之曰「⋯」。是術曰。 |
int | 吾有一數。曰⋯。名之曰「⋯」。 |
str | 吾有一言。曰「「⋯」」。名之曰「⋯」。 |
bool | 吾有一爻。曰陰。名之曰「⋯」。 |
array | 吾有一列。名之曰「⋯」。 |
object | 吾有一物。名之曰「⋯」。 |
Wenyanizer by @zxch3n
From v0.10.0
, we shipped support for compiling Javascript back to Wenyan. Thanks for @zxch3n's great work!
Configurations
Fields | Default | Note |
---|---|---|
wenyan-lang.executablePath | built-in | Filepath to executable wenyan.js |
wenyan-lang.targetLanguage | javascript | Target language that compiles to. Can be javascript , python or ruby |
wenyan-lang.runOnSave | true | Execute the code on save |
wenyan-lang.romanizeMethod | null | Romanize identifiers. The method can be pinyin , baxter or unicode |
ToDo
- Syntax Highlight
- Snippets
- Dynamic Snippets
- Execute
- Compile
- Compile to Python
- Rendering
- Code Completion
- Language Server
License
MIT License © 2019-2020 Anthony Fu