From fb682be1997f812171def14976b5dfbef38c9f0d Mon Sep 17 00:00:00 2001 From: David Alexander Date: Thu, 15 Jun 2017 04:30:34 -0400 Subject: [PATCH] Fix for Crystal support (#651) * Strip color from Crystal compiler output * Don't lint files if the file doesn't exist * Lint files if they are readable --- ale_linters/crystal/crystal.vim | 4 ++-- autoload/ale.vim | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/ale_linters/crystal/crystal.vim b/ale_linters/crystal/crystal.vim index 8f38a61b..fd076e02 100644 --- a/ale_linters/crystal/crystal.vim +++ b/ale_linters/crystal/crystal.vim @@ -1,4 +1,4 @@ -" Author: Jordan Andree +" Author: Jordan Andree , David Alexander " Description: This file adds support for checking Crystal with crystal build function! ale_linters#crystal#crystal#Handle(buffer, lines) abort @@ -24,7 +24,7 @@ function! ale_linters#crystal#crystal#Handle(buffer, lines) abort endfunction function! ale_linters#crystal#crystal#GetCommand(buffer) abort - let l:crystal_cmd = 'crystal build -f json --no-codegen -o ' + let l:crystal_cmd = 'crystal build -f json --no-codegen --no-color -o ' let l:crystal_cmd .= ale#Escape(g:ale#util#nul_file) let l:crystal_cmd .= ' %s' diff --git a/autoload/ale.vim b/autoload/ale.vim index 9c4be7d2..7cf1def6 100644 --- a/autoload/ale.vim +++ b/autoload/ale.vim @@ -1,4 +1,4 @@ -" Author: w0rp +" Author: w0rp , David Alexander " Description: Primary code path for the plugin " Manages execution of linters when requested by autocommands @@ -85,7 +85,8 @@ function! ale#Lint(...) abort " Check if we previously requested checking the file. if has_key(s:should_lint_file_for_buffer, l:buffer) unlet s:should_lint_file_for_buffer[l:buffer] - let l:should_lint_file = 1 + " Lint files if they exist. + let l:should_lint_file = filereadable(expand('#' . l:buffer . ':p')) endif " Initialise the buffer information if needed.