Ethereum Solidity, Vyper, Yul and StarkNet Cairo language syntaxes
- Total 64K
- Win 28K
- Mac 24K
- Linux 12K
|Sep 24||Sep 23||Sep 22||Sep 21||Sep 20||Sep 19||Sep 18||Sep 17||Sep 16||Sep 15||Sep 14||Sep 13||Sep 12||Sep 11||Sep 10||Sep 9||Sep 8||Sep 7||Sep 6||Sep 5||Sep 4||Sep 3||Sep 2||Sep 1||Aug 31||Aug 30||Aug 29||Aug 28||Aug 27||Aug 26||Aug 25||Aug 24||Aug 23||Aug 22||Aug 21||Aug 20||Aug 19||Aug 18||Aug 17||Aug 16||Aug 15||Aug 14||Aug 13||Aug 12||Aug 11||Aug 10|
SublimeText syntax highlighting for Solidity, Vyper, Yul and Cairo
Ethereum is a platform for decentralized applications. Decentralized applications are built with Smart Contracts.
StarkNet is a permissionless decentralized ZK-Rollup operating as an L2 network over Ethereum, where any dApp can achieve unlimited scale for its computation, without compromising Ethereum’s composability and security.
Vyper is a contract-oriented, pythonic programming language that targets the Ethereum Virtual Machine (EVM) as well. It lacks some general features and through this strives to be more secure by default.
Yul is an intermediate EVM programming language that is compiled to bytecode for addressing the needs of different backends. The Solidity compiler has an experimental implementation that uses Yul as an intermediate language.
Cairo is a programming language for writing provable programs, where one party can prove to another that a certain computation was executed correctly. Cairo and similar proof systems can be used to provide scalability to blockchains.
Linguist branch has an implementation with regexes and is used in GitHub. Main branch (= used in sublime package to enable
.sol syntax highlighting for SublimeText editor) uses more advanced context stack approach to achieve optimal and more detailed results from what is possible with regex based approach.
Installation in SublimeText editor
- SublimeText menu / Preferences / Package Control
- Select: Install Package
- Type Ethereum and press ENTER
- With a
.cairofile open, select: View -> Syntax (-> Open all with current extension as) -> Ethereum -> Cairo / Solidity / Vyper / Yul
- Close and re-open any files to activate the syntax highlighting
This will provide Solidity
.vy and Cairo
.cairo syntax highlighting.
SublimeEthereum on Package Control.
- Solidity.sublime-syntax: syntax rules for Ethereum Solidity language
- Ethereum plugin automatically uses Solidity language syntax when you are in a Solidity (.sol) file
- vscode-solidity is another good grammar implementation, it was originally derived from SublimeEthereum
- Vyper.YAML-tmLanguage: syntax rules for Ethereum Vyper language
- Ethereum plugin automatically uses Vyper language syntax when you are in a Vyper (.vy) file
- Yul.YAML-tmLanguage: syntax rules for Ethereum Yul language
- Ethereum plugin automatically uses Yul language syntax when you are in a Yul (.yul) or Yul+ (.yulp) file
- Cairo.YAML-tmLanguage: syntax rules for StarkNet Cairo language
- Ethereum plugin automatically uses Cairo language syntax when you are in a Cairo (.cairo) file
- Cairo language grammar is derived from Atom grammar in this repository by GitHub user xshitaka.
All of Sublime Ethereum is licensed under the MIT license.
Copyright Ⓒ 2015-2222 uniqpath
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.