[MINOR] A bunch of things.

Themery for nvim, tmux theme, zsh stuff
This commit is contained in:
Afonso Franco 2024-01-03 15:12:33 +00:00
parent eede29d92a
commit ad9912c773
Signed by: afonso
SSH key fingerprint: SHA256:JiuxZNdA5bRWXPMUJChI0AQ75yC+cXY4xM0IaVwEVys
18 changed files with 493 additions and 189 deletions

View file

@ -0,0 +1,22 @@
import = [
"~/.config/alacritty/catppuccin-latte.toml"
]
[env]
TERM = "xterm-256color"
[font]
size = 14.0
[font.normal]
family = "FiraCode Nerd Font Mono"
style = "Light"
[window]
opacity = 0.95
option_as_alt = "Both"
dynamic_padding = true
[window.padding]
x = 2
y = 2

View file

@ -1,17 +0,0 @@
import:
- ~/.config/alacritty/catppuccin/catppuccin-frappe.yml
env:
TERM: tmux-256color
window:
padding:
x: 2
y: 2
opacity: 0.85
font:
normal:
family: FiraCode Nerd Font Mono
style: Light
size: 10.0

View file

@ -0,0 +1,75 @@
[colors.primary]
background = "#EFF1F5"
foreground = "#4C4F69"
dim_foreground = "#4C4F69"
bright_foreground = "#4C4F69"
[colors.cursor]
text = "#EFF1F5"
cursor = "#DC8A78"
[colors.vi_mode_cursor]
text = "#EFF1F5"
cursor = "#7287FD"
[colors.search.matches]
foreground = "#EFF1F5"
background = "#6C6F85"
[colors.search.focused_match]
foreground = "#EFF1F5"
background = "#40A02B"
[colors.footer_bar]
foreground = "#EFF1F5"
background = "#6C6F85"
[colors.hints.start]
foreground = "#EFF1F5"
background = "#DF8E1D"
[colors.hints.end]
foreground = "#EFF1F5"
background = "#6C6F85"
[colors.selection]
text = "#EFF1F5"
background = "#DC8A78"
[colors.normal]
black = "#5C5F77"
red = "#D20F39"
green = "#40A02B"
yellow = "#DF8E1D"
blue = "#1E66F5"
magenta = "#EA76CB"
cyan = "#179299"
white = "#ACB0BE"
[colors.bright]
black = "#6C6F85"
red = "#D20F39"
green = "#40A02B"
yellow = "#DF8E1D"
blue = "#1E66F5"
magenta = "#EA76CB"
cyan = "#179299"
white = "#BCC0CC"
[colors.dim]
black = "#5C5F77"
red = "#D20F39"
green = "#40A02B"
yellow = "#DF8E1D"
blue = "#1E66F5"
magenta = "#EA76CB"
cyan = "#179299"
white = "#ACB0BE"
[[colors.indexed_colors]]
index = 16
color = "#FE640B"
[[colors.indexed_colors]]
index = 17
color = "#DC8A78"

View file

@ -1,4 +1,6 @@
require("core.variables")
require('core.package_manager')
require('plugins.remote-theme')
require('winbar')
require('core.theme')
require('impatient')

View file

