Initial commit: CachyOS shell environment setup
Comprehensive shell environment setup for CachyOS/Arch Linux featuring: - Modern CLI tools: eza, bat, fd, ripgrep, fzf, zoxide, dust, duf, procs, btop, sd, delta - Development tools: neovim (NvChad), lazygit, starship, yazi, zellij, navi - Shell: zsh with oh-my-zsh, syntax highlighting, autosuggestions - Terminal: Ghostty configuration - Dracula theme: Consistent theming across all tools - Fonts: JetBrains Mono Nerd Font (all variants) - Configs: starship, zellij, yazi, fastfetch, ghostty - Dotfiles: .zshrc, .bashrc, zsh completions Automated installation script handles all dependencies and configuration.
This commit is contained in:
commit
c08daf3f85
118 changed files with 3117 additions and 0 deletions
37
.gitignore
vendored
Normal file
37
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
# Backup files
|
||||
*.bak
|
||||
*.backup
|
||||
*.old
|
||||
*.orig
|
||||
*~
|
||||
|
||||
# Compressed archives
|
||||
*.tar.gz
|
||||
*.zip
|
||||
*.7z
|
||||
*.rar
|
||||
|
||||
# Logs
|
||||
*.log
|
||||
|
||||
# OS specific
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
|
||||
# Temporary files
|
||||
*.tmp
|
||||
*.temp
|
||||
.cache/
|
||||
|
||||
# IDE/Editor
|
||||
.vscode/
|
||||
.idea/
|
||||
*.swp
|
||||
*.swo
|
||||
|
||||
# Private/sensitive data
|
||||
secrets/
|
||||
private/
|
||||
.env
|
||||
*.key
|
||||
*.pem
|
||||
201
DRACULA_THEME.md
Normal file
201
DRACULA_THEME.md
Normal file
|
|
@ -0,0 +1,201 @@
|
|||
# Dracula Theme Color Reference
|
||||
|
||||
This file contains the official Dracula theme colors for reference when customizing additional tools.
|
||||
|
||||
## Dracula Color Palette
|
||||
|
||||
```
|
||||
Background: #282a36
|
||||
Current Line: #44475a
|
||||
Foreground: #f8f8f2
|
||||
Comment: #6272a4
|
||||
Cyan: #8be9fd
|
||||
Green: #50fa7b
|
||||
Orange: #ffb86c
|
||||
Pink: #ff79c6
|
||||
Purple: #bd93f9
|
||||
Red: #ff5555
|
||||
Yellow: #f1fa8c
|
||||
```
|
||||
|
||||
## ANSI Colors (for terminals)
|
||||
|
||||
### Normal Colors
|
||||
```
|
||||
Black: #21222c
|
||||
Red: #ff5555
|
||||
Green: #50fa7b
|
||||
Yellow: #f1fa8c
|
||||
Blue: #bd93f9
|
||||
Magenta: #ff79c6
|
||||
Cyan: #8be9fd
|
||||
White: #f8f8f2
|
||||
```
|
||||
|
||||
### Bright Colors
|
||||
```
|
||||
Bright Black: #6272a4
|
||||
Bright Red: #ff6e6e
|
||||
Bright Green: #69ff94
|
||||
Bright Yellow: #ffffa5
|
||||
Bright Blue: #d6acff
|
||||
Bright Magenta: #ff92df
|
||||
Bright Cyan: #a4ffff
|
||||
Bright White: #ffffff
|
||||
```
|
||||
|
||||
## Applied Configurations
|
||||
|
||||
### Tools with Dracula Theme Configured:
|
||||
|
||||
1. **Ghostty Terminal** (`~/.config/ghostty/config`)
|
||||
- Full Dracula palette
|
||||
- JetBrains Mono Nerd Font
|
||||
- Dark window theme
|
||||
|
||||
2. **Bat** (via environment variable in `.zshrc`)
|
||||
- `BAT_THEME="Dracula"`
|
||||
- Syntax highlighting with Dracula colors
|
||||
|
||||
3. **FZF** (in `.zshrc`)
|
||||
- Custom Dracula color scheme
|
||||
- Matching background, foreground, and accent colors
|
||||
|
||||
4. **Git Delta** (git config)
|
||||
- `delta.syntax-theme "Dracula"`
|
||||
- Side-by-side diffs with Dracula colors
|
||||
|
||||
5. **Zellij** (via alias in `.zshrc`)
|
||||
- `zellij options --theme dracula`
|
||||
- Terminal workspace with Dracula theme
|
||||
|
||||
6. **Starship** (`~/.config/starship.toml`)
|
||||
- Custom Dracula palette defined
|
||||
- All prompt elements use Dracula colors
|
||||
|
||||
## Additional Tools to Theme Manually
|
||||
|
||||
If you install additional tools, here's how to apply Dracula:
|
||||
|
||||
### Alacritty
|
||||
```yaml
|
||||
# ~/.config/alacritty/alacritty.yml
|
||||
colors:
|
||||
primary:
|
||||
background: '#282a36'
|
||||
foreground: '#f8f8f2'
|
||||
cursor:
|
||||
text: CellBackground
|
||||
cursor: CellForeground
|
||||
selection:
|
||||
text: CellForeground
|
||||
background: '#44475a'
|
||||
normal:
|
||||
black: '#21222c'
|
||||
red: '#ff5555'
|
||||
green: '#50fa7b'
|
||||
yellow: '#f1fa8c'
|
||||
blue: '#bd93f9'
|
||||
magenta: '#ff79c6'
|
||||
cyan: '#8be9fd'
|
||||
white: '#f8f8f2'
|
||||
bright:
|
||||
black: '#6272a4'
|
||||
red: '#ff6e6e'
|
||||
green: '#69ff94'
|
||||
yellow: '#ffffa5'
|
||||
blue: '#d6acff'
|
||||
magenta: '#ff92df'
|
||||
cyan: '#a4ffff'
|
||||
white: '#ffffff'
|
||||
```
|
||||
|
||||
### Kitty
|
||||
```conf
|
||||
# ~/.config/kitty/dracula.conf
|
||||
foreground #f8f8f2
|
||||
background #282a36
|
||||
selection_foreground #ffffff
|
||||
selection_background #44475a
|
||||
|
||||
# black
|
||||
color0 #21222c
|
||||
color8 #6272a4
|
||||
|
||||
# red
|
||||
color1 #ff5555
|
||||
color9 #ff6e6e
|
||||
|
||||
# green
|
||||
color2 #50fa7b
|
||||
color10 #69ff94
|
||||
|
||||
# yellow
|
||||
color3 #f1fa8c
|
||||
color11 #ffffa5
|
||||
|
||||
# blue
|
||||
color4 #bd93f9
|
||||
color12 #d6acff
|
||||
|
||||
# magenta
|
||||
color5 #ff79c6
|
||||
color13 #ff92df
|
||||
|
||||
# cyan
|
||||
color6 #8be9fd
|
||||
color14 #a4ffff
|
||||
|
||||
# white
|
||||
color7 #f8f8f2
|
||||
color15 #ffffff
|
||||
```
|
||||
|
||||
### Tmux (if you decide to use it)
|
||||
```conf
|
||||
# ~/.tmux.conf - Dracula theme
|
||||
set -g status-style 'bg=#282a36 fg=#f8f8f2'
|
||||
set -g pane-border-style 'fg=#6272a4'
|
||||
set -g pane-active-border-style 'fg=#bd93f9'
|
||||
set -g window-status-current-style 'fg=#282a36 bg=#bd93f9'
|
||||
set -g message-style 'bg=#44475a fg=#f8f8f2'
|
||||
```
|
||||
|
||||
### Vim/Neovim (in addition to NvChad)
|
||||
```vim
|
||||
" Add to init.vim or init.lua
|
||||
colorscheme dracula
|
||||
```
|
||||
|
||||
For Lua:
|
||||
```lua
|
||||
-- init.lua
|
||||
vim.cmd [[colorscheme dracula]]
|
||||
```
|
||||
|
||||
## Official Dracula Resources
|
||||
|
||||
- **Website**: https://draculatheme.com/
|
||||
- **GitHub**: https://github.com/dracula
|
||||
- **Color Spec**: https://spec.draculatheme.com/
|
||||
|
||||
## Custom Dracula Configurations
|
||||
|
||||
You can find Dracula themes for almost any application at:
|
||||
https://draculatheme.com/
|
||||
|
||||
Popular applications with Dracula themes:
|
||||
- VS Code
|
||||
- Sublime Text
|
||||
- Vim
|
||||
- Emacs
|
||||
- Obsidian
|
||||
- Discord
|
||||
- Slack
|
||||
- Firefox
|
||||
- Chrome
|
||||
- And many more!
|
||||
|
||||
---
|
||||
|
||||
**Keep your environment consistently beautiful with Dracula! 🧛**
|
||||
332
README.md
Normal file
332
README.md
Normal file
|
|
@ -0,0 +1,332 @@
|
|||
# CachyOS Shell Environment Setup
|
||||
|
||||
A comprehensive shell environment setup script for CachyOS (or any Arch-based distro) featuring modern CLI tools, Dracula theming, and a beautiful terminal experience.
|
||||
|
||||
## Features
|
||||
|
||||
### Modern CLI Tools
|
||||
- **eza** - Modern replacement for `ls` with git integration and icons
|
||||
- **bat** - Better `cat` with syntax highlighting (Dracula theme)
|
||||
- **fd** - Faster and more user-friendly alternative to `find`
|
||||
- **ripgrep (rg)** - Ultra-fast text search tool
|
||||
- **fzf** - Command-line fuzzy finder (Dracula theme)
|
||||
- **zoxide** - Smarter `cd` command with frecency
|
||||
- **dust** - Intuitive `du` replacement
|
||||
- **duf** - User-friendly `df` alternative
|
||||
- **procs** - Modern `ps` replacement
|
||||
- **btop** - Beautiful system monitor
|
||||
- **sd** - Intuitive `sed` alternative
|
||||
- **delta** - Syntax-highlighting git diff viewer
|
||||
- **atuin** - Magical shell history with search and sync
|
||||
- **tealdeer** - Fast tldr client for quick command examples
|
||||
- **hyperfine** - Command-line benchmarking tool
|
||||
- **tokei** - Code statistics tool
|
||||
|
||||
### Development Tools
|
||||
- **neovim** - Modern vim-based text editor
|
||||
- **NvChad** - Blazing fast Neovim config
|
||||
- **lazygit** - Simple terminal UI for git
|
||||
- **starship** - Fast, customizable prompt (Dracula theme)
|
||||
- **yazi** - Blazing fast terminal file manager
|
||||
- **zellij** - Terminal workspace with layouts (Dracula theme)
|
||||
- **navi** - Interactive cheatsheet tool
|
||||
|
||||
### Shell Environment
|
||||
- **zsh** - Powerful shell with Oh-My-Zsh
|
||||
- **oh-my-zsh** - Framework for managing zsh configuration
|
||||
- **zsh-syntax-highlighting** - Fish-like syntax highlighting
|
||||
- **zsh-autosuggestions** - Fish-like autosuggestions
|
||||
- **Ghostty** - Fast, native terminal emulator (Dracula theme)
|
||||
|
||||
### Theming
|
||||
All tools are configured with **Dracula theme** for a consistent, beautiful dark theme experience.
|
||||
|
||||
## Directory Structure
|
||||
|
||||
```
|
||||
cachyos-setup/
|
||||
├── install.sh # Main installation script
|
||||
├── README.md # This file
|
||||
├── dotfiles/ # Shell configuration files
|
||||
│ ├── .zshrc # Main zsh configuration
|
||||
│ ├── .zshenv # Zsh environment variables
|
||||
│ ├── .bashrc # Bash configuration (fallback)
|
||||
│ ├── .bash_logout # Bash logout script
|
||||
│ ├── .profile # Profile configuration
|
||||
│ └── .zsh/ # Zsh completions
|
||||
├── config/ # Application configurations
|
||||
│ ├── starship.toml # Starship prompt config
|
||||
│ ├── zellij/ # Zellij workspace config
|
||||
│ ├── yazi/ # Yazi file manager config
|
||||
│ ├── fastfetch/ # Fastfetch system info config
|
||||
│ └── htop/ # Htop config
|
||||
└── fonts/ # JetBrains Mono Nerd Font
|
||||
```
|
||||
|
||||
## Installation
|
||||
|
||||
### Prerequisites
|
||||
- A fresh CachyOS installation (or Arch-based distro)
|
||||
- Internet connection
|
||||
- sudo privileges
|
||||
|
||||
### Quick Install
|
||||
|
||||
1. Copy this entire `cachyos-setup` directory to your new machine
|
||||
2. Open a terminal and navigate to the directory:
|
||||
```bash
|
||||
cd cachyos-setup
|
||||
```
|
||||
3. Run the installation script:
|
||||
```bash
|
||||
./install.sh
|
||||
```
|
||||
4. Follow the prompts and let the script do its magic!
|
||||
|
||||
### What the Script Does
|
||||
|
||||
The installation script will:
|
||||
1. ✅ Detect your package manager (pacman or apt)
|
||||
2. ✅ Update system packages
|
||||
3. ✅ Install core system packages
|
||||
4. ✅ Install Rust and Cargo
|
||||
5. ✅ Install all Cargo-based tools
|
||||
6. ✅ Set up Oh-My-Zsh with plugins
|
||||
7. ✅ Install JetBrains Mono Nerd Font
|
||||
8. ✅ Set up Neovim with NvChad
|
||||
9. ✅ Install Ghostty terminal
|
||||
10. ✅ Install lazygit and btop
|
||||
11. ✅ Copy all dotfiles and configs (with backup)
|
||||
12. ✅ Configure Ghostty with Dracula theme
|
||||
13. ✅ Set up bat, delta, and atuin
|
||||
14. ✅ Change default shell to zsh
|
||||
|
||||
**Note:** The script will automatically backup your existing configurations to `~/.config_backup_<timestamp>/`
|
||||
|
||||
## Post-Installation
|
||||
|
||||
After the installation completes:
|
||||
|
||||
1. **Logout and login** (or reboot) to apply the shell changes
|
||||
2. **Open Ghostty terminal** to experience your new setup
|
||||
3. **Run `nvim`** for the first time to complete NvChad plugin installation
|
||||
4. **Enjoy your new environment!**
|
||||
|
||||
## Key Features & Usage
|
||||
|
||||
### Enhanced Shell Commands
|
||||
|
||||
The new `.zshrc` includes many convenient aliases:
|
||||
|
||||
#### File Operations
|
||||
```bash
|
||||
ls # eza with icons and colors
|
||||
ll # eza long format
|
||||
la # eza show all files
|
||||
lt # eza tree view
|
||||
cat # bat with syntax highlighting
|
||||
```
|
||||
|
||||
#### Navigation
|
||||
```bash
|
||||
cd <dir> # Uses zoxide (learns your habits)
|
||||
.. # Go up one directory
|
||||
... # Go up two directories
|
||||
mkcd # Create directory and cd into it
|
||||
```
|
||||
|
||||
#### System Monitoring
|
||||
```bash
|
||||
top # Opens btop
|
||||
du # Uses dust
|
||||
df # Uses duf
|
||||
ps # Uses procs
|
||||
```
|
||||
|
||||
#### Git
|
||||
```bash
|
||||
lg # Opens lazygit
|
||||
gs # git status
|
||||
ga # git add
|
||||
gc # git commit
|
||||
gd # git diff (with delta)
|
||||
```
|
||||
|
||||
#### Utilities
|
||||
```bash
|
||||
help # Uses tldr for quick examples
|
||||
zconfig # Edit .zshrc
|
||||
nconfig # Edit nvim config
|
||||
sconfig # Edit starship config
|
||||
zj # Start zellij with dracula theme
|
||||
```
|
||||
|
||||
### Atuin Shell History
|
||||
|
||||
Press `Ctrl+R` to search through your shell history with atuin's powerful interface.
|
||||
|
||||
### FZF Fuzzy Finding
|
||||
|
||||
- `Ctrl+T` - Search for files
|
||||
- `Ctrl+R` - Search command history (atuin)
|
||||
- `Alt+C` - Change directory with fuzzy search
|
||||
|
||||
### Starship Prompt
|
||||
|
||||
The starship prompt shows:
|
||||
- Current directory
|
||||
- Git branch and status
|
||||
- Programming language versions (Python, Node, Rust, Go, etc.)
|
||||
- Docker context
|
||||
- Custom git remote icons (GitHub, GitLab, etc.)
|
||||
|
||||
### Zellij Terminal Workspace
|
||||
|
||||
Start zellij with Dracula theme:
|
||||
```bash
|
||||
zj
|
||||
```
|
||||
|
||||
Key bindings:
|
||||
- `Ctrl+O` - Open zellij commands
|
||||
- `Ctrl+T` - New tab
|
||||
- `Ctrl+P` - New pane
|
||||
- `Ctrl+N` - Switch panes
|
||||
|
||||
## Customization
|
||||
|
||||
### Change Themes
|
||||
|
||||
All configurations support Dracula theme by default, but you can customize:
|
||||
|
||||
- **Starship**: Edit `~/.config/starship.toml`
|
||||
- **Ghostty**: Edit `~/.config/ghostty/config`
|
||||
- **Zellij**: Edit `~/.config/zellij/config.kdl`
|
||||
- **Bat**: Change `BAT_THEME` in `.zshrc`
|
||||
- **FZF**: Modify `FZF_DEFAULT_OPTS` in `.zshrc`
|
||||
|
||||
### Add More Tools
|
||||
|
||||
To add more Rust-based tools:
|
||||
```bash
|
||||
cargo install <tool-name>
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Fonts not showing correctly
|
||||
```bash
|
||||
fc-cache -f ~/.local/share/fonts
|
||||
```
|
||||
|
||||
### Zsh not default shell
|
||||
```bash
|
||||
chsh -s $(which zsh)
|
||||
```
|
||||
|
||||
### Cargo tools not in PATH
|
||||
Add to `.zshrc`:
|
||||
```bash
|
||||
export PATH="$HOME/.cargo/bin:$PATH"
|
||||
```
|
||||
|
||||
### NvChad plugins not loading
|
||||
```bash
|
||||
nvim
|
||||
# Wait for installation to complete
|
||||
# Press Enter when prompted
|
||||
```
|
||||
|
||||
## Included Configurations
|
||||
|
||||
### .zshrc Features
|
||||
- Oh-My-Zsh with plugins
|
||||
- Starship prompt
|
||||
- Zoxide integration
|
||||
- Dracula theme for fzf, bat
|
||||
- Atuin history search
|
||||
- Modern CLI tool aliases
|
||||
- Helpful functions (extract, mkcd)
|
||||
- Git aliases
|
||||
- Custom completions support
|
||||
|
||||
### Starship Configuration
|
||||
- Minimalist design
|
||||
- Git integration with custom icons
|
||||
- Language detection (Python, Node, Rust, Go, etc.)
|
||||
- Custom git remote symbols
|
||||
- Dracula color scheme
|
||||
|
||||
### Ghostty Configuration
|
||||
- Dracula color scheme
|
||||
- JetBrains Mono Nerd Font
|
||||
- Custom padding
|
||||
- Shell integration
|
||||
- No close confirmation
|
||||
|
||||
## Package List
|
||||
|
||||
### System Packages (pacman)
|
||||
```
|
||||
zsh git curl wget base-devel fzf ripgrep bat fd xclip htop
|
||||
ruby rubygems python python-pip fontconfig unzip neovim go
|
||||
```
|
||||
|
||||
### Cargo Tools
|
||||
```
|
||||
starship zoxide yazi-fm yazi-cli zellij navi eza bat fd-find
|
||||
dust duf procs bottom sd tealdeer git-delta atuin hyperfine tokei
|
||||
```
|
||||
|
||||
### Additional Tools
|
||||
- lazygit
|
||||
- btop
|
||||
- ghostty (via AUR)
|
||||
|
||||
## Backup Information
|
||||
|
||||
The install script automatically backs up:
|
||||
- All existing dotfiles in your home directory
|
||||
- All existing configs in `~/.config/`
|
||||
|
||||
Backups are stored in: `~/.config_backup_<timestamp>/`
|
||||
|
||||
## Manual Installation Steps
|
||||
|
||||
If you prefer to install components individually:
|
||||
|
||||
1. **Install Rust**:
|
||||
```bash
|
||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
|
||||
```
|
||||
|
||||
2. **Install Oh-My-Zsh**:
|
||||
```bash
|
||||
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
|
||||
```
|
||||
|
||||
3. **Install a tool via cargo**:
|
||||
```bash
|
||||
cargo install <tool-name>
|
||||
```
|
||||
|
||||
4. **Copy configs**:
|
||||
```bash
|
||||
cp dotfiles/.zshrc ~/
|
||||
cp -r config/* ~/.config/
|
||||
```
|
||||
|
||||
## Credits
|
||||
|
||||
- **Dracula Theme**: https://draculatheme.com/
|
||||
- **NvChad**: https://nvchad.com/
|
||||
- **Starship**: https://starship.rs/
|
||||
- **Oh-My-Zsh**: https://ohmyz.sh/
|
||||
|
||||
## License
|
||||
|
||||
Free to use and modify for personal use.
|
||||
|
||||
---
|
||||
|
||||
**Enjoy your beautiful new shell environment! 🚀**
|
||||
121
config/fastfetch/config.jsonc
Normal file
121
config/fastfetch/config.jsonc
Normal file
|
|
@ -0,0 +1,121 @@
|
|||
{
|
||||
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
|
||||
"logo": {
|
||||
"height": 19,
|
||||
"width": 50,
|
||||
"padding": {
|
||||
"top": 2,
|
||||
"left": 3
|
||||
}
|
||||
},
|
||||
"modules": [
|
||||
"break",
|
||||
{
|
||||
"type": "custom",
|
||||
"format": "┌────────────────────── Hardware ──────────────────────┐",
|
||||
"outputColor": "red"
|
||||
},
|
||||
{
|
||||
"type": "title",
|
||||
"key": " PC",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "cpu",
|
||||
"key": "│ ├CPU",
|
||||
"showPeCoreCount": true,
|
||||
"format": "{1}",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "gpu",
|
||||
"key": "│ ├ GPU",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "memory",
|
||||
"key": "└ └ Memory",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "custom",
|
||||
"format": "└──────────────────────────────────────────────────────┘",
|
||||
"outputColor": "red"
|
||||
},
|
||||
"break",
|
||||
{
|
||||
"type": "custom",
|
||||
"format": "┌────────────────────── Software ──────────────────────┐",
|
||||
"outputColor": "red"
|
||||
},
|
||||
{
|
||||
"type": "os",
|
||||
"key": " OS",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
{
|
||||
"type": "kernel",
|
||||
"key": "│ ├ Kernel",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
{
|
||||
"type": "packages",
|
||||
"key": "│ ├ Packages",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"key": "│ ├ Shell",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
{
|
||||
"type": "command",
|
||||
"key": "│ ├ OS Age",
|
||||
"keyColor": "yellow",
|
||||
"text": "birth_install=$(stat -c %W /); current=$(date +%s); time_progression=$((current - birth_install)); days_difference=$((time_progression / 86400)); echo $days_difference days"
|
||||
},
|
||||
{
|
||||
"type": "uptime",
|
||||
"key": "└ └ Uptime",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
"break",
|
||||
{
|
||||
"type": "de",
|
||||
"key": " DE",
|
||||
"keyColor": "blue"
|
||||
},
|
||||
{
|
||||
"type": "lm",
|
||||
"key": "│ ├ LM",
|
||||
"keyColor": "blue"
|
||||
},
|
||||
{
|
||||
"type": "wm",
|
||||
"key": "│ ├ WM",
|
||||
"keyColor": "blue"
|
||||
},
|
||||
{
|
||||
"type": "gpu",
|
||||
"key": "│ ├ GPU Driver",
|
||||
"format": "{3}",
|
||||
"keyColor": "blue"
|
||||
},
|
||||
{
|
||||
"type": "wmtheme",
|
||||
"key": "└ └ Theme",
|
||||
"keyColor": "blue"
|
||||
},
|
||||
|
||||
{
|
||||
"type": "custom",
|
||||
"format": "└────────────────────────────────────────────────────┘",
|
||||
"outputColor": "red"
|
||||
},
|
||||
{
|
||||
"type": "custom",
|
||||
"format": " \u001b[90m \u001b[31m \u001b[32m \u001b[33m \u001b[34m \u001b[35m \u001b[36m \u001b[37m "
|
||||
},
|
||||
"break"
|
||||
]
|
||||
}
|
||||
BIN
config/fastfetch/majin.png
Normal file
BIN
config/fastfetch/majin.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 203 KiB |
19
config/ghostty/config
Normal file
19
config/ghostty/config
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
# Ghostty Configuration - Dracula Theme
|
||||
|
||||
# Font
|
||||
font-family = "JetBrainsMono Nerd Font"
|
||||
font-size = 12
|
||||
|
||||
theme = dracula
|
||||
background-opacity = 0.3
|
||||
# Window
|
||||
window-padding-x = 10
|
||||
window-padding-y = 10
|
||||
window-theme = dark
|
||||
gtk-titlebar = false
|
||||
# Shell
|
||||
shell-integration = zsh
|
||||
|
||||
# Misc
|
||||
confirm-close-surface = false
|
||||
keybind = shift+enter=text:\x1b\r
|
||||
218
config/starship.toml
Normal file
218
config/starship.toml
Normal file
|
|
@ -0,0 +1,218 @@
|
|||
command_timeout = 3600
|
||||
|
||||
"$schema" = 'https://starship.rs/config-schema.json'
|
||||
|
||||
add_newline = false
|
||||
|
||||
format = """
|
||||
➜\
|
||||
$directory\
|
||||
${custom.giturl}\
|
||||
$git_branch\
|
||||
$git_state\
|
||||
$git_status\
|
||||
$line_break\
|
||||
$character
|
||||
"""
|
||||
right_format = """$python$nodejs$rust$golang$java$php$c$kotlin$haskell$docker_context"""
|
||||
palette = "catppuccin_mocha"
|
||||
|
||||
[palettes.catppuccin_mocha]
|
||||
rosewater = "#f5e0dc"
|
||||
flamingo = "#f2cdcd"
|
||||
pink = "#f5c2e7"
|
||||
mauve = "#cba6f7"
|
||||
red = "#f38ba8"
|
||||
maroon = "#eba0ac"
|
||||
peach = "#fab387"
|
||||
yellow = "#f9e2af"
|
||||
green = "#a6e3a1"
|
||||
teal = "#94e2d5"
|
||||
sky = "#89dceb"
|
||||
sapphire = "#74c7ec"
|
||||
blue = "#89b4fa"
|
||||
lavender = "#b4befe"
|
||||
text = "#cdd6f4"
|
||||
subtext1 = "#bac2de"
|
||||
subtext0 = "#a6adc8"
|
||||
overlay2 = "#9399b2"
|
||||
overlay1 = "#7f849c"
|
||||
overlay0 = "#6c7086"
|
||||
surface2 = "#585b70"
|
||||
surface1 = "#45475a"
|
||||
surface0 = "#313244"
|
||||
base = "#1e1e2e"
|
||||
mantle = "#181825"
|
||||
crust = "#11111b"
|
||||
|
||||
# [palettes.custom]
|
||||
# rosewater = "#f5e0dc"
|
||||
# flamingo = "#eb6f92"
|
||||
# pink = "#f5c2e7"
|
||||
# orange = "#cba6f7"
|
||||
# color_red = '#cc241d'
|
||||
# red = "#f38ba8"
|
||||
# maroon = "#eba0ac"
|
||||
# peach = "#fab387"
|
||||
# yellow = "#f9e2af"
|
||||
# green = "#a6e3a1"
|
||||
# teal = "#94e2d5"
|
||||
# sky = "#89dceb"
|
||||
# sapphire = "#74c7ec"
|
||||
# blue = "#89b4fa"
|
||||
# lavender = "#b4befe"
|
||||
# foam = "#9ccfd8"
|
||||
# pine = "#31748f"
|
||||
# gold = "#f6c177"
|
||||
# rose = "#ebbcba"
|
||||
# text = "#cdd6f4"
|
||||
# subtext1 = "#bac2de"
|
||||
# subtext0 = "#a6adc8"
|
||||
# overlay2 = "#9399b2"
|
||||
# overlay1 = "#7f849c"
|
||||
# overlay0 = "#6c7086"
|
||||
# surface2 = "#585b70"
|
||||
# surface1 = "#45475a"
|
||||
# surface0 = "#313244"
|
||||
# base = "#1e1e2e"
|
||||
# mantle = "#181825"
|
||||
# crust = "#11111b"
|
||||
|
||||
[os.symbols]
|
||||
Windows = ""
|
||||
Ubuntu = ""
|
||||
SUSE = ""
|
||||
Raspbian = ""
|
||||
Mint = ""
|
||||
Macos = " "
|
||||
Manjaro = ""
|
||||
Linux = ""
|
||||
Gentoo = ""
|
||||
Fedora = ""
|
||||
Alpine = ""
|
||||
Amazon = ""
|
||||
Android = ""
|
||||
Arch = ""
|
||||
Artix = ""
|
||||
CentOS = ""
|
||||
Debian = ""
|
||||
Redhat = ""
|
||||
RedHatEnterprise = ""
|
||||
|
||||
[username]
|
||||
#show_always = true
|
||||
#style_user = "bg:surface0 fg:text"
|
||||
#style_root = "bg:surface0 fg:text"
|
||||
#format = '[ $user ]($style)'
|
||||
|
||||
[directory]
|
||||
style = "sapphire"
|
||||
format = "[ $path ]($style)"
|
||||
#truncation_length = 4
|
||||
#truncation_symbol = "…/"
|
||||
|
||||
[directory.substitutions]
|
||||
"Documents" = " "
|
||||
"Downloads" = " "
|
||||
"Music" = " "
|
||||
"Pictures" = " "
|
||||
"Developer" = " "
|
||||
|
||||
[os]
|
||||
disabled = true
|
||||
#style = "bg:surface0 fg:text"
|
||||
|
||||
[custom.giturl]
|
||||
# disabled = true
|
||||
description = "Display symbol for remote Git server"
|
||||
command = """
|
||||
GIT_REMOTE=$(command git ls-remote --get-url 2> /dev/null)
|
||||
if [[ "$GIT_REMOTE" =~ "github" ]]; then
|
||||
GIT_REMOTE_SYMBOL=" "
|
||||
elif [[ "$GIT_REMOTE" =~ "gitlab" ]]; then
|
||||
GIT_REMOTE_SYMBOL=" "
|
||||
elif [[ "$GIT_REMOTE" =~ "bitbucket" ]]; then
|
||||
GIT_REMOTE_SYMBOL=" "
|
||||
elif [[ "$GIT_REMOTE" =~ "git" ]]; then
|
||||
GIT_REMOTE_SYMBOL=" "
|
||||
else
|
||||
GIT_REMOTE_SYMBOL=" "
|
||||
fi
|
||||
echo "$GIT_REMOTE_SYMBOL "
|
||||
"""
|
||||
when = 'git rev-parse --is-inside-work-tree 2> /dev/null'
|
||||
format = "at $output"
|
||||
|
||||
[git_branch]
|
||||
symbol = "[](black) "
|
||||
# format = ' [$symbol$branch(:$remote_branch)]($style)[]'
|
||||
style = "fg:lavender bg:black"
|
||||
format = ' on [$symbol$branch]($style)[](black)'
|
||||
|
||||
[git_status]
|
||||
format = '[ $symbol($version) ]($style)'
|
||||
|
||||
[nodejs]
|
||||
symbol = ""
|
||||
format = '[ $symbol($version) ]($style)'
|
||||
|
||||
[c]
|
||||
symbol = " "
|
||||
format = '[ $symbol($version) ]($style)'
|
||||
|
||||
[rust]
|
||||
symbol = ""
|
||||
format = '[ $symbol($version) ]($style)'
|
||||
|
||||
[golang]
|
||||
symbol = ""
|
||||
format = '[ $symbol($version) ]($style)'
|
||||
detect_files = ["go.mod"]
|
||||
|
||||
[php]
|
||||
symbol = ""
|
||||
format = '[ $symbol($version) ]($style)'
|
||||
|
||||
[java]
|
||||
symbol = " "
|
||||
format = '[ $symbol($version) ]($style)'
|
||||
|
||||
[kotlin]
|
||||
symbol = ""
|
||||
|
||||
format = '[ $symbol($version) ]($style)'
|
||||
|
||||
[haskell]
|
||||
symbol = ""
|
||||
|
||||
format = '[ $symbol($version) ]($style)'
|
||||
|
||||
[python]
|
||||
symbol = ""
|
||||
|
||||
format = '[ $symbol($version) ]($style)'
|
||||
|
||||
|
||||
[docker_context]
|
||||
symbol = ""
|
||||
format = '[ $symbol($version) ]($style)'
|
||||
|
||||
[time]
|
||||
disabled = true
|
||||
time_format = "%R"
|
||||
style = "bg:peach"
|
||||
format = '[[ $time ](fg:mantle bg:foam)]($style)'
|
||||
|
||||
[line_break]
|
||||
disabled = true
|
||||
|
||||
[character]
|
||||
disabled = false
|
||||
success_symbol = '[𝘹](bold fg:green)'
|
||||
error_symbol = '[𝘹](bold fg:red)'
|
||||
vimcmd_symbol = '[](bold fg:creen)'
|
||||
vimcmd_replace_one_symbol = '[](bold fg:purple)'
|
||||
vimcmd_replace_symbol = '[](bold fg:purple)'
|
||||
vimcmd_visual_symbol = '[](bold fg:lavender)'
|
||||
|
||||
|
||||
1
config/yazi/flavors/dracula.yazi
Submodule
1
config/yazi/flavors/dracula.yazi
Submodule
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 99b60fd76df4cce2778c7e6c611bfd733cf73866
|
||||
519
config/zellij/config.kdl
Normal file
519
config/zellij/config.kdl
Normal file
|
|
@ -0,0 +1,519 @@
|
|||
//
|
||||
// THIS FILE WAS AUTOGENERATED BY ZELLIJ, THE PREVIOUS FILE AT THIS LOCATION WAS COPIED TO: /home/p3ta/.config/zellij/config.kdl.bak
|
||||
//
|
||||
|
||||
keybinds clear-defaults=true {
|
||||
normal {
|
||||
bind "Alt left" { MoveFocusOrTab "left"; }
|
||||
bind "Alt down" { MoveFocus "down"; }
|
||||
bind "Alt up" { MoveFocus "up"; }
|
||||
bind "Alt right" { MoveFocusOrTab "right"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt [" { PreviousSwapLayout; }
|
||||
bind "Alt ]" { NextSwapLayout; }
|
||||
bind "Ctrl a" { SwitchToMode "tmux"; }
|
||||
bind "Alt f" { ToggleFloatingPanes; }
|
||||
bind "Alt h" { MoveFocusOrTab "left"; }
|
||||
bind "Alt j" { MoveFocus "down"; }
|
||||
bind "Alt k" { MoveFocus "up"; }
|
||||
bind "Alt l" { MoveFocusOrTab "right"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
}
|
||||
locked {
|
||||
bind "Ctrl g" { SwitchToMode "normal"; }
|
||||
}
|
||||
pane {
|
||||
bind "left" { MoveFocus "left"; }
|
||||
bind "down" { MoveFocus "down"; }
|
||||
bind "up" { MoveFocus "up"; }
|
||||
bind "right" { MoveFocus "right"; }
|
||||
bind "c" { SwitchToMode "renamepane"; PaneNameInput 0; }
|
||||
bind "d" { NewPane "down"; SwitchToMode "normal"; }
|
||||
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
|
||||
bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "h" { MoveFocus "left"; }
|
||||
bind "j" { MoveFocus "down"; }
|
||||
bind "k" { MoveFocus "up"; }
|
||||
bind "l" { MoveFocus "right"; }
|
||||
bind "n" { NewPane; SwitchToMode "normal"; }
|
||||
bind "p" { SwitchFocus; }
|
||||
bind "Ctrl p" { SwitchToMode "normal"; }
|
||||
bind "r" { NewPane "right"; SwitchToMode "normal"; }
|
||||
bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
|
||||
}
|
||||
tab {
|
||||
bind "left" { GoToPreviousTab; }
|
||||
bind "down" { GoToNextTab; }
|
||||
bind "up" { GoToPreviousTab; }
|
||||
bind "right" { GoToNextTab; }
|
||||
bind "[" { BreakPaneLeft; SwitchToMode "normal"; }
|
||||
bind "]" { BreakPaneRight; SwitchToMode "normal"; }
|
||||
bind "b" { BreakPane; SwitchToMode "normal"; }
|
||||
bind "h" { GoToPreviousTab; }
|
||||
bind "j" { GoToNextTab; }
|
||||
bind "k" { GoToPreviousTab; }
|
||||
bind "l" { GoToNextTab; }
|
||||
bind "n" { NewTab; SwitchToMode "normal"; }
|
||||
bind "r" { SwitchToMode "renametab"; TabNameInput 0; }
|
||||
bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "normal"; }
|
||||
bind "x" { CloseTab; SwitchToMode "normal"; }
|
||||
bind "tab" { ToggleTab; }
|
||||
}
|
||||
resize {
|
||||
bind "left" { Resize "Increase left"; }
|
||||
bind "down" { Resize "Increase down"; }
|
||||
bind "up" { Resize "Increase up"; }
|
||||
bind "right" { Resize "Increase right"; }
|
||||
bind "+" { Resize "Increase"; }
|
||||
bind "-" { Resize "Decrease"; }
|
||||
bind "=" { Resize "Increase"; }
|
||||
bind "H" { Resize "Decrease left"; }
|
||||
bind "J" { Resize "Decrease down"; }
|
||||
bind "K" { Resize "Decrease up"; }
|
||||
bind "L" { Resize "Decrease right"; }
|
||||
bind "h" { Resize "Increase left"; }
|
||||
bind "j" { Resize "Increase down"; }
|
||||
bind "k" { Resize "Increase up"; }
|
||||
bind "l" { Resize "Increase right"; }
|
||||
bind "Ctrl r" { SwitchToMode "normal"; }
|
||||
}
|
||||
move {
|
||||
bind "left" { MovePane "left"; }
|
||||
bind "down" { MovePane "down"; }
|
||||
bind "up" { MovePane "up"; }
|
||||
bind "right" { MovePane "right"; }
|
||||
bind "h" { MovePane "left"; }
|
||||
bind "j" { MovePane "down"; }
|
||||
bind "k" { MovePane "up"; }
|
||||
bind "l" { MovePane "right"; }
|
||||
bind "n" { MovePane; }
|
||||
bind "p" { MovePaneBackwards; }
|
||||
bind "Ctrl y" { SwitchToMode "normal"; }
|
||||
bind "tab" { MovePane; }
|
||||
}
|
||||
scroll {
|
||||
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||
bind "q" { SwitchToMode "normal"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
bind "enter" { Copy; SwitchToMode "normal"; }
|
||||
}
|
||||
search {
|
||||
bind "c" { SearchToggleOption "CaseSensitivity"; }
|
||||
bind "n" { Search "down"; }
|
||||
bind "o" { SearchToggleOption "WholeWord"; }
|
||||
bind "p" { Search "up"; }
|
||||
bind "w" { SearchToggleOption "Wrap"; }
|
||||
}
|
||||
session {
|
||||
bind "c" {
|
||||
LaunchOrFocusPlugin "configuration" {
|
||||
floating true
|
||||
move_to_focused_tab true
|
||||
}
|
||||
SwitchToMode "normal"
|
||||
}
|
||||
bind "Ctrl o" { SwitchToMode "normal"; }
|
||||
bind "p" {
|
||||
LaunchOrFocusPlugin "plugin-manager" {
|
||||
floating true
|
||||
move_to_focused_tab true
|
||||
}
|
||||
SwitchToMode "normal"
|
||||
}
|
||||
bind "w" {
|
||||
LaunchOrFocusPlugin "session-manager" {
|
||||
floating true
|
||||
move_to_focused_tab true
|
||||
}
|
||||
SwitchToMode "normal"
|
||||
}
|
||||
}
|
||||
shared_except "locked" {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
}
|
||||
shared_except "normal" "locked" "entersearch" "renametab" "renamepane" "prompt" {
|
||||
bind "esc" { SwitchToMode "normal"; }
|
||||
}
|
||||
shared_except "normal" "locked" "scroll" "entersearch" "search" "session" "prompt" {
|
||||
bind "enter" { SwitchToMode "normal"; }
|
||||
}
|
||||
shared_among "pane" "tmux" {
|
||||
bind "x" { CloseFocus; SwitchToMode "normal"; }
|
||||
}
|
||||
shared_among "tab" "tmux" {
|
||||
bind "1" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind "2" { GoToTab 2; SwitchToMode "normal"; }
|
||||
bind "3" { GoToTab 3; SwitchToMode "normal"; }
|
||||
bind "4" { GoToTab 4; SwitchToMode "normal"; }
|
||||
bind "5" { GoToTab 5; SwitchToMode "normal"; }
|
||||
bind "6" { GoToTab 6; SwitchToMode "normal"; }
|
||||
bind "7" { GoToTab 7; SwitchToMode "normal"; }
|
||||
bind "8" { GoToTab 8; SwitchToMode "normal"; }
|
||||
bind "9" { GoToTab 9; SwitchToMode "normal"; }
|
||||
}
|
||||
shared_among "scroll" "search" {
|
||||
bind "PageDown" { PageScrollDown; }
|
||||
bind "PageUp" { PageScrollUp; }
|
||||
bind "left" { PageScrollUp; }
|
||||
bind "down" { ScrollDown; }
|
||||
bind "up" { ScrollUp; }
|
||||
bind "right" { PageScrollDown; }
|
||||
bind "Ctrl b" { PageScrollUp; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "Ctrl f" { PageScrollDown; }
|
||||
bind "h" { PageScrollUp; }
|
||||
bind "j" { ScrollDown; }
|
||||
bind "k" { ScrollUp; }
|
||||
bind "l" { PageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
}
|
||||
entersearch {
|
||||
bind "Ctrl c" { SwitchToMode "scroll"; }
|
||||
bind "esc" { SwitchToMode "scroll"; }
|
||||
bind "enter" { SwitchToMode "search"; }
|
||||
}
|
||||
renametab {
|
||||
bind "esc" { UndoRenameTab; SwitchToMode "tab"; }
|
||||
}
|
||||
shared_among "renametab" "renamepane" {
|
||||
bind "Ctrl c" { SwitchToMode "normal"; }
|
||||
}
|
||||
renamepane {
|
||||
bind "esc" { UndoRenamePane; SwitchToMode "pane"; }
|
||||
}
|
||||
shared_among "session" "tmux" {
|
||||
bind "d" { Detach; }
|
||||
}
|
||||
tmux {
|
||||
bind "left" { MoveFocus "left"; SwitchToMode "normal"; }
|
||||
bind "down" { MoveFocus "down"; SwitchToMode "normal"; }
|
||||
bind "up" { MoveFocus "up"; SwitchToMode "normal"; }
|
||||
bind "right" { MoveFocus "right"; SwitchToMode "normal"; }
|
||||
bind "space" { NextSwapLayout; SwitchToMode "normal"; }
|
||||
bind "!" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||
bind "&" { CloseTab; SwitchToMode "normal"; }
|
||||
bind "," { SwitchToMode "renametab"; }
|
||||
bind "0" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind ";" { FocusNextPane; SwitchToMode "normal"; }
|
||||
bind "N" { GoToNextTab; SwitchToMode "normal"; }
|
||||
bind "P" { SwitchToMode "pane"; }
|
||||
bind "Q" { Quit; }
|
||||
bind "[" { SwitchToMode "scroll"; }
|
||||
bind "a" { Write 1; SwitchToMode "normal"; }
|
||||
bind "Ctrl a" { Write 1; SwitchToMode "normal"; }
|
||||
bind "c" { NewTab; SwitchToMode "normal"; }
|
||||
bind "h" { MoveFocus "left"; SwitchToMode "normal"; }
|
||||
bind "j" { MoveFocus "down"; SwitchToMode "normal"; }
|
||||
bind "k" { MoveFocus "up"; SwitchToMode "normal"; }
|
||||
bind "l" { MoveFocus "right"; SwitchToMode "normal"; }
|
||||
bind "m" { NewPane "down"; SwitchToMode "normal"; }
|
||||
bind "n" { NewPane "right"; SwitchToMode "normal"; }
|
||||
bind "o" { SwitchFocus; SwitchToMode "normal"; }
|
||||
bind "p" { GoToPreviousTab; SwitchToMode "normal"; }
|
||||
bind "r" { SwitchToMode "resize"; }
|
||||
bind "s" { SwitchToMode "session"; }
|
||||
bind "t" { SwitchToMode "tab"; }
|
||||
bind "w" { SwitchToMode "tab"; }
|
||||
bind "y" { SwitchToMode "move"; }
|
||||
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "{" { MoveFocus "left"; SwitchToMode "normal"; }
|
||||
bind "}" { MoveFocus "right"; SwitchToMode "normal"; }
|
||||
}
|
||||
}
|
||||
|
||||
// Plugin aliases - can be used to change the implementation of Zellij
|
||||
// changing these requires a restart to take effect
|
||||
plugins {
|
||||
about location="zellij:about"
|
||||
compact-bar location="zellij:compact-bar"
|
||||
configuration location="zellij:configuration"
|
||||
filepicker location="zellij:strider" {
|
||||
cwd "/"
|
||||
}
|
||||
plugin-manager location="zellij:plugin-manager"
|
||||
session-manager location="zellij:session-manager"
|
||||
status-bar location="zellij:status-bar"
|
||||
strider location="zellij:strider"
|
||||
tab-bar location="zellij:tab-bar"
|
||||
welcome-screen location="zellij:session-manager" {
|
||||
welcome_screen true
|
||||
}
|
||||
}
|
||||
|
||||
// Plugins to load in the background when a new session starts
|
||||
// eg. "file:/path/to/my-plugin.wasm"
|
||||
// eg. "https://example.com/my-plugin.wasm"
|
||||
load_plugins {
|
||||
}
|
||||
ui {
|
||||
pane_frames {
|
||||
rounded_corners true
|
||||
}
|
||||
}
|
||||
web_client {
|
||||
font "monospace"
|
||||
}
|
||||
|
||||
// Use a simplified UI without special fonts (arrow glyphs)
|
||||
// Options:
|
||||
// - true
|
||||
// - false (Default)
|
||||
//
|
||||
simplified_ui false
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
theme "tokyo-night"
|
||||
|
||||
// Choose the base input mode of zellij.
|
||||
// Default: normal
|
||||
//
|
||||
default_mode "normal"
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
//
|
||||
// default_shell "fish"
|
||||
|
||||
// Choose the path to override cwd that zellij will use for opening new panes
|
||||
//
|
||||
// default_cwd "/tmp"
|
||||
|
||||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
//
|
||||
default_layout "default"
|
||||
|
||||
// The folder in which Zellij will look for layouts
|
||||
// (Requires restart)
|
||||
//
|
||||
// layout_dir "/tmp"
|
||||
|
||||
// The folder in which Zellij will look for themes
|
||||
// (Requires restart)
|
||||
//
|
||||
// theme_dir "/tmp"
|
||||
|
||||
// Toggle enabling the mouse mode.
|
||||
// On certain configurations, or terminals this could
|
||||
// potentially interfere with copying text.
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
mouse_mode true
|
||||
|
||||
// Toggle having pane frames around the panes
|
||||
// Options:
|
||||
// - true (default, enabled)
|
||||
// - false
|
||||
//
|
||||
pane_frames true
|
||||
|
||||
// When attaching to an existing session with other users,
|
||||
// should the session be mirrored (true)
|
||||
// or should each user have their own cursor (false)
|
||||
// (Requires restart)
|
||||
// Default: false
|
||||
//
|
||||
mirror_session false
|
||||
|
||||
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
// eg. when terminal window with an active zellij session is closed
|
||||
// (Requires restart)
|
||||
// Options:
|
||||
// - detach (Default)
|
||||
// - quit
|
||||
//
|
||||
on_force_close "detach"
|
||||
|
||||
// Configure the scroll back buffer size
|
||||
// This is the number of lines zellij stores for each pane in the scroll back
|
||||
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
// (Requires restart)
|
||||
// Valid values: positive integers
|
||||
// Default value: 10000
|
||||
//
|
||||
scroll_buffer_size 10000
|
||||
|
||||
// Provide a command to execute when copying text. The text will be piped to
|
||||
// the stdin of the program to perform the copy. This can be used with
|
||||
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
// that will be used by default if this option is not set.
|
||||
// Examples:
|
||||
//
|
||||
// copy_command "xclip -selection clipboard" // x11
|
||||
// copy_command "wl-copy" // wayland
|
||||
// copy_command "pbcopy" // osx
|
||||
//
|
||||
// copy_command "pbcopy"
|
||||
|
||||
// Choose the destination for copied text
|
||||
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
// Does not apply when using copy_command.
|
||||
// Options:
|
||||
// - system (default)
|
||||
// - primary
|
||||
//
|
||||
// copy_clipboard "primary"
|
||||
|
||||
// Enable automatic copying (and clearing) of selection when releasing mouse
|
||||
// Default: true
|
||||
//
|
||||
copy_on_select true
|
||||
|
||||
// Path to the default editor to use to edit pane scrollbuffer
|
||||
// Default: $EDITOR or $VISUAL
|
||||
// scrollback_editor "/usr/bin/vim"
|
||||
|
||||
// A fixed name to always give the Zellij session.
|
||||
// Consider also setting `attach_to_session true,`
|
||||
// otherwise this will error if such a session exists.
|
||||
// Default: <RANDOM>
|
||||
//
|
||||
// session_name "My singleton session"
|
||||
|
||||
// When `session_name` is provided, attaches to that session
|
||||
// if it is already running or creates it otherwise.
|
||||
// Default: false
|
||||
//
|
||||
// attach_to_session true
|
||||
|
||||
// Toggle between having Zellij lay out panes according to a predefined set of layouts whenever possible
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
auto_layout true
|
||||
|
||||
// Whether sessions should be serialized to the cache folder (including their tabs/panes, cwds and running commands) so that they can later be resurrected
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
session_serialization true
|
||||
|
||||
// Whether pane viewports are serialized along with the session, default is false
|
||||
// Options:
|
||||
// - true
|
||||
// - false (default)
|
||||
//
|
||||
serialize_pane_viewport false
|
||||
|
||||
// Scrollback lines to serialize along with the pane viewport when serializing sessions, 0
|
||||
// defaults to the scrollback size. If this number is higher than the scrollback size, it will
|
||||
// also default to the scrollback size. This does nothing if `serialize_pane_viewport` is not true.
|
||||
//
|
||||
scrollback_lines_to_serialize 10000
|
||||
|
||||
// Enable or disable the rendering of styled and colored underlines (undercurl).
|
||||
// May need to be disabled for certain unsupported terminals
|
||||
// (Requires restart)
|
||||
// Default: true
|
||||
//
|
||||
styled_underlines true
|
||||
|
||||
// How often in seconds sessions are serialized
|
||||
//
|
||||
// serialization_interval 10000
|
||||
|
||||
// Enable or disable writing of session metadata to disk (if disabled, other sessions might not know
|
||||
// metadata info on this session)
|
||||
// (Requires restart)
|
||||
// Default: false
|
||||
//
|
||||
disable_session_metadata false
|
||||
|
||||
// Enable or disable support for the enhanced Kitty Keyboard Protocol (the host terminal must also support it)
|
||||
// (Requires restart)
|
||||
// Default: true (if the host terminal supports it)
|
||||
//
|
||||
support_kitty_keyboard_protocol true
|
||||
// Whether to make sure a local web server is running when a new Zellij session starts.
|
||||
// This web server will allow creating new sessions and attaching to existing ones that have
|
||||
// opted in to being shared in the browser.
|
||||
// When enabled, navigate to http://127.0.0.1:8082
|
||||
// (Requires restart)
|
||||
//
|
||||
// Note: a local web server can still be manually started from within a Zellij session or from the CLI.
|
||||
// If this is not desired, one can use a version of Zellij compiled without
|
||||
// `web_server_capability`
|
||||
//
|
||||
// Possible values:
|
||||
// - true
|
||||
// - false
|
||||
// Default: false
|
||||
//
|
||||
web_server false
|
||||
// Whether to allow sessions started in the terminal to be shared through a local web server, assuming one is
|
||||
// running (see the `web_server` option for more details).
|
||||
// (Requires restart)
|
||||
//
|
||||
// Note: This is an administrative separation and not intended as a security measure.
|
||||
//
|
||||
// Possible values:
|
||||
// - "on" (allow web sharing through the local web server if it
|
||||
// is online)
|
||||
// - "off" (do not allow web sharing unless sessions explicitly opt-in to it)
|
||||
// - "disabled" (do not allow web sharing and do not permit sessions started in the terminal to opt-in to it)
|
||||
// Default: "off"
|
||||
//
|
||||
web_sharing "off"
|
||||
// A path to a certificate file to be used when setting up the web client to serve the
|
||||
// connection over HTTPs
|
||||
//
|
||||
// web_server_cert "/path/to/cert.pem"
|
||||
// A path to a key file to be used when setting up the web client to serve the
|
||||
// connection over HTTPs
|
||||
//
|
||||
// web_server_key "/path/to/key.pem"
|
||||
/// Whether to enforce https connections to the web server when it is bound to localhost
|
||||
/// (127.0.0.0/8)
|
||||
///
|
||||
/// Note: https is ALWAYS enforced when bound to non-local interfaces
|
||||
///
|
||||
/// Default: false
|
||||
//
|
||||
enforce_https_for_localhost false
|
||||
|
||||
// Whether to stack panes when resizing beyond a certain size
|
||||
// Default: true
|
||||
//
|
||||
stacked_resize true
|
||||
|
||||
// Whether to show tips on startup
|
||||
// Default: true
|
||||
//
|
||||
show_startup_tips false
|
||||
|
||||
// Whether to show release notes on first version run
|
||||
// Default: true
|
||||
//
|
||||
show_release_notes true
|
||||
|
||||
// Whether to enable mouse hover effects and pane grouping functionality
|
||||
// default is true
|
||||
advanced_mouse_actions true
|
||||
|
||||
// The ip address the web server should listen on when it starts
|
||||
// Default: "127.0.0.1"
|
||||
// (Requires restart)
|
||||
web_server_ip "127.0.0.1"
|
||||
|
||||
// The port the web server should listen on when it starts
|
||||
// Default: 8082
|
||||
// (Requires restart)
|
||||
web_server_port 8082
|
||||
|
||||
// A command to run (will be wrapped with sh -c and provided the RESURRECT_COMMAND env variable)
|
||||
// after Zellij attempts to discover a command inside a pane when resurrecting sessions, the STDOUT
|
||||
// of this command will be used instead of the discovered RESURRECT_COMMAND
|
||||
// can be useful for removing wrappers around commands
|
||||
// Note: be sure to escape backslashes and similar characters properly
|
||||
// post_command_discovery_hook "echo $RESURRECT_COMMAND | sed <your_regex_here>"
|
||||
2
config/zellij/get-tun0-ip.sh
Normal file
2
config/zellij/get-tun0-ip.sh
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
#!/bin/bash
|
||||
ip -o -4 addr show dev tun0 2>/dev/null | awk '{print $4}' | cut -d/ -f1 || echo 'down'
|
||||
59
config/zellij/layouts/default.kdl
Normal file
59
config/zellij/layouts/default.kdl
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
layout {
|
||||
default_tab_template {
|
||||
children
|
||||
pane size=1 borderless=true {
|
||||
plugin location="file:/home/p3ta/.config/zellij/plugins/zjstatus.wasm" {
|
||||
format_left "{mode} #[fg=#7aa2f7,bold] {session} #[fg=#565f89]│ #[fg=#7dcfff] {command_pwd}"
|
||||
format_center "{tabs}"
|
||||
format_right "#[fg=#7aa2f7]tun0: {command_ip} #[fg=#565f89]│ #[fg=#bb9af7] {datetime}"
|
||||
|
||||
// Mode indicators with hints
|
||||
mode_normal "#[bg=#9ece6a,fg=#1a1b26,bold] NORMAL "
|
||||
mode_locked "#[bg=#f7768e,fg=#1a1b26,bold] CMD #[bg=#1a1b26,fg=#a9b1d6] c:tab n:→ m:↓ x:close z:zoom R:resize w:float hjkl:nav p/N:tab r:rename [:scroll d:detach"
|
||||
mode_pane "#[bg=#7aa2f7,fg=#1a1b26,bold] PANE #[bg=#1a1b26,fg=#a9b1d6] hjkl:navigate Esc/q:exit"
|
||||
mode_tab "#[bg=#bb9af7,fg=#1a1b26,bold] TAB #[bg=#1a1b26,fg=#a9b1d6] n:new x:close r:rename hl:navigate Esc/q:exit"
|
||||
mode_scroll "#[bg=#7dcfff,fg=#1a1b26,bold] SCROLL #[bg=#1a1b26,fg=#a9b1d6] jk/↑↓:line du:half Ctrl-f/b:page g/G:top/bot Esc/q:exit"
|
||||
mode_enter_search "#[bg=#9ece6a,fg=#1a1b26,bold] SEARCH #[bg=#1a1b26,fg=#a9b1d6] type to search, Enter:start Esc:cancel"
|
||||
mode_search "#[bg=#9ece6a,fg=#1a1b26,bold] SEARCH #[bg=#1a1b26,fg=#a9b1d6] n:next p:prev c:case w:wrap Esc/q:exit"
|
||||
mode_resize "#[bg=#e0af68,fg=#1a1b26,bold] RESIZE #[bg=#1a1b26,fg=#a9b1d6] hjkl/←↓↑→:resize Esc/q:exit"
|
||||
mode_rename_tab "#[bg=#bb9af7,fg=#1a1b26,bold] RENAME TAB #[bg=#1a1b26,fg=#a9b1d6] type name, Enter:confirm Esc:cancel"
|
||||
mode_rename_pane "#[bg=#bb9af7,fg=#1a1b26,bold] RENAME PANE #[bg=#1a1b26,fg=#a9b1d6] type name, Enter:confirm Esc:cancel"
|
||||
mode_move "#[bg=#7dcfff,fg=#1a1b26,bold] MOVE #[bg=#1a1b26,fg=#a9b1d6] hjkl:move pane Esc/q:exit"
|
||||
mode_session "#[bg=#bb9af7,fg=#1a1b26,bold] SESSION #[bg=#1a1b26,fg=#a9b1d6] d:detach Esc/q:exit"
|
||||
mode_prompt "#[bg=#7aa2f7,fg=#1a1b26,bold] PROMPT "
|
||||
|
||||
// Tab styling
|
||||
tab_normal "#[fg=#a9b1d6] {index}: {name} "
|
||||
tab_normal_fullscreen "#[fg=#a9b1d6] {index}: {name} "
|
||||
tab_normal_sync "#[fg=#a9b1d6] {index}: {name} "
|
||||
tab_active "#[fg=#1a1b26,bg=#7aa2f7,bold] {index}: {name} "
|
||||
tab_active_fullscreen "#[fg=#1a1b26,bg=#7aa2f7,bold] {index}: {name} "
|
||||
tab_active_sync "#[fg=#1a1b26,bg=#7aa2f7,bold] {index}: {name} "
|
||||
tab_separator "#[fg=#565f89]│"
|
||||
|
||||
// Current working directory
|
||||
command_pwd_command "pwd | sed 's|^'$HOME'|~|' | awk -F'/' '{if (length($0) > 32) {if (NF>4) print $1\"/\"$2\"/…/\"$(NF-1)\"/\"$NF; else print $0} else print $0}'"
|
||||
command_pwd_interval "2"
|
||||
command_pwd_format "{stdout}"
|
||||
command_pwd_rendermode "dynamic"
|
||||
|
||||
// tun0 IP address
|
||||
command_ip_command "/home/p3ta/.config/zellij/scripts/get-tun0-ip.sh"
|
||||
command_ip_interval "5"
|
||||
command_ip_format "{stdout}"
|
||||
command_ip_rendermode "dynamic"
|
||||
|
||||
// Date and time
|
||||
datetime "{format}"
|
||||
datetime_format "%H:%M"
|
||||
datetime_timezone "America/Los_Angeles"
|
||||
|
||||
hide_frame_for_single_pane "false"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
tab name="main" focus=true {
|
||||
pane
|
||||
}
|
||||
}
|
||||
BIN
config/zellij/plugins/zjstatus.wasm
Normal file
BIN
config/zellij/plugins/zjstatus.wasm
Normal file
Binary file not shown.
2
config/zellij/scripts/get-tun0-ip.sh
Normal file
2
config/zellij/scripts/get-tun0-ip.sh
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
#!/bin/bash
|
||||
ip -o -4 addr show dev tun0 2>/dev/null | awk '{print $4}' | cut -d/ -f1 || echo 'down'
|
||||
15
config/zellij/themes.kdl
Normal file
15
config/zellij/themes.kdl
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
themes {
|
||||
tokyo-night {
|
||||
fg "#c0caf5"
|
||||
bg "#1a1b26"
|
||||
black "#15161e"
|
||||
red "#f7768e"
|
||||
green "#9ece6a"
|
||||
yellow "#e0af68"
|
||||
blue "#7aa2f7"
|
||||
magenta "#bb9af7"
|
||||
cyan "#7dcfff"
|
||||
white "#a9b1d6"
|
||||
}
|
||||
}
|
||||
|
||||
519
config/zellij/working.kdl
Normal file
519
config/zellij/working.kdl
Normal file
|
|
@ -0,0 +1,519 @@
|
|||
//
|
||||
// THIS FILE WAS AUTOGENERATED BY ZELLIJ, THE PREVIOUS FILE AT THIS LOCATION WAS COPIED TO: /home/p3ta/.config/zellij/config.kdl.bak
|
||||
//
|
||||
|
||||
keybinds clear-defaults=true {
|
||||
normal {
|
||||
bind "Alt left" { MoveFocusOrTab "left"; }
|
||||
bind "Alt down" { MoveFocus "down"; }
|
||||
bind "Alt up" { MoveFocus "up"; }
|
||||
bind "Alt right" { MoveFocusOrTab "right"; }
|
||||
bind "Alt +" { Resize "Increase"; }
|
||||
bind "Alt -" { Resize "Decrease"; }
|
||||
bind "Alt =" { Resize "Increase"; }
|
||||
bind "Alt [" { PreviousSwapLayout; }
|
||||
bind "Alt ]" { NextSwapLayout; }
|
||||
bind "Ctrl a" { SwitchToMode "tmux"; }
|
||||
bind "Alt f" { ToggleFloatingPanes; }
|
||||
bind "Alt h" { MoveFocusOrTab "left"; }
|
||||
bind "Alt j" { MoveFocus "down"; }
|
||||
bind "Alt k" { MoveFocus "up"; }
|
||||
bind "Alt l" { MoveFocusOrTab "right"; }
|
||||
bind "Alt n" { NewPane; }
|
||||
}
|
||||
locked {
|
||||
bind "Ctrl g" { SwitchToMode "normal"; }
|
||||
}
|
||||
pane {
|
||||
bind "left" { MoveFocus "left"; }
|
||||
bind "down" { MoveFocus "down"; }
|
||||
bind "up" { MoveFocus "up"; }
|
||||
bind "right" { MoveFocus "right"; }
|
||||
bind "c" { SwitchToMode "renamepane"; PaneNameInput 0; }
|
||||
bind "d" { NewPane "down"; SwitchToMode "normal"; }
|
||||
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
|
||||
bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "h" { MoveFocus "left"; }
|
||||
bind "j" { MoveFocus "down"; }
|
||||
bind "k" { MoveFocus "up"; }
|
||||
bind "l" { MoveFocus "right"; }
|
||||
bind "n" { NewPane; SwitchToMode "normal"; }
|
||||
bind "p" { SwitchFocus; }
|
||||
bind "Ctrl p" { SwitchToMode "normal"; }
|
||||
bind "r" { NewPane "right"; SwitchToMode "normal"; }
|
||||
bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
|
||||
}
|
||||
tab {
|
||||
bind "left" { GoToPreviousTab; }
|
||||
bind "down" { GoToNextTab; }
|
||||
bind "up" { GoToPreviousTab; }
|
||||
bind "right" { GoToNextTab; }
|
||||
bind "[" { BreakPaneLeft; SwitchToMode "normal"; }
|
||||
bind "]" { BreakPaneRight; SwitchToMode "normal"; }
|
||||
bind "b" { BreakPane; SwitchToMode "normal"; }
|
||||
bind "h" { GoToPreviousTab; }
|
||||
bind "j" { GoToNextTab; }
|
||||
bind "k" { GoToPreviousTab; }
|
||||
bind "l" { GoToNextTab; }
|
||||
bind "n" { NewTab; SwitchToMode "normal"; }
|
||||
bind "r" { SwitchToMode "renametab"; TabNameInput 0; }
|
||||
bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
||||
bind "Ctrl t" { SwitchToMode "normal"; }
|
||||
bind "x" { CloseTab; SwitchToMode "normal"; }
|
||||
bind "tab" { ToggleTab; }
|
||||
}
|
||||
resize {
|
||||
bind "left" { Resize "Increase left"; }
|
||||
bind "down" { Resize "Increase down"; }
|
||||
bind "up" { Resize "Increase up"; }
|
||||
bind "right" { Resize "Increase right"; }
|
||||
bind "+" { Resize "Increase"; }
|
||||
bind "-" { Resize "Decrease"; }
|
||||
bind "=" { Resize "Increase"; }
|
||||
bind "H" { Resize "Decrease left"; }
|
||||
bind "J" { Resize "Decrease down"; }
|
||||
bind "K" { Resize "Decrease up"; }
|
||||
bind "L" { Resize "Decrease right"; }
|
||||
bind "h" { Resize "Increase left"; }
|
||||
bind "j" { Resize "Increase down"; }
|
||||
bind "k" { Resize "Increase up"; }
|
||||
bind "l" { Resize "Increase right"; }
|
||||
bind "Ctrl r" { SwitchToMode "normal"; }
|
||||
}
|
||||
move {
|
||||
bind "left" { MovePane "left"; }
|
||||
bind "down" { MovePane "down"; }
|
||||
bind "up" { MovePane "up"; }
|
||||
bind "right" { MovePane "right"; }
|
||||
bind "h" { MovePane "left"; }
|
||||
bind "j" { MovePane "down"; }
|
||||
bind "k" { MovePane "up"; }
|
||||
bind "l" { MovePane "right"; }
|
||||
bind "n" { MovePane; }
|
||||
bind "p" { MovePaneBackwards; }
|
||||
bind "Ctrl y" { SwitchToMode "normal"; }
|
||||
bind "tab" { MovePane; }
|
||||
}
|
||||
scroll {
|
||||
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||
bind "q" { SwitchToMode "normal"; }
|
||||
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
|
||||
bind "enter" { Copy; SwitchToMode "normal"; }
|
||||
}
|
||||
search {
|
||||
bind "c" { SearchToggleOption "CaseSensitivity"; }
|
||||
bind "n" { Search "down"; }
|
||||
bind "o" { SearchToggleOption "WholeWord"; }
|
||||
bind "p" { Search "up"; }
|
||||
bind "w" { SearchToggleOption "Wrap"; }
|
||||
}
|
||||
session {
|
||||
bind "c" {
|
||||
LaunchOrFocusPlugin "configuration" {
|
||||
floating true
|
||||
move_to_focused_tab true
|
||||
}
|
||||
SwitchToMode "normal"
|
||||
}
|
||||
bind "Ctrl o" { SwitchToMode "normal"; }
|
||||
bind "p" {
|
||||
LaunchOrFocusPlugin "plugin-manager" {
|
||||
floating true
|
||||
move_to_focused_tab true
|
||||
}
|
||||
SwitchToMode "normal"
|
||||
}
|
||||
bind "w" {
|
||||
LaunchOrFocusPlugin "session-manager" {
|
||||
floating true
|
||||
move_to_focused_tab true
|
||||
}
|
||||
SwitchToMode "normal"
|
||||
}
|
||||
}
|
||||
shared_except "locked" {
|
||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||
}
|
||||
shared_except "normal" "locked" "entersearch" "renametab" "renamepane" "prompt" {
|
||||
bind "esc" { SwitchToMode "normal"; }
|
||||
}
|
||||
shared_except "normal" "locked" "scroll" "entersearch" "search" "session" "prompt" {
|
||||
bind "enter" { SwitchToMode "normal"; }
|
||||
}
|
||||
shared_among "pane" "tmux" {
|
||||
bind "x" { CloseFocus; SwitchToMode "normal"; }
|
||||
}
|
||||
shared_among "tab" "tmux" {
|
||||
bind "1" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind "2" { GoToTab 2; SwitchToMode "normal"; }
|
||||
bind "3" { GoToTab 3; SwitchToMode "normal"; }
|
||||
bind "4" { GoToTab 4; SwitchToMode "normal"; }
|
||||
bind "5" { GoToTab 5; SwitchToMode "normal"; }
|
||||
bind "6" { GoToTab 6; SwitchToMode "normal"; }
|
||||
bind "7" { GoToTab 7; SwitchToMode "normal"; }
|
||||
bind "8" { GoToTab 8; SwitchToMode "normal"; }
|
||||
bind "9" { GoToTab 9; SwitchToMode "normal"; }
|
||||
}
|
||||
shared_among "scroll" "search" {
|
||||
bind "PageDown" { PageScrollDown; }
|
||||
bind "PageUp" { PageScrollUp; }
|
||||
bind "left" { PageScrollUp; }
|
||||
bind "down" { ScrollDown; }
|
||||
bind "up" { ScrollUp; }
|
||||
bind "right" { PageScrollDown; }
|
||||
bind "Ctrl b" { PageScrollUp; }
|
||||
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||
bind "d" { HalfPageScrollDown; }
|
||||
bind "Ctrl f" { PageScrollDown; }
|
||||
bind "h" { PageScrollUp; }
|
||||
bind "j" { ScrollDown; }
|
||||
bind "k" { ScrollUp; }
|
||||
bind "l" { PageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
}
|
||||
entersearch {
|
||||
bind "Ctrl c" { SwitchToMode "scroll"; }
|
||||
bind "esc" { SwitchToMode "scroll"; }
|
||||
bind "enter" { SwitchToMode "search"; }
|
||||
}
|
||||
renametab {
|
||||
bind "esc" { UndoRenameTab; SwitchToMode "tab"; }
|
||||
}
|
||||
shared_among "renametab" "renamepane" {
|
||||
bind "Ctrl c" { SwitchToMode "normal"; }
|
||||
}
|
||||
renamepane {
|
||||
bind "esc" { UndoRenamePane; SwitchToMode "pane"; }
|
||||
}
|
||||
shared_among "session" "tmux" {
|
||||
bind "d" { Detach; }
|
||||
}
|
||||
tmux {
|
||||
bind "left" { MoveFocus "left"; SwitchToMode "normal"; }
|
||||
bind "down" { MoveFocus "down"; SwitchToMode "normal"; }
|
||||
bind "up" { MoveFocus "up"; SwitchToMode "normal"; }
|
||||
bind "right" { MoveFocus "right"; SwitchToMode "normal"; }
|
||||
bind "space" { NextSwapLayout; SwitchToMode "normal"; }
|
||||
bind "!" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||
bind "&" { CloseTab; SwitchToMode "normal"; }
|
||||
bind "," { SwitchToMode "renametab"; }
|
||||
bind "0" { GoToTab 1; SwitchToMode "normal"; }
|
||||
bind ";" { FocusNextPane; SwitchToMode "normal"; }
|
||||
bind "N" { GoToNextTab; SwitchToMode "normal"; }
|
||||
bind "P" { SwitchToMode "pane"; }
|
||||
bind "Q" { Quit; }
|
||||
bind "[" { SwitchToMode "scroll"; }
|
||||
bind "a" { Write 1; SwitchToMode "normal"; }
|
||||
bind "Ctrl a" { Write 1; SwitchToMode "normal"; }
|
||||
bind "c" { NewTab; SwitchToMode "normal"; }
|
||||
bind "h" { MoveFocus "left"; SwitchToMode "normal"; }
|
||||
bind "j" { MoveFocus "down"; SwitchToMode "normal"; }
|
||||
bind "k" { MoveFocus "up"; SwitchToMode "normal"; }
|
||||
bind "l" { MoveFocus "right"; SwitchToMode "normal"; }
|
||||
bind "m" { NewPane "down"; SwitchToMode "normal"; }
|
||||
bind "n" { NewPane "right"; SwitchToMode "normal"; }
|
||||
bind "o" { SwitchFocus; SwitchToMode "normal"; }
|
||||
bind "p" { GoToPreviousTab; SwitchToMode "normal"; }
|
||||
bind "r" { SwitchToMode "resize"; }
|
||||
bind "s" { SwitchToMode "session"; }
|
||||
bind "t" { SwitchToMode "tab"; }
|
||||
bind "w" { SwitchToMode "tab"; }
|
||||
bind "y" { SwitchToMode "move"; }
|
||||
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||
bind "{" { MoveFocus "left"; SwitchToMode "normal"; }
|
||||
bind "}" { MoveFocus "right"; SwitchToMode "normal"; }
|
||||
}
|
||||
}
|
||||
|
||||
// Plugin aliases - can be used to change the implementation of Zellij
|
||||
// changing these requires a restart to take effect
|
||||
plugins {
|
||||
about location="zellij:about"
|
||||
compact-bar location="zellij:compact-bar"
|
||||
configuration location="zellij:configuration"
|
||||
filepicker location="zellij:strider" {
|
||||
cwd "/"
|
||||
}
|
||||
plugin-manager location="zellij:plugin-manager"
|
||||
session-manager location="zellij:session-manager"
|
||||
status-bar location="zellij:status-bar"
|
||||
strider location="zellij:strider"
|
||||
tab-bar location="zellij:tab-bar"
|
||||
welcome-screen location="zellij:session-manager" {
|
||||
welcome_screen true
|
||||
}
|
||||
}
|
||||
|
||||
// Plugins to load in the background when a new session starts
|
||||
// eg. "file:/path/to/my-plugin.wasm"
|
||||
// eg. "https://example.com/my-plugin.wasm"
|
||||
load_plugins {
|
||||
}
|
||||
ui {
|
||||
pane_frames {
|
||||
rounded_corners true
|
||||
}
|
||||
}
|
||||
web_client {
|
||||
font "monospace"
|
||||
}
|
||||
|
||||
// Use a simplified UI without special fonts (arrow glyphs)
|
||||
// Options:
|
||||
// - true
|
||||
// - false (Default)
|
||||
//
|
||||
simplified_ui false
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
theme "tokyo-night"
|
||||
|
||||
// Choose the base input mode of zellij.
|
||||
// Default: normal
|
||||
//
|
||||
default_mode "normal"
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
//
|
||||
// default_shell "fish"
|
||||
|
||||
// Choose the path to override cwd that zellij will use for opening new panes
|
||||
//
|
||||
// default_cwd "/tmp"
|
||||
|
||||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
//
|
||||
default_layout "default"
|
||||
|
||||
// The folder in which Zellij will look for layouts
|
||||
// (Requires restart)
|
||||
//
|
||||
// layout_dir "/tmp"
|
||||
|
||||
// The folder in which Zellij will look for themes
|
||||
// (Requires restart)
|
||||
//
|
||||
// theme_dir "/tmp"
|
||||
|
||||
// Toggle enabling the mouse mode.
|
||||
// On certain configurations, or terminals this could
|
||||
// potentially interfere with copying text.
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
mouse_mode true
|
||||
|
||||
// Toggle having pane frames around the panes
|
||||
// Options:
|
||||
// - true (default, enabled)
|
||||
// - false
|
||||
//
|
||||
pane_frames true
|
||||
|
||||
// When attaching to an existing session with other users,
|
||||
// should the session be mirrored (true)
|
||||
// or should each user have their own cursor (false)
|
||||
// (Requires restart)
|
||||
// Default: false
|
||||
//
|
||||
mirror_session false
|
||||
|
||||
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
// eg. when terminal window with an active zellij session is closed
|
||||
// (Requires restart)
|
||||
// Options:
|
||||
// - detach (Default)
|
||||
// - quit
|
||||
//
|
||||
on_force_close "detach"
|
||||
|
||||
// Configure the scroll back buffer size
|
||||
// This is the number of lines zellij stores for each pane in the scroll back
|
||||
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
// (Requires restart)
|
||||
// Valid values: positive integers
|
||||
// Default value: 10000
|
||||
//
|
||||
scroll_buffer_size 10000
|
||||
|
||||
// Provide a command to execute when copying text. The text will be piped to
|
||||
// the stdin of the program to perform the copy. This can be used with
|
||||
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
// that will be used by default if this option is not set.
|
||||
// Examples:
|
||||
//
|
||||
// copy_command "xclip -selection clipboard" // x11
|
||||
// copy_command "wl-copy" // wayland
|
||||
// copy_command "pbcopy" // osx
|
||||
//
|
||||
// copy_command "pbcopy"
|
||||
|
||||
// Choose the destination for copied text
|
||||
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
// Does not apply when using copy_command.
|
||||
// Options:
|
||||
// - system (default)
|
||||
// - primary
|
||||
//
|
||||
// copy_clipboard "primary"
|
||||
|
||||
// Enable automatic copying (and clearing) of selection when releasing mouse
|
||||
// Default: true
|
||||
//
|
||||
copy_on_select true
|
||||
|
||||
// Path to the default editor to use to edit pane scrollbuffer
|
||||
// Default: $EDITOR or $VISUAL
|
||||
// scrollback_editor "/usr/bin/vim"
|
||||
|
||||
// A fixed name to always give the Zellij session.
|
||||
// Consider also setting `attach_to_session true,`
|
||||
// otherwise this will error if such a session exists.
|
||||
// Default: <RANDOM>
|
||||
//
|
||||
// session_name "My singleton session"
|
||||
|
||||
// When `session_name` is provided, attaches to that session
|
||||
// if it is already running or creates it otherwise.
|
||||
// Default: false
|
||||
//
|
||||
// attach_to_session true
|
||||
|
||||
// Toggle between having Zellij lay out panes according to a predefined set of layouts whenever possible
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
auto_layout true
|
||||
|
||||
// Whether sessions should be serialized to the cache folder (including their tabs/panes, cwds and running commands) so that they can later be resurrected
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
session_serialization true
|
||||
|
||||
// Whether pane viewports are serialized along with the session, default is false
|
||||
// Options:
|
||||
// - true
|
||||
// - false (default)
|
||||
//
|
||||
serialize_pane_viewport false
|
||||
|
||||
// Scrollback lines to serialize along with the pane viewport when serializing sessions, 0
|
||||
// defaults to the scrollback size. If this number is higher than the scrollback size, it will
|
||||
// also default to the scrollback size. This does nothing if `serialize_pane_viewport` is not true.
|
||||
//
|
||||
scrollback_lines_to_serialize 10000
|
||||
|
||||
// Enable or disable the rendering of styled and colored underlines (undercurl).
|
||||
// May need to be disabled for certain unsupported terminals
|
||||
// (Requires restart)
|
||||
// Default: true
|
||||
//
|
||||
styled_underlines true
|
||||
|
||||
// How often in seconds sessions are serialized
|
||||
//
|
||||
// serialization_interval 10000
|
||||
|
||||
// Enable or disable writing of session metadata to disk (if disabled, other sessions might not know
|
||||
// metadata info on this session)
|
||||
// (Requires restart)
|
||||
// Default: false
|
||||
//
|
||||
disable_session_metadata false
|
||||
|
||||
// Enable or disable support for the enhanced Kitty Keyboard Protocol (the host terminal must also support it)
|
||||
// (Requires restart)
|
||||
// Default: true (if the host terminal supports it)
|
||||
//
|
||||
support_kitty_keyboard_protocol true
|
||||
// Whether to make sure a local web server is running when a new Zellij session starts.
|
||||
// This web server will allow creating new sessions and attaching to existing ones that have
|
||||
// opted in to being shared in the browser.
|
||||
// When enabled, navigate to http://127.0.0.1:8082
|
||||
// (Requires restart)
|
||||
//
|
||||
// Note: a local web server can still be manually started from within a Zellij session or from the CLI.
|
||||
// If this is not desired, one can use a version of Zellij compiled without
|
||||
// `web_server_capability`
|
||||
//
|
||||
// Possible values:
|
||||
// - true
|
||||
// - false
|
||||
// Default: false
|
||||
//
|
||||
web_server false
|
||||
// Whether to allow sessions started in the terminal to be shared through a local web server, assuming one is
|
||||
// running (see the `web_server` option for more details).
|
||||
// (Requires restart)
|
||||
//
|
||||
// Note: This is an administrative separation and not intended as a security measure.
|
||||
//
|
||||
// Possible values:
|
||||
// - "on" (allow web sharing through the local web server if it
|
||||
// is online)
|
||||
// - "off" (do not allow web sharing unless sessions explicitly opt-in to it)
|
||||
// - "disabled" (do not allow web sharing and do not permit sessions started in the terminal to opt-in to it)
|
||||
// Default: "off"
|
||||
//
|
||||
web_sharing "off"
|
||||
// A path to a certificate file to be used when setting up the web client to serve the
|
||||
// connection over HTTPs
|
||||
//
|
||||
// web_server_cert "/path/to/cert.pem"
|
||||
// A path to a key file to be used when setting up the web client to serve the
|
||||
// connection over HTTPs
|
||||
//
|
||||
// web_server_key "/path/to/key.pem"
|
||||
/// Whether to enforce https connections to the web server when it is bound to localhost
|
||||
/// (127.0.0.0/8)
|
||||
///
|
||||
/// Note: https is ALWAYS enforced when bound to non-local interfaces
|
||||
///
|
||||
/// Default: false
|
||||
//
|
||||
enforce_https_for_localhost false
|
||||
|
||||
// Whether to stack panes when resizing beyond a certain size
|
||||
// Default: true
|
||||
//
|
||||
stacked_resize true
|
||||
|
||||
// Whether to show tips on startup
|
||||
// Default: true
|
||||
//
|
||||
show_startup_tips false
|
||||
|
||||
// Whether to show release notes on first version run
|
||||
// Default: true
|
||||
//
|
||||
show_release_notes true
|
||||
|
||||
// Whether to enable mouse hover effects and pane grouping functionality
|
||||
// default is true
|
||||
advanced_mouse_actions true
|
||||
|
||||
// The ip address the web server should listen on when it starts
|
||||
// Default: "127.0.0.1"
|
||||
// (Requires restart)
|
||||
web_server_ip "127.0.0.1"
|
||||
|
||||
// The port the web server should listen on when it starts
|
||||
// Default: 8082
|
||||
// (Requires restart)
|
||||
web_server_port 8082
|
||||
|
||||
// A command to run (will be wrapped with sh -c and provided the RESURRECT_COMMAND env variable)
|
||||
// after Zellij attempts to discover a command inside a pane when resurrecting sessions, the STDOUT
|
||||
// of this command will be used instead of the discovered RESURRECT_COMMAND
|
||||
// can be useful for removing wrappers around commands
|
||||
// Note: be sure to escape backslashes and similar characters properly
|
||||
// post_command_discovery_hook "echo $RESURRECT_COMMAND | sed <your_regex_here>"
|
||||
7
dotfiles/.bash_logout
Normal file
7
dotfiles/.bash_logout
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
# ~/.bash_logout: executed by bash(1) when login shell exits.
|
||||
|
||||
# when leaving the console clear the screen to increase privacy
|
||||
|
||||
if [ "$SHLVL" = 1 ]; then
|
||||
[ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
|
||||
fi
|
||||
157
dotfiles/.bashrc
Normal file
157
dotfiles/.bashrc
Normal file
|
|
@ -0,0 +1,157 @@
|
|||
# ~/.bashrc: executed by bash(1) for non-login shells.
|
||||
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
|
||||
# for examples
|
||||
|
||||
# If not running interactively, don't do anything
|
||||
case $- in
|
||||
*i*) ;;
|
||||
*) return;;
|
||||
esac
|
||||
|
||||
# don't put duplicate lines or lines starting with space in the history.
|
||||
# See bash(1) for more options
|
||||
HISTCONTROL=ignoreboth
|
||||
|
||||
# append to the history file, don't overwrite it
|
||||
shopt -s histappend
|
||||
|
||||
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
|
||||
HISTSIZE=1000
|
||||
HISTFILESIZE=2000
|
||||
|
||||
# check the window size after each command and, if necessary,
|
||||
# update the values of LINES and COLUMNS.
|
||||
shopt -s checkwinsize
|
||||
|
||||
# If set, the pattern "**" used in a pathname expansion context will
|
||||
# match all files and zero or more directories and subdirectories.
|
||||
#shopt -s globstar
|
||||
|
||||
# make less more friendly for non-text input files, see lesspipe(1)
|
||||
#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
|
||||
|
||||
# set variable identifying the chroot you work in (used in the prompt below)
|
||||
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
|
||||
debian_chroot=$(cat /etc/debian_chroot)
|
||||
fi
|
||||
|
||||
# set a fancy prompt (non-color, unless we know we "want" color)
|
||||
case "$TERM" in
|
||||
xterm-color|*-256color) color_prompt=yes;;
|
||||
esac
|
||||
|
||||
# uncomment for a colored prompt, if the terminal has the capability; turned
|
||||
# off by default to not distract the user: the focus in a terminal window
|
||||
# should be on the output of commands, not on the prompt
|
||||
force_color_prompt=yes
|
||||
|
||||
if [ -n "$force_color_prompt" ]; then
|
||||
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
|
||||
# We have color support; assume it's compliant with Ecma-48
|
||||
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
|
||||
# a case would tend to support setf rather than setaf.)
|
||||
color_prompt=yes
|
||||
else
|
||||
color_prompt=
|
||||
fi
|
||||
fi
|
||||
|
||||
# The following block is surrounded by two delimiters.
|
||||
# These delimiters must not be modified. Thanks.
|
||||
# START KALI CONFIG VARIABLES
|
||||
PROMPT_ALTERNATIVE=twoline
|
||||
NEWLINE_BEFORE_PROMPT=yes
|
||||
# STOP KALI CONFIG VARIABLES
|
||||
|
||||
if [ "$color_prompt" = yes ]; then
|
||||
# override default virtualenv indicator in prompt
|
||||
VIRTUAL_ENV_DISABLE_PROMPT=1
|
||||
|
||||
prompt_color='\[\033[;32m\]'
|
||||
info_color='\[\033[1;34m\]'
|
||||
prompt_symbol=㉿
|
||||
if [ "$EUID" -eq 0 ]; then # Change prompt colors for root user
|
||||
prompt_color='\[\033[;94m\]'
|
||||
info_color='\[\033[1;31m\]'
|
||||
# Skull emoji for root terminal
|
||||
#prompt_symbol=💀
|
||||
fi
|
||||
case "$PROMPT_ALTERNATIVE" in
|
||||
twoline)
|
||||
PS1=$prompt_color'┌──${debian_chroot:+($debian_chroot)──}${VIRTUAL_ENV:+(\[\033[0;1m\]$(basename $VIRTUAL_ENV)'$prompt_color')}('$info_color'\u'$prompt_symbol'\h'$prompt_color')-[\[\033[0;1m\]\w'$prompt_color']\n'$prompt_color'└─'$info_color'\$\[\033[0m\] ';;
|
||||
oneline)
|
||||
PS1='${VIRTUAL_ENV:+($(basename $VIRTUAL_ENV)) }${debian_chroot:+($debian_chroot)}'$info_color'\u@\h\[\033[00m\]:'$prompt_color'\[\033[01m\]\w\[\033[00m\]\$ ';;
|
||||
backtrack)
|
||||
PS1='${VIRTUAL_ENV:+($(basename $VIRTUAL_ENV)) }${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ';;
|
||||
esac
|
||||
unset prompt_color
|
||||
unset info_color
|
||||
unset prompt_symbol
|
||||
else
|
||||
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
|
||||
fi
|
||||
unset color_prompt force_color_prompt
|
||||
|
||||
# If this is an xterm set the title to user@host:dir
|
||||
case "$TERM" in
|
||||
xterm*|rxvt*|Eterm|aterm|kterm|gnome*|alacritty)
|
||||
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
[ "$NEWLINE_BEFORE_PROMPT" = yes ] && PROMPT_COMMAND="PROMPT_COMMAND=echo"
|
||||
|
||||
# enable color support of ls, less and man, and also add handy aliases
|
||||
if [ -x /usr/bin/dircolors ]; then
|
||||
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
|
||||
export LS_COLORS="$LS_COLORS:ow=30;44:" # fix ls color for folders with 777 permissions
|
||||
|
||||
alias ls='ls --color=auto'
|
||||
#alias dir='dir --color=auto'
|
||||
#alias vdir='vdir --color=auto'
|
||||
|
||||
alias grep='grep --color=auto'
|
||||
alias fgrep='fgrep --color=auto'
|
||||
alias egrep='egrep --color=auto'
|
||||
alias diff='diff --color=auto'
|
||||
alias ip='ip --color=auto'
|
||||
|
||||
export LESS_TERMCAP_mb=$'\E[1;31m' # begin blink
|
||||
export LESS_TERMCAP_md=$'\E[1;36m' # begin bold
|
||||
export LESS_TERMCAP_me=$'\E[0m' # reset bold/blink
|
||||
export LESS_TERMCAP_so=$'\E[01;33m' # begin reverse video
|
||||
export LESS_TERMCAP_se=$'\E[0m' # reset reverse video
|
||||
export LESS_TERMCAP_us=$'\E[1;32m' # begin underline
|
||||
export LESS_TERMCAP_ue=$'\E[0m' # reset underline
|
||||
fi
|
||||
|
||||
# colored GCC warnings and errors
|
||||
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
|
||||
|
||||
# some more ls aliases
|
||||
alias ll='ls -l'
|
||||
alias la='ls -A'
|
||||
alias l='ls -CF'
|
||||
|
||||
# Alias definitions.
|
||||
# You may want to put all your additions into a separate file like
|
||||
# ~/.bash_aliases, instead of adding them here directly.
|
||||
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
|
||||
|
||||
if [ -f ~/.bash_aliases ]; then
|
||||
. ~/.bash_aliases
|
||||
fi
|
||||
|
||||
# enable programmable completion features (you don't need to enable
|
||||
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
|
||||
# sources /etc/bash.bashrc).
|
||||
if ! shopt -oq posix; then
|
||||
if [ -f /usr/share/bash-completion/bash_completion ]; then
|
||||
. /usr/share/bash-completion/bash_completion
|
||||
elif [ -f /etc/bash_completion ]; then
|
||||
. /etc/bash_completion
|
||||
fi
|
||||
fi
|
||||
. "$HOME/.cargo/env"
|
||||
28
dotfiles/.profile
Normal file
28
dotfiles/.profile
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
# ~/.profile: executed by the command interpreter for login shells.
|
||||
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
|
||||
# exists.
|
||||
# see /usr/share/doc/bash/examples/startup-files for examples.
|
||||
# the files are located in the bash-doc package.
|
||||
|
||||
# the default umask is set in /etc/profile; for setting the umask
|
||||
# for ssh logins, install and configure the libpam-umask package.
|
||||
#umask 022
|
||||
|
||||
# if running bash
|
||||
if [ -n "$BASH_VERSION" ]; then
|
||||
# include .bashrc if it exists
|
||||
if [ -f "$HOME/.bashrc" ]; then
|
||||
. "$HOME/.bashrc"
|
||||
fi
|
||||
fi
|
||||
|
||||
# set PATH so it includes user's private bin if it exists
|
||||
if [ -d "$HOME/bin" ] ; then
|
||||
PATH="$HOME/bin:$PATH"
|
||||
fi
|
||||
|
||||
# set PATH so it includes user's private bin if it exists
|
||||
if [ -d "$HOME/.local/bin" ] ; then
|
||||
PATH="$HOME/.local/bin:$PATH"
|
||||
fi
|
||||
. "$HOME/.cargo/env"
|
||||
132
dotfiles/.zsh/completions/_uwu
Normal file
132
dotfiles/.zsh/completions/_uwu
Normal file
|
|
@ -0,0 +1,132 @@
|
|||
#compdef uwu-loot uwu-list uwu-pwned uwu-target uwu-export uwu-navi uwu-parse
|
||||
|
||||
# Zsh completion for uwu-* CTF tools
|
||||
|
||||
_uwu-loot() {
|
||||
_arguments \
|
||||
'1:machine:' \
|
||||
'2:username:' \
|
||||
'(-d --domain)'{-d,--domain}'[Domain name]:domain:' \
|
||||
'(-p --password)'{-p,--password}'[Password]:password:' \
|
||||
'(-H --hash)'{-H,--hash}'[Hash value]:hash:' \
|
||||
'(-t --hash-type)'{-t,--hash-type}'[Hash type]:type:(NTLM MD5 SHA256 SHA1 SHA512)' \
|
||||
'(-n --notes)'{-n,--notes}'[Notes]:notes:' \
|
||||
'(-h --help)'{-h,--help}'[Show help]'
|
||||
}
|
||||
|
||||
_uwu-list() {
|
||||
_arguments \
|
||||
'1:machine (optional):' \
|
||||
'(-s --selected)'{-s,--selected}'[Show only pwned and target]' \
|
||||
'(-h --help)'{-h,--help}'[Show help]'
|
||||
}
|
||||
|
||||
_uwu-pwned() {
|
||||
local -a subcmds
|
||||
subcmds=(
|
||||
'clear:Clear pwned status'
|
||||
'delete:Delete credential'
|
||||
)
|
||||
|
||||
_arguments \
|
||||
'1:id or subcommand:->idorcmd' \
|
||||
'2:id (for subcommands):' \
|
||||
'(-h --help)'{-h,--help}'[Show help]' \
|
||||
&& return 0
|
||||
|
||||
case $state in
|
||||
idorcmd)
|
||||
_alternative \
|
||||
'subcmds:subcommand:compadd -a subcmds' \
|
||||
'ids:credential id:'
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
_uwu-target() {
|
||||
local -a subcmds
|
||||
subcmds=(
|
||||
'clear:Clear target status'
|
||||
)
|
||||
|
||||
_arguments \
|
||||
'1:id or subcommand:->idorcmd' \
|
||||
'2:id (for subcommands):' \
|
||||
'(-h --help)'{-h,--help}'[Show help]' \
|
||||
&& return 0
|
||||
|
||||
case $state in
|
||||
idorcmd)
|
||||
_alternative \
|
||||
'subcmds:subcommand:compadd -a subcmds' \
|
||||
'ids:credential id:'
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
_uwu-export() {
|
||||
_arguments \
|
||||
'--show[Show variables without exporting]' \
|
||||
'(-h --help)'{-h,--help}'[Show help]'
|
||||
}
|
||||
|
||||
_uwu-navi() {
|
||||
local -a subcmds
|
||||
subcmds=(
|
||||
'show:Show currently selected credentials'
|
||||
'list:Show currently selected credentials'
|
||||
'load:Load and display credentials'
|
||||
'env:Output export commands for eval'
|
||||
'export:Output export commands for eval'
|
||||
)
|
||||
|
||||
_arguments \
|
||||
'1:subcommand:compadd -a subcmds' \
|
||||
'(-h --help)'{-h,--help}'[Show help]'
|
||||
}
|
||||
|
||||
_uwu-parse() {
|
||||
local -a parsers
|
||||
parsers=(
|
||||
'auto:Auto-detect parser type'
|
||||
'secretsdump:impacket-secretsdump output'
|
||||
'nxc:NetExec/CrackMapExec output'
|
||||
'cme:CrackMapExec output'
|
||||
'responder:Responder captured hashes'
|
||||
'hashcat:Hashcat potfile or --show'
|
||||
'john:John the Ripper output'
|
||||
'kerbrute:Kerbrute valid users'
|
||||
)
|
||||
|
||||
_arguments \
|
||||
'1:file:_files' \
|
||||
'(-m --machine)'{-m,--machine}'[Target machine]:machine:' \
|
||||
'(-d --domain)'{-d,--domain}'[Domain name]:domain:' \
|
||||
'(-t --type)'{-t,--type}'[Parser type]:type:compadd -a parsers' \
|
||||
'(-h --help)'{-h,--help}'[Show help]'
|
||||
}
|
||||
|
||||
# Main completion dispatcher
|
||||
case "$service" in
|
||||
uwu-loot)
|
||||
_uwu-loot "$@"
|
||||
;;
|
||||
uwu-list)
|
||||
_uwu-list "$@"
|
||||
;;
|
||||
uwu-pwned)
|
||||
_uwu-pwned "$@"
|
||||
;;
|
||||
uwu-target)
|
||||
_uwu-target "$@"
|
||||
;;
|
||||
uwu-export)
|
||||
_uwu-export "$@"
|
||||
;;
|
||||
uwu-navi)
|
||||
_uwu-navi "$@"
|
||||
;;
|
||||
uwu-parse)
|
||||
_uwu-parse "$@"
|
||||
;;
|
||||
esac
|
||||
1
dotfiles/.zshenv
Normal file
1
dotfiles/.zshenv
Normal file
|
|
@ -0,0 +1 @@
|
|||
. "$HOME/.cargo/env"
|
||||
164
dotfiles/.zshrc
Normal file
164
dotfiles/.zshrc
Normal file
|
|
@ -0,0 +1,164 @@
|
|||
# ═══════════════════════════════════════════════════════════════════
|
||||
# ZSH CONFIGURATION
|
||||
# ═══════════════════════════════════════════════════════════════════
|
||||
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
# OH-MY-ZSH SETTINGS
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
|
||||
# Plugins
|
||||
plugins=(
|
||||
git
|
||||
zsh-syntax-highlighting
|
||||
zsh-autosuggestions
|
||||
)
|
||||
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
# TERMINAL & EDITOR
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
export TERM=xterm-256color
|
||||
export EDITOR="nvim"
|
||||
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
# PATH CONFIGURATION
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
export PATH="$HOME/.cargo/bin:$PATH"
|
||||
export PATH="$HOME/go/bin:$PATH"
|
||||
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
# PROMPT & THEME
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
export STARSHIP_CONFIG=~/.config/starship.toml
|
||||
eval "$(starship init zsh)"
|
||||
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
# MODERN CLI TOOLS
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
|
||||
# Zoxide (better cd)
|
||||
eval "$(zoxide init zsh --cmd cd)"
|
||||
|
||||
# Bat - use Dracula theme
|
||||
export BAT_THEME="Dracula"
|
||||
|
||||
# FZF - Dracula theme
|
||||
export FZF_DEFAULT_OPTS="--color=fg:#f8f8f2,bg:#282a36,hl:#bd93f9 --color=fg+:#f8f8f2,bg+:#44475a,hl+:#bd93f9 --color=info:#ffb86c,prompt:#50fa7b,pointer:#ff79c6 --color=marker:#ff79c6,spinner:#ffb86c,header:#6272a4"
|
||||
export FZF_DEFAULT_COMMAND='fd --type f --hidden --follow --exclude .git'
|
||||
|
||||
# Eza colors
|
||||
export EZA_COLORS="da=1;34:gm=1;34"
|
||||
|
||||
# Delta (git diff)
|
||||
export DELTA_FEATURES="+side-by-side"
|
||||
|
||||
# Atuin
|
||||
if [ -f "$HOME/.atuin/bin/env" ]; then
|
||||
. "$HOME/.atuin/bin/env"
|
||||
fi
|
||||
|
||||
export ATUIN_NOBIND="true"
|
||||
eval "$(atuin init zsh)"
|
||||
bindkey '^r' _atuin_search_widget
|
||||
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
# ALIASES - FILE OPERATIONS
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
|
||||
# Navigation
|
||||
alias home='cd ~'
|
||||
alias ..='cd ..'
|
||||
alias ...='cd ../..'
|
||||
|
||||
# File listing (eza)
|
||||
alias ls='eza --icons --group-directories-first'
|
||||
alias ll='eza --icons --group-directories-first -l'
|
||||
alias la='eza --icons --group-directories-first -la'
|
||||
alias lt='eza --icons --group-directories-first --tree'
|
||||
alias l='eza --icons --group-directories-first -F'
|
||||
|
||||
# File viewing
|
||||
alias cat='bat --style=plain --paging=never'
|
||||
alias catp='bat --style=full'
|
||||
|
||||
# Better replacements
|
||||
alias du='dust'
|
||||
alias df='duf'
|
||||
alias ps='procs'
|
||||
alias top='btop'
|
||||
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
# ALIASES - GIT
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
alias lg='lazygit'
|
||||
alias gs='git status'
|
||||
alias ga='git add'
|
||||
alias gc='git commit'
|
||||
alias gp='git push'
|
||||
alias gl='git pull'
|
||||
alias gd='git diff'
|
||||
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
# ALIASES - UTILITIES
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
|
||||
# Configuration
|
||||
alias zsource='source ~/.zshrc'
|
||||
alias zconfig='nvim ~/.zshrc'
|
||||
alias nconfig='nvim ~/.config/nvim'
|
||||
alias sconfig='nvim ~/.config/starship.toml'
|
||||
|
||||
# Zellij
|
||||
alias zj='zellij options --theme dracula'
|
||||
alias zellij-clean='zellij list-sessions --no-formatting | cut -d" " -f1 | xargs -I {} zellij delete-session {} --force'
|
||||
|
||||
# Quick commands
|
||||
alias h='history'
|
||||
alias help='tldr'
|
||||
alias ports='netstat -tulanp'
|
||||
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
# FUNCTIONS
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
|
||||
# Quick directory navigation
|
||||
mkcd() {
|
||||
mkdir -p "$1" && cd "$1"
|
||||
}
|
||||
|
||||
# Extract any archive
|
||||
extract() {
|
||||
if [ -f $1 ]; then
|
||||
case $1 in
|
||||
*.tar.bz2) tar xjf $1 ;;
|
||||
*.tar.gz) tar xzf $1 ;;
|
||||
*.bz2) bunzip2 $1 ;;
|
||||
*.rar) unrar e $1 ;;
|
||||
*.gz) gunzip $1 ;;
|
||||
*.tar) tar xf $1 ;;
|
||||
*.tbz2) tar xjf $1 ;;
|
||||
*.tgz) tar xzf $1 ;;
|
||||
*.zip) unzip $1 ;;
|
||||
*.Z) uncompress $1 ;;
|
||||
*.7z) 7z x $1 ;;
|
||||
*) echo "'$1' cannot be extracted" ;;
|
||||
esac
|
||||
else
|
||||
echo "'$1' is not a valid file"
|
||||
fi
|
||||
}
|
||||
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
# COMPLETIONS
|
||||
# ───────────────────────────────────────────────────────────────────
|
||||
fpath=(~/.zsh/completions $fpath)
|
||||
autoload -Uz compinit
|
||||
compinit
|
||||
|
||||
|
||||
# Exegol alias
|
||||
alias exegol='sudo -E /home/p3ta/.local/bin/exegol'
|
||||
xhost +si:localuser:root >/dev/null 2>&1
|
||||
BIN
fonts/JetBrainsMonoNLNerdFont-Bold.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-Bold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-BoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-ExtraBold.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-ExtraBold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-ExtraBoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-ExtraBoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-ExtraLight.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-ExtraLight.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-ExtraLightItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-ExtraLightItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-Italic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-Italic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-Light.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-Light.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-LightItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-LightItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-Medium.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-Medium.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-MediumItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-MediumItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-Regular.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-Regular.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-SemiBold.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-SemiBold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-SemiBoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-SemiBoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-Thin.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-Thin.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFont-ThinItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFont-ThinItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-Bold.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-Bold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-BoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-ExtraBold.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-ExtraBold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-ExtraBoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-ExtraBoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-ExtraLight.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-ExtraLight.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-ExtraLightItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-ExtraLightItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-Italic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-Italic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-Light.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-Light.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-LightItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-LightItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-Medium.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-Medium.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-MediumItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-MediumItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-Regular.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-Regular.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-SemiBold.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-SemiBold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-SemiBoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-SemiBoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-Thin.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-Thin.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontMono-ThinItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontMono-ThinItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-Bold.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-Bold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-BoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-ExtraBold.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-ExtraBold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-ExtraBoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-ExtraBoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-ExtraLight.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-ExtraLight.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-ExtraLightItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-ExtraLightItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-Italic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-Italic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-Light.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-Light.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-LightItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-LightItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-Medium.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-Medium.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-MediumItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-MediumItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-Regular.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-Regular.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-SemiBold.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-SemiBold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-SemiBoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-SemiBoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-Thin.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-Thin.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNLNerdFontPropo-ThinItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNLNerdFontPropo-ThinItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-Bold.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-Bold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-BoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-ExtraBold.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-ExtraBold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-ExtraBoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-ExtraBoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-ExtraLight.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-ExtraLight.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-ExtraLightItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-ExtraLightItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-Italic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-Italic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-Light.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-Light.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-LightItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-LightItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-Medium.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-Medium.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-MediumItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-MediumItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-Regular.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-Regular.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-SemiBold.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-SemiBold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-SemiBoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-SemiBoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-Thin.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-Thin.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFont-ThinItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFont-ThinItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-Bold.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-Bold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-BoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-ExtraBold.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-ExtraBold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-ExtraBoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-ExtraBoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-ExtraLight.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-ExtraLight.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-ExtraLightItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-ExtraLightItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-Italic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-Italic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-Light.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-Light.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-LightItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-LightItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-Medium.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-Medium.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-MediumItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-MediumItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-Regular.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-Regular.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-SemiBold.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-SemiBold.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-SemiBoldItalic.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-SemiBoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/JetBrainsMonoNerdFontMono-Thin.ttf
Normal file
BIN
fonts/JetBrainsMonoNerdFontMono-Thin.ttf
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue