diff --git a/.Brewfile b/.Brewfile index cf66bd1..baeb0a2 100644 --- a/.Brewfile +++ b/.Brewfile @@ -15,23 +15,21 @@ tap "turbot/tap" tap "warrensbox/tap" brew "ack" brew "amazon-ecs-cli" +brew "asciinema" brew "gdbm" brew "readline" brew "xz" brew "autojump" brew "automake" brew "autossh" -brew "libffi" -brew "glib" -brew "cairo" -brew "gobject-introspection" -brew "harfbuzz" -brew "pillow" brew "awscli" brew "bash" brew "bat" brew "bison" brew "blueutil" +brew "libffi" +brew "glib" +brew "cairo" brew "cheat" brew "consul" brew "coreutils" @@ -40,10 +38,14 @@ brew "erlang" brew "elixir" brew "exa" brew "expect" +brew "fasd" brew "fd" +brew "gobject-introspection" +brew "harfbuzz" brew "ffmpeg" brew "ffsend" brew "findutils" +brew "fnm" brew "fpp" brew "fzf" brew "gdk-pixbuf" @@ -68,11 +70,13 @@ brew "htop" brew "hub" brew "imagemagick" brew "jq" +brew "kubectx" brew "lazygit" brew "libyaml" brew "lynx" brew "markdown" brew "mas" +brew "minikube" brew "mkvtoolnix" brew "mongosh" brew "mono" @@ -86,6 +90,7 @@ brew "nnn" brew "nvm" brew "openjdk" brew "pandoc" +brew "pillow" brew "pinentry-mac" brew "ruby-build" brew "rbenv" @@ -100,13 +105,13 @@ brew "starship" brew "stylua" brew "teensy_loader_cli" brew "terraform-ls" -brew "tfenv" +brew "thefuck" brew "the_platinum_searcher" brew "the_silver_searcher" brew "tldr" brew "tmux" brew "tmux-xpanes" -brew "tmuxinator" +brew "tmuxinator", link: false brew "tmuxinator-completion", link: false brew "tree" brew "ttyrec" @@ -144,6 +149,7 @@ cask "docker" cask "dropbox" cask "firefox" cask "font-fira-code-nerd-font" +cask "font-hack-nerd-font" cask "font-noto-nerd-font" cask "fork" cask "google-chrome" @@ -177,20 +183,15 @@ cask "swiftbar" cask "synergy" cask "telegram" cask "vagrant" -cask "virtualbox" -cask "virtualbox-extension-pack" cask "visual-studio-code" cask "vlc" cask "whatsapp" -cask "zoomus" -mas "Compressor", id: 424390742 +cask "zoom" mas "Craft", id: 1487937127 mas "Drafts", id: 1435957248 mas "EOBD-Facile", id: 976630793 -mas "Final Cut Pro", id: 424389933 mas "Greenshot", id: 1103915944 mas "Pixelmator", id: 407963104 mas "Sequel Ace", id: 1518036000 mas "Tailscale", id: 1475387142 mas "Todoist", id: 585829637 -mas "Xcode", id: 497799835 diff --git a/.config/lvim/config.lua b/.config/lvim/config.lua index 9c9c30d..37cc940 100644 --- a/.config/lvim/config.lua +++ b/.config/lvim/config.lua @@ -12,16 +12,17 @@ an executable lvim.log.level = "warn" lvim.format_on_save = true lvim.colorscheme = "onedarker" -vim.opt.clipboard = "unnamed,unnamedplus" +-- to disable icons and use a minimalist setup, uncomment the following +-- lvim.use_icons = false -- keymappings [view all the defaults by pressing Lk] lvim.leader = "space" -- add your own keymapping lvim.keys.normal_mode[""] = ":w" -- unmap a default keymapping --- lvim.keys.normal_mode[""] = "" --- edit a default keymapping --- lvim.keys.normal_mode[""] = ":q" +-- vim.keymap.del("n", "") +-- override a default keymapping +-- lvim.keys.normal_mode[""] = ":q" -- or vim.keymap.set("n", "", ":q" ) -- Change Telescope navigation to use j and k for navigation and n and p for history in both input and normal mode. -- we use protected-mode (pcall) just in case the plugin wasn't loaded yet. @@ -41,21 +42,45 @@ lvim.builtin.telescope.defaults.mappings = { }, } +lvim.builtin.telescope.on_config_done = function(telescope) + telescope.setup{ + extensions = { + project = { + base_dirs = { + -- {path = '~/src', max_depth = 1}, + -- {path = '~/src/tmp', max_depth = 1}, + -- {path = '~/src/omuras/code', max_depth = 1}, + {path = '~/src'}, + {path = '~/src/tmp'}, + {path = '~/src/omuras/code'}, + {path = '~/org'}, + }, + hidden_files = true, + } + } + } + + pcall(telescope.load_extension, "file-browser") + pcall(telescope.load_extension, "project") +end + -- Use which-key to add extra bindings with the leader-key prefix --- lvim.builtin.which_key.mappings["P"] = { "Telescope projects", "Projects" } +lvim.builtin.which_key.mappings["P"] = { "Telescope projects", "Projects" } -- lvim.builtin.which_key.mappings["t"] = { -- name = "+Trouble", -- r = { "Trouble lsp_references", "References" }, -- f = { "Trouble lsp_definitions", "Definitions" }, --- d = { "Trouble lsp_document_diagnostics", "Diagnostics" }, +-- d = { "Trouble document_diagnostics", "Diagnostics" }, -- q = { "Trouble quickfix", "QuickFix" }, -- l = { "Trouble loclist", "LocationList" }, --- w = { "Trouble lsp_workspace_diagnostics", "Diagnostics" }, +-- w = { "Trouble workspace_diagnostics", "Wordspace Diagnostics" }, -- } -- TODO: User Config for predefined plugins -- After changing plugin config exit and reopen LunarVim, Run :PackerInstall :PackerCompile -lvim.builtin.dashboard.active = true +lvim.builtin.alpha.active = true +lvim.builtin.alpha.mode = "dashboard" +lvim.builtin.notify.active = true lvim.builtin.terminal.active = true lvim.builtin.nvimtree.setup.view.side = "left" lvim.builtin.nvimtree.show_icons.git = 0 @@ -69,33 +94,38 @@ lvim.builtin.treesitter.ensure_installed = { "lua", "python", "typescript", + "tsx", "css", "rust", "java", "yaml", - "go", } lvim.builtin.treesitter.ignore_install = { "haskell" } lvim.builtin.treesitter.highlight.enabled = true +lvim.builtin.project.active = false -lvim.lsp.automatic_servers_installation = true +lvim.lsp.null_ls.setup.timeout_ms = 30000 -- generic LSP settings -- ---@usage disable automatic installation of servers -- lvim.lsp.automatic_servers_installation = false --- ---@usage Select which servers should be configured manually. Requires `:LvimCacheRest` to take effect. --- See the full default list `:lua print(vim.inspect(lvim.lsp.override))` --- vim.list_extend(lvim.lsp.override, { "pyright" }) - --- ---@usage setup a server -- see: https://www.lunarvim.org/languages/#overriding-the-default-configuration +-- ---configure a server manually. !!Requires `:LvimCacheReset` to take effect!! +-- ---see the full default list `:lua print(vim.inspect(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("pylsp", opts) +-- require("lvim.lsp.manager").setup("pyright", opts) --- you can set a custom on_attach function that will be used for all the language servers --- See +-- ---remove a server from the skipped list, e.g. eslint, or emmet_ls. !!Requires `:LvimCacheReset` to take effect!! +-- ---`:LvimInfo` lists which server(s) are skiipped for the current filetype +-- vim.tbl_map(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 -- lvim.lsp.on_attach_callback = function(client, bufnr) -- local function buf_set_option(...) -- vim.api.nvim_buf_set_option(bufnr, ...) @@ -103,32 +133,18 @@ lvim.lsp.automatic_servers_installation = true -- --Enable completion triggered by -- buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc") -- end --- you can overwrite the null_ls setup table (useful for setting the root_dir function) --- lvim.lsp.null_ls.setup = { --- root_dir = require("lspconfig").util.root_pattern("Makefile", ".git", "node_modules"), --- } --- or if you need something more advanced --- lvim.lsp.null_ls.setup.root_dir = function(fname) --- if vim.bo.filetype == "javascript" then --- return require("lspconfig/util").root_pattern("Makefile", ".git", "node_modules")(fname) --- or require("lspconfig/util").path.dirname(fname) --- elseif vim.bo.filetype == "php" then --- return require("lspconfig/util").root_pattern("Makefile", ".git", "composer.json")(fname) or vim.fn.getcwd() --- else --- return require("lspconfig/util").root_pattern("Makefile", ".git")(fname) or require("lspconfig/util").path.dirname(fname) --- end --- end -- -- set a formatter, this will override the language server formatting capabilities (if it exists) -- local formatters = require "lvim.lsp.null-ls.formatters" -- formatters.setup { --- { exe = "black", filetypes = { "python" } }, --- { exe = "isort", filetypes = { "python" } }, +-- { command = "black", filetypes = { "python" } }, +-- { command = "isort", filetypes = { "python" } }, -- { --- exe = "prettier", +-- -- each formatter accepts a list of options identical to https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#Configuration +-- command = "prettier", -- ---@usage arguments to pass to the formatter -- -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}` --- args = { "--print-with", "100" }, +-- extra_args = { "--print-with", "100" }, -- ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports. -- filetypes = { "typescript", "typescriptreact" }, -- }, @@ -137,15 +153,16 @@ lvim.lsp.automatic_servers_installation = true -- -- set additional linters -- local linters = require "lvim.lsp.null-ls.linters" -- linters.setup { --- { exe = "flake8", filetypes = { "python" } }, +-- { command = "flake8", filetypes = { "python" } }, -- { --- exe = "shellcheck", +-- -- each linter accepts a list of options identical to https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#Configuration +-- command = "shellcheck", -- ---@usage arguments to pass to the formatter -- -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}` --- args = { "--severity", "warning" }, +-- extra_args = { "--severity", "warning" }, -- }, -- { --- exe = "codespell", +-- command = "codespell", -- ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports. -- filetypes = { "javascript", "python" }, -- }, @@ -161,11 +178,22 @@ lvim.lsp.automatic_servers_installation = true -- } -- Autocommands (https://neovim.io/doc/user/autocmd.html) --- lvim.autocommands.custom_groups = { --- { "BufWinEnter", "*.lua", "setlocal ts=8 sw=8" }, --- } +-- vim.api.nvim_create_autocmd("BufEnter", { +-- pattern = { "*.json", "*.jsonc" }, +-- -- enable wrap mode for json files only +-- command = "setlocal wrap", +-- }) +-- 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, lvim.plugins = { + { + "dracula/vim", + }, { "tpope/vim-surround", keys = { "c", "d", "y" }, @@ -239,40 +267,140 @@ lvim.plugins = { "p00f/nvim-ts-rainbow", }, { "tpope/vim-repeat" }, - { - "monaqa/dial.nvim", - event = "BufRead", - config = function() - local dial = require("dial") - vim.cmd([[ - nmap (dial-increment) - nmap (dial-decrement) - vmap (dial-increment) - vmap (dial-decrement) - vmap g (dial-increment-additional) - vmap g (dial-decrement-additional) - ]]) + -- { + -- "monaqa/dial.nvim", + -- event = "BufRead", + -- config = function() + -- local dial = require("dial") + -- vim.cmd([[ + -- nmap (dial-increment) + -- nmap (dial-decrement) + -- vmap (dial-increment) + -- vmap (dial-decrement) + -- vmap g (dial-increment-additional) + -- vmap g (dial-decrement-additional) + -- ]]) - dial.augends["custom#boolean"] = dial.common.enum_cyclic({ - name = "boolean", - strlist = { "true", "false" }, - }) - table.insert(dial.config.searchlist.normal, "custom#boolean") + -- dial.augends["custom#boolean"] = dial.common.enum_cyclic({ + -- name = "boolean", + -- strlist = { "true", "false" }, + -- }) + -- table.insert(dial.config.searchlist.normal, "custom#boolean") - -- For Languages which prefer True/False, e.g. python. - dial.augends["custom#Boolean"] = dial.common.enum_cyclic({ - name = "Boolean", - strlist = { "True", "False" }, - }) - table.insert(dial.config.searchlist.normal, "custom#Boolean") - end, - }, + -- -- For Languages which prefer True/False, e.g. python. + -- dial.augends["custom#Boolean"] = dial.common.enum_cyclic({ + -- name = "Boolean", + -- strlist = { "True", "False" }, + -- }) + -- table.insert(dial.config.searchlist.normal, "custom#Boolean") + -- end, + -- }, + -- { + -- "mrjones2014/dash.nvim", + -- run = "make install", + -- }, { - "mrjones2014/dash.nvim", - run = "make install", + "nvim-orgmode/orgmode", + config = function() + require('orgmode').setup{ + org_blank_before_new_entry = { + heading = false, + plain_list_item = false, + } + } + end, + }, + -- { + -- "dhruvasagar/vim-table-mode", + -- }, + { + "akinsho/org-bullets.nvim", + setup = function() + symbols = { "◉", "○", "✸", "✿" } + end + }, + { + "nvim-telescope/telescope-project.nvim", + event = "BufWinEnter", + setup = function() + vim.cmd [[packadd telescope.nvim]] + end, + }, + { + "nvim-telescope/telescope-file-browser.nvim", + }, + { + "ray-x/lsp_signature.nvim", + event = "BufRead", + config = function() + require "lsp_signature".setup() + end + }, + { + "folke/trouble.nvim", + cmd = "TroubleToggle", + }, + { + "rmagatti/goto-preview", + config = function() + require('goto-preview').setup { + width = 120; -- Width of the floating window + height = 25; -- Height of the floating window + default_mappings = true; -- Bind default mappings + debug = false; -- Print debug information + opacity = nil; -- 0-100 opacity level of the floating window where 100 is fully transparent. + post_open_hook = nil;-- A function taking two arguments, a buffer and a window to be ran as a hook. + -- You can use "default_mappings = true" setup option + -- Or explicitly set keybindings + vim.cmd("nnoremap gPd lua require('goto-preview').goto_preview_definition()"); + vim.cmd("nnoremap gPi lua require('goto-preview').goto_preview_implementation()"); + vim.cmd("nnoremap gPc lua require('goto-preview').close_all_win()"); + } + end, }, } + + +lvim.builtin.which_key.mappings["t"] = { + name = "Diagnostics", + t = { "TroubleToggle", "trouble" }, + w = { "TroubleToggle workspace_diagnostics", "workspace" }, + d = { "TroubleToggle document_diagnostics", "document" }, + q = { "TroubleToggle quickfix", "quickfix" }, + l = { "TroubleToggle loclist", "loclist" }, + r = { "TroubleToggle lsp_references", "references" }, +} + +-- org mode +local parser_config = require "nvim-treesitter.parsers".get_parser_configs() +parser_config.org = { + install_info = { + url = 'https://github.com/milisims/tree-sitter-org', + revision = 'f110024d539e676f25b72b7c80b0fd43c34264ef', + files = {'src/parser.c', 'src/scanner.cc'}, + }, + filetype = 'org', +} + +require('orgmode').setup_ts_grammar() + +require'nvim-treesitter.configs'.setup { + -- If TS highlights are not enabled at all, or disabled via `disable` prop, highlighting will fallback to default Vim syntax highlighting + highlight = { + enable = true, + disable = {'org'}, -- Remove this to use TS highlighter for some of the highlights (Experimental) + additional_vim_regex_highlighting = {'org'}, -- Required since TS highlighter doesn't support all syntax features (conceal) + }, + ensure_installed = {'org'}, -- Or run :TSUpdate org +} + +require('orgmode').setup({ + org_agenda_files = {'~/org/**/*'}, + org_default_notes_file = '~/org/refile.org', +}) + +-- javascript/typescript local formatters = require "lvim.lsp.null-ls.formatters" formatters.setup { { @@ -293,7 +421,6 @@ formatters.setup { }, } --- set additional linters local linters = require "lvim.lsp.null-ls.linters" linters.setup { { @@ -301,3 +428,16 @@ linters.setup { filetypes = { "typescript", "typescriptreact", "javascript", "javascriptreact" }, }, } + +lvim.builtin.which_key.mappings["P"] = { "lua require'telescope'.extensions.project.project{ display_type = 'full' }", "Projects" } +lvim.builtin.which_key.mappings['`'] = { ":edit #", "Last Buffer" } +lvim.builtin.which_key.mappings['lP'] = { "lua require('goto-preview').goto_preview_definition()", "Goto Preview" } +-- lvim.builtin.which_key.mappings["P"] = { "Telescope project", "Projects" } + +-- term stuff (there is probably something better) +-- vim.api.nvim_set_keymap("n", "t", [[vnew term://zsh | vertical resize 87 ]], +-- {silent = true}) -- term over right + +-- vertical terminal +-- vim.api.nvim_set_keymap("n", "t", [[ split term://zsh | resize 28 ]], +-- {silent = true}) -- term bottom diff --git a/.config/yadm/encrypt b/.config/yadm/encrypt new file mode 100644 index 0000000..be06428 --- /dev/null +++ b/.config/yadm/encrypt @@ -0,0 +1,6 @@ +.config/zsh/dockerhub.zsh +.config/zsh/fpp.zsh +.config/zsh/github.zsh +.config/zsh/wizehive.zsh +.ssh/id_rsa +.ssh/id_rsa_tedkulp_old diff --git a/.config/zsh/fnm.zsh b/.config/zsh/fnm.zsh index 3d4955d..1410908 100644 --- a/.config/zsh/fnm.zsh +++ b/.config/zsh/fnm.zsh @@ -1,5 +1,5 @@ export PATH=/home/ted/.fnm:$PATH -eval "`fnm env`" +eval "$(fnm env --use-on-cd)" autoload -U add-zsh-hook _fnm_autoload_hook () { diff --git a/.config/zsh/git.zsh b/.config/zsh/git.zsh index 95f9eb5..9d78f41 100644 --- a/.config/zsh/git.zsh +++ b/.config/zsh/git.zsh @@ -1,16 +1,33 @@ alias ghm='git push heroku master' alias gpp='git pull origin "(git_current_branch)" && git push origin "(git_current_branch)"' +alias gfap='git pull --all -p' + +function gctest () { + local branch="${1:-master}" + + git merge --no-commit --no-ff $1 + git merge --abort +} function grcl () { local branch="${1:-master}" - echo git checkout $branch - echo git pull - echo git remote prune origin - echo git branch -avv | grep "gone]" | awk '{ print $1 }' | xargs git branch -d; + git checkout $branch + gfap + git remote prune origin + git branch -avv | grep "gone]" | awk '{ print $1 }' | xargs git branch -d; } -alias gie='git init && git commit --allow-empty -m "Initial commit"' +unset gie +function gie () { + local email="${1:-ted@tedkulp.com}" + + git init + git config user.email "$email" + git commit --allow-empty -m "Initial Commit" +} + +# alias gie='git init && git commit --allow-empty -m "Initial commit"' # alias __git-checkout_main=_git_checkout # compdef _git grcl=git-checkout diff --git a/.config/zsh/keychain.zsh b/.config/zsh/keychain.zsh deleted file mode 120000 index b5b4c54..0000000 --- a/.config/zsh/keychain.zsh +++ /dev/null @@ -1 +0,0 @@ -keychain.zsh##os.WSL \ No newline at end of file diff --git a/.config/zsh/nvm.zsh b/.config/zsh/nvm.zsh index d85ef6c..df3ba51 100644 --- a/.config/zsh/nvm.zsh +++ b/.config/zsh/nvm.zsh @@ -2,21 +2,21 @@ # declare -a NODE_GLOBALS=(`find $NVM_DIR/versions/node -maxdepth 3 -type l -wholename '*/bin/*' | xargs -n1 basename | sort | uniq`) -NODE_GLOBALS+=("node") -NODE_GLOBALS+=("nvm") +# NODE_GLOBALS+=("node") +# NODE_GLOBALS+=("nvm") -load_nvm () { - if [ -s "$NVM_DIR/nvm.sh" ]; then - # These are the ones when using curl install - [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm - [ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion" # This loads nvm bash_completion - elif [ -x "$(command -v brew)" ]; then - export NVM_PREFIX=$(brew --prefix nvm) - # These are the homebrew ones - [ -s "$NVM_PREFIX/nvm.sh" ] && . "/usr/local/opt/nvm/nvm.sh" # This loads nvm - [ -s "$NVM_PREFIX/etc/bash_completion.d/nvm" ] && . "/usr/local/opt/nvm/etc/bash_completion.d/nvm" # This loads nvm bash_completion - fi -} +# load_nvm () { +# if [ -s "$NVM_DIR/nvm.sh" ]; then +# # These are the ones when using curl install +# [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm +# [ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion" # This loads nvm bash_completion +# elif [ -x "$(command -v brew)" ]; then +# export NVM_PREFIX=$(brew --prefix nvm) +# # These are the homebrew ones +# [ -s "$NVM_PREFIX/nvm.sh" ] && . "/usr/local/opt/nvm/nvm.sh" # This loads nvm +# [ -s "$NVM_PREFIX/etc/bash_completion.d/nvm" ] && . "/usr/local/opt/nvm/etc/bash_completion.d/nvm" # This loads nvm bash_completion +# fi +# } # for cmd in "${NODE_GLOBALS[@]}"; do # eval "${cmd}(){ unset -f ${NODE_GLOBALS}; load_nvm; ${cmd} \$@ }" diff --git a/.gitconfig b/.gitconfig index 886bc04..2b568b0 100644 --- a/.gitconfig +++ b/.gitconfig @@ -1,6 +1,6 @@ [user] name = Ted Kulp - email = ted@tedkulp.com + email = ted.kulp@wizehive.com gmail = tedkulp@gmail.com signingKey = AE6B007E2FAB1C94319C7C09FD56BE79CDAE7895 [commit] diff --git a/.local/share/yadm/archive b/.local/share/yadm/archive index 597c08e..002ddf7 100644 Binary files a/.local/share/yadm/archive and b/.local/share/yadm/archive differ diff --git a/.tmux.conf.local b/.tmux.conf.local index 2f472d0..90ad83f 100644 --- a/.tmux.conf.local +++ b/.tmux.conf.local @@ -93,12 +93,12 @@ tmux_conf_theme_window_bg="default" tmux_conf_theme_highlight_focused_pane=true # focused pane colours: -tmux_conf_theme_focused_pane_bg="$tmux_conf_theme_colour_1" +tmux_conf_theme_focused_pane_bg="default" # pane border style, possible values are: # - thin (default) # - fat -tmux_conf_theme_pane_border_style=thin +tmux_conf_theme_pane_border_style=fat # pane borders colours: tmux_conf_theme_pane_border="$tmux_conf_theme_colour_2" @@ -380,7 +380,6 @@ set -g @plugin 'tmux-plugins/tmux-urlview' set -g @plugin 'sainnhe/tmux-fzf' set -g @plugin 'laktak/extrakto' - # -- custom variables ---------------------------------------------------------- # to define a custom #{foo} variable, define a POSIX shell function between the diff --git a/.zshrc b/.zshrc index 9c2f5fd..5858ae6 100644 --- a/.zshrc +++ b/.zshrc @@ -1,3 +1,6 @@ +export PATH="${PATH}:${HOME}/.local/bin" + + # zmodload zsh/zprof ZSH_DISABLE_COMPFIX=true setopt HIST_IGNORE_SPACE @@ -74,7 +77,7 @@ fi # Custom plugins may be added to $ZSH_CUSTOM/plugins/ # Example format: plugins=(rails git textmate ruby lighthouse) # Add wisely, as too many plugins slow down shell startup. -plugins=(vi-mode git fzf aws vscode sudo dash zsh-z zsh-syntax-highlighting) +plugins=(vi-mode git fzf aws vscode dash fasd thefuck zsh-syntax-highlighting jq forgit) source $ZSH/oh-my-zsh.sh @@ -111,3 +114,6 @@ source $ZSH/oh-my-zsh.sh source <("/usr/local/bin/starship" init zsh --print-full-init) # zprof + +# Add RVM to PATH for scripting. Make sure this is the last PATH variable change. +export PATH="$PATH:$HOME/.rvm/bin"