70 lines
2.8 KiB
Lua
70 lines
2.8 KiB
Lua
--[[
|
||
Copyright 2023 Oscar Wallberg
|
||
|
||
Licensed under the Apache License, Version 2.0 (the "License");
|
||
you may not use this file except in compliance with the License.
|
||
You may obtain a copy of the License at
|
||
|
||
https://www.apache.org/licenses/LICENSE-2.0
|
||
|
||
Unless required by applicable law or agreed to in writing, software
|
||
distributed under the License is distributed on an "AS IS" BASIS,
|
||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
See the License for the specific language governing permissions and
|
||
limitations under the License.
|
||
]]
|
||
|
||
vim.g.symbols_outline = {
|
||
highlight_hovered_item = true,
|
||
show_guides = true,
|
||
auto_preview = true,
|
||
position = "left",
|
||
relative_width = true,
|
||
width = 25,
|
||
auto_close = false,
|
||
show_numbers = true,
|
||
show_relative_numbers = true,
|
||
show_symbol_details = true,
|
||
preview_bg_highlight = "Pmenu",
|
||
keymaps = { -- These keymaps can be a string or a table for multiple keys
|
||
close = { "<Esc>", "q", },
|
||
goto_location = "<Cr>",
|
||
focus_location = "o",
|
||
hover_symbol = "<C-space>",
|
||
toggle_preview = "K",
|
||
rename_symbol = "r",
|
||
code_actions = "a",
|
||
},
|
||
lsp_blacklist = {},
|
||
symbol_blacklist = {},
|
||
symbols = {
|
||
File = { icon = "", hl = "TSURI", },
|
||
Module = { icon = "", hl = "TSNamespace", },
|
||
Namespace = { icon = "", hl = "TSNamespace", },
|
||
Package = { icon = "", hl = "TSNamespace", },
|
||
Class = { icon = "𝓒", hl = "TSType", },
|
||
Method = { icon = "ƒ", hl = "TSMethod", },
|
||
Property = { icon = "", hl = "TSMethod", },
|
||
Field = { icon = "", hl = "TSField", },
|
||
Constructor = { icon = "", hl = "TSConstructor", },
|
||
Enum = { icon = "ℰ", hl = "TSType", },
|
||
Interface = { icon = "ﰮ", hl = "TSType", },
|
||
Function = { icon = "", hl = "TSFunction", },
|
||
Variable = { icon = "", hl = "TSConstant", },
|
||
Constant = { icon = "", hl = "TSConstant", },
|
||
String = { icon = "𝓐", hl = "TSString", },
|
||
Number = { icon = "#", hl = "TSNumber", },
|
||
Boolean = { icon = "⊨", hl = "TSBoolean", },
|
||
Array = { icon = "", hl = "TSConstant", },
|
||
Object = { icon = "⦿", hl = "TSType", },
|
||
Key = { icon = "🔐", hl = "TSType", },
|
||
Null = { icon = "NULL", hl = "TSType", },
|
||
EnumMember = { icon = "", hl = "TSField", },
|
||
Struct = { icon = "𝓢", hl = "TSType", },
|
||
Event = { icon = "🗲", hl = "TSType", },
|
||
Operator = { icon = "+", hl = "TSOperator", },
|
||
TypeParameter = { icon = "𝙏", hl = "TSParameter", },
|
||
},
|
||
}
|
||
vim.api.nvim_set_keymap("n", "<leader>o", ":SymbolsOutlineOpen<CR>", { noremap = true, silent = true, })
|