Commit Graph

38 Commits

Author SHA1 Message Date
Russ Garrett
4b93dffbd9 Use correct erlang include paths for rebar3 projects
Add a few more include paths for erlang projects built using rebar 3.
This allows syntastic to pick up dependencies and resolve include paths
in multiple-app rebar3 projects (assuming that the default `apps`
parent directory is used).

Existing erlang projects should be unaffected.

It's possible that this could be done slightly more elegantly by
shelling out to the new `rebar3 path` command, but this is quite slow in
our setup and may not be configured correctly in editing environments.
2017-12-14 12:36:29 +00:00
LCD 47
8393a3c7a2 Cosmetic cleanup. 2017-09-15 21:04:16 +03:00
LCD 47
f660d1074f Cleanup: buffer handling. 2017-02-15 13:50:19 +02:00
Jean-Sébastien Pédron
f19b05d301
erlang_check_file.erl: Add support for Erlang.mk
Now, it first determines the compilation "profile" (are we building tests
or the program itself?) and the build tool. Once it found it - either
rebar when there is a `rebar.config` file, or Erlang.mk when there is a
`erlang.mk` file - it calls the appropriate function to query ERL_LIBS
paths and compiler options.

The Erlang.mk function uses the `show-ERL_LIBS`, `show-ERLC_OPTS` and
`show-TEST_ERLC_OPTS` Make targets to query those informations.

