diff --git a/.asdfrc b/.asdfrc deleted file mode 100644 index df84f2e..0000000 --- a/.asdfrc +++ /dev/null @@ -1,4 +0,0 @@ -# See the docs for explanations: https://asdf-vm.com/manage/configuration.html - -legacy_version_file = yes -always_keep_download=yes diff --git a/.config/fish/config.fish b/.config/fish/config.fish deleted file mode 100644 index 067254c..0000000 --- a/.config/fish/config.fish +++ /dev/null @@ -1,51 +0,0 @@ -eval (/opt/homebrew/bin/brew shellenv) -mise activate fish | source - -if status is-interactive - fish_vi_key_bindings - - zoxide init fish | source - - if not set -q TMUX - set -g TMUX tmux new-session -d -s default - eval $TMUX - tmux attach-session -d -t default - end -end - -set -x EDITOR nvim - -abbr -a g git -abbr -a ga git add -abbr -a gb git branch -abbr -a gc git commit -abbr -a gcb git checkout -b -abbr -a gco git checkout -abbr -a gd git diff -abbr -a gf git fetch -abbr -a gp git push -abbr -a gP git push --force-with-lease -abbr -a gpl git pull -abbr -a gplr git pull --rebase -abbr -a gr git rebase -abbr -a grr git rebase --continue -abbr -a gst git status -abbr -a gca git commit -a - -abbr -a fug nvim +Git +only - -abbr -a nr npm run - -abbr -a y yarn -abbr -a yb yarn bootstrap -abbr -a ym yarn migrate -abbr -a yf yarn format-since - -abbr -a mux tmuxinator - -# fix common "yadm" typos -abbr -a ydam yadm -abbr -a ydma yadm - -# mise shorthands -abbr -a mr mise run diff --git a/.config/fish/functions/brew-save.fish b/.config/fish/functions/brew-save.fish deleted file mode 100755 index 79cd9ad..0000000 --- a/.config/fish/functions/brew-save.fish +++ /dev/null @@ -1,21 +0,0 @@ -function brew-save -d "Install a new homebrew cask and update the global Brewfile" - set -f package $argv - if set -f info_output (brew info $package 2> /dev/null) - if echo $info_output | grep homebrew-cask &> /dev/null - set -f brewfile_keyword cask - else - set -f brewfile_keyword brew - end - set -l brewfile_line "$brewfile_keyword \"$package\"" - if grep $brewfile_line ~/.Brewfile &> /dev/null - echo "package already in ~/.Brewfile: $package" - return 1 - else - echo "$brewfile_keyword \"$package\"" >> ~/.Brewfile - brew bundle --global - end - else - echo "package not found: $package" - return 1 - end -end diff --git a/.config/kitty/Catppuccin-Frappe.conf b/.config/kitty/Catppuccin-Frappe.conf deleted file mode 100644 index 80c3a35..0000000 --- a/.config/kitty/Catppuccin-Frappe.conf +++ /dev/null @@ -1,80 +0,0 @@ -# vim:ft=kitty - -## name: Catppuccin-Frappe -## author: Pocco81 (https://github.com/Pocco81) -## license: MIT -## upstream: https://github.com/catppuccin/kitty/blob/main/frappe.conf -## blurb: Soothing pastel theme for the high-spirited! - - - -# The basic colors -foreground #C6D0F5 -background #303446 -selection_foreground #303446 -selection_background #F2D5CF - -# Cursor colors -cursor #F2D5CF -cursor_text_color #303446 - -# URL underline color when hovering with mouse -url_color #F2D5CF - -# Kitty window border colors -active_border_color #BABBF1 -inactive_border_color #737994 -bell_border_color #E5C890 - -# OS Window titlebar colors -wayland_titlebar_color system -macos_titlebar_color system - -# Tab bar colors -active_tab_foreground #232634 -active_tab_background #CA9EE6 -inactive_tab_foreground #C6D0F5 -inactive_tab_background #292C3C -tab_bar_background #232634 - -# Colors for marks (marked text in the terminal) -mark1_foreground #303446 -mark1_background #BABBF1 -mark2_foreground #303446 -mark2_background #CA9EE6 -mark3_foreground #303446 -mark3_background #85C1DC - -# The 16 terminal colors - -# black -color0 #51576D -color8 #626880 - -# red -color1 #E78284 -color9 #E78284 - -# green -color2 #A6D189 -color10 #A6D189 - -# yellow -color3 #E5C890 -color11 #E5C890 - -# blue -color4 #8CAAEE -color12 #8CAAEE - -# magenta -color5 #F4B8E4 -color13 #F4B8E4 - -# cyan -color6 #81C8BE -color14 #81C8BE - -# white -color7 #B5BFE2 -color15 #A5ADCE diff --git a/.config/kitty/diff.conf b/.config/kitty/diff.conf deleted file mode 100644 index 5fec447..0000000 --- a/.config/kitty/diff.conf +++ /dev/null @@ -1,19 +0,0 @@ -foreground #f8f8f2 -background #282a36 -title_fg #f8f8f2 -title_bg #282a36 -margin_bg #6272a4 -margin_fg #44475a -removed_bg #ff5555 -highlight_removed_bg #ff5555 -removed_margin_bg #ff5555 -added_bg #50fa7b -highlight_added_bg #50fa7b -added_margin_bg #50fa7b -filler_bg #44475a -hunk_margin_bg #44475a -hunk_bg #bd93f9 -search_bg #8be9fd -search_fg #282a36 -select_bg #f1fa8c -select_fg #282a36 diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf deleted file mode 100644 index edf1e32..0000000 --- a/.config/kitty/kitty.conf +++ /dev/null @@ -1,9 +0,0 @@ -font_size 18.0 -font_family Cousine Nerd Font Mono Regular -bold_font auto -italic_font auto -bold_italic_font auto - -confirm_os_window_close 0 - -include Catppuccin-Frappe.conf diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim deleted file mode 100644 index 22bd5d7..0000000 --- a/.config/nvim/init.vim +++ /dev/null @@ -1,16 +0,0 @@ -set nocompatible - -lua require('plugins') - -set number -set relativenumber - -set tabstop=2 -set shiftwidth=2 -set expandtab - -set mouse=a - -au BufRead,BufNewFile *.ex,*.exs set filetype=elixir -au BufRead,BufNewFile *.eex,*.heex,*.leex,*.sface,*.lexs set filetype=eelixir -au BufRead,BufNewFile mix.lock set filetype=elixir diff --git a/.config/nvim/lua/keys.lua b/.config/nvim/lua/keys.lua deleted file mode 100644 index 006344f..0000000 --- a/.config/nvim/lua/keys.lua +++ /dev/null @@ -1,120 +0,0 @@ -local wk = require('which-key') -local map = vim.keymap.set - -vim.cmd([[ - augroup keys_user_config - autocmd! - autocmd BufWritePost keys.lua source - augroup end -]]) - -wk.setup({ - key_labels = { - [''] = 'SPC', - [''] = 'RET', - [''] = 'TAB' - } -}) - -vim.opt.timeoutlen = 500 - -vim.g.mapleader = ' ' - --- Handy to remap semi-colon to colon -map({ 'n', 'v' }, ';', ':') -map({ 'n', 'v' }, 'q;', 'q:') - --- System clipboard via -> y | p -map({ 'n', 'v' }, 'y', '"+y') -map( 'n', 'Y', '"+Y') -map({ 'n', 'v' }, 'p', '"+p') -map({ 'n', 'v' }, 'P', '"+P') - --- Common short-hands -map('n', 'w', 'w') -map('n', 'q', 'q') -map('n', 'o', 'only') -map('n', '', 'nohlsearch') - -wk.register({ - [''] = { 'Telescope find_files', 'File file in project' }, - ['/'] = { 'Telescope live_grep', 'Search project' }, - [''] = { 'NERDTreeToggle', 'Toggle NERDTree' }, - - f = { - name = 'file', - e = { 'Telescope find_files cwd=~/.config/nvim', 'Find file in .config/nvim' }, - E = { 'e ~/.config/nvim', 'Browse .config/nvim' }, - f = { 'Telescope find_files cwd=~/ hidden=true no_ignore=true no_ignore_parent=true follow=true theme=dropdown', 'Find file' }, - F = { 'Telescope find_files theme=dropdown', 'File file from here' }, - l = { 'NERDTreeFind', 'Locate file' }, - r = { 'Telescope oldfiles', 'Recent files' }, - }, - - e = { - name = 'editor', - p = { - name = 'packer', - s = { 'PackerSync', 'Packer Sync' }, - c = { 'PackerCompile', 'Packer Compile' }, - l = { 'PackerClean', 'Packer Clean' }, - } - }, - - g = { - name = 'git', - s = { 'Git', 'Status' }, - p = { 'Git push', 'Push' }, - P = { 'Git push --force-with-lease', 'Push (force with lease)' }, - f = { 'Git fetch', 'Fetch' }, - r = { - name = 'rebase', - o = { 'Git rebase origin/main', 'origin/main' }, - O = { 'Git rebase --interactive origin/main', '-i origin/main' }, - m = { 'Git rebase origin/master', 'origin/master' }, - M = { 'Git rebase --interactive origin/master', '-i origin/master' }, - r = { 'Git rebase ', 'rebase ...' }, - } - }, - - i = { - name = 'insert', - e = { 'Telescope emoji theme=dropdown', 'emoji' }, - }, - - n = { - name = 'line numbers', - a = { 'set number norelativenumber', 'absolute' }, - r = { 'set number relativenumber', 'relative' }, - } - -}, { prefix = '' }) - -vim.api.nvim_create_autocmd('LspAttach', { - group = vim.api.nvim_create_augroup('UserLspConfig', {}), - callback = function(ev) - -- Enable completion triggered by - vim.bo[ev.buf].omnifunc = 'v:lua.vim.lsp.omnifunc' - - -- Buffer local mappings. - -- See `:help vim.lsp.*` for documentation on any of the below functions - local opts = { buffer = ev.buf } - vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, opts) - vim.keymap.set('n', 'gd', vim.lsp.buf.definition, opts) - -- vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts) - vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, opts) - -- vim.keymap.set('n', '', vim.lsp.buf.signature_help, opts) - -- vim.keymap.set('n', 'wa', vim.lsp.buf.add_workspace_folder, opts) - -- vim.keymap.set('n', 'wr', vim.lsp.buf.remove_workspace_folder, opts) - -- vim.keymap.set('n', 'wl', function() - -- print(vim.inspect(vim.lsp.buf.list_workspace_folders())) - -- end, opts) - -- vim.keymap.set('n', 'D', vim.lsp.buf.type_definition, opts) - -- vim.keymap.set('n', 'rn', vim.lsp.buf.rename, opts) - -- vim.keymap.set({ 'n', 'v' }, 'ca', vim.lsp.buf.code_action, opts) - vim.keymap.set('n', 'gr', vim.lsp.buf.references, opts) - vim.keymap.set('n', 'F', function() - vim.lsp.buf.format { async = true } - end, opts) - end, -}) diff --git a/.config/nvim/lua/plugins.lua b/.config/nvim/lua/plugins.lua deleted file mode 100644 index 9a6e485..0000000 --- a/.config/nvim/lua/plugins.lua +++ /dev/null @@ -1,201 +0,0 @@ -local ensure_packer = function() - local fn = vim.fn - local install_path = fn.stdpath('data') .. '/site/pack/packer/start/packer.nvim' - if fn.empty(fn.glob(install_path)) > 0 then - fn.system({ 'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path }) - vim.cmd 'packadd packer.nvim' - return true - end - return false -end - -local packer_bootstrap = ensure_packer() - -vim.cmd([[ - augroup packer_user_config - autocmd! - autocmd BufWritePost plugins.lua source | PackerSync - augroup end -]]) - -return require('packer').startup(function(use) - use 'wbthomason/packer.nvim' - - use 'tpope/vim-sensible' - use 'tpope/vim-surround' - use 'tpope/vim-commentary' - use 'tpope/vim-repeat' - use 'tpope/vim-dispatch' - use 'tpope/vim-abolish' - - use { - 'tpope/vim-fugitive', - 'tpope/vim-rhubarb', - } - - use 'christoomey/vim-sort-motion' - use 'christoomey/vim-tmux-navigator' - - use { - 'kana/vim-textobj-user', - 'kana/vim-textobj-indent', - 'kana/vim-textobj-line', - } - - use { - 'williamboman/mason.nvim', - requires = { - 'williamboman/mason-lspconfig.nvim', - 'neovim/nvim-lspconfig', - 'mfussenegger/nvim-lint', - 'mhartington/formatter.nvim', - }, - run = ':MasonUpdate', - config = function() - require('mason').setup() - require('mason-lspconfig').setup() - local capabilities = require('cmp_nvim_lsp').default_capabilities() - require("mason-lspconfig").setup_handlers({ - function (server_name) -- default handler - require("lspconfig")[server_name].setup({ - capabilities = capabilities - }) - end, - -- Next, you can provide a dedicated handler for specific servers. - -- For example, a handler override for the `rust_analyzer`: - -- ["rust_analyzer"] = function () - -- require("rust-tools").setup {} - -- end - }) - end - } - - use { - 'hrsh7th/nvim-cmp', - requires = { - 'hrsh7th/cmp-nvim-lsp', - 'hrsh7th/cmp-buffer', - 'hrsh7th/cmp-path', - 'hrsh7th/cmp-cmdline', - 'hrsh7th/cmp-vsnip', - 'hrsh7th/vim-vsnip', - }, - config = function() - local cmp = require('cmp') - - cmp.setup({ - snippet = { - expand = function(args) - vim.fn['vsnip#anonymous'](args.body) - end, - }, - mapping = cmp.mapping.preset.insert({}), - sources = cmp.config.sources({ - { name = 'nvim_lsp' }, - { name = 'vsnip' }, - }, { - { name = 'buffer' }, - }) - }) - - -- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore). - cmp.setup.cmdline({ '/', '?' }, { - mapping = cmp.mapping.preset.cmdline(), - sources = { - { name = 'buffer' } - } - }) - - -- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore). - cmp.setup.cmdline(':', { - mapping = cmp.mapping.preset.cmdline(), - sources = cmp.config.sources({ - { name = 'path' } - }, { - { name = 'cmdline' } - }) - }) - end - } - - use 'sheerun/vim-polyglot' - use { - 'nvim-treesitter/nvim-treesitter', - run = function() - local ts_update = require('nvim-treesitter.install').update({ with_sync = true }) - ts_update() - end, - config = function() - require('nvim-treesitter.configs').setup({ - indent = { enable = true }, - highlight = { enable = true }, - }) - end, - } - - use { - 'nvim-telescope/telescope.nvim', tag = '0.1.5', - requires = { - { 'nvim-lua/plenary.nvim' }, - { 'nvim-telescope/telescope-fzf-native.nvim', run = 'make' }, - { 'xiyaowong/telescope-emoji.nvim' }, - }, - config = function() - require('telescope').setup({ - defaults = { preview = false } - }) - require('telescope').load_extension('fzf') - require('telescope').load_extension('emoji') - end - } - - use { - 'folke/trouble.nvim', - requires = { 'nvim-tree/nvim-web-devicons' }, - } - - use { 'folke/which-key.nvim', config = function() require('keys') end } - - use 'preservim/nerdtree' - - use { - 'elixir-tools/elixir-tools.nvim', - tag = 'stable', - requires = { 'nvim-lua/plenary.nvim' }, - config = function() - local elixir = require('elixir') - local elixirls = require('elixir.elixirls') - - elixir.setup({ - credo = { enable = true }, - elixirls = { - enable = true, - settings = elixirls.settings({ - dialyzerEnabled = false, - fetchDeps = true, - enableTestLenses = true, - suggestSpecs = false, - }), - on_attach = function(client, bufnr) - vim.keymap.set({'n', 'v'}, 'fp', ':ElixirFromPipe', { buffer = true, noremap = true }) - vim.keymap.set({'n', 'v'}, 'tp', ':ElixirToPipe', { buffer = true, noremap = true }) - end - } - }) - end - } - - use { - 'catppuccin/nvim', - as = 'catppuccin', - config = function() - vim.cmd.colorscheme 'catppuccin-frappe' - end - } - - -- Automatically set up your configuration after cloning packer.nvim - -- Put this at the end after all plugins - if packer_bootstrap then - require('packer').sync() - end -end) diff --git a/.config/tmux/tmux.conf b/.config/tmux/tmux.conf deleted file mode 100644 index 5971d40..0000000 --- a/.config/tmux/tmux.conf +++ /dev/null @@ -1,34 +0,0 @@ -set -g @plugin 'tmux-plugins/tpm' -set -g @plugin 'tmux-plugins/tmux-sensible' -set -g @plugin 'tmux-plugins/tmux-prefix-highlight' -set -g @plugin 'catppuccin/tmux' - -set -g @catppuccin_flavour 'frappe' - -unbind C-b -set-option -g prefix C-a -bind-key C-a send-prefix -setw -g mode-keys vi - -bind r source-file ~/.tmux.conf -set-option -g allow-rename off - -is_vim="ps -o state= -o comm= -t '#{pane_tty}' \ - | grep -iqE '^[^TXZ ]+ +(\\S+\\/)?g?(view|n?vim?x?)(diff)?$'" -bind-key -n C-h if-shell "$is_vim" "send-keys C-h" "select-pane -L" -bind-key -n C-j if-shell "$is_vim" "send-keys C-j" "select-pane -D" -bind-key -n C-k if-shell "$is_vim" "send-keys C-k" "select-pane -U" -bind-key -n C-l if-shell "$is_vim" "send-keys C-l" "select-pane -R" -bind-key -n 'C-\' if-shell "$is_vim" "send-keys 'C-\\'" "select-pane -l" -bind-key -T copy-mode-vi C-h select-pane -L -bind-key -T copy-mode-vi C-j select-pane -D -bind-key -T copy-mode-vi C-k select-pane -U -bind-key -T copy-mode-vi C-l select-pane -R -bind-key -T copy-mode-vi 'C-\' select-pane -l - -# Set new panes to open in current directory -bind c new-window -c "#{pane_current_path}" -bind '"' split-window -c "#{pane_current_path}" -bind % split-window -h -c "#{pane_current_path}" - -run '~/.tmux/plugins/tpm/tpm' diff --git a/.config/yadm/bootstrap b/.config/yadm/bootstrap deleted file mode 100755 index 8955641..0000000 --- a/.config/yadm/bootstrap +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -# Save this file as ~/.config/yadm/bootstrap and make it executable. It will -# execute all executable files (excluding templates and editor backups) in the -# ~/.config/yadm/bootstrap.d directory when run. - -set -eu - -# Directory to look for bootstrap executables in -BOOTSTRAP_D="${BASH_SOURCE[0]}.d" - -if [[ ! -d "$BOOTSTRAP_D" ]]; then - echo "Error: bootstrap directory '$BOOTSTRAP_D' not found" >&2 - exit 1 -fi - -find -L "$BOOTSTRAP_D" -type f | sort | while IFS= read -r bootstrap; do - if [[ -x "$bootstrap" && ! "$bootstrap" =~ "##" && ! "$bootstrap" =~ "~$" ]]; then - if ! "$bootstrap"; then - echo "Error: bootstrap '$bootstrap' failed" >&2 - exit 1 - fi - fi -done diff --git a/.config/yadm/bootstrap.d/000_submodules b/.config/yadm/bootstrap.d/000_submodules deleted file mode 100755 index ec40544..0000000 --- a/.config/yadm/bootstrap.d/000_submodules +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -# Because Git submodule commands cannot operate without a work tree, they must -# be run from within $HOME (assuming this is the root of your dotfiles) -cd "$HOME" - -echo "Init submodules" -yadm submodule update --recursive --init - diff --git a/.config/yadm/bootstrap.d/001_homebrew b/.config/yadm/bootstrap.d/001_homebrew deleted file mode 100755 index e9392b3..0000000 --- a/.config/yadm/bootstrap.d/001_homebrew +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh - -system_type=$(uname -s) - -if [ "$system_type" = "Darwin" ]; then - # install homebrew if it's missing - if ! command -v brew >/dev/null 2>&1; then - echo "Installing homebrew" - /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - fi -fi diff --git a/.config/yadm/bootstrap.d/003_fisher b/.config/yadm/bootstrap.d/003_fisher deleted file mode 100755 index cd41390..0000000 --- a/.config/yadm/bootstrap.d/003_fisher +++ /dev/null @@ -1,9 +0,0 @@ -#!/usr/bin/env fish - -if type -q fisher - echo "fisher already installed" -else - echo "installing fisher" - curl -sL https://raw.githubusercontent.com/jorgebucaran/fisher/main/functions/fisher.fish | source - fisher update -end diff --git a/.config/yadm/bootstrap.d/004_fish b/.config/yadm/bootstrap.d/004_fish deleted file mode 100755 index 6d89155..0000000 --- a/.config/yadm/bootstrap.d/004_fish +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -FISH=$(which fish) - -if grep --quiet $FISH /etc/shells; then - echo "fish already in shells list" -else - echo "adding fish to shells list" - echo $FISH | sudo tee -a /etc/shells -fi - -if [ $FISH == $SHELL ]; then - echo "fish already default shell" -else - chsh -s $FISH -fi diff --git a/.tmux/plugins/tpm b/.tmux/plugins/tpm deleted file mode 160000 index b699a7e..0000000 --- a/.tmux/plugins/tpm +++ /dev/null @@ -1 +0,0 @@ -Subproject commit b699a7e01c253ffb7818b02d62bce24190ec1019