Add yarac as yara rule syntax checker.
YARA is a widely used pattern matching tool in malware research. yarac is the official compiler.
This commit is contained in:
parent
4b93dffbd9
commit
e888225518
@ -69,8 +69,9 @@ MATLAB, Mercury, NASM, Nix, Objective-C, Objective-C++, OCaml, Perl, Perl
|
|||||||
NG, reStructuredText, RPM spec, Ruby, SASS/SCSS, Scala, Slim, SML, Solidity,
|
NG, reStructuredText, RPM spec, Ruby, SASS/SCSS, Scala, Slim, SML, Solidity,
|
||||||
Sphinx, SQL, Stylus, Tcl, TeX, Texinfo, Twig, TypeScript, Vala, Verilog, VHDL,
|
Sphinx, SQL, Stylus, Tcl, TeX, Texinfo, Twig, TypeScript, Vala, Verilog, VHDL,
|
||||||
Vim help, VimL, Vue.js, xHtml, XML, XSLT, XQuery, YACC, YAML, YANG data models,
|
Vim help, VimL, Vue.js, xHtml, XML, XSLT, XQuery, YACC, YAML, YANG data models,
|
||||||
z80, Zope page templates, and Zsh. See the [manual][checkers] for details about
|
YARA rules, z80, Zope page templates, and Zsh. See the [manual][checkers] for
|
||||||
the corresponding supported checkers (`:help syntastic-checkers` in Vim).
|
details about the corresponding supported checkers (`:help syntastic-checkers`
|
||||||
|
in Vim).
|
||||||
|
|
||||||
A number of third-party Vim plugins also provide checkers for syntastic, for
|
A number of third-party Vim plugins also provide checkers for syntastic, for
|
||||||
example: [merlin][merlin], [omnisharp-vim][omnisharp], [rust.vim][rust],
|
example: [merlin][merlin], [omnisharp-vim][omnisharp], [rust.vim][rust],
|
||||||
|
@ -132,6 +132,7 @@ SYNTAX CHECKERS BY LANGUAGE *syntastic-checkers-lang*
|
|||||||
YACC.....................................|syntastic-checkers-yacc|
|
YACC.....................................|syntastic-checkers-yacc|
|
||||||
YAML.....................................|syntastic-checkers-yaml|
|
YAML.....................................|syntastic-checkers-yaml|
|
||||||
YANG.....................................|syntastic-checkers-yang|
|
YANG.....................................|syntastic-checkers-yang|
|
||||||
|
YARA.....................................|syntastic-checkers-yara|
|
||||||
|
|
||||||
Z80......................................|syntastic-checkers-z80|
|
Z80......................................|syntastic-checkers-z80|
|
||||||
Zope Page Templates......................|syntastic-checkers-zpt|
|
Zope Page Templates......................|syntastic-checkers-zpt|
|
||||||
@ -7629,6 +7630,35 @@ You probably also need a plugin to set |filetype| for YANG files, such as
|
|||||||
|
|
||||||
https://github.com/nathanalderson/yang.vim
|
https://github.com/nathanalderson/yang.vim
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
SYNTAX CHECKERS FOR YARA *syntastic-checkers-yara*
|
||||||
|
|
||||||
|
The following checkers are available for YARA rule files. (filetype "yara"):
|
||||||
|
|
||||||
|
1. yarac....................|syntastic-yara-yarac|
|
||||||
|
|
||||||
|
------------------------------------------------------------------------------
|
||||||
|
1. yarac *syntastic-yara-yarac*
|
||||||
|
|
||||||
|
Name: yarac
|
||||||
|
Maintainer: Albert Song <albb@teamt5.org>
|
||||||
|
|
||||||
|
"yarac" is the official compiler for YARA rule files.
|
||||||
|
See the project's page at GitHub for more information:
|
||||||
|
|
||||||
|
https://github.com/VirusTotal/yara
|
||||||
|
|
||||||
|
Checker options~
|
||||||
|
|
||||||
|
This checker is initialised using the "makeprgBuild()" function and thus it
|
||||||
|
accepts the standard options described at |syntastic-config-makeprg|.
|
||||||
|
|
||||||
|
Note~
|
||||||
|
|
||||||
|
You probably also need to set |filetype| for YARA rule files to "yara".
|
||||||
|
You can do that with an `:autocmd`: >
|
||||||
|
autocmd BufNewFile,BufRead *.yar,*.yara set filetype=yara syntax=yara
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
SYNTAX CHECKERS FOR Z80 *syntastic-checkers-z80*
|
SYNTAX CHECKERS FOR Z80 *syntastic-checkers-z80*
|
||||||
|
|
||||||
|
@ -112,6 +112,7 @@ let s:_DEFAULT_CHECKERS = {
|
|||||||
\ 'yacc': ['bison'],
|
\ 'yacc': ['bison'],
|
||||||
\ 'yaml': ['jsyaml'],
|
\ 'yaml': ['jsyaml'],
|
||||||
\ 'yang': ['pyang'],
|
\ 'yang': ['pyang'],
|
||||||
|
\ 'yara': ['yarac'],
|
||||||
\ 'z80': ['z80syntaxchecker'],
|
\ 'z80': ['z80syntaxchecker'],
|
||||||
\ 'zpt': ['zptlint'],
|
\ 'zpt': ['zptlint'],
|
||||||
\ 'zsh': ['zsh'],
|
\ 'zsh': ['zsh'],
|
||||||
|
41
syntax_checkers/yara/yara.vim
Normal file
41
syntax_checkers/yara/yara.vim
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
"============================================================================
|
||||||
|
"File: yara.vim
|
||||||
|
"Description: Syntax checking plugin for syntastic.vim
|
||||||
|
"Maintainer: Albert Song (albb@teamt5.org)
|
||||||
|
"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_yara_yarac_checker')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let g:loaded_syntastic_yara_yarac_checker = 1
|
||||||
|
|
||||||
|
let s:save_cpo = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
|
function! SyntaxCheckers_yara_yarac_GetLocList() dict
|
||||||
|
let makeprg = self.makeprgBuild({ 'fname_after' : syntastic#util#DevNull() })
|
||||||
|
|
||||||
|
let errorformat =
|
||||||
|
\ '%f(%l): %trror: %m,' .
|
||||||
|
\ '%f(%l): %tarning: %m,'.
|
||||||
|
\ '%f(%l): %m'
|
||||||
|
|
||||||
|
return SyntasticMake({
|
||||||
|
\ 'makeprg': makeprg,
|
||||||
|
\ 'errorformat': errorformat })
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
call g:SyntasticRegistry.CreateAndRegisterChecker({
|
||||||
|
\ 'filetype': 'yara',
|
||||||
|
\ 'name': 'yarac'})
|
||||||
|
|
||||||
|
let &cpo = s:save_cpo
|
||||||
|
unlet s:save_cpo
|
||||||
|
|
||||||
|
" vim: set sw=4 sts=4 et fdm=marker:
|
Loading…
x
Reference in New Issue
Block a user