8000 Makers · neomake/neomake Wiki · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Dominic Monroe edited this page Dec 21, 2020 · 65 revisions
8000

This is a list of makers for which Neomake comes pre-configured, along with minutiae on their usage.

This list may be out of date, look at autoload/neomake/makers for all supported makers.

Ansible:

API Blueprint:

Applescript:

  • osacompile

Asciidoc:

Beancount:

Bib:

  • bibtex (not enabled by default)
    • Requires a .aux file of the same name as the .bib file to exist in the same directory.

C:

  • clang
  • gcc
  • clang-tidy
  • checkpatch
  • cppcheck

C++:

C#:

  • MSC
  • MSBuild (not enabled by default)
    • This maker require the msbuild(executable) to be added in PATH environment variable.

CFEngine 3:

  • cf-promises

Chef (superset of Ruby):

Clojure:

Coffeescript:

Crystal:

CSS:

CUDA:

  • nvcc

D:

DocBook XML (docbk):

Elixir:

  • credo (not enabled by default)
  • dogma (not enabled by default)
  • elixirc

Elm:

Erlang:

  • erlc - the maker accepts some options:

    • b:neomake_erlang_erlc_rebar3_profile

      In a Rebar3 project the maker uses the default profile for include/ebin paths by default. If the edited file's name ends in _SUITE.erl (for Common Test suites) or the file resides under a test/ subdirectory of the project's directory, the maker uses the test profile. Setting buffer local neomake_erlang_erlc_rebar3_profile overrides this default profile selection mechanism.

    • b:neomake_erlang_erlc_target_dir or g:neomake_erlang_erlc_target_dir

      If _build subdirectory exists in the project's directory, the maker puts build artifacts under _build/neomake. Otherwise, it puts the artifacts under a temporary directory which will be removed on exit. Setting a buffer local or global neomake_erlang_erlc_target_dir overrides the artifact output directory location.

    • b:neomake_erlang_erlc_extra_deps or g:neomake_erlang_erlc_extra_deps

      By default, the maker finds include and ebin subdirectories of applications and libraries under _build/{default,test}/lib and deps in the project's directory. Using buffer local or global neomake_erlang_erlc_extra_deps it's possible to specify another directory where dependencies might be placed (for example let g:neomake_erlang_erlc_extra_deps = ['_checkouts'] for Rebar3's _checkouts). For each dependency the maker figures out the include and ebin locations and appends them to the set of paths passed to the compiler.

fish:

  • fish

Fortran

  • gfortran
  • ifort

Go:

Haskell:

  • hlint
  • ghc-mod
  • hdevtools
  • cabal
  • liquid (LiquidHaskell)

Stack projects are supported.

Help (Vim help files):

  • proselint (not enabled by default)
  • vimhelplint (needs manual installation, see contrib/vimhelplint)
  • writegood

Idris:

  • idris

Java:

  • javac
  • gradle
  • mvn
  • sbt
    • Consider adding au BufWritePost *.java Neomake! sbt to your (global or project-specific) .vimrc.

JavaScript / ECMAScript:

JSON:

JSX:

  • jsxhint

  • rjsx

    requires emacs >= 24 with rjsx-mode installed from melpa

    • easiest way to install:
      emacs --quick --batch --eval="(progn(require 'package) (package-initialize) (add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/\") t) (setq url-http-attempt-keepalives nil) (package-refresh-contents) (package-install 'rjsx-mode))"

Julia:

Lex:

  • flex

Lua:

Mail:

Markdown:

Matlab:

  • mlint

Nim:

  • nim

nix:

  • nix-instantiate

Objective-C:

  • clang
  • gcc
  • clang-tidy

Perl:

  • perlcritic

PHP:

Protocol Buffers:

Pug:

Puppet:

PureScript:

Python:

  • pep8
  • flake8
  • pyflakes
  • pylama
  • pylint
  • python
  • vulture [not enabled by default]
  • mypy [not enabled by default]
  • py3kwarn [not enabled by default]

reStructuredText (RST, ReST, reST):

Superset of Text.

  • Sphinx (sphinx-build) (enabled by default if conf.py is found).

    Uses sphinx.source_dir config variable to cache the source dir location, which defaults to the parent directory of where conf.py is found (it is looked for in docs and doc in the buffer's project root).

  • rstlint

  • rstcheck

Ruby:

  • mri
  • jruby
  • rubocop
    • To turn on Rails rules, enable it in your .rubocop.yml:
      Rails:
        Enabled: true
  • reek
  • rubylint

Rust:

  • rustc
  • cargo
    • This maker will by default invoke cargo-check command. You can configure the exact command, along with its args via the g:neomake_rust_cargo_command and b:neomake_rust_cargo_command lists (e.g. to check everything, including test modules, put let g:neomake_rust_cargo_command = ['test', '--no-run'] in your .vimrc file).
  • clippy
    • This maker should be run explicitly using the command :Neomake! clippy. It needs a nightly build of Rust, and supports rustup.

Scala:

  • scalac
  • scalastyle
  • sbt
    • Consider adding au BufWritePost *.scala Neomake! sbt to your (global or project-specific) .vimrc.

scss:

Serpent:

sh / Bash (Shell):

Slim:

Spec:

Solidity:

Standard ML:

  • smlnj

Stylus:

SQL:

Swift:

TCL:

  • Nagelfar

Tex/Latex:

Text:

  • proselint (not enabled by default)
  • writegood (not enabled by default)

TOML:

TypeScript:

Verilog:

  • iverilog

VHDL:

Vimscript:

  • vint

  • vimlint

    It can be installed using npm: node-vimlint.

    Or you could create a wrapper script vimlint and add it to your PATH:

    #!/bin/sh
    /vimlint/bin/vimlint.sh -l /vimlint -p ~/Vcs/vim-vimlparser "$@"

    Where /vimlint is where you cloned/extracted vimlint.

Vue:

XML:

XSLT:

Yacc:

  • bison

YAML:

Zsh:

  • shellcheck (not enabled by default, current versions do not support Zsh)
  • zsh
Clone this wiki locally
0