Add some more tools for fixing problems with Python files
This commit is contained in:
parent
74691269ce
commit
e80389f8d4
@ -2,10 +2,30 @@
|
||||
" Description: A registry of functions for fixing things.
|
||||
|
||||
let s:default_registry = {
|
||||
\ 'autopep8': {
|
||||
\ 'function': 'ale#handlers#python#AutoPEP8',
|
||||
\ 'suggested_filetypes': ['python'],
|
||||
\ 'description': 'Fix PEP8 issues with autopep8.',
|
||||
\ },
|
||||
\ 'eslint': {
|
||||
\ 'function': 'ale#handlers#eslint#Fix',
|
||||
\ 'suggested_filetypes': ['javascript'],
|
||||
\ 'description': '',
|
||||
\ 'description': 'Apply eslint --fix to a file.',
|
||||
\ },
|
||||
\ 'isort': {
|
||||
\ 'function': 'ale#handlers#python#ISort',
|
||||
\ 'suggested_filetypes': ['python'],
|
||||
\ 'description': 'Sort Python imports with isort.',
|
||||
\ },
|
||||
\ 'remove_trailing_lines': {
|
||||
\ 'function': 'ale#fix#generic#RemoveTrailingBlankLines',
|
||||
\ 'suggested_filetypes': [],
|
||||
\ 'description': 'Remove all blank lines at the end of a file.',
|
||||
\ },
|
||||
\ 'yapf': {
|
||||
\ 'function': 'ale#handlers#python#YAPF',
|
||||
\ 'suggested_filetypes': ['python'],
|
||||
\ 'description': 'Fix Python files with yapf.',
|
||||
\ },
|
||||
\}
|
||||
|
||||
|
@ -41,3 +41,25 @@ function! ale#handlers#python#AutoPEP8(buffer, lines) abort
|
||||
\ 'command': 'autopep8 -'
|
||||
\}
|
||||
endfunction
|
||||
|
||||
function! ale#handlers#python#ISort(buffer, lines) abort
|
||||
let l:config = ale#path#FindNearestFile(a:buffer, '.isort.cfg')
|
||||
let l:config_options = !empty(l:config)
|
||||
\ ? ' --settings-path ' . ale#Escape(l:config)
|
||||
\ : ''
|
||||
|
||||
return {
|
||||
\ 'command': 'isort' . l:config_options . ' -',
|
||||
\}
|
||||
endfunction
|
||||
|
||||
function! ale#handlers#python#YAPF(buffer, lines) abort
|
||||
let l:config = ale#path#FindNearestFile(a:buffer, '.style.yapf')
|
||||
let l:config_options = !empty(l:config)
|
||||
\ ? ' --style ' . ale#Escape(l:config)
|
||||
\ : ''
|
||||
|
||||
return {
|
||||
\ 'command': 'yapf --no-local-style' . l:config_options,
|
||||
\}
|
||||
endfunction
|
||||
|
Loading…
Reference in New Issue
Block a user