2019-01-22 21:00:45 +00:00
|
|
|
#+TITLE: Solidity Layer
|
|
|
|
|
2019-12-28 08:57:57 +00:00
|
|
|
#+TAGS: dsl|layer|programming
|
2019-11-22 19:37:23 +00:00
|
|
|
|
2019-01-22 21:00:45 +00:00
|
|
|
[[file:img/solidity.png]]
|
|
|
|
|
2019-11-22 19:37:23 +00:00
|
|
|
* Table of Contents :TOC_5_gh:noexport:
|
2019-01-22 21:00:45 +00:00
|
|
|
- [[#description][Description]]
|
|
|
|
- [[#features][Features:]]
|
|
|
|
- [[#install][Install]]
|
|
|
|
- [[#layer][Layer]]
|
|
|
|
- [[#linter][Linter]]
|
|
|
|
- [[#solc][solc]]
|
|
|
|
- [[#ethlint][Ethlint]]
|
|
|
|
- [[#options][Options]]
|
|
|
|
- [[#key-bindings][Key bindings]]
|
|
|
|
|
|
|
|
* Description
|
|
|
|
A layer to support Solidity development in Spacemacs.
|
|
|
|
|
|
|
|
** Features:
|
|
|
|
- Syntax highlighting
|
|
|
|
- Syntax checking
|
|
|
|
- Gas estimation
|
|
|
|
|
|
|
|
* Install
|
|
|
|
** Layer
|
|
|
|
To use this configuration layer, add it to your =~/.spacemacs=. You will need to
|
|
|
|
add =solidity= to the existing =dotspacemacs-configuration-layers= list in this
|
|
|
|
file.
|
|
|
|
|
|
|
|
** Linter
|
|
|
|
*** solc
|
|
|
|
To use the solc flycheck checker, install [[https://solidity.readthedocs.io][solc]], and enable it in your =~/.spacemacs=.
|
|
|
|
|
|
|
|
#+BEGIN_SRC emacs-lisp
|
|
|
|
(solidity :variables
|
|
|
|
solidity-flycheck-solc-checker-active t)
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
Please note that you can't use [[https://github.com/ethereum/solc-js][solc-js]] for the solc flycheck checker.
|
|
|
|
|
|
|
|
*** Ethlint
|
|
|
|
To use solium flycheck checker, install [[https://github.com/duaraghav8/Ethlint][Ethlint]].
|
|
|
|
|
|
|
|
#+BEGIN_SRC sh
|
|
|
|
npm i -g ethlint
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
Then enable it in your =~/.spacemacs=:
|
|
|
|
|
|
|
|
#+BEGIN_SRC emacs-lisp
|
|
|
|
(solidity :variables
|
|
|
|
solidity-flycheck-solium-checker-active t)
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
And make sure that =.soliumrc.json= exists in the root directory of your DApp:
|
|
|
|
|
|
|
|
#+BEGIN_SRC sh
|
|
|
|
solium --init
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Options
|
|
|
|
|
|
|
|
| Variable | Default value | Description |
|
|
|
|
|-------------------------------------------+---------------+------------------------------------------------------------|
|
|
|
|
| =solidity-flycheck-solc-checker-active= | =nil= | If non-nil, use solc flycheck checker for Solidity Mode. |
|
|
|
|
| =solidity-flycheck-solium-checker-active= | =nil= | If non-nil, use solium flycheck checker for Solidity Mode. |
|
|
|
|
|
|
|
|
* Key bindings
|
|
|
|
|
2019-11-22 19:37:23 +00:00
|
|
|
| Key binding | Description |
|
2019-01-22 21:00:45 +00:00
|
|
|
|-------------+-----------------------|
|
|
|
|
| ~SPC m g~ | Estimate gas at point |
|