-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathefm-langserver-config.yaml
121 lines (103 loc) · 2.9 KB
/
efm-langserver-config.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
# yaml-language-server: $schema=https://raw.githubusercontent.com/mattn/efm-langserver/master/schema.json
version: 2
tools:
# Linters
fish-lint: &fish-lint
lint-command: "fish --no-execute ${INPUT}"
lint-formats:
# Example output:
# file.fish (line 12): Expected keyword 'in', but found a string
# NOTE: Using `%s` for file name because for some reason `%f` doesn't work
- "%s (line %l): %m"
pylint: &pylint
lint-source: "pylint"
lint-command: "pylint --msg-template '{path}:{line}:{column}:{C}:{msg} [{symbol}]' ${INPUT}"
lint-formats:
# Example output:
# file.py:1:2:W:Unused import os [unused-import]
- "%f:%l:%c:%t:%m"
selene: &selene
lint-command: "selene --quiet --config ${HOME}/.config/selene/selene.toml ${INPUT}"
lint-formats:
# Example output:
# file.lua:1:2: warning[unused_variable]: x is assigned a value, but never used
- "%f:%l:%c: %t%s[%s]: %m"
shellcheck: &shellcheck
lint-command: "shellcheck --format gcc --enable all ${INPUT}"
lint-formats:
# Example output:
# file.sh:1:2: note: Double quote to prevent globbing and word splitting. [SC2086]
- "%f:%l:%c: %t%s: %m [SC%n]"
vint: &vint
lint-command: "vint --no-color --enable-neovim ${INPUT}"
lint-formats:
# Example output:
# file.vim:1:2: Use the full option name `shiftwidth` instead of `sw` (see :help option-summary)
- "%f:%l:%c: %m"
yamllint: &yamllint
lint-source: "yamllint"
lint-command: "yamllint --format parsable ${INPUT}"
lint-formats:
# Example output:
# file.yaml:1:2: [error] duplication of key "hello" in mapping (key-duplicates)
- "%f:%l:%c: [%t%s] %m"
# Formatters
black: &black
format-command: "black -"
format-stdin: true
djhtml: &djhtml
format-command: "djhtml --tabwidth 2 -"
format-stdin: true
fish-fmt: &fish-fmt
format-command: "fish_indent"
format-stdin: true
fixjson: &fixjson
format-command: "fixjson"
format-stdin: true
prettier: &prettier
format-command: "prettierd ${INPUT}"
format-stdin: true
ruff-isort: &ruff-isort
format-command: "ruff check --fix --select=I -"
format-stdin: true
shfmt: &shfmt
format-command: "shfmt -i 2"
format-stdin: true
stylua: &stylua
format-command: "stylua --search-parent-directories -"
format-stdin: true
languages:
css:
- <<: *prettier
fish:
- <<: *fish-fmt
- <<: *fish-lint
graphql:
- <<: *prettier
html:
- <<: *prettier
htmldjango:
- <<: *djhtml
javascript:
- <<: *prettier
javascriptreact:
- <<: *prettier
json:
- <<: *fixjson
lua:
- <<: *selene
- <<: *stylua
markdown:
- <<: *prettier
python:
- <<: *black
- <<: *pylint
- <<: *ruff-isort
sh:
- <<: *shellcheck
- <<: *shfmt
vim:
- <<: *vint
yaml:
- <<: *prettier
- <<: *yamllint