diff options
| -rw-r--r-- | alacritty/.config/alacritty/alacritty.toml | 2 | ||||
| -rw-r--r-- | hypr/.config/hypr/hyprland.conf | 2 | ||||
| -rw-r--r-- | nvim/.config/nvim/lazy-lock.json | 9 | ||||
| -rw-r--r-- | nvim/.config/nvim/lazyvim.json | 5 | ||||
| -rw-r--r-- | nvim/.config/nvim/lua/config/lazy.lua | 2 | ||||
| -rw-r--r-- | nvim/.config/nvim/lua/config/options.lua | 3 | ||||
| -rw-r--r-- | nvim/.config/nvim/lua/plugins/blink.lua | 144 | ||||
| -rw-r--r-- | nvim/.config/nvim/lua/plugins/links.lua | 52 | ||||
| -rw-r--r-- | nvim/.config/nvim/lua/plugins/neo-tree.lua | 196 | ||||
| -rw-r--r-- | nvim/.config/nvim/lua/plugins/telescope.lua | 4 | ||||
| -rw-r--r-- | nvim/.config/nvim/lua/plugins/undotree.lua | 3 | ||||
| -rw-r--r-- | sesh/.config/sesh/sesh.toml | 20 | ||||
| -rw-r--r-- | tmux/.tmux.conf | 27 | ||||
| -rw-r--r-- | vim/.vim/.netrwhist | 8 | ||||
| -rw-r--r-- | vim/.vim/colors/gruvbox.vim | 1418 | ||||
| -rw-r--r-- | vim/.vim/vimrc | 107 | ||||
| -rw-r--r-- | zsh/.zshrc | 13 |
17 files changed, 1882 insertions, 133 deletions
diff --git a/alacritty/.config/alacritty/alacritty.toml b/alacritty/.config/alacritty/alacritty.toml index bc9d9ee..3c396c5 100644 --- a/alacritty/.config/alacritty/alacritty.toml +++ b/alacritty/.config/alacritty/alacritty.toml @@ -35,7 +35,7 @@ key = "F11" history = 50_000 [window] -opacity = 0.75 +opacity = 0.90 [[keyboard.bindings]] key = ";" diff --git a/hypr/.config/hypr/hyprland.conf b/hypr/.config/hypr/hyprland.conf index eafebe9..ad17606 100644 --- a/hypr/.config/hypr/hyprland.conf +++ b/hypr/.config/hypr/hyprland.conf @@ -50,7 +50,7 @@ env = XCURSOR_SIZE,24 # Startup exec-once = $scriptsDir/startup -exec-once = swaybg -m fill -i $HOME/Pictures/wallpapers/0465.jpg +exec-once = swaybg -m fill -i $HOME/Pictures/wallpapers/0093.jpg exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP diff --git a/nvim/.config/nvim/lazy-lock.json b/nvim/.config/nvim/lazy-lock.json index 9606910..f79fc91 100644 --- a/nvim/.config/nvim/lazy-lock.json +++ b/nvim/.config/nvim/lazy-lock.json @@ -2,11 +2,8 @@ "LazyVim": { "branch": "main", "commit": "25abbf546d564dc484cf903804661ba12de45507" }, "LuaSnip": { "branch": "master", "commit": "66b5c2707e624dcd2cd3605676c64a2efe47e9d1" }, "SchemaStore.nvim": { "branch": "main", "commit": "36fb914c0defa2274207e670182253508e5569d5" }, + "blink.cmp": { "branch": "main", "commit": "bae4bae0eedd1fa55f34b685862e94a222d5c6f8" }, "catppuccin": { "branch": "main", "commit": "fa42eb5e26819ef58884257d5ae95dd0552b9a66" }, - "cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" }, - "cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" }, - "cmp-path": { "branch": "main", "commit": "e52e640b7befd8113b3350f46e8cfcfe98fcf730" }, - "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" }, "competitest.nvim": { "branch": "master", "commit": "b42c06ca308906f07912ba9aff015ac2c0831f85" }, "compiler-explorer.nvim": { "branch": "master", "commit": "ee8e7a2808bdad67cd2acb61b5c9ffa7735c7ec9" }, "compiler.nvim": { "branch": "main", "commit": "725e4dc7c4e261a11c98de020fe268f0bb69ad4b" }, @@ -25,7 +22,6 @@ "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, "litee-calltree.nvim": { "branch": "main", "commit": "b50c809d136ad479caf761a7f030da98c56c7976" }, "litee.nvim": { "branch": "main", "commit": "4efaf373322d9e71eaff31164abb393417cc6f6a" }, - "lspkind.nvim": { "branch": "master", "commit": "d79a1c3299ad0ef94e255d045bed9fa26025dab6" }, "lualine-macro-recording.nvim": { "branch": "main", "commit": "e2dcf63ba74e6111b53e1520a4f8a17a3d7427a1" }, "lualine-so-fancy.nvim": { "branch": "main", "commit": "6ba7b138f2ca435673eb04c2cf85f0757df69b07" }, "lualine.nvim": { "branch": "master", "commit": "a94fc68960665e54408fe37dcf573193c4ce82c9" }, @@ -34,12 +30,12 @@ "mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, "material.nvim": { "branch": "main", "commit": "0004ec60f91d581d47563a39f7dac62cb758f7ea" }, "mini.ai": { "branch": "main", "commit": "96cd250fdea1fec929a62c7432de73e0f59788cd" }, + "mini.hipatterns": { "branch": "main", "commit": "2b78f3d475d60ea1793a6d595ff65a0db9ac3a67" }, "mini.icons": { "branch": "main", "commit": "94848dad1589a199f876539bd79befb0c5e3abf0" }, "mini.move": { "branch": "main", "commit": "f471ecb98395781827ef1dffee61afe1af0ace29" }, "mini.nvim": { "branch": "main", "commit": "c8d4b45745b9c05217d33c7841230af4d03a5f1b" }, "mini.pairs": { "branch": "main", "commit": "42407ccb80ec59c84e7c91d815f42ed90a8cc093" }, "mini.surround": { "branch": "main", "commit": "1a2b59c77a0c4713a5bd8972da322f842f4821b1" }, - "neo-tree.nvim": { "branch": "main", "commit": "84c3df0aa276da7f6095b000de314986f7b5ac98" }, "neogit": { "branch": "master", "commit": "59725524d25f9a8a9474f113d60db52bad8504d0" }, "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, "nvim-autopairs": { "branch": "master", "commit": "23320e75953ac82e559c610bec5a90d9c6dfa743" }, @@ -50,7 +46,6 @@ "nvim-lint": { "branch": "master", "commit": "3c5e34c24834a67b1cb37600ab7663eefd2b0390" }, "nvim-lspconfig": { "branch": "master", "commit": "8c5efd1269160fc2fdf61e3d7176be5015860a8f" }, "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, - "nvim-snippets": { "branch": "main", "commit": "56b4052f71220144689caaa2e5b66222ba5661eb" }, "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, "nvim-treesitter-textobjects": { "branch": "master", "commit": "89ebe73cd2836db80a22d9748999ace0241917a5" }, "nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" }, diff --git a/nvim/.config/nvim/lazyvim.json b/nvim/.config/nvim/lazyvim.json index 501b904..30d4bc7 100644 --- a/nvim/.config/nvim/lazyvim.json +++ b/nvim/.config/nvim/lazyvim.json @@ -1,9 +1,12 @@ { "extras": [ + "lazyvim.plugins.extras.coding.blink", "lazyvim.plugins.extras.coding.nvim-cmp", "lazyvim.plugins.extras.dap.core", + "lazyvim.plugins.extras.editor.snacks_explorer", "lazyvim.plugins.extras.editor.telescope", - "lazyvim.plugins.extras.lang.tex" + "lazyvim.plugins.extras.lang.tex", + "lazyvim.plugins.extras.util.mini-hipatterns" ], "install_version": 7, "news": { diff --git a/nvim/.config/nvim/lua/config/lazy.lua b/nvim/.config/nvim/lua/config/lazy.lua index 674639d..b1411a4 100644 --- a/nvim/.config/nvim/lua/config/lazy.lua +++ b/nvim/.config/nvim/lua/config/lazy.lua @@ -41,7 +41,7 @@ require("lazy").setup({ -- "netrwPlugin", "tarPlugin", "tohtml", - "tutor", + -- "tutor", "zipPlugin", }, }, diff --git a/nvim/.config/nvim/lua/config/options.lua b/nvim/.config/nvim/lua/config/options.lua index c86b443..ef5c5f7 100644 --- a/nvim/.config/nvim/lua/config/options.lua +++ b/nvim/.config/nvim/lua/config/options.lua @@ -6,7 +6,8 @@ vim.opt.ch = 0 vim.opt.list = false vim.opt.confirm = false -- vim.o.clipboard = "" -vim.o.guifont = "Monaspace Radon:h12:bold" -- text below applies for VimScript +vim.o.guifont = "Monaspace Radon:bold,Noto Color Emoji:h10" -- text below applies for VimScript +vim.o.undofile = true vim.o.spell = false diff --git a/nvim/.config/nvim/lua/plugins/blink.lua b/nvim/.config/nvim/lua/plugins/blink.lua new file mode 100644 index 0000000..b74f909 --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/blink.lua @@ -0,0 +1,144 @@ +return { + "saghen/blink.cmp", + version = not vim.g.lazyvim_blink_main and "*", + build = vim.g.lazyvim_blink_main and "cargo build --release", + opts_extend = { + "sources.completion.enabled_providers", + "sources.compat", + "sources.default", + }, + dependencies = { + "rafamadriz/friendly-snippets", + -- add blink.compat to dependencies + { + "saghen/blink.compat", + optional = true, -- make optional so it's only enabled if any extras need it + opts = {}, + version = not vim.g.lazyvim_blink_main and "*", + }, + }, + event = "InsertEnter", + + ---@module 'blink.cmp' + ---@type blink.cmp.Config + opts = { + snippets = { + expand = function(snippet, _) + return LazyVim.cmp.expand(snippet) + end, + }, + appearance = { + -- sets the fallback highlight groups to nvim-cmp's highlight groups + -- useful for when your theme doesn't support blink.cmp + -- will be removed in a future release, assuming themes add support + use_nvim_cmp_as_default = false, + -- set to 'mono' for 'Nerd Font Mono' or 'normal' for 'Nerd Font' + -- adjusts spacing to ensure icons are aligned + nerd_font_variant = "mono", + }, + completion = { + accept = { + -- experimental auto-brackets support + auto_brackets = { + enabled = true, + }, + }, + menu = { + draw = { + treesitter = { "lsp" }, + }, + }, + documentation = { + auto_show = true, + auto_show_delay_ms = 200, + }, + ghost_text = { + enabled = vim.g.ai_cmp, + }, + }, + + -- experimental signature help support + -- signature = { enabled = true }, + + sources = { + -- adding any nvim-cmp sources here will enable them + -- with blink.compat + compat = {}, + default = { "lsp", "path", "snippets", "buffer" }, + }, + + cmdline = { + enabled = false, + }, + + keymap = { + preset = "enter", + ["<C-y>"] = { "select_and_accept" }, + }, + }, + ---@param opts blink.cmp.Config | { sources: { compat: string[] } } + config = function(_, opts) + -- setup compat sources + local enabled = opts.sources.default + for _, source in ipairs(opts.sources.compat or {}) do + opts.sources.providers[source] = vim.tbl_deep_extend( + "force", + { name = source, module = "blink.compat.source" }, + opts.sources.providers[source] or {} + ) + if type(enabled) == "table" and not vim.tbl_contains(enabled, source) then + table.insert(enabled, source) + end + end + + -- add ai_accept to <Tab> key + if not opts.keymap["<Tab>"] then + if opts.keymap.preset == "super-tab" then -- super-tab + opts.keymap["<Tab>"] = { + require("blink.cmp.keymap.presets")["super-tab"]["<Tab>"][1], + LazyVim.cmp.map({ "snippet_forward", "ai_accept" }), + "fallback", + } + else -- other presets + opts.keymap["<Tab>"] = { + LazyVim.cmp.map({ "snippet_forward", "ai_accept" }), + "fallback", + } + end + end + + -- Unset custom prop to pass blink.cmp validation + opts.sources.compat = nil + + -- check if we need to override symbol kinds + for _, provider in pairs(opts.sources.providers or {}) do + ---@cast provider blink.cmp.SourceProviderConfig|{kind?:string} + if provider.kind then + local CompletionItemKind = require("blink.cmp.types").CompletionItemKind + local kind_idx = #CompletionItemKind + 1 + + CompletionItemKind[kind_idx] = provider.kind + ---@diagnostic disable-next-line: no-unknown + CompletionItemKind[provider.kind] = kind_idx + + ---@type fun(ctx: blink.cmp.Context, items: blink.cmp.CompletionItem[]): blink.cmp.CompletionItem[] + local transform_items = provider.transform_items + ---@param ctx blink.cmp.Context + ---@param items blink.cmp.CompletionItem[] + provider.transform_items = function(ctx, items) + items = transform_items and transform_items(ctx, items) or items + for _, item in ipairs(items) do + item.kind = kind_idx or item.kind + item.kind_icon = LazyVim.config.icons.kinds[item.kind_name] or item.kind_icon or nil + end + return items + end + + -- Unset custom prop to pass blink.cmp validation + provider.kind = nil + end + end + + require("blink.cmp").setup(opts) + end, +} diff --git a/nvim/.config/nvim/lua/plugins/links.lua b/nvim/.config/nvim/lua/plugins/links.lua new file mode 100644 index 0000000..7edb68d --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/links.lua @@ -0,0 +1,52 @@ +return { + "nvim-telescope/telescope.nvim", + keys = { + { + "<leader>fl", + function() + local pickers = require("telescope.pickers") + local finders = require("telescope.finders") + local conf = require("telescope.config").values + local actions = require("telescope.actions") + local action_state = require("telescope.actions.state") + + local lines = vim.api.nvim_buf_get_lines(0, 0, -1, false) + local urls, seen = {}, {} + + for _, line in ipairs(lines) do + for url in line:gmatch("https?://[%w-_%%&?./=+#]+") do + if not seen[url] then + seen[url] = true + table.insert(urls, url) + end + end + end + + if vim.tbl_isempty(urls) then + print("No links found in buffer") + return + end + + pickers + .new({}, { + prompt_title = "Buffer Links", + finder = finders.new_table({ results = urls }), + sorter = conf.generic_sorter({}), + attach_mappings = function(prompt_bufnr, map) + local copy_and_close = function() + local selection = action_state.get_selected_entry().value + vim.fn.system({ "wl-copy" }, selection) + print("Copied ➜ " .. selection) + actions.close(prompt_bufnr) + end + map("i", "<CR>", copy_and_close) + map("n", "<CR>", copy_and_close) + return true + end, + }) + :find() + end, + desc = "Find links in current buffer", + }, + }, +} diff --git a/nvim/.config/nvim/lua/plugins/neo-tree.lua b/nvim/.config/nvim/lua/plugins/neo-tree.lua index 3f11836..488ca77 100644 --- a/nvim/.config/nvim/lua/plugins/neo-tree.lua +++ b/nvim/.config/nvim/lua/plugins/neo-tree.lua @@ -1,98 +1,98 @@ -return { - "nvim-neo-tree/neo-tree.nvim", - dependencies = { - "nvim-lua/plenary.nvim", - "nvim-tree/nvim-web-devicons", - "MunifTanjim/nui.nvim", - }, - event = "VeryLazy", - keys = { - { "<leader><Tab>", ":Neotree toggle float<CR>", silent = true, desc = "Float File Explorer" }, - { "<leader>e", ":Neotree toggle left<CR>", silent = true, desc = "Left File Explorer" }, - }, - config = function() - require("neo-tree").setup({ - close_if_last_window = true, - popup_border_style = "single", - enable_git_status = true, - enable_modified_markers = true, - enable_diagnostics = true, - sort_case_insensitive = true, - default_component_configs = { - indent = { - with_markers = true, - with_expanders = true, - }, - modified = { - symbol = " ", - highlight = "NeoTreeModified", - }, - icon = { - folder_closed = "", - folder_open = "", - folder_empty = "", - folder_empty_open = "", - }, - git_status = { - symbols = { - -- Change type - added = "", - deleted = "", - modified = "", - renamed = "", - -- Status type - untracked = "", - ignored = "", - unstaged = "", - staged = "", - conflict = "", - }, - }, - }, - window = { - position = "float", - width = 35, - }, - filesystem = { - use_libuv_file_watcher = true, - filtered_items = { - hide_dotfiles = false, - hide_gitignored = false, - hide_by_name = { - "node_modules", - }, - never_show = { - ".DS_Store", - "thumbs.db", - }, - }, - }, - source_selector = { - winbar = true, - sources = { - { source = "filesystem", display_name = " Files " }, - { source = "buffers", display_name = " Bufs " }, - { source = "git_status", display_name = " Git " }, - }, - }, - event_handlers = { - { - event = "neo_tree_window_after_open", - handler = function(args) - if args.position == "left" or args.position == "right" then - vim.cmd("wincmd =") - end - end, - }, - { - event = "neo_tree_window_after_close", - handler = function(args) - if args.position == "left" or args.position == "right" then - vim.cmd("wincmd =") - end - end, - }, - }, - }) - end, -} +-- return { +-- "nvim-neo-tree/neo-tree.nvim", +-- dependencies = { +-- "nvim-lua/plenary.nvim", +-- "nvim-tree/nvim-web-devicons", +-- "MunifTanjim/nui.nvim", +-- }, +-- event = "VeryLazy", +-- keys = { +-- { "<leader><Tab>", ":Neotree toggle float<CR>", silent = true, desc = "Float File Explorer" }, +-- { "<leader>e", ":Neotree toggle left<CR>", silent = true, desc = "Left File Explorer" }, +-- }, +-- config = function() +-- require("neo-tree").setup({ +-- close_if_last_window = true, +-- popup_border_style = "single", +-- enable_git_status = true, +-- enable_modified_markers = true, +-- enable_diagnostics = true, +-- sort_case_insensitive = true, +-- default_component_configs = { +-- indent = { +-- with_markers = true, +-- with_expanders = true, +-- }, +-- modified = { +-- symbol = " ", +-- highlight = "NeoTreeModified", +-- }, +-- icon = { +-- folder_closed = "", +-- folder_open = "", +-- folder_empty = "", +-- folder_empty_open = "", +-- }, +-- git_status = { +-- symbols = { +-- -- Change type +-- added = "", +-- deleted = "", +-- modified = "", +-- renamed = "", +-- -- Status type +-- untracked = "", +-- ignored = "", +-- unstaged = "", +-- staged = "", +-- conflict = "", +-- }, +-- }, +-- }, +-- window = { +-- position = "float", +-- width = 35, +-- }, +-- filesystem = { +-- use_libuv_file_watcher = true, +-- filtered_items = { +-- hide_dotfiles = false, +-- hide_gitignored = false, +-- hide_by_name = { +-- "node_modules", +-- }, +-- never_show = { +-- ".DS_Store", +-- "thumbs.db", +-- }, +-- }, +-- }, +-- source_selector = { +-- winbar = true, +-- sources = { +-- { source = "filesystem", display_name = " Files " }, +-- { source = "buffers", display_name = " Bufs " }, +-- { source = "git_status", display_name = " Git " }, +-- }, +-- }, +-- event_handlers = { +-- { +-- event = "neo_tree_window_after_open", +-- handler = function(args) +-- if args.position == "left" or args.position == "right" then +-- vim.cmd("wincmd =") +-- end +-- end, +-- }, +-- { +-- event = "neo_tree_window_after_close", +-- handler = function(args) +-- if args.position == "left" or args.position == "right" then +-- vim.cmd("wincmd =") +-- end +-- end, +-- }, +-- }, +-- }) +-- end, +-- } diff --git a/nvim/.config/nvim/lua/plugins/telescope.lua b/nvim/.config/nvim/lua/plugins/telescope.lua index f8dcfc5..40817dc 100644 --- a/nvim/.config/nvim/lua/plugins/telescope.lua +++ b/nvim/.config/nvim/lua/plugins/telescope.lua @@ -78,9 +78,9 @@ return { { "<leader>ft", function() - require("telescope.builtin").help_tags() + require("telescope.builtin").treesitter() end, - desc = "Find help tags", + desc = "Find treesitter nodes", }, { "<leader>fh", diff --git a/nvim/.config/nvim/lua/plugins/undotree.lua b/nvim/.config/nvim/lua/plugins/undotree.lua index a09ac4a..3cdb7af 100644 --- a/nvim/.config/nvim/lua/plugins/undotree.lua +++ b/nvim/.config/nvim/lua/plugins/undotree.lua @@ -1,10 +1,9 @@ return { "mbbill/undotree", lazy = false, - keys = { { - "<leader>ut", + "<leader>u", "<Cmd>UndotreeToggle<CR>", desc = "Toggle UndoTree", }, diff --git a/sesh/.config/sesh/sesh.toml b/sesh/.config/sesh/sesh.toml new file mode 100644 index 0000000..6ef291f --- /dev/null +++ b/sesh/.config/sesh/sesh.toml @@ -0,0 +1,20 @@ +[default_session] +startup_command = "nvim -c ':Telescope find_files'" +preview_command = "eza --all --git --icons --color=always {}" +windows = [ "run", "git" ] + +[[window]] +name = "git" +startup_script = "git status" +disable_startup_script = false + +[[window]] +name = "run" +startup_script = "ls" +disable_startup_script = false + +[[session]] +name = "Downloads 📥" +path = "~/Downloads" +startup_command = "yazi" +windows = [ "run", "git" ] diff --git a/tmux/.tmux.conf b/tmux/.tmux.conf index 90908db..4f9097c 100644 --- a/tmux/.tmux.conf +++ b/tmux/.tmux.conf @@ -107,11 +107,11 @@ bind - split-window -v -c "#{pane_current_path}" # change the path for newly created windows bind c new-window -c "#{pane_current_path}" -bind C-e display-popup -E "\ - tmux list-sessions -F '#{?session_attached,,#{session_name}}' |\ - sed '/^$/d' |\ - fzf --reverse --header jump-to-session |\ - xargs tmux switch-client -t" +# bind C-e display-popup -E "\ +# tmux list-sessions -F '#{?session_attached,,#{session_name}}' |\ +# sed '/^$/d' |\ +# fzf --reverse --header jump-to-session |\ +# xargs tmux switch-client -t" # search windows in current session bind C-f display-popup -E "\ @@ -121,10 +121,23 @@ bind C-f display-popup -E "\ cut -d ' ' -f 1 |\ xargs tmux select-window -t" +bind-key C-k run-shell "sesh connect \"$( + sesh list --icons | fzf-tmux -p 55%,60% \ + --no-sort --reverse --ansi --border-label ' sesh ' --prompt '⚡ ' \ + --header ' ^a all ^t tmux ^g configs ^x zoxide ^d tmux kill ^f find' \ + --bind 'tab:down,btab:up' \ + --bind 'ctrl-a:change-prompt(⚡ )+reload(sesh list --icons)' \ + --bind 'ctrl-t:change-prompt(🪟 )+reload(sesh list -t --icons)' \ + --bind 'ctrl-g:change-prompt(⚙️ )+reload(sesh list -c --icons)' \ + --bind 'ctrl-x:change-prompt(📁 )+reload(sesh list -z --icons)' \ + --bind 'ctrl-f:change-prompt(🔎 )+reload(fd -H -d 2 -t d -E .Trash . ~)' \ + --bind 'ctrl-d:execute(tmux kill-session -t {2..})+change-prompt(⚡ )+reload(sesh list --icons)' +)\"" + # Move tmux status bar to top -bind-key C-k run-shell "tmux set-option -g status-position top;" +# bind-key C-k run-shell "tmux set-option -g status-position top;" # Move tmux status bar to bottom -bind-key C-j run-shell "tmux set-option -g status-position bottom;" +# bind-key C-j run-shell "tmux set-option -g status-position bottom;" unbind r unbind '"' diff --git a/vim/.vim/.netrwhist b/vim/.vim/.netrwhist new file mode 100644 index 0000000..4639013 --- /dev/null +++ b/vim/.vim/.netrwhist @@ -0,0 +1,8 @@ +let g:netrw_dirhistmax =10 +let g:netrw_dirhistcnt =6 +let g:netrw_dirhist_6='/tmp/cdev' +let g:netrw_dirhist_5='/home/omar/dotfiles/vim/.vim' +let g:netrw_dirhist_4='/home/omar/dotfiles/vim' +let g:netrw_dirhist_3='/home/omar/dotfiles/vim/.vim' +let g:netrw_dirhist_2='/home/omar/dotfiles/vim/.vim/pack' +let g:netrw_dirhist_1='/home/omar/dotfiles/vim/.vim' diff --git a/vim/.vim/colors/gruvbox.vim b/vim/.vim/colors/gruvbox.vim new file mode 100644 index 0000000..66246fb --- /dev/null +++ b/vim/.vim/colors/gruvbox.vim @@ -0,0 +1,1418 @@ +" ----------------------------------------------------------------------------- +" File: gruvbox.vim +" Description: Retro groove color scheme for Vim +" Author: morhetz <morhetz@gmail.com> +" Source: https://github.com/morhetz/gruvbox +" Last Modified: 12 Aug 2017 +" ----------------------------------------------------------------------------- + +" Supporting code ------------------------------------------------------------- +" Initialisation: {{{ + +if version > 580 + hi clear + if exists("syntax_on") + syntax reset + endif +endif + +let g:colors_name='gruvbox' + +if !(has('termguicolors') && &termguicolors) && !has('gui_running') && &t_Co != 256 + finish +endif + +" }}} +" Global Settings: {{{ + +if !exists('g:gruvbox_bold') + let g:gruvbox_bold=1 +endif +if !exists('g:gruvbox_italic') + if has('gui_running') || $TERM_ITALICS == 'true' + let g:gruvbox_italic=1 + else + let g:gruvbox_italic=0 + endif +endif +if !exists('g:gruvbox_undercurl') + let g:gruvbox_undercurl=1 +endif +if !exists('g:gruvbox_underline') + let g:gruvbox_underline=1 +endif +if !exists('g:gruvbox_inverse') + let g:gruvbox_inverse=1 +endif + +if !exists('g:gruvbox_guisp_fallback') || index(['fg', 'bg'], g:gruvbox_guisp_fallback) == -1 + let g:gruvbox_guisp_fallback='NONE' +endif + +if !exists('g:gruvbox_improved_strings') + let g:gruvbox_improved_strings=0 +endif + +if !exists('g:gruvbox_improved_warnings') + let g:gruvbox_improved_warnings=0 +endif + +if !exists('g:gruvbox_termcolors') + let g:gruvbox_termcolors=256 +endif + +if !exists('g:gruvbox_invert_indent_guides') + let g:gruvbox_invert_indent_guides=0 +endif + +if exists('g:gruvbox_contrast') + echo 'g:gruvbox_contrast is deprecated; use g:gruvbox_contrast_light and g:gruvbox_contrast_dark instead' +endif + +if !exists('g:gruvbox_contrast_dark') + let g:gruvbox_contrast_dark='medium' +endif + +if !exists('g:gruvbox_contrast_light') + let g:gruvbox_contrast_light='medium' +endif + +let s:is_dark=(&background == 'dark') + +" }}} +" Palette: {{{ + +" setup palette dictionary +let s:gb = {} + +" fill it with absolute colors +let s:gb.dark0_hard = ['#1d2021', 234] " 29-32-33 +let s:gb.dark0 = ['#282828', 235] " 40-40-40 +let s:gb.dark0_soft = ['#32302f', 236] " 50-48-47 +let s:gb.dark1 = ['#3c3836', 237] " 60-56-54 +let s:gb.dark2 = ['#504945', 239] " 80-73-69 +let s:gb.dark3 = ['#665c54', 241] " 102-92-84 +let s:gb.dark4 = ['#7c6f64', 243] " 124-111-100 +let s:gb.dark4_256 = ['#7c6f64', 243] " 124-111-100 + +let s:gb.gray_245 = ['#928374', 245] " 146-131-116 +let s:gb.gray_244 = ['#928374', 244] " 146-131-116 + +let s:gb.light0_hard = ['#f9f5d7', 230] " 249-245-215 +let s:gb.light0 = ['#fbf1c7', 229] " 253-244-193 +let s:gb.light0_soft = ['#f2e5bc', 228] " 242-229-188 +let s:gb.light1 = ['#ebdbb2', 223] " 235-219-178 +let s:gb.light2 = ['#d5c4a1', 250] " 213-196-161 +let s:gb.light3 = ['#bdae93', 248] " 189-174-147 +let s:gb.light4 = ['#a89984', 246] " 168-153-132 +let s:gb.light4_256 = ['#a89984', 246] " 168-153-132 + +let s:gb.bright_red = ['#fb4934', 167] " 251-73-52 +let s:gb.bright_green = ['#b8bb26', 142] " 184-187-38 +let s:gb.bright_yellow = ['#fabd2f', 214] " 250-189-47 +let s:gb.bright_blue = ['#83a598', 109] " 131-165-152 +let s:gb.bright_purple = ['#d3869b', 175] " 211-134-155 +let s:gb.bright_aqua = ['#8ec07c', 108] " 142-192-124 +let s:gb.bright_orange = ['#fe8019', 208] " 254-128-25 + +let s:gb.neutral_red = ['#cc241d', 124] " 204-36-29 +let s:gb.neutral_green = ['#98971a', 106] " 152-151-26 +let s:gb.neutral_yellow = ['#d79921', 172] " 215-153-33 +let s:gb.neutral_blue = ['#458588', 66] " 69-133-136 +let s:gb.neutral_purple = ['#b16286', 132] " 177-98-134 +let s:gb.neutral_aqua = ['#689d6a', 72] " 104-157-106 +let s:gb.neutral_orange = ['#d65d0e', 166] " 214-93-14 + +let s:gb.faded_red = ['#9d0006', 88] " 157-0-6 +let s:gb.faded_green = ['#79740e', 100] " 121-116-14 +let s:gb.faded_yellow = ['#b57614', 136] " 181-118-20 +let s:gb.faded_blue = ['#076678', 24] " 7-102-120 +let s:gb.faded_purple = ['#8f3f71', 96] " 143-63-113 +let s:gb.faded_aqua = ['#427b58', 66] " 66-123-88 +let s:gb.faded_orange = ['#af3a03', 130] " 175-58-3 + +" }}} +" Setup Emphasis: {{{ + +let s:bold = 'bold,' +if g:gruvbox_bold == 0 + let s:bold = '' +endif + +let s:italic = 'italic,' +if g:gruvbox_italic == 0 + let s:italic = '' +endif + +let s:underline = 'underline,' +if g:gruvbox_underline == 0 + let s:underline = '' +endif + +let s:undercurl = 'undercurl,' +if g:gruvbox_undercurl == 0 + let s:undercurl = '' +endif + +let s:inverse = 'inverse,' +if g:gruvbox_inverse == 0 + let s:inverse = '' +endif + +" }}} +" Setup Colors: {{{ + +let s:vim_bg = ['bg', 'bg'] +let s:vim_fg = ['fg', 'fg'] +let s:none = ['NONE', 'NONE'] + +" determine relative colors +if s:is_dark + let s:bg0 = s:gb.dark0 + if g:gruvbox_contrast_dark == 'soft' + let s:bg0 = s:gb.dark0_soft + elseif g:gruvbox_contrast_dark == 'hard' + let s:bg0 = s:gb.dark0_hard + endif + + let s:bg1 = s:gb.dark1 + let s:bg2 = s:gb.dark2 + let s:bg3 = s:gb.dark3 + let s:bg4 = s:gb.dark4 + + let s:gray = s:gb.gray_245 + + let s:fg0 = s:gb.light0 + let s:fg1 = s:gb.light1 + let s:fg2 = s:gb.light2 + let s:fg3 = s:gb.light3 + let s:fg4 = s:gb.light4 + + let s:fg4_256 = s:gb.light4_256 + + let s:red = s:gb.bright_red + let s:green = s:gb.bright_green + let s:yellow = s:gb.bright_yellow + let s:blue = s:gb.bright_blue + let s:purple = s:gb.bright_purple + let s:aqua = s:gb.bright_aqua + let s:orange = s:gb.bright_orange +else + let s:bg0 = s:gb.light0 + if g:gruvbox_contrast_light == 'soft' + let s:bg0 = s:gb.light0_soft + elseif g:gruvbox_contrast_light == 'hard' + let s:bg0 = s:gb.light0_hard + endif + + let s:bg1 = s:gb.light1 + let s:bg2 = s:gb.light2 + let s:bg3 = s:gb.light3 + let s:bg4 = s:gb.light4 + + let s:gray = s:gb.gray_244 + + let s:fg0 = s:gb.dark0 + let s:fg1 = s:gb.dark1 + let s:fg2 = s:gb.dark2 + let s:fg3 = s:gb.dark3 + let s:fg4 = s:gb.dark4 + + let s:fg4_256 = s:gb.dark4_256 + + let s:red = s:gb.faded_red + let s:green = s:gb.faded_green + let s:yellow = s:gb.faded_yellow + let s:blue = s:gb.faded_blue + let s:purple = s:gb.faded_purple + let s:aqua = s:gb.faded_aqua + let s:orange = s:gb.faded_orange +endif + +" reset to 16 colors fallback +if g:gruvbox_termcolors == 16 + let s:bg0[1] = 0 + let s:fg4[1] = 7 + let s:gray[1] = 8 + let s:red[1] = 9 + let s:green[1] = 10 + let s:yellow[1] = 11 + let s:blue[1] = 12 + let s:purple[1] = 13 + let s:aqua[1] = 14 + let s:fg1[1] = 15 +endif + +" save current relative colors back to palette dictionary +let s:gb.bg0 = s:bg0 +let s:gb.bg1 = s:bg1 +let s:gb.bg2 = s:bg2 +let s:gb.bg3 = s:bg3 +let s:gb.bg4 = s:bg4 + +let s:gb.gray = s:gray + +let s:gb.fg0 = s:fg0 +let s:gb.fg1 = s:fg1 +let s:gb.fg2 = s:fg2 +let s:gb.fg3 = s:fg3 +let s:gb.fg4 = s:fg4 + +let s:gb.fg4_256 = s:fg4_256 + +let s:gb.red = s:red +let s:gb.green = s:green +let s:gb.yellow = s:yellow +let s:gb.blue = s:blue +let s:gb.purple = s:purple +let s:gb.aqua = s:aqua +let s:gb.orange = s:orange + +" }}} +" Setup Terminal Colors For Neovim: {{{ + +if has('nvim') + let g:terminal_color_0 = s:bg0[0] + let g:terminal_color_8 = s:gray[0] + + let g:terminal_color_1 = s:gb.neutral_red[0] + let g:terminal_color_9 = s:red[0] + + let g:terminal_color_2 = s:gb.neutral_green[0] + let g:terminal_color_10 = s:green[0] + + let g:terminal_color_3 = s:gb.neutral_yellow[0] + let g:terminal_color_11 = s:yellow[0] + + let g:terminal_color_4 = s:gb.neutral_blue[0] + let g:terminal_color_12 = s:blue[0] + + let g:terminal_color_5 = s:gb.neutral_purple[0] + let g:terminal_colo |
