Add an option for completely disabling command history, and add documentation
This commit is contained in:
parent
3a2286a1b8
commit
ca17b5aebd
@ -458,7 +458,11 @@ function! s:RunJob(options) abort
|
||||
\}
|
||||
endif
|
||||
|
||||
call ale#history#Add(l:buffer, l:status, l:job_id, l:command)
|
||||
if g:ale_history_enabled
|
||||
call ale#history#Add(l:buffer, l:status, l:job_id, l:command)
|
||||
else
|
||||
let g:ale_buffer_info[l:buffer].history = []
|
||||
endif
|
||||
endfunction
|
||||
|
||||
" Determine which commands to run for a link in a command chain, or
|
||||
|
26
doc/ale.txt
26
doc/ale.txt
@ -186,6 +186,19 @@ g:ale_enabled *g:ale_enabled*
|
||||
the |ALEToggle| command, which changes this option.
|
||||
|
||||
|
||||
g:ale_history_enabled *g:ale_history_enabled*
|
||||
|
||||
Type: |Number|
|
||||
Default: `1`
|
||||
|
||||
When set to `1`, ALE will remember the last few commands which were run
|
||||
for every buffer which is open. This information can be viewed with the
|
||||
|ALEInfo| command. The size of the buffer can be controlled with the
|
||||
|g:ale_max_buffer_history_size| option.
|
||||
|
||||
This option can be disabled if storing a command history is not desired.
|
||||
|
||||
|
||||
g:ale_keep_list_window_open *g:ale_keep_list_window_open*
|
||||
|
||||
Type: |Number|
|
||||
@ -311,6 +324,19 @@ g:ale_linters *g:ale_linters*
|
||||
let g:ale_linters = {'c': 'all'}
|
||||
<
|
||||
|
||||
g:ale_max_buffer_history_size *g:ale_max_buffer_history_size*
|
||||
|
||||
Type: |Number|
|
||||
Default: `20`
|
||||
|
||||
This setting controls the maximum number of commands which will be stored in
|
||||
the command history used for |ALEInfo|. Command history will be rotated in
|
||||
a FIFO manner. If set to a number <= 0, then the history will be
|
||||
continuously set to an empty |List|.
|
||||
|
||||
History can be disabled completely with |g:ale_history_enabled|.
|
||||
|
||||
|
||||
g:ale_open_list *g:ale_open_list*
|
||||
|
||||
Type: |Number|
|
||||
|
@ -134,6 +134,9 @@ let g:ale_warn_about_trailing_whitespace =
|
||||
" A flag for controlling the maximum size of the command history to store.
|
||||
let g:ale_max_buffer_history_size = get(g:, 'ale_max_buffer_history_size', 20)
|
||||
|
||||
" A flag for enabling or disabling the command history.
|
||||
let g:ale_history_enabled = get(g:, 'ale_history_enabled', 1)
|
||||
|
||||
function! s:ALEInitAuGroups() abort
|
||||
augroup ALERunOnTextChangedGroup
|
||||
autocmd!
|
||||
|
@ -16,6 +16,7 @@ Before:
|
||||
\})
|
||||
|
||||
After:
|
||||
let g:ale_history_enabled = 1
|
||||
unlet g:history
|
||||
let g:ale_buffer_info = {}
|
||||
let g:ale_max_buffer_history_size = 20
|
||||
@ -40,6 +41,16 @@ Execute(History should be set when commands are run):
|
||||
" The Job ID will change each time, but we can check the type.
|
||||
AssertEqual type(1), type(g:history[0].job_id)
|
||||
|
||||
Execute(History should be not set when disabled):
|
||||
AssertEqual 'foobar', &filetype
|
||||
|
||||
let g:ale_history_enabled = 0
|
||||
|
||||
call ale#Lint()
|
||||
call ale#engine#WaitForJobs(2000)
|
||||
|
||||
AssertEqual 0, len(g:ale_buffer_info[bufnr('%')].history)
|
||||
|
||||
Execute(History items should be popped after going over the max):
|
||||
let g:ale_buffer_info[1] = {
|
||||
\ 'history': map(range(20), '{''status'': ''started'', ''job_id'': v:val, ''command'': ''foobar''}'),
|
||||
|
Loading…
Reference in New Issue
Block a user