diff --git a/.gitignore b/.gitignore old mode 100644 new mode 100755 diff --git a/autoload/plug.vim b/autoload/plug.vim old mode 100644 new mode 100755 diff --git a/claude.settings.json b/claude.settings.json new file mode 100644 index 0000000..85b8fc2 --- /dev/null +++ b/claude.settings.json @@ -0,0 +1,70 @@ +{ + "permissions": { + "allow": [ + "Bash:grep *", + "Bash:rg *", + "Bash:find *", + "Bash:sed -n *", + "Bash:head *", + "Bash:tail *", + "Bash:cat *" + ] + }, + "enabledPlugins": { + "superpowers@superpowers-marketplace": false, + "code-review@claude-plugins-official": true, + "pyright-lsp@claude-plugins-official": true, + "swift-lsp@claude-plugins-official": true, + "ralph-loop@claude-plugins-official": true, + "context7@claude-plugins-official": true, + "frontend-design@claude-plugins-official": true, + "superpowers@claude-plugins-official": true, + "greptile@claude-plugins-official": true + }, + "hooks": { + "Notification": [ + { + "matcher": "permission_prompt", + "hooks": [ + { + "type": "command", + "command": "afplay /System/Library/Sounds/Funk.aiff" + } + ] + }, + { + "matcher": "idle_prompt", + "hooks": [] + }, + { + "matcher": "elicitation_dialog", + "hooks": [ + { + "type": "command", + "command": "afplay /System/Library/Sounds/Submarine.aiff" + } + ] + } + ], + "Stop": [ + { + "hooks": [ + { + "type": "command", + "command": "afplay /System/Library/Sounds/Purr.aiff" + } + ] + } + ], + "SubagentStop": [ + { + "hooks": [] + } + ], + "SessionStart": [ + { + "hooks": [] + } + ] + } +} diff --git a/colors/molokai.vim b/colors/molokai.vim old mode 100644 new mode 100755 diff --git a/ftdetect/shaderlab.vim b/ftdetect/shaderlab.vim old mode 100644 new mode 100755 diff --git a/gvimrc b/gvimrc old mode 100644 new mode 100755 index b90b5d1..af20899 --- a/gvimrc +++ b/gvimrc @@ -1,19 +1,19 @@ "start maximized -au GUIEnter * simalt ~x +"au GUIEnter * simalt ~x "tutorial followed for gvim setup https://www.youtube.com/watch?v=FuPFoVDdTtE&t=1458s "source $HOME/vimfiles/vimrc "FONT -if has("gui_running") - if has("gui_gtk2") - set guifont=Inconsolata\ 12 - elseif has("gui_macvim") - set guifont=Menlo\ Regular:h14 - elseif has("gui_win32") - set guifont=Consolas:h11:cANSI - endif -endif +"if has("gui_running") +" if has("gui_gtk2") +" set guifont=Inconsolata\ 12 +" elseif has("gui_macvim") +" set guifont=Menlo\ Regular:h14 +" elseif has("gui_win32") +" set guifont=Consolas:h11:cANSI +" endif +"endif ""VIM PLUG setup https://github.com/junegunn/vim-plug " Specify a directory for plugins @@ -41,13 +41,20 @@ Plug 'andrewradev/sideways.vim' Plug 'neoclide/coc.nvim', {'branch': 'release'} Plug 'bling/vim-airline' Plug 'pedrohdz/vim-yaml-folds' -Plug 'sagarrakshe/toggle-bool' +"Plug 'sagarrakshe/toggle-bool' Plug 'ThePrimeagen/vim-be-good' -Plug 'OmniSharp/omnisharp-vim' -Plug 'dense-analysis/ale' +"Plug 'dense-analysis/ale' Plug 'ptzz/lf.vim' Plug 'voldikss/vim-floaterm' Plug 'jkramer/vim-checkbox' +Plug 'machakann/vim-highlightedyank' +Plug 'jbyuki/quickmath.nvim' +Plug 'neovim/nvim-lspconfig' +Plug 'simrat39/rust-tools.nvim' +Plug 'hrsh7th/nvim-cmp' +Plug 'hrsh7th/cmp-nvim-lsp' + + " Initialize plugin system call plug#end() @@ -63,22 +70,22 @@ set guioptions-=R "remove right scrollbar set guioptions-=l "remove left scrollbar set guioptions-=L "remove left scrollbar -"gVim specific keybindings: -nnoremap sp :edit!$HOME/Documents/Notes/ScratchPad.txt -"nnoremap ics :NERDTree C:/InContext/Git/ -nnoremap ics :NERDTree C:\Users\ethan.fischer\GitProjects\ICS +"nvim specific keybindings: +nnoremap sp :edit!~/Documents/Notes/ScratchPad.txt +nnoremap smxg :NERDTree ~/repos/ics/InContext.SMXGo +"nnoremap ics :NERDTree C:\Users\ethan.fischer\GitProjects\ICS " specific keybindings nnoremap nt :NERDTreeFind nnoremap :WhichKey '' -nnoremap :SidewaysRight -nnoremap :SidewaysLeft -nmap gd (coc-definition) -nmap gi (coc-implementation) -nmap gr (coc-references) +"nnoremap :SidewaysRight +"nnoremap :SidewaysLeft +"nmap gd (coc-definition) +"nmap gi (coc-implementation) +"nmap gr (coc-references) "toggle bool -noremap :ToggleBool +"noremap :ToggleBool "checkbox "default is leader tt @@ -100,14 +107,93 @@ inoremap pumvisible() ? "\" : "\" inoremap pumvisible() ? "\" : "\" -"ALE config to only lint csharp -"https://github.com/OmniSharp/omnisharp-vim -let g:ale_linters = { -\ 'cs': ['OmniSharp'] -\} - - -let g:lf_replace_netrw = 1 " Open lf when vim opens a directory +"let g:lf_replace_netrw = 1 " Open lf when vim opens a directory "execute current file from shell (make sure to :cd %/.. first) -nnoremap :!% +"nnoremap :!% +nnoremap :!cargo run + +" Go back (like Visual Studio Ctrl+-) +nnoremap +" Alternative if Ctrl+- doesn't work in your terminal +nnoremap + +" set highlight to whatever amount of ms +let g:highlightedyank_highlight_duration = 500 + +lua << EOF +vim.lsp.set_log_level("debug") + +local on_attach = function(client, bufnr) + local function buf_set_keymap(...) vim.api.nvim_buf_set_keymap(bufnr, ...) end + local opts = { noremap=true, silent=true } + + -- Keybindings for LSP actions + buf_set_keymap('n', 'gD', 'lua vim.lsp.buf.declaration()', opts) + buf_set_keymap('n', '', 'lua vim.lsp.buf.definition()', opts) + buf_set_keymap('n', '', 'lua vim.lsp.buf.hover()', opts) + buf_set_keymap('n', '', 'lua vim.lsp.buf.implementation()', opts) + buf_set_keymap('i', '', 'lua vim.lsp.buf.signature_help()', opts) + buf_set_keymap('n', 'wa', 'lua vim.lsp.buf.add_workspace_folder()', opts) + buf_set_keymap('n', 'wr', 'lua vim.lsp.buf.remove_workspace_folder()', opts) + buf_set_keymap('n', 'wl', 'lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))', opts) + buf_set_keymap('n', 'D', 'lua vim.lsp.buf.type_definition()', opts) + buf_set_keymap('n', '', 'lua vim.lsp.buf.rename()', opts) + buf_set_keymap('n', '', 'lua vim.lsp.buf.code_action()', opts) + buf_set_keymap('n', 'gr', 'lua vim.lsp.buf.references()', opts) + -- Updated diagnostic API calls for Neovim 0.11+ + buf_set_keymap('n', 'e', 'lua vim.diagnostic.open_float()', opts) + buf_set_keymap('n', '[d', 'lua vim.diagnostic.goto_prev()', opts) + buf_set_keymap('n', ']d', 'lua vim.diagnostic.goto_next()', opts) + --buf_set_keymap('n', 'q', 'lua vim.diagnostic.setloclist()', opts) + buf_set_keymap('n', 'f', 'lua vim.lsp.buf.format()', opts) +end + +vim.lsp.config.rust_analyzer = { + cmd = { 'rust-analyzer' }, + filetypes = { 'rust' }, + root_markers = { 'Cargo.toml' }, + settings = { + ["rust-analyzer"] = {} + } +} + +vim.lsp.enable('rust_analyzer') + +vim.lsp.config.pyright = { + cmd = { 'pyright-langserver', '--stdio' }, + filetypes = { 'python' }, + root_markers = { 'pyproject.toml', 'setup.py', 'setup.cfg', 'requirements.txt', 'Pipfile' }, + settings = { + python = { + analysis = { + autoSearchPaths = true, + useLibraryCodeForTypes = true, + diagnosticMode = "openFilesOnly", + typeCheckingMode = "basic" + } + } + } +} + +vim.lsp.enable('pyright') + +vim.api.nvim_create_autocmd('LspAttach', { + callback = function(args) + on_attach(vim.lsp.get_client_by_id(args.data.client_id), args.buf) + end, +}) + +local cmp = require'cmp' +cmp.setup { + mapping = { + [''] = cmp.mapping.confirm({ select = true }), + [''] = cmp.mapping.select_next_item(), + [''] = cmp.mapping.select_prev_item(), + }, + sources = { + { name = 'nvim_lsp' } + }, +} + +EOF diff --git a/indent/shaderlab.vim b/indent/shaderlab.vim old mode 100644 new mode 100755 diff --git a/iterm_profiles.json b/iterm_profiles.json new file mode 100644 index 0000000..f52bd17 --- /dev/null +++ b/iterm_profiles.json @@ -0,0 +1,532 @@ +{ +"Profiles": [ +{ + "Ansi 2 Color" : { + "Red Component" : 0.59607845544815063, + "Color Space" : "sRGB", + "Blue Component" : 0.10196078568696976, + "Alpha Component" : 1, + "Green Component" : 0.59215688705444336 + }, + "Tags" : [ + + ], + "Ansi 12 Color" : { + "Red Component" : 0.51372551918029785, + "Color Space" : "sRGB", + "Blue Component" : 0.59607845544815063, + "Alpha Component" : 1, + "Green Component" : 0.64705884456634521 + }, + "Ansi 6 Color" : { + "Red Component" : 0.40784314274787903, + "Color Space" : "sRGB", + "Blue Component" : 0.41568627953529358, + "Alpha Component" : 1, + "Green Component" : 0.61568629741668701 + }, + "Draw Powerline Glyphs" : true, + "Bold Color" : { + "Red Component" : 0.92156863212585449, + "Color Space" : "sRGB", + "Blue Component" : 0.69803923368453979, + "Alpha Component" : 1, + "Green Component" : 0.85882353782653809 + }, + "Ansi 7 Color" : { + "Red Component" : 0.65882354974746704, + "Color Space" : "sRGB", + "Blue Component" : 0.51764708757400513, + "Alpha Component" : 1, + "Green Component" : 0.60000002384185791 + }, + "Ansi 8 Color" : { + "Red Component" : 0.57254904508590698, + "Color Space" : "sRGB", + "Blue Component" : 0.45490196347236633, + "Alpha Component" : 1, + "Green Component" : 0.51372551918029785 + }, + "Ansi 9 Color" : { + "Red Component" : 0.9843137264251709, + "Color Space" : "sRGB", + "Blue Component" : 0.20392157137393951, + "Alpha Component" : 1, + "Green Component" : 0.28627452254295349 + }, + "Rows" : 25, + "Default Bookmark" : "No", + "Link Color" : { + "Red Component" : 0.83921295404434204, + "Color Space" : "sRGB", + "Blue Component" : 0.054908305406570435, + "Alpha Component" : 1, + "Green Component" : 0.3646928071975708 + }, + "Send Idle Alert" : true, + "Tab Color" : { + "Red Component" : 0.10588235408067703, + "Color Space" : "sRGB", + "Blue Component" : 0.10588235408067703, + "Alpha Component" : 1, + "Green Component" : 0.10588235408067703 + }, + "Cursor Guide Color" : { + "Red Component" : 0.23529493808746338, + "Color Space" : "sRGB", + "Blue Component" : 0.21176299452781677, + "Alpha Component" : 1, + "Green Component" : 0.21960270404815674 + }, + "Non-ASCII Anti Aliased" : true, + "Use Bright Bold" : true, + "Ansi 10 Color" : { + "Red Component" : 0.72156864404678345, + "Color Space" : "sRGB", + "Blue Component" : 0.14901961386203766, + "Alpha Component" : 1, + "Green Component" : 0.73333334922790527 + }, + "Ambiguous Double Width" : false, + "Jobs to Ignore" : [ + "rlogin", + "ssh", + "slogin", + "telnet" + ], + "Ansi 15 Color" : { + "Red Component" : 0.92156863212585449, + "Color Space" : "sRGB", + "Blue Component" : 0.69803923368453979, + "Alpha Component" : 1, + "Green Component" : 0.85882353782653809 + }, + "Foreground Color" : { + "Red Component" : 0.92156863212585449, + "Color Space" : "sRGB", + "Blue Component" : 0.69803923368453979, + "Alpha Component" : 1, + "Green Component" : 0.85882353782653809 + }, + "Working Directory" : "\/Users\/ethanfischer", + "Blinking Cursor" : false, + "Disable Window Resizing" : true, + "Sync Title" : false, + "Prompt Before Closing 2" : false, + "BM Growl" : true, + "Command" : "", + "Description" : "Default", + "Mouse Reporting" : true, + "Screen" : -1, + "Selection Color" : { + "Red Component" : 0.40000000596046448, + "Color Space" : "sRGB", + "Blue Component" : 0.32941177487373352, + "Alpha Component" : 1, + "Green Component" : 0.36078432202339172 + }, + "Initial Use Transparency" : true, + "Only The Default BG Color Uses Transparency" : true, + "Columns" : 80, + "Idle Code" : 0, + "Ansi 13 Color" : { + "Red Component" : 0.82745099067687988, + "Color Space" : "sRGB", + "Blue Component" : 0.60784316062927246, + "Alpha Component" : 1, + "Green Component" : 0.52549022436141968 + }, + "Send New Output Alert" : true, + "Custom Command" : "No", + "ASCII Anti Aliased" : true, + "Non Ascii Font" : "Monaco 12", + "Vertical Spacing" : 1, + "Use Bold Font" : true, + "Option Key Sends" : 0, + "Selected Text Color" : { + "Red Component" : 0.92156863212585449, + "Color Space" : "sRGB", + "Blue Component" : 0.69803923368453979, + "Alpha Component" : 1, + "Green Component" : 0.85882353782653809 + }, + "Background Color" : { + "Red Component" : 0.15686275064945221, + "Color Space" : "sRGB", + "Blue Component" : 0.15686275064945221, + "Alpha Component" : 1, + "Green Component" : 0.15686275064945221 + }, + "Character Encoding" : 4, + "Ansi 11 Color" : { + "Red Component" : 0.98039215803146362, + "Color Space" : "sRGB", + "Blue Component" : 0.18431372940540314, + "Alpha Component" : 1, + "Green Component" : 0.74117648601531982 + }, + "Use Italic Font" : true, + "Unlimited Scrollback" : false, + "Keyboard Map" : { + + }, + "Window Type" : 0, + "Blur Radius" : 64, + "Background Image Location" : "", + "Blur" : true, + "Badge Color" : { + "Red Component" : 0.83921295404434204, + "Color Space" : "sRGB", + "Blue Component" : 0.054908305406570435, + "Alpha Component" : 0.5, + "Green Component" : 0.3646928071975708 + }, + "Scrollback Lines" : 1000, + "Send Code When Idle" : false, + "Close Sessions On End" : true, + "Terminal Type" : "xterm-256color", + "Visual Bell" : true, + "Flashing Bell" : false, + "Silence Bell" : false, + "Ansi 14 Color" : { + "Red Component" : 0.55686277151107788, + "Color Space" : "sRGB", + "Blue Component" : 0.48627451062202454, + "Alpha Component" : 1, + "Green Component" : 0.75294119119644165 + }, + "Name" : "Default", + "Cursor Text Color" : { + "Red Component" : 0.15686275064945221, + "Color Space" : "sRGB", + "Blue Component" : 0.15686275064945221, + "Alpha Component" : 1, + "Green Component" : 0.15686275064945221 + }, + "Minimum Contrast" : 0, + "Shortcut" : "", + "Cursor Color" : { + "Red Component" : 0.92156863212585449, + "Color Space" : "sRGB", + "Blue Component" : 0.69803923368453979, + "Alpha Component" : 1, + "Green Component" : 0.85882353782653809 + }, + "Ansi 0 Color" : { + "Red Component" : 0.15686275064945221, + "Color Space" : "sRGB", + "Blue Component" : 0.15686275064945221, + "Alpha Component" : 1, + "Green Component" : 0.15686275064945221 + }, + "Transparency" : 0.2319924645390071, + "Guid" : "CFF1F107-281B-4041-A594-2BC107134372", + "Ansi 3 Color" : { + "Red Component" : 0.84313726425170898, + "Color Space" : "sRGB", + "Blue Component" : 0.12941177189350128, + "Alpha Component" : 1, + "Green Component" : 0.60000002384185791 + }, + "Ansi 4 Color" : { + "Red Component" : 0.27058824896812439, + "Color Space" : "sRGB", + "Blue Component" : 0.53333336114883423, + "Alpha Component" : 1, + "Green Component" : 0.5215686559677124 + }, + "Ansi 5 Color" : { + "Red Component" : 0.69411766529083252, + "Color Space" : "sRGB", + "Blue Component" : 0.52549022436141968, + "Alpha Component" : 1, + "Green Component" : 0.38431373238563538 + }, + "Use Non-ASCII Font" : false, + "Right Option Key Sends" : 0, + "Normal Font" : "NotoSansMNFM-Reg 11", + "Horizontal Spacing" : 1, + "Custom Directory" : "No", + "Ansi 1 Color" : { + "Red Component" : 0.80000001192092896, + "Color Space" : "sRGB", + "Blue Component" : 0.11372549086809158, + "Alpha Component" : 1, + "Green Component" : 0.14117647707462311 + } +}, +{ + "Working Directory" : "\/Users\/ethanfischer", + "Prompt Before Closing 2" : false, + "Selected Text Color" : { + "Red Component" : 0.92156863212585449, + "Color Space" : "sRGB", + "Blue Component" : 0.69803923368453979, + "Alpha Component" : 1, + "Green Component" : 0.85882353782653809 + }, + "Rows" : 32, + "Ansi 11 Color" : { + "Red Component" : 0.98039215803146362, + "Color Space" : "sRGB", + "Blue Component" : 0.18431372940540314, + "Alpha Component" : 1, + "Green Component" : 0.74117648601531982 + }, + "Use Italic Font" : true, + "HotKey Characters" : "\u0000", + "Foreground Color" : { + "Red Component" : 0.92156863212585449, + "Color Space" : "sRGB", + "Blue Component" : 0.69803923368453979, + "Alpha Component" : 1, + "Green Component" : 0.85882353782653809 + }, + "HotKey Window Floats" : false, + "Right Option Key Sends" : 0, + "Character Encoding" : 4, + "Selection Color" : { + "Red Component" : 0.40000000596046448, + "Color Space" : "sRGB", + "Blue Component" : 0.32941177487373352, + "Alpha Component" : 1, + "Green Component" : 0.36078432202339172 + }, + "Blend" : 0.5, + "Mouse Reporting" : true, + "Ansi 4 Color" : { + "Red Component" : 0.27058824896812439, + "Color Space" : "sRGB", + "Blue Component" : 0.53333336114883423, + "Alpha Component" : 1, + "Green Component" : 0.5215686559677124 + }, + "Non-ASCII Anti Aliased" : true, + "Sync Title" : false, + "Disable Window Resizing" : false, + "Description" : "Default", + "Close Sessions On End" : true, + "Jobs to Ignore" : [ + "rlogin", + "ssh", + "slogin", + "telnet" + ], + "Scrollback Lines" : 1000, + "HotKey Window Reopens On Activation" : false, + "Flashing Bell" : false, + "Cursor Guide Color" : { + "Red Component" : 0.23529493808746338, + "Color Space" : "sRGB", + "Blue Component" : 0.21176299452781677, + "Alpha Component" : 1, + "Green Component" : 0.21960270404815674 + }, + "BM Growl" : true, + "Ansi 3 Color" : { + "Red Component" : 0.84313726425170898, + "Color Space" : "sRGB", + "Blue Component" : 0.12941177189350128, + "Alpha Component" : 1, + "Green Component" : 0.60000002384185791 + }, + "Use Non-ASCII Font" : false, + "Link Color" : { + "Red Component" : 0.83921295404434204, + "Color Space" : "sRGB", + "Blue Component" : 0.054908305406570435, + "Alpha Component" : 1, + "Green Component" : 0.3646928071975708 + }, + "Shortcut" : "", + "Background Image Location" : "", + "Bold Color" : { + "Red Component" : 0.92156863212585449, + "Color Space" : "sRGB", + "Blue Component" : 0.69803923368453979, + "Alpha Component" : 1, + "Green Component" : 0.85882353782653809 + }, + "Unlimited Scrollback" : false, + "Custom Command" : "No", + "HotKey Key Code" : 49, + "Keyboard Map" : { + "0x74-0x100000-0x0" : { + "Version" : 1, + "Label" : "", + "Text" : "9C8522EC-5117-41DE-B37C-9EECCF62664E", + "Action" : 27 + } + }, + "Ansi 14 Color" : { + "Red Component" : 0.55686277151107788, + "Color Space" : "sRGB", + "Blue Component" : 0.48627451062202454, + "Alpha Component" : 1, + "Green Component" : 0.75294119119644165 + }, + "Ansi 2 Color" : { + "Red Component" : 0.59607845544815063, + "Color Space" : "sRGB", + "Blue Component" : 0.10196078568696976, + "Alpha Component" : 1, + "Green Component" : 0.59215688705444336 + }, + "Send Code When Idle" : false, + "ASCII Anti Aliased" : true, + "Tags" : [ + + ], + "Ansi 9 Color" : { + "Red Component" : 0.9843137264251709, + "Color Space" : "sRGB", + "Blue Component" : 0.20392157137393951, + "Alpha Component" : 1, + "Green Component" : 0.28627452254295349 + }, + "Use Bold Font" : true, + "Silence Bell" : false, + "Ansi 12 Color" : { + "Red Component" : 0.51372551918029785, + "Color Space" : "sRGB", + "Blue Component" : 0.59607845544815063, + "Alpha Component" : 1, + "Green Component" : 0.64705884456634521 + }, + "Window Type" : 0, + "Use Bright Bold" : true, + "Has Hotkey" : true, + "HotKey Modifier Activation" : 0, + "Cursor Text Color" : { + "Red Component" : 0.15686275064945221, + "Color Space" : "sRGB", + "Blue Component" : 0.15686275064945221, + "Alpha Component" : 1, + "Green Component" : 0.15686275064945221 + }, + "HotKey Window Dock Click Action" : 0, + "Default Bookmark" : "No", + "Cursor Color" : { + "Red Component" : 0.92156863212585449, + "Color Space" : "sRGB", + "Blue Component" : 0.69803923368453979, + "Alpha Component" : 1, + "Green Component" : 0.85882353782653809 + }, + "Ansi 1 Color" : { + "Red Component" : 0.80000001192092896, + "Color Space" : "sRGB", + "Blue Component" : 0.11372549086809158, + "Alpha Component" : 1, + "Green Component" : 0.14117647707462311 + }, + "Name" : "Hotkey Window", + "Blinking Cursor" : false, + "Guid" : "9C8522EC-5117-41DE-B37C-9EECCF62664E", + "Idle Code" : 0, + "Ansi 10 Color" : { + "Red Component" : 0.72156864404678345, + "Color Space" : "sRGB", + "Blue Component" : 0.14901961386203766, + "Alpha Component" : 1, + "Green Component" : 0.73333334922790527 + }, + "Ansi 8 Color" : { + "Red Component" : 0.57254904508590698, + "Color Space" : "sRGB", + "Blue Component" : 0.45490196347236633, + "Alpha Component" : 1, + "Green Component" : 0.51372551918029785 + }, + "Badge Color" : { + "Red Component" : 0.83921295404434204, + "Color Space" : "sRGB", + "Blue Component" : 0.054908305406570435, + "Alpha Component" : 0.5, + "Green Component" : 0.3646928071975708 + }, + "Ambiguous Double Width" : false, + "Blur Radius" : 64, + "Ansi 0 Color" : { + "Red Component" : 0.15686275064945221, + "Color Space" : "sRGB", + "Blue Component" : 0.15686275064945221, + "Alpha Component" : 1, + "Green Component" : 0.15686275064945221 + }, + "Blur" : true, + "Normal Font" : "NotoSansMNFM-Reg 11", + "Vertical Spacing" : 1, + "Ansi 7 Color" : { + "Red Component" : 0.65882354974746704, + "Color Space" : "sRGB", + "Blue Component" : 0.51764708757400513, + "Alpha Component" : 1, + "Green Component" : 0.60000002384185791 + }, + "Space" : -1, + "HotKey Window AutoHides" : true, + "Command" : "", + "Terminal Type" : "xterm-256color", + "Horizontal Spacing" : 1, + "Tab Color" : { + "Red Component" : 0.10588235408067703, + "Color Space" : "sRGB", + "Blue Component" : 0.10588235408067703, + "Alpha Component" : 1, + "Green Component" : 0.10588235408067703 + }, + "Only The Default BG Color Uses Transparency" : true, + "HotKey Window Animates" : false, + "Option Key Sends" : 0, + "Ansi 15 Color" : { + "Red Component" : 0.92156863212585449, + "Color Space" : "sRGB", + "Blue Component" : 0.69803923368453979, + "Alpha Component" : 1, + "Green Component" : 0.85882353782653809 + }, + "HotKey Modifier Flags" : 262144, + "Ansi 6 Color" : { + "Red Component" : 0.40784314274787903, + "Color Space" : "sRGB", + "Blue Component" : 0.41568627953529358, + "Alpha Component" : 1, + "Green Component" : 0.61568629741668701 + }, + "Transparency" : 0.10000000000000001, + "HotKey Activated By Modifier" : false, + "Background Color" : { + "Red Component" : 0.15686275064945221, + "Color Space" : "sRGB", + "Blue Component" : 0.15686275064945221, + "Alpha Component" : 1, + "Green Component" : 0.15686275064945221 + }, + "Screen" : -1, + "Initial Use Transparency" : true, + "HotKey Characters Ignoring Modifiers" : " ", + "Non Ascii Font" : "Monaco 12", + "Ansi 13 Color" : { + "Red Component" : 0.82745099067687988, + "Color Space" : "sRGB", + "Blue Component" : 0.60784316062927246, + "Alpha Component" : 1, + "Green Component" : 0.52549022436141968 + }, + "Columns" : 120, + "HotKey Alternate Shortcuts" : [ + + ], + "Visual Bell" : true, + "Custom Directory" : "No", + "Ansi 5 Color" : { + "Red Component" : 0.69411766529083252, + "Color Space" : "sRGB", + "Blue Component" : 0.52549022436141968, + "Alpha Component" : 1, + "Green Component" : 0.38431373238563538 + } +} +] +} diff --git a/karabiner/karabiner_alttabwithrightarrow b/karabiner/karabiner_alttabwithrightarrow new file mode 100644 index 0000000..a1ce5db --- /dev/null +++ b/karabiner/karabiner_alttabwithrightarrow @@ -0,0 +1,21 @@ +{ + "description": "Alt tab with right cmd arrow", + "manipulators": [ + { + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": ["right_command"], + "optional": ["any"] + } + }, + "to": [ + { + "key_code": "tab", + "modifiers": ["right_command"] + } + ], + "type": "basic" + } + ] +} diff --git a/karabiner/karabiner_caps_enhances b/karabiner/karabiner_caps_enhances new file mode 100644 index 0000000..177d5b4 --- /dev/null +++ b/karabiner/karabiner_caps_enhances @@ -0,0 +1,19 @@ +{ + "description": "Post Esc if Caps is tapped, Control if held.", + "manipulators": [ + { + "from": { + "key_code": "left_control", + "modifiers": { "optional": ["any"] } + }, + "to": [ + { + "key_code": "left_control", + "lazy": true + } + ], + "to_if_alone": [{ "key_code": "escape" }], + "type": "basic" + } + ] +} diff --git a/karabiner/karabiner_vi_mode b/karabiner/karabiner_vi_mode new file mode 100644 index 0000000..e9afb91 --- /dev/null +++ b/karabiner/karabiner_vi_mode @@ -0,0 +1,49 @@ +{ + "description": "Vi Mode [left_control + hjkl]", + "manipulators": [ + { + "from": { + "key_code": "h", + "modifiers": { + "mandatory": ["control", "command"], + "optional": ["caps_lock", "command", "option", "shift", "fn"] + } + }, + "to": [{ "key_code": "left_arrow" }], + "type": "basic" + }, + { + "from": { + "key_code": "j", + "modifiers": { + "mandatory": ["control", "command"], + "optional": ["caps_lock", "command", "option", "shift", "fn"] + } + }, + "to": [{ "key_code": "down_arrow" }], + "type": "basic" + }, + { + "from": { + "key_code": "k", + "modifiers": { + "mandatory": ["control", "command"], + "optional": ["caps_lock", "command", "option", "shift", "fn"] + } + }, + "to": [{ "key_code": "up_arrow" }], + "type": "basic" + }, + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": ["control", "command"], + "optional": ["caps_lock", "command", "option", "shift", "fn"] + } + }, + "to": [{ "key_code": "right_arrow" }], + "type": "basic" + } + ] +} diff --git a/syntax/shaderlab.vim b/syntax/shaderlab.vim old mode 100644 new mode 100755 diff --git a/vimrc b/vimrc old mode 100644 new mode 100755 index 3197890..538e686 --- a/vimrc +++ b/vimrc @@ -1,141 +1,186 @@ -syntax on -set nocompatible -set backspace=indent,eol,start -set noerrorbells -set belloff=all -set tabstop=4 softtabstop=4 -set shiftwidth=4 -set expandtab -set smartindent -"set nowrap -set wrap -set ignorecase -set smartcase -set noswapfile -set nobackup -set undofile -set undodir=~/vimfiles/undodir -set incsearch -set foldmethod=syntax -set foldlevelstart=99 "open all folds -set encoding=utf8 -set guioptions-=a -set diffopt=vertical - -"set colorcolumn=80 -"highlight ColorColumn ctermbg=0 - -"set clipboard=unnamed Disabling temporarily so I can figure out if clipboard -"is causing lags in Visual Studio -"https://github.com/VsVim/VsVim/issues/2035 -set clipboard=unnamed -set nornu -set number -set shell=$COMSPEC " - -"space leader -let mapleader = " " - -nnoremap -"nnoremap viw"0P - -"Scroll down -nnoremap M -"Scroll up -map M - -"Put on line below -nnoremap :pu -nnoremap :pu! - -if executable('rg') - let g:rg_derive_root='true' -endif - - -" Quickly open/reload vimrc -nnoremap rc :tabe $HOME/vimfiles/vimrc -nnoremap grc :tabe $HOME/vimfiles/gvimrc -nnoremap nrc :tabe $HOME/appdata/local/nvim/init.vim -nnoremap so :source $HOME/vimfiles/vimrc -nnoremap gso :source $HOME/vimfiles/gvimrc - -nnoremap q :q -nnoremap Q :q! -nnoremap :w -nnoremap :tabe -nnoremap -"nnoremap no way to map to ctrl shift minus in Vim :( - -nnoremap wq :wq -nnoremap :FZF -nnoremap :Rg -nnoremap 9 :tabprev -nnoremap 0 :tabnext -nnoremap dd :%d "delete all lines in file -nnoremap vv ggVG "highlight all lines in file - -nnoremap h :wincmd h -nnoremap j :wincmd j -nnoremap k :wincmd k -nnoremap l :wincmd l - -"format json -nnoremap fj :%!python -m json.tool :set syntax=json -"remove escape characters and starting and ending quotes from copied json -nnoremap /j V:s/\\//g 0x$x - - -"Copy open file path -noremap :let @+=expand("%:p") - -noremap ; :set rnu! -noremap # :set rnu! - - -"capital y should yank to end of line, just like capital c and capital d -"operates to the end of the line -nnoremap Y y$ -nnoremap V v$ -vnoremap v V - -" CTRL-C and are Copy to windows clipboard -vnoremap "+y - -"make certain characters undoable in insert mode -inoremap , ,u -inoremap . .u -inoremap [ [u -inoremap ! !u -inoremap ? ?u - -"ability to move highlighted lines up and down -vnoremap J :m '>+1gv=gv -vnoremap K :m '<-2gv=gv - -"open -nnoremap :open - -"Remove empty lines -"g/^$/d - -"Reload vimrc on save -"autocmd! bufwritepost .vimrc source % - -"good to know: - "nnoremap stands for normal-no-recursive-map - -"vim diff command -":vert diffs otherfile.config - -"G is from Git-fugitive -command StashAll G add . | G stash -command Sta StashAll -command StashPop G stash pop -command Stp StashPop -command Nuke G reset --hard | G clean -fd -command Chm G checkout master -command CheckoutPrevious G checkout - -command Chp CheckoutPrevious -command MergeMaster G checkout master | G pull | G checkout - | G merge master -command Mm MergeMaster +syntax on +set nocompatible +set backspace=indent,eol,start +set noerrorbells +set belloff=all +set tabstop=4 softtabstop=4 +set shiftwidth=4 +set expandtab +set smartindent +"set nowrap +set wrap +set ignorecase +set smartcase +set noswapfile +set nobackup +set undofile +set undodir=~/vimfiles/undodir +set incsearch +set foldmethod=syntax +set foldlevelstart=99 "open all folds +set encoding=utf8 +set guioptions-=a +set diffopt=vertical + +"set colorcolumn=80 +"highlight ColorColumn ctermbg=0 + +"set clipboard=unnamed Disabling temporarily so I can figure out if clipboard +"is causing lags in Visual Studio +"https://github.com/VsVim/VsVim/issues/2035 +set clipboard=unnamed +set nornu +set number +"set shell=$COMSPEC " + +"space leader +let mapleader = " " + +nnoremap +"nnoremap viw"0P + +"Scroll down +nnoremap M +"Scroll up +map M + +"Put on line below +"nnoremap :pu +"nnoremap :pu! + +if executable('rg') + let g:rg_derive_root='true' +endif + + +" Quickly open/reload vimrc +nnoremap rc :tabe $HOME/vimfiles/vimrc +nnoremap grc :tabe $HOME/vimfiles/gvimrc +nnoremap nrc :tabe $HOME/appdata/local/nvim/init.vim +nnoremap so :source $HOME/vimfiles/vimrc +nnoremap gso :source $HOME/vimfiles/gvimrc + +nnoremap q :q +nnoremap Q :q! +nnoremap :w +nnoremap :tabe +nnoremap +"nnoremap no way to map to ctrl shift minus in Vim :( + +nnoremap wq :wq +nnoremap :FZF +nnoremap :Rg +nnoremap 9 :tabprev +nnoremap 0 :tabnext +nnoremap dd :%d "delete all lines in file +nnoremap yy :%y + +nnoremap h :wincmd h +nnoremap j :wincmd j +nnoremap k :wincmd k +nnoremap l :wincmd l + +"format json +nnoremap fj :%!jq . +"remove escape characters and starting and ending quotes from copied json +nnoremap /j V:s/\\//g 0x$x +"remove windows carraige returns +noremap /m :%s/\r//g + + +"Copy open file path +noremap :let @+=expand("%:p") + +noremap ; :set rnu! +noremap # :set rnu! + + +"capital y should yank to end of line, just like capital c and capital d +"operates to the end of the line +nnoremap Y y$ +nnoremap V v$ +vnoremap v V + +"don't jump when yanking +"vnoremap y y'] + + +" CTRL-C and are Copy to windows clipboard +vnoremap "+y + +"make certain characters undoable in insert mode +"inoremap , ,u +"inoremap . .u +"inoremap [ [u +"inoremap ! !u +"inoremap ? ?u + +"ability to move highlighted lines up and down +vnoremap J :m '>+1gv=gv +vnoremap K :m '<-2gv=gv + +"open +"nnoremap :open + +"recent files +nnoremap ? :browse oldfiles + +"Remove empty lines +"g/^$/d + +"Reload vimrc on save +"autocmd! bufwritepost .vimrc source % + +"good to know: + "nnoremap stands for normal-no-recursive-map + "nvim's version of vimrc is at ~/.config/nvim/init.vim + "browse oldfiles brings up recently edited files + +"vim diff command +":vert diffs otherfile.config + +"G is from Git-fugitive +command StashAll G add . | G stash +command Sta StashAll +command StashPop G stash pop +command Stp StashPop +command Nuke G reset --hard | G clean -fd +command Chm G checkout master +command CheckoutPrevious G checkout - +command Chp CheckoutPrevious +command MergeMaster G checkout master | G pull | G checkout - | G merge master +command Mm MergeMaster + +nnoremap :!cargo run + +" Disable virtual text diagnostics (LSP inline warnings) - Neovim only +if has('nvim') + autocmd LspAttach * lua vim.diagnostic.config({ virtual_text = false }) + " Toggle diagnostic virtual text + nnoremap dt :lua vim.diagnostic.config({ virtual_text = not vim.diagnostic.config().virtual_text }) +endif + +" Disable CoC virtual text +let g:coc_disable_transparent_cursor = 1 +let g:coc_enable_locationlist = 0 + +" Function to swap the first two parameters of a function call +function! SwapFunctionParams() + let line = getline('.') + let col = col('.') + + " Find the function call pattern: function_name(param1, param2, ...) + let pattern = '\(\w\+\s*(\)\([^,()]*\),\s*\([^,()]*\)\(.*)\)' + + " Try to match the pattern on the current line + if match(line, pattern) != -1 + let new_line = substitute(line, pattern, '\1\3, \2\4', '') + call setline('.', new_line) + echo "Parameters swapped" + else + echo "No function call with parameters found on this line" + endif +endfunction + +" Map to , (swap parameters) +nnoremap , :call SwapFunctionParams() diff --git a/zshrc b/zshrc new file mode 100755 index 0000000..60497d1 --- /dev/null +++ b/zshrc @@ -0,0 +1,272 @@ +# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc. +# Initialization code that may require console input (password prompts, [y/n] +# confirmations, etc.) must go above this block; everything else may go below. +if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then + source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" +fi + +typeset -g POWERLEVEL9K_INSTANT_PROMPT=off + +# If you come from bash you might have to change your $PATH. +# export PATH=$HOME/bin:/usr/local/bin:$PATH +export PATH="/Applications/Xcode.app/Contents/Developer/usr/bin:$PATH" + +# Path to your oh-my-zsh installation. +export ZSH="$HOME/.oh-my-zsh" + + +setopt auto_cd +cdpath=($HOME $HOME/repos $HOME/repos/ICS) + +# Set name of the theme to load --- if set to "random", it will +# load a random theme each time oh-my-zsh is loaded, in which case, +# to know which specific one was loaded, run: echo $RANDOM_THEME +# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes +ZSH_THEME="powerlevel10k/powerlevel10k" + +# Set list of themes to pick from when loading at random +# Setting this variable when ZSH_THEME=random will cause zsh to load +# a theme from this variable instead of looking in $ZSH/themes/ +# If set to an empty array, this variable will have no effect. +# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" ) + +# Uncomment the following line to use case-sensitive completion. +# CASE_SENSITIVE="true" + +# Uncomment the following line to use hyphen-insensitive completion. +# Case-sensitive completion must be off. _ and - will be interchangeable. +# HYPHEN_INSENSITIVE="true" + +# Uncomment one of the following lines to change the auto-update behavior +# zstyle ':omz:update' mode disabled # disable automatic updates +zstyle ':omz:update' mode auto # update automatically without asking +# zstyle ':omz:update' mode reminder # just remind me to update when it's time + +# Uncomment the following line to change how often to auto-update (in days). +# zstyle ':omz:update' frequency 13 + +# Uncomment the following line if pasting URLs and other text is messed up. +# DISABLE_MAGIC_FUNCTIONS="true" + +# Uncomment the following line to disable colors in ls. +# DISABLE_LS_COLORS="true" + +# Uncomment the following line to disable auto-setting terminal title. +# DISABLE_AUTO_TITLE="true" + +# Uncomment the following line to enable command auto-correction. +# ENABLE_CORRECTION="true" + +# Uncomment the following line to display red dots whilst waiting for completion. +# You can also set it to another string to have that shown instead of the default red dots. +# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f" +# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765) +# COMPLETION_WAITING_DOTS="true" + +# Uncomment the following line if you want to disable marking untracked files +# under VCS as dirty. This makes repository status check for large repositories +# much, much faster. +# DISABLE_UNTRACKED_FILES_DIRTY="true" + +# Uncomment the following line if you want to change the command execution time +# stamp shown in the history command output. +# You can set one of the optional three formats: +# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" +# or set a custom format using the strftime function format specifications, +# see 'man strftime' for details. +# HIST_STAMPS="mm/dd/yyyy" + +# Would you like to use another custom folder than $ZSH/custom? +# ZSH_CUSTOM=/path/to/new-custom-folder + +# Which plugins would you like to load? +# Standard plugins can be found in $ZSH/plugins/ +# 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=(git zsh-autosuggestions zsh-syntax-highlighting vi-mode) + +source $ZSH/oh-my-zsh.sh + +# User configuration + +# export MANPATH="/usr/local/man:$MANPATH" + +# You may need to manually set your language environment +# export LANG=en_US.UTF-8 + +# Preferred editor for local and remote sessions +# if [[ -n $SSH_CONNECTION ]]; then +# export EDITOR='vim' +# else +# export EDITOR='mvim' +# fi + +# Compilation flags +# export ARCHFLAGS="-arch x86_64" + +# Set personal aliases, overriding those provided by oh-my-zsh libs, +# plugins, and themes. Aliases can be placed here, though oh-my-zsh +# users are encouraged to define aliases within the ZSH_CUSTOM folder. +# For a full list of active aliases, run `alias`. +# +# Example aliases +# alias zshconfig="mate ~/.zshrc" +# alias ohmyzsh="mate ~/.oh-my-zsh" +# +alias smxg="cd ~/Repos/ICS/InContext.SMXGo" +alias smxgu="cd ~/Repos/ICS/InContext.SMXGo/unityprojects/smxgo_unityproject" +alias eman="cd ~/Repos/ICS/InContext.Everyman/trunk" +alias lg="lazygit" +#alias slg="sudo lazygit" +alias alie="nvim ~/vimfiles/zshrc" +alias sp="nvim /Users/Shared/repos/ScratchPad/ScratchPad.txt" +alias ssp="sudo nvim /Users/Shared/ScratchPad.txt" +alias vim=nvim +alias e.="open ." +alias src="source ~/.zshrc" +alias vs="open *.sln" +alias psh="git push" +alias pl="git pull" +alias chm="git checkout master" +alias wchm="git checkout main" +alias lp="git log --pretty=oneline" +alias c="git commit" +alias status="git status" +alias sta="git add . ; git stash" +alias stp="git stash pop" +alias smxgd="cd ~/Library/Application\ Support/InContext\ Solutions/SMX\ GO\ \(LOCAL\)/" +alias ch-="git checkout -" +alias pss="git push -u origin HEAD" +alias ch="git checkout $*" +alias mm="git checkout master ; git pull ; git checkout - ; git merge master" +alias wmm="git checkout main ; git pull ; git checkout - ; git merge main" +alias nuke="git reset --hard ; git clean -fd" +alias insta="adb install unitybuild.apk" +alias build="dotnet build perfaware/part2/HaversineProcessor/HaversineProcessor.sln" +alias run="perfaware/part2/HaversineProcessor/HaversineProcessor/bin/Debug/net7.0/HaversineProcessor" +alias pat="grep -A 1 'PAT' /Users/Shared/ScratchPad.txt | tail -n 1 | pbcopy" +alias ib="xcodebuild -project "unitybuild/Unity-iPhone.xcodeproj" -scheme "Unity-iPhone" -sdk iphoneos build PROVISIONING_PROFILE_SPECIFIER='SMX Go' DEVELOPMENT_TEAM='3644B598RN'" +#alias inst="xcodebuild -project 'unitybuild/Unity-iPhone.xcodeproj' -scheme 'Unity-iPhone' -sdk iphoneos build PROVISIONING_PROFILE_SPECIFIER='SMX Go' DEVELOPMENT_TEAM='3644B598RN' && ios-deploy --bundle /Users/ethanfischer/Library/Developer/Xcode/DerivedData/Unity-iPhone-fjaixfekrmctfegofxkmdtfonveo/Build/Products/Debug-iphoneos/SMXGOLOCAL.app && notif && say 'installed' && big INSTALLED" +alias inst="xcodebuild -project 'unitybuild/Unity-iPhone.xcodeproj' \ CODE_SIGN_IDENTITY="" \ CODE_SIGNING_REQUIRED=NO \ CODE_SIGN_ENTITLEMENTS="" \ CODE_SIGNING_ALLOWED=YES \ DEVELOPMENT_TEAM='3644B598RN' \ -allowProvisioningUpdates \ build && ios-deploy --bundle /Users/ethanfischer/Library/Developer/Xcode/DerivedData/Unity-iPhone-fjaixfekrmctfegofxkmdtfonveo/Build/Products/Debug-iphoneos/SMXGOLOCAL.app && notif && say 'installed' && big INSTALLED" +alias notif="osascript -e 'display notification \"iOS Install Finished\" with title \"iOS Install Finished\"'" +alias smxgcl="rm -rf '/Users/ethanfischer/Library/Application Support/InContext Solutions/SMX GO (LOCAL)'" +alias matrix="cmatrix" +alias train="sl" +alias big="figlet $*" +alias bonsai="cbonsai -l --life=75" +alias aquarium="asciiquarium" +alias cs="gh copilot suggest $*" +alias ce="gh copilot explain $*" +azb() { + current_branch=$(git branch --show-current) + repo_name=$(git config --get remote.origin.url | awk -F '/' '{print $NF}' | sed 's/.git//g') + pipeline_id=$(az pipelines list --output tsv --query "[?name=='$repo_name'].id | [0]" 2>/dev/null) + build_result=$(az pipelines run --id "$pipeline_id" --branch "$current_branch" --output table 2>/dev/null) + build_id=$(echo "$build_result" | grep -E '^[0-9]+' | awk '{print $1}') + open "https://incontextsolutions.visualstudio.com/ICS/_build/results?buildId=$build_id&view=results" +} +azml() { + current_branch=$(git branch --show-current) + build_result=$(az pipelines run --id 145 --branch "$current_branch" --output table 2>/dev/null) + build_id=$(echo "$build_result" | grep -E '^[0-9]+' | awk '{print $1}') + open "https://incontextsolutions.visualstudio.com/ICS/_build/results?buildId=$build_id&view=results" +} +alias cportal="cd InContext.ClientPortal" +alias cpl="cd InContext.ClientPortal" +alias ptl="cd InContext.Portal" +alias ref="git reflog" +alias lsdate="ls -ltr" +alias lsd="ls -ltr" +alias notify='tput bel; afplay /System/Library/Sounds/Hero.aiff & terminal-notifier -title "Terminal" -message "Done with task! Exit status: $?"' +alias cc='env -u TERM_PROGRAM -u TERM_PROGRAM_VERSION TERM=xterm-256color claude' # fixes this regression https://github.com/anthropics/claude-code/issues/16727 +alias ccr='env -u TERM_PROGRAM -u TERM_PROGRAM_VERSION TERM=xterm-256color claude --resume' +alias cleanmymac='ncdu /' + +function pr() { + # Try to create a new PR + pr_output=$(az repos pr create 2>&1) + echo "Pr output $pr_output" + + if [[ $pr_output == *"TF401179"* ]]; then + # If PR already exists, fetch the existing PR ID + pr_id=$(az repos pr list --status active | jq -r '.[0].pullRequestId') + else + # If a new PR is created, parse the PR ID from the output + pr_id=$(echo $pr_output | jq -r '.pullRequestId') + fi + + echo "Pr id $pr_id" + # Get the repo name from the remote origin URL + repo=$(git config --get remote.origin.url | awk -F '/' '{print $NF}' | sed 's/.git//g') + + echo "repo $repo" + # Construct the URL of the PR + pr_url="https://incontextsolutions.visualstudio.com/ICS/_git/$repo/pullrequest/$pr_id" + + echo "pr_url $pr_url" + # Open the PR in the browser + open $pr_url +} + +ics() { + if [ $# -eq 0 ]; then + echo "Usage: ics " + return 1 + fi + + cd "InContext.$1" +} + +v() { + vim $(fd "$1") +} + +# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. +[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh +export PATH=$PATH:~/Android/Sdk/platform-tools +export PATH=$PATH:~/Library/Android/sdk/platform-tools + + +# Change cursor shape for vi-mode +function zle-keymap-select { + if [[ ${KEYMAP} == vicmd ]]; then + echo -ne "\e[2 q" + elif [[ ${KEYMAP} == main ]]; then + echo -ne "\e[6 q" + fi + zle reset-prompt + zle -R +} + +zle -N zle-keymap-select +zle-line-init() { + zle -K viins # initiate `vi insert` as keymap (can be removed if `bindkey -V` has been set elsewhere) + echo -ne "\e[6 q" +} +zle -N zle-line-init +KEYTIMEOUT=1 +#end change cursor shape for vi-mode + +# accept autosuggestions +bindkey "^[[Z" autosuggest-accept +# End accept autosuggestions +export PATH=$PATH:/Users/ethanfischer/Library/Android/sdk/emulator +export PATH=$PATH:/Users/ethanfischer/Library/Android/sdk/tools +export PATH=$PATH:/Users/ethanfischer/Library/Android/sdk/platform-tools + +#homebrew +export PATH="/opt/homebrew/bin:$PATH" +export HOMEBREW_PREFIX="/opt/homebrew" +export HOMEBREW_CELLAR="/opt/homebrew/Cellar" +export HOMEBREW_REPOSITORY="/opt/homebrew/Homebrew" + + +export HAXE_STD_PATH="/opt/homebrew/lib/haxe/std" + + +#NOTES: +# ncdu: great commandline tool for cleaning disk space on mac. Install with homebrew +# +# Needed for Claude Code +export PATH="$HOME/.local/bin:$PATH"