id = "broot" name = "broot" homepage = "https://dystroy.org/broot" description = "Broot is a better way to navigate directories, find files, and launch commands." # The cog, from the manual site's favicon. icon = "https://dystroy.org/broot/img/favicon.png" executables = ["broot", "br"] [dotfiles] # src/conf/mod.rs: the config directory is # `directories::ProjectDirs::from("org", "dystroy", "broot").config_dir()`, i.e. # ~/.config/broot on Linux and %APPDATA%\dystroy\broot\config on Windows. macOS # has a special case (find_conf_dir): ~/.config/broot is preferred, and the # directories-crate location is used only when an older broot already wrote # there. src/conf/conf.rs reads conf.hjson, else conf.toml, from that directory; # imported skin and verb files sit beside it, so the directory is listed whole. paths = [ "~/.config/broot/", "~/Library/Application Support/org.dystroy.broot/", "%APPDATA%/dystroy/broot/config/", ] # src/shell_install/*.rs writes the `br` shell function into # ~/.local/share/broot/launcher// and links it from # /launcher//br, plus "installed-v1"/"refused" marker files. # Those are install state for one machine's shell, not configuration. exclude = [ "~/.config/broot/launcher/", "~/Library/Application Support/org.dystroy.broot/launcher/", "%APPDATA%/dystroy/broot/config/launcher/", ] # A file browser: no accounts, no tokens. secret = [] # No machine_lines: the config file holds verbs, skins and key bindings, which # are preferences meant to follow the user. [commands] format = 1 label = "Explore a directory tree" description = "Open broot on a directory with display options. The no-* counter flags, remote control (--listen, --send), install and shell-function options are left out." quality = "ai-draft" base = "fig:broot" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = true } [[commands.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/broot.ts" license = "MIT" [[commands.field]] id = "root" label = "Root directory" description = "Defaults to the current directory." type = "path" position = 0 path = { kind = "directory", role = "input" } sources = ["fig"] [[commands.field]] id = "hidden" label = "Show hidden files" type = "boolean" option = ["--hidden", "-h"] sources = ["fig"] [[commands.field]] id = "show_gitignored" label = "Show gitignored files" type = "boolean" option = ["--show-gitignored", "-i"] sources = ["fig"] [[commands.field]] id = "only_folders" label = "Only folders" type = "boolean" option = ["--only-folders", "-f"] sources = ["fig"] [[commands.field]] id = "dates" label = "Show dates" type = "boolean" option = ["--dates", "-d"] sources = ["fig"] [[commands.field]] id = "sizes" label = "Show sizes" description = "Children are hidden so the biggest entries sort first." type = "boolean" option = ["--sizes", "-s"] sources = ["fig"] [[commands.field]] id = "permissions" label = "Show permissions" type = "boolean" option = ["--permissions", "-p"] sources = ["fig"] [[commands.field]] id = "show_git_info" label = "Show git info" type = "boolean" option = ["--show-git-info", "-g"] sources = ["fig"] [[commands.field]] id = "git_status" label = "Only files with git changes" type = "boolean" option = ["--git-status"] sources = ["fig"] [[commands.field]] id = "whale_spotting" label = "Whale spotting" description = "Sort by size, show ignored and hidden files." type = "boolean" option = ["--whale-spotting", "-w"] sources = ["fig"] [[commands.field]] id = "sort_by_size" label = "Sort by size" type = "boolean" option = ["--sort-by-size"] sources = ["fig"] [[commands.field]] id = "sort_by_date" label = "Sort by date" type = "boolean" option = ["--sort-by-date"] sources = ["fig"] [[commands.field]] id = "sort_by_count" label = "Sort by count" type = "boolean" option = ["--sort-by-count"] sources = ["fig"] [[commands.field]] id = "no_sort" label = "Do not sort" type = "boolean" option = ["--no-sort"] sources = ["fig"] [[commands.field]] id = "trim_root" label = "Trim root" type = "boolean" option = ["--trim-root", "-t"] sources = ["fig"] [[commands.field]] id = "cmd" label = "Startup commands" description = "Semicolon-separated broot commands to run on start." type = "string" option = ["--cmd", "-c"] sources = ["fig"] [[commands.field]] id = "height" label = "Height (lines)" description = "Use less than the full terminal height." type = "integer" option = ["--height"] sources = ["fig"] [[commands.task]] id = "disk-usage" label = "Find big files" fields = ["root", "whale_spotting"] required = [] set = { whale_spotting = [true] } [[commands.task]] id = "git" label = "Browse with git info" fields = ["root", "show_git_info", "hidden"] required = [] set = { show_git_info = [true] } [[commands.group]] id = "basic" label = "Basic" fields = ["root", "hidden", "show_gitignored", "only_folders", "dates", "sizes", "permissions"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["show_git_info", "git_status", "whale_spotting", "sort_by_size", "sort_by_date", "sort_by_count", "no_sort", "trim_root", "cmd", "height"]