@ -1,51 +1,51 @@
{
"LuaSnip": { "branch": "master", "commit": "80a8528f084a97b624ae443a6f50ff8074ba486b" },
"LuaSnip": { "branch": "master", "commit": "2463d687fe704b76eb0aa3bb34e95f69a5bb0362" },
"bufferline.nvim": { "branch": "main", "commit": "243893ba9d5d1049dd451a25cab32ec7f8f67bcf" },
"catppuccin": { "branch": "main", "commit": "40dc9f0621c55bd40da4ad0731fac44d15bb393a" },
"catppuccin": { "branch": "main", "commit": "b901cf144573b293b6cefeb1ac8c97d5d239ee7a" },
"cinnamon.nvim": { "branch": "master", "commit": "c406ffda3a0302f32c23b24ab756ea20467d6578" },
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
"cmp-cmdline": { "branch": "main", "commit": "8ee981b4a91f536f52add291594e89fb6645e451" },
"cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" },
"cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" },
"cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "3d8912ebeb56e5ae08ef0906e3a54de1c66b92f1" },
"cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" },
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
"compiler-explorer.nvim": { "branch": "master", "commit": "ee8e7a2808bdad67cd2acb61b5c9ffa7735c7ec9" },
"copilot.lua": { "branch": "master", "commit": "1a8032ae496916ccc7a7a52ee79194fbef29f462" },
"dressing.nvim": { "branch": "master", "commit": "1f2d1206a03bd3add8aedf6251e4534611de577f" },
"fidget.nvim": { "branch": "main", "commit": "0ba1e16d07627532b6cae915cc992ecac249fb97" },
"friendly-snippets": { "branch": "main", "commit": "43727c2ff84240e55d4069ec3e6158d74cb534b6" },
"copilot.lua": { "branch": "master", "commit": "858bbfa6fa81c88fb1f64107d7981f1658619e0a" },
"dressing.nvim": { "branch": "master", "commit": "94b0d24483d56f3777ee0c8dc51675f21709318c" },
"fidget.nvim": { "branch": "main", "commit": "a4a7edfea37e557dbff5509ee374ffb57051bba9" },
"friendly-snippets": { "branch": "main", "commit": "53d3df271d031c405255e99410628c26a8f0d2b0" },
"gruvbox.nvim": { "branch": "main", "commit": "4176b0b720db0c90ab4030e5c1b4893faf41fd51" },
"impatient.nvim": { "branch": "main", "commit": "47302af74be7b79f002773011f0d8e85679a7618" },
"lazy.nvim": { "branch": "main", "commit": "4c75c8eeb957a99aa44ce8e526c04340ab358c5e" },
"leap.nvim": { "branch": "main", "commit": "5efe985cf68fac3b6a6dfe7a75fbfaca8db2af9c" },
"lualine.nvim": { "branch": "master", "commit": "7533b0ead663d80452210c0c089e5105089697e5" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "e7b64c11035aa924f87385b72145e0ccf68a7e0a" },
"mason-nvim-dap.nvim": { "branch": "main", "commit": "6148b51db945b55b3b725da39eaea6441e59dff8" },
"mason.nvim": { "branch": "main", "commit": "cd7835b15f5a4204fc37e0aa739347472121a54c" },
"nerdy.nvim": { "branch": "main", "commit": "061b0c8b5d56dcc9d3aba90be94593070f299878" },
"none-ls.nvim": { "branch": "main", "commit": "dc9b7e28f5573a1a2225ffb33893d23d3e052ed6" },
"nvim-autopairs": { "branch": "master", "commit": "f6c71641f6f183427a651c0ce4ba3fb89404fa9e" },
"nvim-cmp": { "branch": "main", "commit": "d3a3056204e1a9dbb7c7fe36c114dc43b681768c" },
"nvim-colorizer.lua": { "branch": "master", "commit": "dde3084106a70b9a79d48f426f6d6fec6fd203f7" },
"nvim-dap": { "branch": "master", "commit": "92dc531eea2c9a3ef504a5c8ac0decd1fa59a6a3" },
"lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" },
"leap.nvim": { "branch": "main", "commit": "47262a9beadd6945f51b0a4fc2d005aaa2095f04" },
"lualine.nvim": { "branch": "master", "commit": "566b7036f717f3d676362742630518a47f132fff" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "56e435e09f8729af2d41973e81a0db440f8fe9c9" },
"mason-nvim-dap.nvim": { "branch": "main", "commit": "9e82ded0515186edd4f69e4ce6b1a5f1b55b47e9" },
"mason.nvim": { "branch": "main", "commit": "a09da6ac634926a299dd439da08bdb547a8ca011" },
"nerdy.nvim": { "branch": "main", "commit": "548437ebcea9106156e7ea3a5612ee6444a1aba4" },
"none-ls.nvim": { "branch": "main", "commit": "e7382de51b4cf629e56f1fa18192e716e5ba8145" },
"nvim-autopairs": { "branch": "master", "commit": "9fd41181693dd4106b3e414a822bb6569924de81" },
"nvim-cmp": { "branch": "main", "commit": "538e37ba87284942c1d76ed38dd497e54e65b891" },
"nvim-colorizer.lua": { "branch": "master", "commit": "85855b38011114929f4058efc97af1059ab3e41d" },
"nvim-dap": { "branch": "master", "commit": "f0dca670fa059eb89dda8869a6310c804241345c" },
"nvim-dap-ui": { "branch": "master", "commit": "34160a7ce6072ef332f350ae1d4a6a501daf0159" },
"nvim-ghost.nvim": { "branch": "main", "commit": "a1ca0b2dac59881066d7ac9373cf64d59ba29d6a" },
"nvim-lspconfig": { "branch": "master", "commit": "e49b1e90c1781ce372013de3fa93a91ea29fc34a" },
"nvim-tmux-navigation": { "branch": "main", "commit": "543f090a45cef28156162883d2412fffecb6b750" },
"nvim-treesitter": { "branch": "master", "commit": "eb3faef3a44641e5875581e901b0a8df8da2bde4" },
"nvim-treesitter-context": { "branch": "master", "commit": "7227dca17316384e9b62bd6fc6b4d892572d6d4e" },
"nvim-web-devicons": { "branch": "master", "commit": "3af745113ea537f58c4b1573b64a429fefad9e07" },
"oil.nvim": { "branch": "master", "commit": "4088efb8ff664b6f1624aab5dac6c3fe11d3962c" },
"plenary.nvim": { "branch": "master", "commit": "50012918b2fc8357b87cff2a7f7f0446e47da174" },
"nvim-lspconfig": { "branch": "master", "commit": "0d9e870d01894c592d7ea93cfe0fa451916d9a7f" },
"nvim-tmux-navigation": { "branch": "main", "commit": "d9efffa413a530bdea3783af4fea86be84940283" },
"nvim-treesitter": { "branch": "master", "commit": "362ebd3a210f20aab80be05557f216cbaf4531e6" },
"nvim-treesitter-context": { "branch": "master", "commit": "652ec514d6ba8bc4a3c2de76c855fe668e2c7196" },
"nvim-web-devicons": { "branch": "master", "commit": "43aa2ddf476012a2155f5f969ee55ab17174da7a" },
"oil.nvim": { "branch": "master", "commit": "523b61430cb7365f8f86609c2ea60e48456bac63" },
"plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" },
"presence.nvim": { "branch": "main", "commit": "87c857a56b7703f976d3a5ef15967d80508df6e6" },
"tailwind-sorter.nvim": { "branch": "main", "commit": "efc34952eb0a20520f12c8a273ea44298c11a4fa" },
"tailwindcss-colorizer-cmp.nvim": { "branch": "main", "commit": "bc25c56083939f274edcfe395c6ff7de23b67c50" },
"telescope.nvim": { "branch": "master", "commit": "7011eaae0ac1afe036e30c95cf80200b8dc3f21a" },
"todo-comments.nvim": { "branch": "main", "commit": "3094ead8edfa9040de2421deddec55d3762f64d1" },
"undotree": { "branch": "master", "commit": "0e11ba7325efbbb3f3bebe06213afa3e7ec75131" },
"vim-jukit": { "branch": "master", "commit": "4d1f4e4c3923464e12f86fce49eb198b6e61a2a9" },
"vim-obsession": { "branch": "master", "commit": "fe9d3e1a9a50171e7d316a52e1e56d868e4c1fe5" },
"themery.nvim": { "branch": "main", "commit": "1005a58801276d29c4b1e11244cf7631250f9143" },
"todo-comments.nvim": { "branch": "main", "commit": "4a6737a8d70fe1ac55c64dfa47fcb189ca431872" },
"typst.vim": { "branch": "main", "commit": "308e7737d09de8c1100320ddc6bc270615ae791a" },
"undotree": { "branch": "master", "commit": "36ff7abb6b60980338344982ad4cdf03f7961ecd" },
"vim-alloy": { "branch": "master", "commit": "5bd57c4890be39e221dd3e1f6735457dce454bbd" },
"vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" },
"vimtex": { "branch": "master", "commit": "cbb20643b7bfe721902dac5760bf0d4889fb5f7e" },
"which-key.nvim": { "branch": "main", "commit": "ce741eb559c924d72e3a67d2189ad3771a231414" },
"zen-mode.nvim": { "branch": "main", "commit": "cb73b8bd0ef9d765b942db09dc762c603a89ae44" }
"vimtex": { "branch": "master", "commit": "6179414f2eb3db977a513b7b19c23e7e62a0f388" },
"which-key.nvim": { "branch": "main", "commit": "4433e5ec9a507e5097571ed55c02ea9658fb268a" },
"zen-mode.nvim": { "branch": "main", "commit": "50e2e2a36cc97847d9ab3b1a3555ba2ef6839b50" }
}

