New checker for Solidity: solc.

This commit is contained in:
LCD 47 2016-08-15 23:10:29 +03:00
commit 16e086f2fa
4 changed files with 64 additions and 1 deletions

View File

@ -65,7 +65,7 @@ JSX, LESS, Lex, Limbo, LISP, LLVM intermediate language, Lua, Markdown,
MATLAB, Mercury, NASM, Nix, Objective-C, Objective-C++, OCaml, Perl, Perl MATLAB, Mercury, NASM, Nix, Objective-C, Objective-C++, OCaml, Perl, Perl
POD, PHP, gettext Portable Object, OS X and iOS property lists, Pug (formerly POD, PHP, gettext Portable Object, OS X and iOS property lists, Pug (formerly
Jade), Puppet, Python, QML, R, Racket, RDF TriG, RDF Turtle, Relax NG, Jade), Puppet, Python, QML, R, Racket, RDF TriG, RDF Turtle, Relax NG,
reStructuredText, RPM spec, Ruby, SASS/SCSS, Scala, Slim, SML, Sphinx, SQL, reStructuredText, RPM spec, Ruby, SASS/SCSS, Scala, Slim, SML, Solidity, Sphinx, SQL,
Stylus, Tcl, TeX, Texinfo, Twig, TypeScript, Vala, Verilog, VHDL, VimL, xHtml, Stylus, Tcl, TeX, Texinfo, Twig, TypeScript, Vala, Verilog, VHDL, VimL, xHtml,
XML, XSLT, XQuery, YACC, YAML, YANG data models, z80, Zope page templates, and XML, XSLT, XQuery, YACC, YAML, YANG data models, z80, Zope page templates, and
Zsh. See the [manual][checkers] for details about the corresponding supported Zsh. See the [manual][checkers] for details about the corresponding supported

View File

@ -101,6 +101,7 @@ SYNTAX CHECKERS BY LANGUAGE *syntastic-checkers-lang*
Sh.......................................|syntastic-checkers-sh| Sh.......................................|syntastic-checkers-sh|
Slim.....................................|syntastic-checkers-slim| Slim.....................................|syntastic-checkers-slim|
SML......................................|syntastic-checkers-sml| SML......................................|syntastic-checkers-sml|
Solicity.................................|syntastic-checkers-solicity|
SQL......................................|syntastic-checkers-sql| SQL......................................|syntastic-checkers-sql|
Stylus...................................|syntastic-checkers-stylus| Stylus...................................|syntastic-checkers-stylus|
@ -5779,6 +5780,29 @@ Checker options~
This checker is initialised using the "makeprgBuild()" function and thus it This checker is initialised using the "makeprgBuild()" function and thus it
accepts the standard options described at |syntastic-config-makeprg|. accepts the standard options described at |syntastic-config-makeprg|.
==============================================================================
SYNTAX CHECKERS FOR SOLIDITY *syntastic-checkers-solidity*
The following checkers are available for Solidity (filetype "sol"):
1. SOLC.....................|syntastic-solidity-solc|
------------------------------------------------------------------------------
1. Solc *syntastic-solidity-solc*
Name: solc
Maintainer: Jacob Cholewa <jacob@cholewa.dk>
"Solc" is a compiler for the Etherium Smart-Contract language Solidity.
See the project's page for details:
https://github.com/ethereum/solidity
Checker options~
This checker is initialised using the "makeprgBuild()" function and thus it
accepts the standard options described at |syntastic-config-makeprg|.
============================================================================== ==============================================================================
SYNTAX CHECKERS FOR SQL *syntastic-checkers-sql* SYNTAX CHECKERS FOR SQL *syntastic-checkers-sql*

View File

@ -85,6 +85,7 @@ let s:_DEFAULT_CHECKERS = {
\ 'slim': ['slimrb'], \ 'slim': ['slimrb'],
\ 'sml': ['smlnj'], \ 'sml': ['smlnj'],
\ 'spec': ['rpmlint'], \ 'spec': ['rpmlint'],
\ 'solidity': ['solc'],
\ 'sql': ['sqlint'], \ 'sql': ['sqlint'],
\ 'stylus': ['stylint'], \ 'stylus': ['stylint'],
\ 'tcl': ['nagelfar'], \ 'tcl': ['nagelfar'],

View File

@ -0,0 +1,38 @@
"============================================================================
"File: solc.vim
"Description: Solidity syntax checker - using solc
"Maintainer: Jacob Cholewa <jacob@cholewa.dk>
"License: This program is free software. It comes without any warranty,
" to the extent permitted by applicable law. You can redistribute
" it and/or modify it under the terms of the Do What The Fuck You
" Want To Public License, Version 2, as published by Sam Hocevar.
" See http://sam.zoy.org/wtfpl/COPYING for more details.
"============================================================================
if exists('g:loaded_syntastic_solidity_solc_checker')
finish
endif
let g:loaded_syntastic_solidity_solc_checker = 1
let s:save_cpo = &cpo
set cpo&vim
function! SyntaxCheckers_solidity_solc_GetLocList() dict
let makeprg = self.makeprgBuild({})
let errorformat = '%f:%l:%c: Error: %m'
return SyntasticMake({
\ 'makeprg': makeprg,
\ 'errorformat': errorformat })
endfunction
call g:SyntasticRegistry.CreateAndRegisterChecker({
\ 'filetype': 'solidity',
\ 'name': 'solc' })
let &cpo = s:save_cpo
unlet s:save_cpo
" vim: set sw=4 sts=4 et fdm=marker: