Canop/broot

Backslashes are treated as escape characters

Open

#1,100 opened on Nov 15, 2025

View on GitHub
 (2 comments) (0 reactions) (0 assignees)Rust (213 forks)batch import
bughelp wantedwindows

Repository metrics

Stars
 (9,383 stars)
PR merge metrics
 (Avg merge 53m) (1 merged PR in 30d)

Description

Environment

  • Git Bash version: 5.2.15
  • Operating System: Windows 11
  • Broot version: 1.53.0

What happened

~/.bashrc :

source C:\Users\me\...\bash\br treated as source C:Usersme...bashbr

~\...\dystroy\broot\config\launcher\bash :

cd C:\Users\me\...\directory treated as cd C:Usersme...directory

Fix that works for me

function br {
    local cmd cmd_file code
    cmd_file=$(mktemp)
    if broot --outcmd "$cmd_file" "$@"; then
        cmd=$(sed 's/\\/\\\\/g' "$cmd_file")      # Only Changed here
        command rm -f "$cmd_file"
        eval "$cmd"
    else
        code=$?
        command rm -f "$cmd_file"
        return "$code"
    fi
}

Contributor guide