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
|
return {
"kristijanhusak/vim-dadbod-ui",
dependencies = {
{ "tpope/vim-dadbod", lazy = true },
{ "kristijanhusak/vim-dadbod-completion", ft = { "sql", "mysql", "plsql" }, lazy = true },
},
cmd = {
"DBUI",
"DBUIToggle",
"DBUIAddConnection",
"DBUIFindBuffer",
},
init = function()
-- Your DBUI configuration
vim.g.db_ui_use_nerd_fonts = 1
local home = vim.fn.expand("~")
vim.g.dbs = {
firefox = "sqlite://" .. home .. "/.mozilla/firefox/si.default/places.sqlite",
mysql = "mariadb://user:password@localhost/mysql",
postsql = "postgresql://postgres:mypassword@localhost:5432/postgresql",
qutebrowser = "sqlite://" .. home .. "/.local/share/qutebrowser/history.sqlite",
sqlite = "sqlite://" .. home .. "/.local/share/db/sqlite.db",
}
local wk = require("which-key")
wk.add({
mode = { "n" },
{ "<localleader>d", group = "DB" },
})
end,
config = function()
local function db_completion()
require("cmp").setup.buffer({ sources = { { name = "vim-dadbod-completion" } } })
end
vim.api.nvim_create_autocmd("FileType", {
pattern = {
"sql",
"mysql",
"plsql",
},
callback = function()
vim.schedule(db_completion)
end,
})
end,
keys = {
{ "<localleader>du", "<cmd>DBUI<cr>", desc = "DB UI" },
{ "<localleader>dt", "<cmd>DBUIToggle<cr>", desc = "Toggle DB UI" },
{ "<localleader>da", "<cmd>DBUIAddConnection<cr>", desc = "Add connection" },
{ "<localleader>df", "<cmd>DBUIFindBuffer<cr>", desc = "Find buffer" },
{ "<localleader>dr", "<cmd>DBUIRenameBuffer<cr>", desc = "Rename buffer" },
{ "<localleader>di", "<cmd>DBUILastQueryInfo<cr>", desc = "Last query info" },
},
}
|