summaryrefslogtreecommitdiff
path: root/autoload
AgeCommit message (Collapse)Author
2021-09-16ALECodeAction fix: check linter name when searching for nearest error. (#3901)Dalius Dobravolskas
It is easier to explain this fix with an example: * tsserver and LSPs ask for error information when you want to fix error. tsserver `ts@getCodeFixes` command needs tsserver error code. * now let's imagine that user has eslint and tsserver in use. Sometimes both can report same error in different way. * Now there is no guarantee which error will come first and if eslint error comes first then tsserver will not return code fixes as we are passing wrong error code to it. This fix will return proper error code based on linter.
2021-09-15[ale-python-root] add `.pyre_configuration.local` to list of files (#3900)Oliver Albertini
Without this, we have one `pyre` process running across different pyre projects. With this change, files in different projects can be linted with pyre at the same time. Co-authored-by: Oliver Ruben Albertini <ora@fb.com>
2021-09-10Fix 3897 - add poetry to isort (#3898)Horacio Sanson
Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-09-08Fix 3886 - Don't JSON decode completion user data if already a dict (#3894)Horacio Sanson
Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-09-06Fix truncated echo (#3889)Amadeus Demarzi
* Fix truncated echo In typescript, when putting the cursor on a `>` character of an arrow function, the displayString body comes back as an empty string, and means the split operation has 0 items, causing a failure when attempting to call TruncatedEcho. Even if there's a better fix, I'd assume this is a good safety since we are injesting external data. * Convert to use `empty()`
2021-09-05Introduce an ALELSPStarted autocommand (#3878)Jon Parise
This User autocommand is trigged immediately after an LSP process is successfully initialized. This provides a way to perform any additional initialization work, such as setting up buffer-level mappings.
2021-09-03Cppcheck backwards compat 1.34 (#3887)tsjordan-eng
* Add support for cppcheck 1.34 * Add cppcheck 1.34 tests, correct pattern Co-authored-by: Tyler S. Jordan <tsjorda@sandia.gov>
2021-08-25Add fixer for "dotnet format" (#3879)Jelte Fennema
The .NET ecosystem has an official tool for formatting its files: `dotnet format` This adds support for that tool to ALE.
2021-08-09Dhall fixes: use stdin, doc errors (#3868)toastal
* purs-tidy * Dhall fixes: use stdin, docs errors
2021-08-09purs-tidy fix (#3867)toastal
* purs-tidy * Fixup for purs-tidy
2021-08-09Adds fixer for golines (#3862)pigfrown
* Adds fixer for golines * Repositions golines docs to be in alphabetical order * Fixes golines doc tag * Fixes formatting for golines docs
2021-08-08`purs-tidy` for PureScript (#3863)toastal
* purs-tidy * update email address for toastal
2021-08-06Fix lint tests failing due to multibyte chars. (#3858)Horacio Sanson
For some reason CI tests started failing with these errors: > ale_linters/eruby/erb.vim:1:1: Use scriptencoding when multibyte char exists (see :help :scriptencoding) > ale_linters/mail/languagetool.vim:1:1: Use scriptencoding when multibyte char exists (see :help :scriptencoding) Not sure at which point or what changed for this to happen but this MR fixes it by removing the multibyte chars present on the problem files. Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-07-25Add importMap option to deno Initialization Options (#3827)Arnold Chand
* feat(deno): move init options to handlers * feat(deno): add deno lsp support for js files * feat(deno): use default map option * feat(docs): add deno import map option * feat(deno): add tests for importMap option * fix(deno): use full path in importMap * feat(deno): remove deno as linter for js, separate PR * fix(deno): test for executable * fix(deno-test): include filename to simplify function
2021-07-25Python support poetry (#3834)Daniel Roseman
* Add poetry support to python linters and black fixer. * Update python.vim to detect poetry project. * Update ale.vim, add an option for poetry `g:ale_python_auto_poetry`. * Update ale-python.txt, add poetry support. * Add and update poetry related tests. Co-authored-by: unc0 <unc0@users.noreply.github.com>
2021-07-23Vim popup (#3817)D. Ben Knoble
* implement vim popups for preview Details on implementation ------------------------- - we make use of the |popupwin| api - we split implementations (Nvim* vs. Vim* prefix) and call the right one based on has('nvim') - we follow a similar structure in each function, using the relevant API - popup_list, win_execute, popup_settext in VimShow - popup_create in VimCreate - popup_close in VimClose Some differences ---------------- - we DON'T have VimPrepareWindowContent because we use arguments to popup_create for borders, padding, etc., and it also takes care of buffer creation. - we follow the protocol of setting and using w:preview for information, but we only need the ID - InsertEnter is the only autocommand required, because of popup_create's moved argument. Any cursor movement with 'any' will close the popup. This in turns means VimClose is only called from InsertMode, so no mode-restoration necessary - we don't tweak too much in the buffer because vim's popup buffers already have most relevant settings and aren't editable without calling popup functions. - I enabled scrollbars, close buttons, dragging, and resizing - vim popups get as big as they need to by default, so no worrying about truncating/hiding/size Note: we might want to consider changing w:preview to w:ale_preview to avoid clashes if someone else tries to use the same variable * floating window: document that vim supports it * lint: fix indent/cont. lines
2021-07-21Fix 3801 - Add ALEDummySign some width. (#3832)Horacio Sanson
* Fix 3801 - Add ALEDummySign some width. Due to changes in NeoVim 0.5 the g:ale_sign_column_always configuration stopped working. This PR sets the ALEDummySign to a blank space so when g: ale_sign_column_always is set we have a sign with 1 width allowing the configuration to work as before. https://github.com/neovim/neovim/issues/13635 * Fix visual artifact on dummy sign * Fix visual artifact on dummy sign (attempt 2) Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-07-20Correct typo in python config filenames (#3826)foobarbyte
* Correct typo in a config file filename. .tool_versions should be .tool-versions * Correct typo in config file names. .tool_versions should be .tool-versions
2021-07-20racket: support racket-langserver lsp (#3808)D. Ben Knoble
* racket: support racket-langserver lsp * racket-langserver: find highest dir with init.rkt * autoload/ale/racket: re-indent to 4 spaces * racket: lint: sort supported tools * racket: lint: function! This is _not_ needed anymore, but the lint wants it. See :help E127 * racket-langserver: do not use new dict format * racket: lint: use snake_case * add tests for racket-langserver * racket-langserver tests: correct result values
2021-07-17Python .tool versions (#3820)foobarbyte
* Also check for asdf-vm's .tool_versions file A minimal python project may only be specifying a python version using a version management tool like asdf-vm, without providing other common python project configuration files. asdf-vm creates a single .tool_versions file in the managed directory. By checking for .tool_versions in addition to other common python config files we ensure that python linters (whose behaviour typically depends on a particular python version) will run with the same version of python used by the project. This will also be the same python version used by vim itself when it is run from inside the project's directories. * add .tool_versions to ale-python-root documentation This reflects the corresponding change to autoload/ale/python.vim
2021-07-16Add support for `dart format` fixer (#3764)ghsang
2021-07-14added filename to stdin stream of isort (#3815)Jeff Willette
modified tests to run with new format Co-authored-by: Jeff Willette <jeff@Jeffs-MacBook-Pro.local>
2021-07-13add autoflake fixer (#3779)Nikolay Zakirov
* first attempt * added autoflake executable * added Windows executable for appveyor * delete unused files * corrected wrong sorting
2021-07-13Fix 3373 - do not crash on HandleUserData with invalid json (#3807)Horacio Sanson
Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-07-09Add support for `lua-format` fixer. (#3804)Mathias Jean Johansen
2021-07-04Add pandoc as a markdown fixer (#3641)Jesse Hathaway
Utilize pandoc to fix markdown files, currently set to Github-Flavored Markdown, but that can be changed by setting, ale_markdown_pandoc_options.
2021-07-04fix: cflags parser: no absolute path for '-include' (#3775)Michael Jeanson
Both '-include' and '-imacros' take a file as an argument that will then be searched in the include path like a regular '#include "..."' statement in a source file. As such, they should not have their path converted to an absolute path. Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
2021-07-04black fixer: --pyi option was appended without a space (#3759)Buck Evan
2021-07-03Add stylua fixer for lua (#3789)Robert Liebowitz
2021-07-03Deduplicate items in location list (#3792)Gregory Anders
2021-06-29When repeating selections, jump to the last selected itemw0rp
2021-06-19fix(eslint): yarn 2 project cwd (#3684)Shannon Moeller
* eslint-handler: fix getcwd when there is no node_modules
2021-06-19Fix breakage w/ plugins that inadvertently trigger ALE in `execute()` (#3719)حبيب الامين
Co-authored-by: w0rp <w0rp@users.noreply.github.com>
2021-06-19Close #3433 - Only use noselect if set for automatic completionw0rp
2021-05-27Make staticcheck configurable with GOPATH detectionw0rp
2021-05-27ocaml: prepare for filetype separation (#3732)Pau Ruiz Safont
The ocaml filetype is currently used for several, different file formats. This causes problems as not all tools support all formats. New filetypes are introduced to support this separation, this needs some changes in ale that are fortunately backwards-compatible. These change add ocamlinterface file support for ocp-indent, merlin, ocamlformat and ocaml-lsp. For ocaml-lsp I took the liberty to add all recognised language ids, even if they are not supported. ols has not been changed as the project has been abandoned since 2019.
2021-05-26Enable gopls by default with GOPATH detectionw0rp
2021-05-25Use stdin/out for cmake-format (#3725)awang
cmake-format added support for reading from/outputting to stdin/out as of v0.3.6, released 2018-04-10 (commit 2e2aff2) [0]. Reading from stdin is preferable over reading from a temporary file because when given a concrete file cmake-format will look for its config file (.cmake-format.py or similar) in the parent directories of the provided file. If the temporary file is off in a tmpdir somewhere (e.g., /tmp on *nix), cmake-format will almost certainly not come across the user's intended format configuration file, making it appear that cmake-format is ignoring the config file. If cmake-format reads from stdin, though, it'll look for its config file in its current working directory and its parent directories, in a similar manner to clang-format. This has a much higher chance of running across the intended config file. [0]: https://github.com/cheshirekow/cmake_format/releases/tag/v0.3.6 Co-authored-by: Alex Wang <ts826848@gmail.com>
2021-05-23Fix 3524 - parse buffer signs with getplaced() function (#3648)Horacio Sanson
Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-05-04Fix a bug when code actions have no changesw0rp
2021-04-20Fix stylelint not obeying project-specific rules (#3272)Jay Sitter
* Fix stylelint not obeying project-specific rules * Fix tests * Fix test * Fix test
2021-04-15Updated `solhint` linter to be able to use a local installation (#3682)Henrique Barcelos
* fix: added support for local solhint executable * feat: added support for matching parse errors * test: added test for solhint command callback and handler * chore: removed command callback test * refactor: made solhint handler structure closer to eslint
2021-04-12Don't exit visual mode on floating preview close (#3689)Kevin Clark
2021-04-09feat: Add protolint as linter and fixer (#2911)yohei yoshimuta
2021-04-07apple-swift-format: linter and fixer with config swiftpm support (#3671)bosr
2021-03-26Add support for V: "v" (compiler) and "vfmt" fixer. (#3622)fiatjaf
* v: add "v fmt" fixer. * v: add "v" (build) linter. * v: fix vlint complaints and add documentation. * v: add tests. * v: use ale#Pad().
2021-03-24Add nixfmt as a Nix fixer. (#3651)David Houston
* Add nixfmt fixer. * Replace manual options pad with ale#Pad()
2021-03-23Switch to using buildifier's -path option (#3640)Jon Parise
Buildifier offers a -path command line option: > Buildifier's reformatting depends in part on the path to the file > relative to the workspace directory. Normally buildifier deduces > that path from the file names given, but the path can be given > explicitly with the -path argument. This is especially useful when > reformatting standard input, or in scripts that reformat a temporary > copy of a file. This lets us drop our `-type`-guessing logic. For the moment, we rely on the buffer filename being "relative to the workspace directory", which it generally is, but in a future change, we should introduce logic that will locate the WORKSPACE file and adjusts the filename relative to that directory. This could be complicated based on the working directory in which `buildifier` is executed, so a little more research is necessary to implement that logic correctly.
2021-03-23Add support for `ptop` fixer (#3652)BarrOff
* Add support for `ptop` fixer * add test file for ptop tests * called wrong fixer in assertion test * use ' %s %t' instead of ' %t %t'
2021-03-21#3633 - Move linter tests into test/linterw0rp