summaryrefslogtreecommitdiff
path: root/utils/installer/config.example.lua
blob: 657b1fba37b373df46ad007a4b8cb0bedf8645b9 (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
--[[
 THESE ARE EXAMPLE CONFIGS FEEL FREE TO CHANGE TO WHATEVER YOU WANT
 `lvim` is the global options object
]]

-- vim options
vim.opt.shiftwidth = 2
vim.opt.tabstop = 2
vim.opt.relativenumber = true

-- general
lvim.log.level = "info"
lvim.format_on_save = {
  enabled = true,
  pattern = "*.lua",
  timeout = 1000,
}
-- to disable icons and use a minimalist setup, uncomment the following
-- lvim.use_icons = false

-- keymappings <https://www.lunarvim.org/docs/configuration/keybindings>
lvim.leader = "space"
-- add your own keymapping
lvim.keys.normal_mode["<C-s>"] = ":w<cr>"

-- lvim.keys.normal_mode["<S-l>"] = ":BufferLineCycleNext<CR>"
-- lvim.keys.normal_mode["<S-h>"] = ":BufferLineCyclePrev<CR>"

-- -- Use which-key to add extra bindings with the leader-key prefix
-- lvim.builtin.which_key.mappings["W"] = { "<cmd>noautocmd w<cr>", "Save without formatting" }
-- lvim.builtin.which_key.mappings["P"] = { "<cmd>Telescope projects<CR>", "Projects" }

-- -- Change theme settings
-- lvim.colorscheme = "lunar"

lvim.builtin.alpha.on_config = function()
  lvim.builtin.alpha.opts.active = true
  lvim.builtin.alpha.opts.mode = "dashboard"
end

lvim.builtin.nvimtree.on_config = function()
  lvim.builtin.nvimtree.opts.view.side = "left"
  lvim.builtin.nvimtree.opts.renderer.icons.show.git = false
end

-- lvim.builtin.treesitter.on_config = function()
--   lvim.builtin.treesitter.ignore_install = { "haskell" }
-- end

-- -- generic LSP settings <https://www.lunarvim.org/docs/languages#lsp-support>
-- lvim.lsp.on_config = function()
--   --- disable automatic installation of servers
--   lvim.lsp.installer.setup.automatic_installation = false

--   ---configure a server manually. IMPORTANT: Requires `:LvimCacheReset` to take effect
--   ---see the full default list `:lua =lvim.lsp.automatic_configuration.skipped_servers`
--   vim.list_extend(lvim.lsp.automatic_configuration.skipped_servers, { "pyright" })
--   local opts = {} -- check the lspconfig documentation for a list of all possible options
--   require("lvim.lsp.manager").setup("pyright", opts)

--   ---remove a server from the skipped list, e.g. eslint, or emmet_ls. IMPORTANT: Requires `:LvimCacheReset` to take effect
--   ---`:LvimInfo` lists which server(s) are skipped for the current filetype
--   lvim.lsp.automatic_configuration.skipped_servers = vim.tbl_filter(function(server)
--     return server ~= "emmet_ls"
--   end, lvim.lsp.automatic_configuration.skipped_servers)

--   -- you can set a custom on_attach function that will be used for all the language servers
--   -- See <https://github.com/neovim/nvim-lspconfig#keybindings-and-completion>
--   lvim.lsp.on_attach_callback = function(client, bufnr)
--     local function buf_set_option(...)
--       vim.api.nvim_buf_set_option(bufnr, ...)
--     end
--     --Enable completion triggered by <c-x><c-o>
--     buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc")
--   end

--   -- linters and formatters <https://www.lunarvim.org/docs/languages#lintingformatting>
--   local formatters = require "lvim.lsp.null-ls.formatters"
--   formatters.setup {
--     { command = "stylua" },
--     {
--       command = "prettier",
--       extra_args = { "--print-width", "100" },
--       filetypes = { "typescript", "typescriptreact" },
--     },
--   }
--   local linters = require "lvim.lsp.null-ls.linters"
--   linters.setup {
--     { command = "flake8", filetypes = { "python" } },
--     {
--       command = "shellcheck",
--       args = { "--severity", "warning" },
--     },
--   }

--   -- Additional Plugins <https://www.lunarvim.org/docs/plugins#user-plugins>
--   lvim.plugins = {
--     {
--       "folke/trouble.nvim",
--       cmd = "TroubleToggle",
--     },
--   }

--   -- Autocommands (`:help autocmd`) <https://neovim.io/doc/user/autocmd.html>
--   vim.api.nvim_create_autocmd("FileType", {
--     pattern = "zsh",
--     callback = function()
--       -- let treesitter use bash highlight for zsh files as well
--       require("nvim-treesitter.highlight").attach(0, "bash")
--     end,
--   })
-- end