Installation
- Install tmux
- Install tmux package manager (
tpm) from https://github.com/tmux-plugins/tpm - Install
sesh(using brew) and set up its own config using symlink (ln -s /path/to/dotfiles/sesh ~/.config/sesh)
Session Management
<C-a>(Ctrl-a) in zsh - open sesh session manager and jump into selected session<leader>a(Ctrl-a + a) in tmux - open sesh session manager to switch sessions
Core Features
- <C-h/j/k/l> pane navigation in tmux & nvim
- leader for tmux
- F for tmux fzf (session management)
- - split horizontally
- \ split vertically
- x kill pane
- z zoom pane (default)
- h/j/k/l resize current pane (repeatable)
- Escpae - enter copy mode, q to exit, v to start selection, y to copy (vi mode enabled)
TODOs
- easier keymap for creating and deleting splits
- session management and navigation
- omerxx/tmux-sessionx
Installation
- create a symlink between default nvim config (e.g.,
~/.config/nvim) and this repo's nvim config:
ln -s ~/path/to/dotfiles/nvim ~/.config/nvimNote: we are using symlink (instead of bootstrapping like other tools here) for nvim specifically because of tools like lazy.nvim that will create a lazy-lock.json file in the nvim config directory.
Core Features
General
-
leader for nvim
-
autoread
-
Copilot:
- italic with distinct subtle color
- using option key for managing suggestions:
- opt-y : accept suggestion
- opt-l : accept word
- opt-n : dismiss suggestion
- opt-j : next suggestion
- opt-k : previous suggestion
- Commands:
:CopilotDisable- disable Copilot and Sidekick NES:CopilotEnable- enable Copilot and Sidekick NES
Language Support (LSPs, formatters, linters)
Using the "old" nvim-lspconfig lsp setup
-
python - pyright, ruff
-
dotnet - roslyn
-
lua - lua_ls, stylua
-
json - jsonls, jsonlint
-
yaml - yamlls, yamllint
-
markdown - markdownlint
Navigation & Search
- e/E - toggle file explorer / open current file in explorer (mini.files). edit as buffer, use
=to save changes - s - telescope find
- <C-j/k> - for up/down in pickers (telescope/cmp)
- s - search using flash
- S - treesitter highlight search using flash
Completions
- <M-j/k> - switch between copilot suggestions
- - accept copilot next word
- <M-y/n> - accept/dismiss copilot suggestion
- K - show LSP hover (click again for focus)
- k - show diagnostics hover (click again for focus)
Search
TODOs
-
n .and then opening a project with the dashboard, should also make telescope search this dir (e.g., cd into that dir?) - consider telescope-file-browser as alternative to mini.files: https://github.com/nvim-telescope/telescope-file-browser.nvim
- jumplist to navigate between files
- obsidian.nvim + github integration to a private repo
- flash.nvim for navigation
- surround.nvim for surrounding text objects
- quicklist (understand more deeply and use)?
- vim tips from https://vim.fandom.com/wiki/Replace_a_word_with_yanked_text
Installation
in your ghostty config file (usually ~/.config/ghostty/config), have only the following line:
config-file = "/absolute/path/to/this/file"Core Features
- setup for macost (option as alt)
- theme catppuccin
- font fira code
- cmd + 0 - reset zoom
- cmd + =/- - zoom in/out
Installation
- in your
~/.zshrcfile, have only the following line:
source `~/path/to/dotfiles/zsh/oribi.zsh`- run `zsh setup.zsh
Core Features
-
Fuzzy search on completions (press
Tabto search) -
Ctrl-r - Search history
-
Ctrl-t - Search files
-
z - fuzzy jump to directory using zoxide
-
zi - Search and jump to directory
-
fc - fix command (edit, wq, auto run)
-
direnv - load .envrc files automatically in directories
-
sesh - tmux session management (outside tmux)
Installation
- in your
~/.zshrcfile, add the following line:
export PATH="~/path/to/dotfiles/yazi/"Default Configurations
- showing dotfiles by default
gshortcuts
Non-functionals
- Super fast loading (lazy loading what's possible)
- Lightweight prompt theme (with git support)
- Auto-suggestions
- Syntax hightlighting
Installation
- Install Raycast from https://raycast.com/
- Add the script directory to
~/path/to/dotfiles/raycast/scriptsin Raycast preferences