118 lines
3.5 KiB
Lua
118 lines
3.5 KiB
Lua
vim.opt.number = true
|
|
|
|
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
|
if not vim.loop.fs_stat(lazypath) then
|
|
vim.fn.system({
|
|
"git",
|
|
"clone",
|
|
"--filter=blob:none",
|
|
"https://github.com/folke/lazy.nvim.git",
|
|
"--branch=stable", -- latest stable release
|
|
lazypath,
|
|
})
|
|
end
|
|
vim.opt.rtp:prepend(lazypath)
|
|
require("lazy").setup({ { "catppuccin/nvim", name = "catppuccin", priority = 1000 }, { "mhartington/formatter.nvim" } })
|
|
|
|
require("catppuccin").setup({
|
|
flavour = "mocha", -- latte, frappe, macchiato, mocha
|
|
background = { -- :h background
|
|
light = "latte",
|
|
dark = "mocha",
|
|
},
|
|
transparent_background = true, -- disables setting the background color.
|
|
show_end_of_buffer = false, -- shows the '~' characters after the end of buffers
|
|
term_colors = false, -- sets terminal colors (e.g. `g:terminal_color_0`)
|
|
dim_inactive = {
|
|
enabled = false, -- dims the background color of inactive window
|
|
shade = "dark",
|
|
percentage = 0.15, -- percentage of the shade to apply to the inactive window
|
|
},
|
|
no_italic = false, -- Force no italic
|
|
no_bold = false, -- Force no bold
|
|
no_underline = false, -- Force no underline
|
|
styles = { -- Handles the styles of general hi groups (see `:h highlight-args`):
|
|
comments = { "italic" }, -- Change the style of comments
|
|
conditionals = { "italic" },
|
|
loops = {},
|
|
functions = {},
|
|
keywords = {},
|
|
strings = {},
|
|
variables = {},
|
|
numbers = {},
|
|
booleans = {},
|
|
properties = {},
|
|
types = {},
|
|
operators = {},
|
|
},
|
|
color_overrides = {},
|
|
custom_highlights = {},
|
|
integrations = {
|
|
cmp = true,
|
|
gitsigns = true,
|
|
nvimtree = true,
|
|
treesitter = true,
|
|
notify = false,
|
|
mini = {
|
|
enabled = true,
|
|
indentscope_color = "",
|
|
},
|
|
-- For more plugins integrations please scroll down (https://github.com/catppuccin/nvim#integrations)
|
|
},
|
|
})
|
|
|
|
-- Utilities for creating configurations
|
|
local util = require("formatter.util")
|
|
|
|
-- Provides the Format, FormatWrite, FormatLock, and FormatWriteLock commands
|
|
require("formatter").setup({
|
|
-- Enable or disable logging
|
|
logging = true,
|
|
-- Set the log level
|
|
log_level = vim.log.levels.WARN,
|
|
-- All formatter configurations are opt-in
|
|
filetype = {
|
|
-- Formatter configurations for filetype "lua" go here
|
|
-- and will be executed in order
|
|
lua = {
|
|
-- "formatter.filetypes.lua" defines default configurations for the
|
|
-- "lua" filetype
|
|
require("formatter.filetypes.lua").stylua,
|
|
|
|
-- You can also define your own configuration
|
|
function()
|
|
-- Supports conditional formatting
|
|
if util.get_current_buffer_file_name() == "special.lua" then
|
|
return nil
|
|
end
|
|
|
|
-- Full specification of configurations is down below and in Vim help
|
|
-- files
|
|
return {
|
|
exe = "stylua",
|
|
args = {
|
|
"--search-parent-directories",
|
|
"--stdin-filepath",
|
|
util.escape_path(util.get_current_buffer_file_path()),
|
|
"--",
|
|
"-",
|
|
},
|
|
stdin = true,
|
|
}
|
|
end,
|
|
},
|
|
|
|
-- Use the special "*" filetype for defining formatter configurations on
|
|
-- any filetype
|
|
["*"] = {
|
|
-- "formatter.filetypes.any" defines default configurations for any
|
|
-- filetype
|
|
require("formatter.filetypes.any").remove_trailing_whitespace,
|
|
},
|
|
},
|
|
})
|
|
|
|
require("format-lua")
|
|
vim.cmd.colorscheme("catppuccin-macchiato")
|
|
vim.api.nvim_set_keymap("n", "<leader>f", ":Format<CR>", { noremap = true, silent = true })
|