👻 ghostty config

theme = Nightfox
background-opacity = 0.95
font-family = "MesloLGS NF"
font-family = "D2coding"
title = ""
font-size = 12.5
window-padding-x = 15,15
window-padding-y = 15,15
keybind = shift+enter=text:\n
macos-titlebar-proxy-icon = hidden
macos-option-as-alt = true
  • brew install

    • starship, zsh-autosuggestions, zsh-syntax-highlighting, lazygit, git-delta, yazi, node, zellij
  • yazi에서 상위 폴더 미표시, open editor keymap(git project root 하에서 해당 파일 열기)

cat > ~/.config/yazi/yazi.toml << 'EOF'
[mgr]
ratio = [0, 1, 1]
EOF
 
cat > ~/.config/yazi/keymap.toml << 'EOF'
[[mgr.prepend_keymap]]
on = [ "e" ]
run = 'shell -- root="$(git rev-parse --show-toplevel 2>/dev/null || pwd)"; zed "$root" %h'
  • git + lazygit 설정
git config --global user.name "NAME"
git config --global user.email "EMAIL"
git config --global core.pager delta 
git config --global interactive.diffFilter 'delta --color-only' 
git config --global delta.navigate true 
git config --global delta.side-by-side true 
git config --global delta.line-numbers true 
git config --global delta.syntax-theme 'a'
 
ssh-keygen -t ed25519 -C "EMAIL"
cat ~/.ssh/id_ed25519.pub
 
 
mkdir ~/Library/Application\ Support/lazygit
cat > ~/Library/Application\ Support/lazygit/config.yml << 'EOF' 
os:
  edit: 'root="$(git rev-aprse --show-toplevel)" && zed "$root" "{{filename}}"'
git:
  paging: 
    colorArg: always 
    pager: delta --paging=never 
EOF
  • touch ~/.zshrc / open -e ~/.zshrc
source $(brew --prefix)/share/zsh-autosuggestions/zsh-autosuggestions.zsh
source $(brew --prefix)/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
eval "$(starship init zsh)"
export PATH="$HOME/.local/bin:$PATH" #claude native install path
export EDITOR=zed #zed에서 command pallete검색으로 install CLI 필요

👻 claude code(or 아무 에이전트/기본 터미널) + lazygit + yazi 패널 세팅 (zellij)

  • ghostty에서 option as alt필요. option+키바인드로 잘 안 쓰는 키로 pane간 이동하기 위함
  • theme color는 그냥 기본 쌩연두색 싫어서 포커스 색깔만 바꿈
  • 이런 느낌이 됨

cat > ~/.config/zellij/config.kdl << 'EOF'
pane_frames true
 
keybinds {
    shared_except "locked" {
        unbind "Ctrl o"
        unbind "Ctrl b"
    }
    
    normal {
        bind "Ctrl =" { FocusNextPane; }
    }
}
 
themes {
    custom {
        fg "#cdd6f4"
        bg "#1e1e2e"
        black "#181825"
        red "#f38ba8"
        green "#89dceb"
        yellow "#f9e2af"
        blue "#89b4fa"
        magenta "#cba6f7"
        cyan "#89dceb"
        white "#cdd6f4"
        orange "#fab387"
    }
}
 
theme "custom"
EOF
 
cat > ~/.config/zellij/layouts/dev.kdl << 'EOF'
layout {
    default_tab_template {
        children
    }
 
    tab name="dev" focus=true {
        pane split_direction="vertical" {
            pane size="50%" {
                name "code"
                focus true
            }
            pane split_direction="horizontal" {
                pane size="60%" {
                    name "lazygit"
                    command "lazygit"
                }
                pane {
                    name "yazi"
                    command "yazi"
                }
            }
        }
    }
}
EOF
 
echo "alias dev='zellij --layout dev'" >> ~/.zshrc