Signed-off-by: Gerhard Lazu <gerhard@lazu.uk>
2017-01-13 10:17:20 +01:00
Radek Szymczyszyn
0154e9d096 Translate relative paths from non-root rebar.config files 2015-06-29 15:36:43 +02:00
Rob Ashton
3dda9b833c Apps should be used for include_lib too 2015-06-12 11:15:14 +01:00
LCD 47
dac07db617 Cleanup: shut up most vint warnings. 2015-03-25 18:44:34 +02:00
Rob Ashton
0cde758958 replaced erlang checker with the one from vimerl that works without rebar 2015-03-18 14:13:44 +00:00
LCD 47
1d2f8d514a Formatting: folding. 2015-01-04 12:46:54 +02:00
LCD 47
d1b401609b Bug fix: glob(), globpath(), and expand() should ignore wildignore. 2015-01-04 09:01:55 +02:00
Russ Garrett
d624e32b9e Erlang: correctly handle additional LibDirs
The compile function expects a list of paths in the LibDirs parameter,
however when calling erlang_check_file.erl with an additional path (for
example when using the "g:syntastic_erlc_include_path" option), a
string would be passed instead. Because strings in Erlang are lists,
each character of the string would have been interpreted as a lib path.
2014-09-10 12:07:10 +01:00
Ahmad Sherif
c55384c0ec Transform code using pmod_pt module before checking
Helps suppressing the error "parameterized modules are no longer supported" which libraries like ChicagoBoss depend on.
2014-09-01 17:53:16 +03:00
LCD 47
c2e7bf29c9 Escript: parseShebang() is more capable these days. 2014-07-31 16:40:34 +03:00
LCD 47
e54f28e338 New redirect checker for arduino: avrgcc. 2014-07-15 09:33:31 +03:00
Radek Szymczyszyn
1fcb6b89b5 Don't forget about ebin/ 2014-03-05 19:44:43 +01:00
Radek Szymczyszyn
2286363adb Properly add deps/*/include to header file path 2014-03-05 19:34:56 +01:00
Radosław Szymczyszyn
105965c821 Simplify main/1 heads 2014-03-05 19:18:41 +01:00
LCD 47
d1978e26d5 Add a header to syntaxerl.vim. 2014-02-14 22:14:46 +02:00
locojay
1389bf45ce adding syntaxerl for erlang files 2014-02-14 14:24:44 -05:00
LCD 47
4c2004d2e5 Bug fix: the result of expand('<sfile>:p:h') has to be escaped. 2014-02-06 11:58:30 +02:00
LCD 47
44d7ffd7e0 makeprgBuild() refactor: add *_before and *_after options. 2014-01-28 21:44:44 +02:00
LCD 47
47f054112b Fix shebang parsing for escript. 2014-01-14 20:33:49 +02:00
LCD 47
00e75e1151 Minor cleanup. 2014-01-05 08:31:29 +02:00
LCD 47
b9accaa810 Minor cleanup: &cpo guards and formatting. 2014-01-03 11:29:08 +02:00
LCD 47
6d81ac5dd0 Registry cleanup, stage 3.
Make syntastic#makeprg#build() a dictionary function.
Remove the mandatory checker argument to syntastic#makeprg#build().
2013-11-02 10:44:06 +02:00
LCD 47
3694908d05 Registry cleanup, stage 2.
(1) Checkers now have an _exec attribute, and an accessor getExec().
(2) CreateAndRegisterChecker() initializes _exec from an optional argument
'exec'.  If this argument is missing, 'name' is used instead.
(3) Functions SyntaxCheckers_*_IsAvailable() are now dictionary functions.
(4) Functions SyntaxCheckers_*_IsAvailable() are now optional.  When
they are missing, they are assumed to return executable(expand(self.getExec())).
(5) Argument 'exe' of function syntastic#makeprg#build() is now optional.
If this argument is missing, expand(self.getExec()) is used to set checker
executables.
2013-11-02 10:44:06 +02:00
LCD 47
28bce98a68 Registry cleanup, stage 1.
Make SyntaxCheckers_*_GetLocList() dictionary functions.
Pass a reference to the current checker to syntastic#makeprg#build().
Add an optional 'redirect' argument to CreateAndRegisterChecker().
Change the sh checker to use the new dictionary functions.
Add a new registry method getLocListRaw() (needed for the sh checker).
2013-11-02 10:44:06 +02:00
LCD 47
d74a2e19f9 Rename erlang.vim --> escript.vim. 2013-09-30 14:52:36 +03:00
LCD 47
1e44002f82 Erlang checker cleanup. 2013-09-30 14:52:01 +03:00
LCD 47
935ee1d95f Merge pull request #757 from nougad/erlang_rebar
Add possibility to specify a rebar file as parameter in erlang_check_file.erl
2013-09-19 15:47:52 -07:00
stwind
c541515007 Erlang: support files under test/ folder 2013-09-12 14:29:13 +08:00
Florian Eitel
8c698b15d1 Add possibility to specify a rebar file as parameter in erlang_check_file.erl
I want to use lib_dirs and sub_dirs from rebar file and run compile with
this paths. So I search for the next rebar.config file and pass this in
g:syntastic_erlc_include_path.

see: https://github.com/scrooloose/syntastic/issues/685
2013-08-19 09:57:27 +02:00
LCD 47
6ba8e651cb Make shell escaping less produce fewer useless quotes.
Function inspired by tpope's vim-dispatch.
2013-07-04 21:04:20 +03:00
Martin Grenfell
602bbe7b24 break down some error format strings
Most errorformats are now expressed 1 "clause" per line.
2013-05-14 17:36:20 +01:00
Olav Frengstad
f39fba1c87 Add support for nested dirs inside src/
When having nested directories (for instance `src/protocol/tm_protocol.erl`)
autocompilation would fail. This fix adds the abspath of all depdencies to
the codepath and sets compile option {i, _} to support both `deps/` and `lib/`.
2013-04-18 17:12:45 +02:00
Martin Grenfell
16424e5761 add guards to all checkers
goddamn I love macros
2013-02-21 15:50:41 +00:00
Mikhail Vinogradov
417fd8b484 Added explicit call of escript
Added explicit call of escript, to run check, bypassing shell (actual for Windows)
2013-02-11 02:18:56 +04:00
Martin Grenfell
e0b8e87c93 refactor all the syntax checkers to use the new API and dir layout 2013-01-27 20:08:30 +00:00