diff --git a/fish.configlink/config.fish b/fish.configlink/config.fish index a8637c2..0830a37 100644 --- a/fish.configlink/config.fish +++ b/fish.configlink/config.fish @@ -36,6 +36,11 @@ if status --is-interactive set -g FZF_CTRL_T_COMMAND "$FZF_DEFAULT_COMMAND" set -g FZF_DEFAULT_OPTS '-m --height 50% --border' + source $DOTS/fish.configlink/conf.d/nix-env.fish + # Use `starship` prompt starship init fish | source + + # Hook into direnv + direnv hook fish | source end diff --git a/fish.configlink/functions/abbrs.fish b/fish.configlink/functions/abbrs.fish index 0fbaf92..c2c3276 100644 --- a/fish.configlink/functions/abbrs.fish +++ b/fish.configlink/functions/abbrs.fish @@ -47,7 +47,7 @@ function abbrs --description 'All abbreviations' # GitHub abbr -a ghr 'gh repo view -w' - abbr -a gha 'gh run list | head -1 | awk \'{ print $NF }\' | xargs gh run view' + abbr -a gha 'gh run list | head -1 | awk \'{ print $(NF-2) }\' | xargs gh run view' abbr -a grw 'gh run watch' abbr -a grf 'gh run view --log-failed' abbr -a grl 'gh run view --log' @@ -67,6 +67,7 @@ function abbrs --description 'All abbreviations' # Notes abbr -a qn 'quicknote' abbr -a sn 'syncnotes' + abbr -a to 'today' abbr -a work 'vim $NOTES_PATH/work.md' # Improved CLI Tools diff --git a/fish.configlink/functions/fish_user_key_bindings.fish b/fish.configlink/functions/fish_user_key_bindings.fish index 2d5afcd..e9443e4 100644 --- a/fish.configlink/functions/fish_user_key_bindings.fish +++ b/fish.configlink/functions/fish_user_key_bindings.fish @@ -4,6 +4,7 @@ function fish_user_key_bindings bind -M insert \co 'edit' bind -M insert \ce 'recent' bind -M insert \cg 'commandline-git-commits' + bind -M insert \cf 'fcd' bind -M insert \x1F accept-autosuggestion bind -M default \x1F accept-autosuggestion end diff --git a/nvim.configlink/init.lua b/nvim.configlink/init.lua index 4aefbaf..a3026fb 100644 --- a/nvim.configlink/init.lua +++ b/nvim.configlink/init.lua @@ -10,52 +10,60 @@ end -- Packer plugin installations local use = require('packer').use require('packer').startup(function() - use 'wbthomason/packer.nvim' -- Maintain plugin manager - use 'tpope/vim-eunuch' -- File manipulation in Vim - use 'tpope/vim-vinegar' -- Fixes netrw file explorer - use 'tpope/vim-fugitive' -- Git commands - use 'tpope/vim-surround' -- Manipulate parentheses - use 'tpope/vim-commentary' -- Use gc or gcc to add comments - use 'tpope/vim-repeat' -- Actually repeat using . - use 'christoomey/vim-tmux-navigator' -- Hotkeys for tmux panes - use 'morhetz/gruvbox' -- Colorscheme - use 'phaazon/hop.nvim' -- Quick jump around the buffer - use 'neovim/nvim-lspconfig' -- Language server linting - use 'folke/lsp-colors.nvim' -- Pretty LSP highlights - use 'jiangmiao/auto-pairs' -- Parentheses + use 'wbthomason/packer.nvim' -- Maintain plugin manager + use 'tpope/vim-eunuch' -- File manipulation in Vim + use 'tpope/vim-vinegar' -- Fixes netrw file explorer + use 'tpope/vim-fugitive' -- Git commands + use 'tpope/vim-surround' -- Manipulate parentheses + use 'tpope/vim-commentary' -- Use gc or gcc to add comments + use 'tpope/vim-repeat' -- Actually repeat using . + use 'christoomey/vim-tmux-navigator' -- Hotkeys for tmux panes + use 'morhetz/gruvbox' -- Colorscheme + use 'phaazon/hop.nvim' -- Quick jump around the buffer + use 'neovim/nvim-lspconfig' -- Language server linting + use 'folke/lsp-colors.nvim' -- Pretty LSP highlights use 'rafamadriz/friendly-snippets' use 'hrsh7th/vim-vsnip' use 'hrsh7th/vim-vsnip-integ' - use 'hrsh7th/nvim-compe' -- Auto-complete - use 'godlygeek/tabular' -- Spacing and alignment - use 'vimwiki/vimwiki' -- Wiki Markdown System - use 'airblade/vim-rooter' -- Change directory to git route - use 'itchyny/lightline.vim' -- Status bar - use { -- Syntax highlighting for most languages + use 'hrsh7th/nvim-compe' -- Auto-complete + use 'godlygeek/tabular' -- Spacing and alignment + use 'vimwiki/vimwiki' -- Wiki Markdown System + use 'airblade/vim-rooter' -- Change directory to git route + use { -- Status bar + 'hoob3rt/lualine.nvim', + requires = { + 'kyazdani42/nvim-web-devicons', + opt = true + } + } + use { -- Syntax highlighting for most languages 'nvim-treesitter/nvim-treesitter', run = ':TSUpdate' } - use 'bfontaine/Brewfile.vim' -- Brewfile syntax - use 'blankname/vim-fish' -- Fish syntax - use 'chr4/nginx.vim' -- Nginx syntax - use 'hashivim/vim-terraform' -- Terraform syntax - use 'cespare/vim-toml' -- TOML syntax - use 'towolf/vim-helm' -- Helm syntax - use { -- Git next to line numbers + use 'bfontaine/Brewfile.vim' -- Brewfile syntax + use 'blankname/vim-fish' -- Fish syntax + use 'chr4/nginx.vim' -- Nginx syntax + use 'hashivim/vim-terraform' -- Terraform syntax + use 'cespare/vim-toml' -- TOML syntax + use 'towolf/vim-helm' -- Helm syntax + use 'LnL7/vim-nix' -- Nix syntax + use { -- Git next to line numbers 'lewis6991/gitsigns.nvim', requires = {'nvim-lua/plenary.nvim'}, config = function() require('gitsigns').setup() end } - use { -- Fuzzy finder + use { -- Fuzzy finder 'junegunn/fzf.vim', requires = {'/usr/local/opt/fzf'} } - -- use 'ludovicchabant/vim-gutentags' + -- use 'ludovicchabant/vim-gutentags' end) --- LSP Plugins +-- LSP Settings +-- ============ + require('lspconfig').rust_analyzer.setup{} require('lspconfig').pyright.setup{ cmd = { "poetry", "run", "pyright-langserver", "--stdio" } @@ -279,22 +287,10 @@ vim.api.nvim_exec([[ command! AddTag call fzf#run({'source': 'rg "#[A-Za-z/]+[ |\$]" -o --no-filename --no-line-number | sort | uniq', 'sink': function('PInsert')}) ]], false) --- Lightline status bar -vim.g.lightline = { - ["colorscheme"] = "jellybeans", - ["active"] = { - ["right"] = { - { "lineinfo" } - }, - ["left"] = { - { "mode", "paste" }, - { "readonly", "relativepath", "gitbranch", "modified" } - } - }, - ["component_function"] = { - ["gitbranch"] = "fugitive#head" - }, -} +-- Status bar +require('lualine').setup({ + options = { theme = 'gruvbox' } +}) -- Remap space as leader key vim.api.nvim_set_keymap("", "", "", {noremap=true, silent=true})