-
Notifications
You must be signed in to change notification settings - Fork 0
/
config.lua
80 lines (73 loc) · 2.2 KB
/
config.lua
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
-- This Source Code Form is subject to the terms of the Mozilla Public
-- License, v. 2.0. If a copy of the MPL was not distributed with this
-- file, You can obtain one at https://mozilla.org/MPL/2.0/.
local M = {}
-- Default config
local _config = {
-- highlight groups used for diagnostic marks
-- by default link to corresponding `DiagnosticSign*` groups
d_hl = {
hint = 'dmapHint',
info = 'dmapInfo',
warn = 'dmapWarn',
error = 'dmapError',
},
-- highlight group used for the diagnostic window
-- by default link to `NormalFloat`
win_hl = 'dmapWin',
-- text used for diagnostic marks
-- ⚠ the text must be one character long
d_mark = {
hint = '╸',
info = '╸',
warn = '╸',
error = '╸',
},
-- max height of the diagnostic window
-- if not set defaults to the height of the reference window
-- must be positive
win_max_height = nil,
-- alignment of the diagnostic window relative to the reference window
-- `left` | `right`
win_align = 'right',
-- horizontal offset (in character cell) of the diagnostic window
-- must be positive
win_h_offset = 1,
-- vertical offset (in character cell) of the diagnostic window
-- must be positive
win_v_offset = 1,
-- ignore these diagnostic sources
ignore_sources = {},
-- ignore these filetypes buffer
ignore_filetypes = { 'NvimTree' },
-- severity option passed to `vim.diagnostic.get()` (`:h diagnostic-severity`)
severity = nil,
-- override arguments passed to `nvim_open_win` (see `:h nvim_open_win`)
-- ⚠ can potentially break the plugin, use at your own risk
nvim_float_api = nil,
}
local win_config = {
style = 'minimal',
border = 'none',
relative = 'win',
row = 0,
col = 0,
width = 1,
zindex = 20,
}
function M.init(config)
_config = vim.tbl_deep_extend('force', _config, config or {})
if _config.nvim_float_api then
win_config =
vim.tbl_deep_extend('force', win_config, _config.nvim_float_api)
end
win_config.height = _config.height
_config.win_config = win_config
-- namespace for diagnostic window highlights
_config.ns_hl_id = vim.api.nvim_create_namespace('dmap_hl_win')
return _config
end
function M.get_config()
return _config
end
return M