264 lines
9.4 KiB
Lua
264 lines
9.4 KiB
Lua
local vim = vim
|
|
local host = vim.loop.os_gethostname()
|
|
require("options") -- ./lua/options.lua
|
|
require("plugins") -- ./lua/plugins.lua
|
|
require("utils.t3_functions") -- ./lua/utils/t3_functions.lua
|
|
require("utils.t3_overrides") -- ./lua/utils/t3_overrides.lua
|
|
require("utils.reload") -- ./lua/utils/reload.lua
|
|
require("vimwiki") -- ./lua/vimwiki.lua
|
|
require("keymaps") -- ./lua/keymaps.lua
|
|
require("lsp") -- ./lua/lsp.lua
|
|
-- require("completion") -- ./lua/completion.lua
|
|
require("coc") -- ./lua/coc.lua
|
|
require("treesitter") -- ./lua/treesitter.lua
|
|
require("autocmds") -- ./lua/autocmds.lua
|
|
require("diagnostics") -- ./lua/diagnostics.lua
|
|
require("avante_settings") -- ./lua/avante_settings.lua
|
|
require('telescope_configuration') -- ./lua/telescope_configuration.lua
|
|
|
|
local function cyberdream()
|
|
require("cyberdream").setup({
|
|
-- Set light or dark variant
|
|
variant = "default", -- use "light" for the light variant. Also accepts "auto" to set dark or light colors based on the current value of `vim.o.background`
|
|
-- Enable transparent background
|
|
transparent = true,
|
|
-- Reduce the overall saturation of colours for a more muted look
|
|
saturation = 1, -- accepts a value between 0 and 1. 0 will be fully desaturated (greyscale) and 1 will be the full color (default)
|
|
-- Enable italics comments
|
|
italic_comments = true,
|
|
-- Replace all fillchars with ' ' for the ultimate clean look
|
|
hide_fillchars = false,
|
|
-- Apply a modern borderless look to pickers like Telescope, Snacks Picker & Fzf-Lua
|
|
borderless_pickers = true,
|
|
-- Set terminal colors used in `:terminal`
|
|
terminal_colors = true,
|
|
-- Improve start up time by caching highlights. Generate cache with :CyberdreamBuildCache and clear with :CyberdreamClearCache
|
|
cache = true,
|
|
-- Override highlight groups with your own colour values
|
|
-- highlights = {
|
|
-- -- Highlight groups to override, adding new groups is also possible
|
|
-- -- See `:h highlight-groups` for a list of highlight groups or run `:hi` to see all groups and their current values
|
|
-- -- Example:
|
|
-- Comment = { fg = "#696969", bg = "NONE", italic = true },
|
|
-- -- More examples can be found in `lua/cyberdream/extensions/*.lua`
|
|
-- },
|
|
-- Override a highlight group entirely using the built-in colour palette
|
|
-- overrides = function(colors) -- NOTE: This function nullifies the `highlights` option
|
|
-- -- Example:
|
|
-- return {
|
|
-- Comment = { fg = colors.green, bg = "NONE", italic = true },
|
|
-- ["@property"] = { fg = colors.magenta, bold = true },
|
|
-- }
|
|
-- end,
|
|
-- Override colors
|
|
-- colors = {
|
|
-- -- For a list of colors see `lua/cyberdream/colours.lua`
|
|
-- -- Override colors for both light and dark variants
|
|
-- bg = "#000000",
|
|
-- green = "#00ff00",
|
|
-- -- If you want to override colors for light or dark variants only, use the following format:
|
|
-- dark = {
|
|
-- magenta = "#ff00ff",
|
|
-- fg = "#eeeeee",
|
|
-- },
|
|
-- light = {
|
|
-- red = "#ff5c57",
|
|
-- cyan = "#5ef1ff",
|
|
-- },
|
|
-- },
|
|
-- Disable or enable colorscheme extensions
|
|
extensions = {
|
|
telescope = true,
|
|
notify = true,
|
|
mini = true,
|
|
treesitter = true,
|
|
whichkey = true,
|
|
treesittercontext = true,
|
|
markdown = true,
|
|
snacks = true,
|
|
trouble = true,
|
|
-- More extensions can be found in `lua/cyberdream/extensions/*.lua`
|
|
}
|
|
})
|
|
end
|
|
|
|
if host == "xps13" then
|
|
cyberdream()
|
|
-- require('tokyonight').setup({
|
|
-- style = "moon", -- "storm", "moon", "day", "night"
|
|
-- transparent = false, -- Enable transparent background
|
|
-- terminal_colors = true, -- Enable terminal colors
|
|
-- styles = {
|
|
-- comments = { italic = true }, -- Italic comments
|
|
-- keywords = { italic = true }, -- Italic keywords
|
|
-- functions = { bold = true }, -- Bold functions
|
|
-- variables = {}, -- No special style for variables
|
|
-- sidebars = "dark", -- Dark sidebars
|
|
-- floats = "dark", -- Dark floating windows
|
|
-- },
|
|
-- })
|
|
-- })
|
|
elseif host == "cachyos" then
|
|
cyberdream()
|
|
-- require('tokyonight').setup({
|
|
-- style = "storm", -- "storm", "moon", "day", "night"
|
|
-- transparent = false, -- Enable transparent background
|
|
-- terminal_colors = true, -- Enable terminal colors
|
|
-- styles = {
|
|
-- comments = { italic = true }, -- Italic comments
|
|
-- keywords = { italic = true }, -- Italic keywords
|
|
-- functions = { bold = true }, -- Bold functions
|
|
-- variables = {}, -- No special style for variables
|
|
-- sidebars = "dark", -- Dark sidebars
|
|
-- floats = "dark", -- Dark floating windows
|
|
-- },
|
|
-- })
|
|
elseif host == "Vector" then
|
|
cyberdream()
|
|
-- require('tokyonight').setup({
|
|
-- style = "storm", -- "storm", "moon", "day", "night"
|
|
-- transparent = false, -- Enable transparent background
|
|
-- terminal_colors = true, -- Enable terminal colors
|
|
-- styles = {
|
|
-- comments = { italic = true }, -- Italic comments
|
|
-- keywords = { italic = true }, -- Italic keywords
|
|
-- functions = { bold = true }, -- Bold functions
|
|
-- variables = {}, -- No special style for variables
|
|
-- sidebars = "dark", -- Dark sidebars
|
|
-- floats = "dark", -- Dark floating windows
|
|
-- },
|
|
-- })
|
|
elseif host == "Titan" then
|
|
cyberdream()
|
|
-- require('tokyonight').setup({
|
|
-- style = "storm", -- "storm", "moon", "day", "night"
|
|
-- transparent = false, -- Enable transparent background
|
|
-- terminal_colors = true, -- Enable terminal colors
|
|
-- styles = {
|
|
-- comments = { italic = true }, -- Italic comments
|
|
-- keywords = { italic = true }, -- Italic keywords
|
|
-- functions = { bold = true }, -- Bold functions
|
|
-- variables = {}, -- No special style for variables
|
|
-- sidebars = "dark", -- Dark sidebars
|
|
-- floats = "dark", -- Dark floating windows
|
|
-- },
|
|
-- })
|
|
end
|
|
|
|
local function is_linux_console()
|
|
return vim.env.TERM == "linux"
|
|
end
|
|
|
|
local function want_truecolor()
|
|
if is_linux_console() then return false end
|
|
return vim.fn.has("termguicolors") == 1
|
|
or ((vim.env.COLORTERM or ""):lower():find("truecolor") ~= nil)
|
|
end
|
|
|
|
|
|
local function set_colorscheme()
|
|
if want_truecolor() then
|
|
vim.o.termguicolors = true
|
|
if not pcall(vim.cmd.colorscheme, "cyberdream") then
|
|
pcall(vim.cmd.colorscheme, "habamax")
|
|
end
|
|
else
|
|
vim.o.termguicolors = false
|
|
if not pcall(vim.cmd.colorscheme, "industry") then
|
|
pcall(vim.cmd.colorscheme, "default")
|
|
end
|
|
end
|
|
end
|
|
|
|
vim.api.nvim_create_autocmd("VimEnter", {
|
|
callback = function()
|
|
set_colorscheme()
|
|
|
|
local tty = is_linux_console()
|
|
|
|
-- LUALINE: no icons, simple separators, TTY theme
|
|
pcall(function()
|
|
local ok, lualine = pcall(require, "lualine")
|
|
if not ok then return end
|
|
if tty then
|
|
lualine.setup({
|
|
options = {
|
|
theme = "16color", -- built-in, safe for TTY
|
|
icons_enabled = false,
|
|
component_separators = "",
|
|
section_separators = "",
|
|
globalstatus = true,
|
|
},
|
|
sections = {
|
|
lualine_a = { "mode" },
|
|
lualine_b = { "branch" },
|
|
lualine_c = { { "filename", file_status = true, path = 1 } },
|
|
lualine_x = {
|
|
"encoding", "fileformat", "filetype",
|
|
require("noice").api.statusline.mode.get,
|
|
cond = require("noice").api.statusline.mode.has,
|
|
color = { fg = "#ff9e64" },
|
|
},
|
|
lualine_y = { "progress" },
|
|
lualine_z = { "location" },
|
|
},
|
|
})
|
|
else
|
|
lualine.setup({
|
|
options = {
|
|
theme = "auto",
|
|
icons_enabled = true,
|
|
globalstatus = true,
|
|
},
|
|
})
|
|
end
|
|
end)
|
|
|
|
-- BARBAR: kill icons in TTY, simplify separators
|
|
pcall(function()
|
|
vim.g.barbar_auto_setup = false
|
|
local ok, barbar = pcall(require, "barbar")
|
|
if not ok then return end
|
|
if tty then
|
|
barbar.setup({
|
|
animation = false,
|
|
auto_hide = false,
|
|
sidebar_filetypes = { NvimTree = true, undotree = { text = "Undotree" } },
|
|
icons = {
|
|
-- aggressively disable anything icon-like
|
|
buffer_index = false,
|
|
buffer_number = false,
|
|
button = "", -- close button
|
|
diagnostics = {
|
|
[vim.diagnostic.severity.ERROR] = { enabled = false },
|
|
[vim.diagnostic.severity.WARN] = { enabled = false },
|
|
[vim.diagnostic.severity.INFO] = { enabled = false },
|
|
[vim.diagnostic.severity.HINT] = { enabled = false },
|
|
},
|
|
gitsigns = { added = {enabled=false}, changed = {enabled=false}, deleted = {enabled=false} },
|
|
filetype = { enabled = false },
|
|
pinned = { button = "", filename = true },
|
|
modified = { button = "*" }, -- simple ASCII marker
|
|
separator = { left = "|", right = "|" },
|
|
inactive = { separator = { left = "", right = "" } },
|
|
},
|
|
})
|
|
else
|
|
barbar.setup({}) -- your normal config, or keep defaults
|
|
end
|
|
end)
|
|
|
|
-- If you use web-devicons, disable it in TTY to avoid glyphs
|
|
if is_linux_console() then
|
|
-- If using lazy.nvim, better to conditionally load the plugin (see spec below).
|
|
if package.loaded["nvim-web-devicons"] then
|
|
local ok, devicons = pcall(require, "nvim-web-devicons")
|
|
if ok and devicons.has_loaded() then
|
|
-- there's no runtime "disable", but not using it in barbar/lualine is enough.
|
|
end
|
|
end
|
|
end
|
|
end,
|
|
})
|
|
|