View file

@ -0,0 +1,38 @@
-- Themery block
-- This block will be replaced by Themery.
require("catppuccin").setup({
flavour = "latte", -- latte, frappe, macchiato, mocha
styles = {
comments = { "italic" },
conditionals = { "italic" },
},
integrations = {
cmp = true,
treesitter = true,
treesitter_context = true,
fidget = true,
telescope = true,
leap = true,
mason = true,
native_lsp = {
enabled = true,
virtual_text = {
errors = { "italic" },
hints = { "italic" },
warnings = { "italic" },
information = { "italic" },
},
underlines = {
errors = { "underline" },
hints = { "underline" },
warnings = { "underline" },
information = { "underline" },
},
},
},
})
vim.cmd("colorscheme catppuccin-latte")
vim.g.theme_id = 4
-- end themery block

View file

@ -0,0 +1,10 @@
local Rule = require('nvim-autopairs.rule')
local npairs = require('nvim-autopairs')
npairs.setup({
map_cr = true,
map_bs = true,
check_ts = true,
enable_check_bracket_line = true,
ignored_next_char = "[%w]"
})

View file

@ -34,7 +34,7 @@ require("bufferline").setup({
icon = "",
style = "icon",
},
buffer_close_icon = '',
buffer_close_icon = '',
modified_icon = '',
close_icon = '',
left_trunc_marker = '',

View file

@ -1,41 +0,0 @@
--local colorscheme = "onedark"
require("catppuccin").setup({
flavour = "frappe", -- latte, frappe, macchiato, mocha
styles = {
comments = { "italic" },
conditionals = { "italic" },
},
integrations = {
cmp = true,
treesitter = true,
treesitter_context = true,
fidget = true,
telescope = true,
leap = true,
mason = true,
native_lsp = {
enabled = true,
virtual_text = {
errors = { "italic" },
hints = { "italic" },
warnings = { "italic" },
information = { "italic" },
},
underlines = {
errors = { "underline" },
hints = { "underline" },
warnings = { "underline" },
information = { "underline" },
},
},
},
})
local colorscheme = "catppuccin"
local status_ok, _ = pcall(vim.cmd, "colorscheme " .. colorscheme)
if not status_ok then
return
end

View file

@ -14,33 +14,33 @@ local check_backspace = function()
return col == 0 or vim.fn.getline("."):sub(col, col):match "%s"
end
--   פּ ﯟ   some other good icons
-- 󰃐 󰆩 󰙅 󰛡  󰅲 some other good icons
local kind_icons = {
Text = "",
Text = "󰉿",
Method = "m",
Function = "",
Function = "󰊕",
Constructor = "",
Field = "",
Variable = "",
Class = "",
Variable = "󰆧",
Class = "󰌗",
Interface = "",
Module = "",
Property = "",
Unit = "",
Value = "",
Value = "󰎠",
Enum = "",
Keyword = "",
Keyword = "󰌋",
Snippet = "",
Color = "",
File = "",
Color = "󰏘",
File = "󰈙",
Reference = "",
Folder = "",
Folder = "󰉋",
EnumMember = "",
Constant = "",
Constant = "󰇽",
Struct = "",
Event = "",
Operator = "",
TypeParameter = "",
Operator = "󰆕",
TypeParameter = "󰊄",
Copilot = "",
DB = "󰆼",
}
@ -110,11 +110,10 @@ cmp.setup {
fields = { "kind", "abbr", "menu" },
format = function(entry, vim_item)
-- Kind icons
--vim_item.kind = string.format("%s", kind_icons[vim_item.kind])
if vim.tbl_contains({ "nvim_lsp" }, entry.source.name) then
tailwind = require("tailwindcss-colorizer-cmp")
return tailwind.formatter(entry, vim_item)
else
-- if vim.tbl_contains({ "nvim_lsp" }, entry.source.name) then
-- tailwind = require("tailwindcss-colorizer-cmp")
-- return tailwind.formatter(entry, vim_item)
-- else
vim_item.kind = string.format('[%s %s]', kind_icons[vim_item.kind], vim_item.kind) -- This concatonates the icons with the name of the item kind
vim_item.menu = ({
nvim_lsp = "[LSP]",
@ -123,7 +122,7 @@ cmp.setup {
path = "[Path]",
})[entry.source.name]
return vim_item
end
-- end
end,
},
sorting = {
@ -195,7 +194,13 @@ cmp.setup {
},
experimental = {
ghost_text = true,
ghost_text = false,
native_menu = false,
},
}
local cmp_autopairs = require('nvim-autopairs.completion.cmp')
cmp.event:on(
'confirm_done',
cmp_autopairs.on_confirm_done()
)

View file

@ -5,15 +5,19 @@ lazy.setup({
'lewis6991/impatient.nvim',
-------------------------------------------THEMES------------------------------------------
{
'zaldih/themery.nvim',
config = function()
require('plugins.themery')
end
},
{
'catppuccin/nvim',
name = "catppuccin",
lazy = false,
priority = 1000,
config = function()
require('plugins.catppuccin')
end
},
{ "ellisonleao/gruvbox.nvim", priority = 1000 },
-------------------------------------------------------QOL---------------------------------
{
"zbirenbaum/copilot.lua",
@ -46,6 +50,17 @@ lazy.setup({
},
{
'declancm/cinnamon.nvim',
config = function()
require('cinnamon').setup {
scroll_limit = 10000,
always_scroll = true,
}
end
},
{
"folke/which-key.nvim",
event = "VeryLazy",
init = function()
@ -80,7 +95,6 @@ lazy.setup({
--Change add and remove surroundings from words
'tpope/vim-surround',
'tpope/vim-obsession',
{
'NvChad/nvim-colorizer.lua',
@ -89,22 +103,22 @@ lazy.setup({
end
},
{
"roobert/tailwindcss-colorizer-cmp.nvim",
event = "VeryLazy",
config = function()
require("tailwindcss-colorizer-cmp").setup({
color_square_width = 2,
})
end
},
{
'laytan/tailwind-sorter.nvim',
event = "VeryLazy",
dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-lua/plenary.nvim' },
build = 'cd formatter && bun i && bun run build',
config = true,
},
-- {
-- "roobert/tailwindcss-colorizer-cmp.nvim",
-- event = "VeryLazy",
-- config = function()
-- require("tailwindcss-colorizer-cmp").setup({
-- color_square_width = 2,
-- })
-- end
-- },
-- {
-- 'laytan/tailwind-sorter.nvim',
-- event = "VeryLazy",
-- dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-lua/plenary.nvim' },
-- build = 'cd formatter && bun i && bun run build',
-- config = true,
-- },
--Database integration
-- 'tpope/vim-dadbod',
-- {
@ -135,42 +149,35 @@ lazy.setup({
-- Rename variable pop up
'stevearc/dressing.nvim',
{
'krady21/compiler-explorer.nvim',
event = "VeryLazy",
config = function()
require("compiler-explorer").setup({
url = "https://godbolt.org",
infer_lang = true, -- Try to infer possible language based on file extension.
line_match = {
highlight = true, -- highlight the matching line(s) in the other buffer.
jump = true, -- move the cursor in the other buffer to the first matching line.
},
open_qflist = true, -- Open qflist after compilation if there are diagnostics.
split = "split", -- How to split the window after the second compile (split/vsplit).
compiler_flags = "", -- Default flags passed to the compiler.
job_timeout_ms = 25000, -- Timeout for libuv job in milliseconds.
languages = { -- Language specific default compiler/flags
c = {
compiler = "cg132"
}
},
})
end
},
{
'luk400/vim-jukit',
ft = {'python','ipynb'},
},
-- {
-- 'krady21/compiler-explorer.nvim',
-- event = "VeryLazy",
-- config = function()
-- require("compiler-explorer").setup({
-- url = "https://godbolt.org",
-- infer_lang = true, -- Try to infer possible language based on file extension.
-- line_match = {
-- highlight = true, -- highlight the matching line(s) in the other buffer.
-- jump = true, -- move the cursor in the other buffer to the first matching line.
-- },
-- open_qflist = true, -- Open qflist after compilation if there are diagnostics.
-- split = "split", -- How to split the window after the second compile (split/vsplit).
-- compiler_flags = "", -- Default flags passed to the compiler.
-- job_timeout_ms = 25000, -- Timeout for libuv job in milliseconds.
-- languages = { -- Language specific default compiler/flags
-- c = {
-- compiler = "cg132"
-- }
-- },
-- })
-- end
-- },
{
'windwp/nvim-autopairs',
config = function()
require('nvim-autopairs').setup({
map_cr = true,
map_bs = true,
})
require 'plugins.autopairs'
end
},
@ -211,17 +218,7 @@ lazy.setup({
},
--LSP Status
{
'j-hui/fidget.nvim',
tag = 'legacy',
config = function()
require('fidget').setup {
window = {
blend = 0,
}
}
end
},
{
"rcarriga/nvim-dap-ui",
@ -298,6 +295,8 @@ lazy.setup({
end
},
'kaarmu/typst.vim',
--Sticky headers
{
'nvim-treesitter/nvim-treesitter-context',
@ -306,6 +305,8 @@ lazy.setup({
end
},
"runoshun/vim-alloy",
--Tabs
{
'akinsho/bufferline.nvim',

View file

@ -0,0 +1,93 @@
require("themery").setup({
themes = { {
name = "Gruvbox dark",
colorscheme = "gruvbox",
before = [[
vim.opt.background = "dark"
]],
},
{
name = "Gruvbox light",
colorscheme = "gruvbox",
before = [[
vim.opt.background = "light"
]]
},
{
name = "Catppuccin Frappe",
colorscheme = "catppuccin-frappe",
before = [[
require("catppuccin").setup({
flavour = "frappe", -- latte, frappe, macchiato, mocha
styles = {
comments = { "italic" },
conditionals = { "italic" },
},
integrations = {
cmp = true,
treesitter = true,
treesitter_context = true,
fidget = true,
telescope = true,
leap = true,
mason = true,
native_lsp = {
enabled = true,
virtual_text = {
errors = { "italic" },
hints = { "italic" },
warnings = { "italic" },
information = { "italic" },
},
underlines = {
errors = { "underline" },
hints = { "underline" },
warnings = { "underline" },
information = { "underline" },
},
},
},
})
]]
},
{
name = "Catppuccin Latte",
colorscheme = "catppuccin-latte",
before = [[
require("catppuccin").setup({
flavour = "latte", -- latte, frappe, macchiato, mocha
styles = {
comments = { "italic" },
conditionals = { "italic" },
},
integrations = {
cmp = true,
treesitter = true,
treesitter_context = true,
fidget = true,
telescope = true,
leap = true,
mason = true,
native_lsp = {
enabled = true,
virtual_text = {
errors = { "italic" },
hints = { "italic" },
warnings = { "italic" },
information = { "italic" },
},
underlines = {
errors = { "underline" },
hints = { "underline" },
warnings = { "underline" },
information = { "underline" },
},
},
},
})
]]
},
},
themeConfigFile = "~/.config/nvim/lua/core/theme.lua", -- Described below
livePreview = true, -- Apply theme while browsing. Default to true.
})

View file

@ -0,0 +1,71 @@
local folder_icon = "󰉋"
local M = {}
--- Window bar that shows the current file path (in a fancy way).
---@return string
function M.render()
-- Get the path and expand variables.
local path = vim.fs.normalize(vim.fn.expand '%:p' --[[@as string]])
-- Replace slashes by arrows.
local separator = ' %#WinbarSeparator# '
local prefix, prefix_path = '', ''
-- If the window gets too narrow, shorten the path and drop the prefix.
if vim.api.nvim_win_get_width(0) < math.floor(vim.o.columns / 3) then
path = vim.fn.pathshorten(path)
else
-- For some special folders, add a prefix instead of the full path (making
-- sure to pick the longest prefix).
---@type table<string, string>
local special_dirs = {
DOTFILES = "/Users/afonso/.config",
HOME = vim.env.HOME,
PROJECTS = "/Users/afonso/projects",
["University"] = "/Users/afonso/projects/University",
["Personal"] = "/Users/afonso/projects/Personal",
}
for dir_name, dir_path in pairs(special_dirs) do
if vim.startswith(path, vim.fs.normalize(dir_path)) and #dir_path > #prefix_path then
prefix, prefix_path = dir_name, dir_path
end
end
if prefix ~= '' then
path = path:gsub('^' .. prefix_path, '')
prefix = string.format('%%#WinBarSpecial#%s %s%s', folder_icon, prefix, separator)
end
end
-- Remove leading slash.
path = path:gsub('^/', '')
return table.concat {
' ',
prefix,
table.concat(
vim.iter.map(function(segment)
return string.format('%%#Winbar#%s', segment)
end, vim.split(path, '/')),
separator
),
}
end
vim.api.nvim_create_autocmd('BufWinEnter', {
group = vim.api.nvim_create_augroup('mariasolos/winbar', { clear = true }),
desc = 'Attach winbar',
callback = function(args)
if
not vim.api.nvim_win_get_config(0).zindex -- Not a floating window
and vim.bo[args.buf].buftype == '' -- Normal buffer
and vim.api.nvim_buf_get_name(args.buf) ~= '' -- Has a file name
and not vim.wo[0].diff -- Not in diff mode
then
vim.wo.winbar = "%{%v:lua.require'winbar'.render()%}"
end
end,
})
return M

View file

@ -9,7 +9,7 @@ set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @plugin 'tomhey/tmux-remote-sessions'
# Plugin settings
set -g @catppuccin_flavour 'frappe'
set -g @catppuccin_flavour 'latte'
set -g @catppuccin_window_tabs_enabled on
set -g @resurrect-strategy-nvim 'session'
set -g @resurrect-capture-pane-contents 'on'

45
.config/zsh/main.zsh Normal file
View file

@ -0,0 +1,45 @@
HISTSIZE=10000000
SAVEHIST=10000000
setopt BANG_HIST # Treat the '!' character specially during expansion.
setopt EXTENDED_HISTORY # Write the history file in the ":start:elapsed;command" format.
setopt INC_APPEND_HISTORY # Write to the history file immediately, not when the shell exits.
setopt SHARE_HISTORY # Share history between all sessions.
setopt HIST_EXPIRE_DUPS_FIRST # Expire duplicate entries first when trimming history.
setopt HIST_IGNORE_DUPS # Don't record an entry that was just recorded again.
setopt HIST_IGNORE_ALL_DUPS # Delete old recorded entry if new entry is a duplicate.
setopt HIST_FIND_NO_DUPS # Do not display a line previously found.
setopt HIST_IGNORE_SPACE # Don't record an entry starting with a space.
setopt HIST_SAVE_NO_DUPS # Don't write duplicate entries in the history file.
setopt HIST_REDUCE_BLANKS # Remove superfluous blanks before recording entry.
setopt HIST_VERIFY
export EDITOR=nvim
export READER=mupdf
# Add paths
export PATH="/opt/homebrew/bin:$PATH"
export PATH="/opt/homebrew/opt/openjdk@17/bin:$PATH"
export PATH="$HOME/.bun/bin:$PATH"
export PATH="$HOME/go/bin:$PATH"
export PATH="$HOME/.local/share/nvim/mason/bin:$PATH"
export PATH="$HOME/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin:$PATH"
export PATH="$HOME/.local/bin:$PATH"
export PATH="$HOME/.cargo/bin:$PATH"
export PATH="$HOME/.ghcup/bin:$PATH"
export PATH="/usr/bin/vendor_perl:$PATH"
if [ "$(arch)" = "arm64" ]; then
eval "$(/opt/homebrew/bin/brew shellenv)"
else
eval "$(/usr/local/bin/brew shellenv)"
fi
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
# bun
export BUN_INSTALL="$HOME/.bun"
export PATH="$BUN_INSTALL/bin:$PATH"
# opam configuration
source $HOME/.opam/opam-init/init.zsh > /dev/null 2>&1 || true

View file

@ -0,0 +1,2 @@
ZSH_AUTOSUGGEST_STRATEGY=(match_prev_cmd history completion)
ZSH_TMUX_AUTOSTART=true

View file

@ -1,8 +1,5 @@
# ~/.config/zsh/qol.zsh
bindkey '^H' backward-kill-path-component
bindkey '^[[3;5~' kill-word
backup() {
cp $1 $1.bak
}

View file

@ -1,5 +1,6 @@
IdentityFile ~/.ssh/id_ed25519_sk
IdentityFile ~/.ssh/id_ed25519_sk_secondary
IdentityFile ~/.ssh/id_rsa
Host gon
ControlMaster auto