return
{
dir = vim.fn.expand("~/dev/sql-cli/nvim-plugin"),
name = "sql-cli.nvim",
lazy = false,
config = function()
require('sql-cli').setup({
debug = true,
command = vim.fn.expand("~/dev/sql-cli/target/release/sql-cli"),
output_format = "table",
query_history = {
persist = true, max_items = 100, auto_save = true, },
syntax = {
patterns = {
{ pattern = [[\<\d\{8\}-\d\{2\}:\d\{2\}:\d\{2\}\.\d\{3\}\>]], group = "FixTimestamp",
color = { gui = "Blue", cterm = "Blue" } },
{ pattern = [[\w\+\.\d\+]], group = "FixMultiLeg",
color = { gui = "Cyan", cterm = "Cyan", bold = true } },
{ pattern = [[\c\<ExecutionReport\>]], group = "FixExecReport",
color = { gui = "Green", cterm = "Green", bold = true } }, { pattern = [[\c\<AllocationReport\>]], group = "FixAllocReport",
color = { gui = "Cyan", cterm = "Cyan", bold = true } }, { pattern = [[\c\<NewOrderSingle\>]], group = "FixNewOrder",
color = { gui = "Yellow", cterm = "Yellow", bold = true } }, { pattern = [[\c\<OrderCancelReject\>]], group = "FixCancelReject",
color = { gui = "Red", cterm = "Red", bold = true } },
{ pattern = [[\c\<Pendingnew\>]], group = "FixStatPendingNew",
color = { gui = "Yellow", cterm = "Yellow" } }, { pattern = [[\c\<Pendingrep\>]], group = "FixStatPendingRep",
color = { gui = "Yellow", cterm = "Yellow" } }, { pattern = [[\c\<PendingCancel\>]], group = "FixStatPendingCancel",
color = { gui = "Yellow", cterm = "Yellow" } }, { pattern = [[\c\<New\>]], group = "FixStatNew",
color = { gui = "Cyan", cterm = "Cyan" } }, { pattern = [[\c\<Partial\>]], group = "FixStatPartial",
color = { gui = "Magenta", cterm = "Magenta" } }, { pattern = [[\c\<Filled\>]], group = "FixStatFilled",
color = { gui = "Green", cterm = "Green", bold = true } }, { pattern = [[\c\<Cancelled\>]], group = "FixStatCanceled",
color = { gui = "DarkGray", cterm = "DarkGray" } }, { pattern = [[\c\<Canceled\>]], group = "FixStatCanceled2",
color = { gui = "DarkGray", cterm = "DarkGray" } }, { pattern = [[\c\<Rejected\>]], group = "FixStatRejected",
color = { gui = "Red", cterm = "Red", bold = true } },
{ pattern = [[\c\<Buy\>]], group = "FixSideBuy",
color = { gui = "Green", cterm = "Green", bold = true } }, { pattern = [[\c\<Sell\>]], group = "FixSideSell",
color = { gui = "Red", cterm = "Red", bold = true } },
{ pattern = [[\c\<Index\>]], group = "BBGIndex",
color = { gui = "Yellow", cterm = "Yellow", bold = true } },
{ pattern = [[\c\<Comdty\>]], group = "BBGComdty",
color = { gui = "Yellow", cterm = "Yellow", bold = true } },
{ pattern = [[\c\<Equity\>]], group = "BBGEquity",
color = { gui = "Cyan", cterm = "Cyan" } },
{ pattern = [[\c\<Govt\>]], group = "BBGGovt",
color = { gui = "Green", cterm = "Green" } },
{ pattern = [[\c\<Corp\>]], group = "BBGCorp",
color = { gui = "Magenta", cterm = "Magenta" } },
{ pattern = [[\c\<Curncy\>]], group = "BBGCurncy",
color = { gui = "Cyan", cterm = "Cyan", bold = true } },
{ pattern = [[\<[A-Z]\{2,3\}[FGHJKMNQUVXZ]\d\>]], group = "FuturesCode",
color = { gui = "Yellow", cterm = "Yellow" } },
{ pattern = [[\c\<NYSE\>]], group = "FixExchNYSE",
color = { gui = "Magenta", cterm = "Magenta" } }, { pattern = [[\c\<NASDAQ\>]], group = "FixExchNASDAQ",
color = { gui = "Magenta", cterm = "Magenta" } }, { pattern = [[\c\<LSE\>]], group = "FixExchLSE",
color = { gui = "Magenta", cterm = "Magenta" } },
{ pattern = [[\<[A-Z]\{3\}\>]], group = "CurrencyCode",
color = { gui = "Green", cterm = "Green" } },
{ pattern = [[\c\<NDS\>]], group = "FixInstNDS",
color = { gui = "Cyan", cterm = "Cyan" } }, { pattern = [[\c\<NFD\>]], group = "FixInstNFD",
color = { gui = "Yellow", cterm = "Yellow" } }, { pattern = [[\c\<CDS\>]], group = "FixInstCDS",
color = { gui = "Magenta", cterm = "Magenta" } }, { pattern = [[\c\<IRS\>]], group = "FixInstIRS",
color = { gui = "Green", cterm = "Green" } }, }
},
})
local multi_token_manager = require('sql-cli.multi_token_manager')
multi_token_manager.setup({
JWT_TOKEN = {
command = "powershell.exe -NoProfile -ExecutionPolicy Bypass -File $HOME\\dev\\sql-cli\\ExportJwt.ps1",
refresh_interval = 20, auto_refresh = true,
debug = true, },
JWT_TOKEN_PROD = {
command = "powershell.exe -NoProfile -ExecutionPolicy Bypass -File $HOME\\dev\\sql-cli\\ExportJwtProd.ps1",
refresh_interval = 840,
auto_refresh = true,
debug = false, },
})
multi_token_manager.create_commands()
vim.notify("SQL-CLI Multi-Token Manager configured (JWT_TOKEN @ 20s, JWT_TOKEN_PROD @ 840s)", vim.log.levels.INFO)
vim.notify("Commands: :TokenStatus, :TokenRefreshAll, :TokenRefresh [name]", vim.log.levels.INFO)
end,
}