summaryrefslogtreecommitdiff
path: root/parts/users/seth/programs/neovim/config/plugins/general.lua
blob: 06ef64c888eae095664a65ab33be727336c22945 (plain)
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
---- catppuccin
local compile_path = vim.fn.stdpath("cache") .. "/catppuccin-nvim"
vim.fn.mkdir(compile_path, "p")
vim.opt.runtimepath:append(compile_path)

require("catppuccin").setup({
	compile_path = compile_path,
	flavour = "mocha", -- mocha, macchiato, frappe, latte
	integrations = {
		cmp = true,
		flash = true,
		gitsigns = true,
		native_lsp = {
			enabled = true,
		},
		neotree = true,
		treesitter_context = true,
		treesitter = true,
		telescope = true,
		lsp_trouble = true,
	},
	no_italic = true,
})
vim.api.nvim_command("colorscheme catppuccin")

---- bufferline
require("bufferline").setup({
	options = {
		always_show_bufferline = false,
		highlights = require("catppuccin.groups.integrations.bufferline").get(),
		diagnostics = "nvim_lsp",
		mode = "buffers",
		numbers = "ordinal",
		separator_style = "slant",
		offsets = {
			{
				filetype = "neo-tree",
				text = "neo-tree",
				highlight = "Directory",
				text_align = "left",
			},
		},
	},
})

---- gitsigns
require("gitsigns").setup()

---- indent-blankline.nvim
require("ibl").setup({
	exclude = {
		filetype = {
			"help",
			"neo-tree",
			"Trouble",
			"lazy",
			"mason",
			"notify",
			"toggleterm",
		},
	},

	indent = {
		char = "│",
		tab_char = "│",
	},

	scope = { enabled = false },
})

---- lualine
require("lualine").setup({
	options = {
		theme = "catppuccin",
	},
	extensions = { "neo-tree", "trouble" },
})

---- mini.nvim
require("mini.pairs").setup({})
require("mini.indentscope").setup({
	options = { try_as_border = true },
})

vim.api.nvim_create_autocmd("FileType", {
	pattern = {
		"help",
		"neo-tree",
		"Trouble",
		"lazy",
		"mason",
		"notify",
		"toggleterm",
	},
	callback = function()
		vim.b.miniindentscope_disable = true
	end,
})

---- nvim-tree
require("neo-tree").setup({
	sources = { "filesystem", "buffers", "git_status", "document_symbols" },
	open_files_do_not_replace_types = { "terminal", "Trouble", "qf", "Outline" },
	filesystem = {
		bind_to_cwd = false,
		follow_current_file = { enabled = true },
		use_libuv_file_watcher = true,
	},
})

---- which-key
require("which-key").setup({
	plugins = { spelling = true },
})