id = "vifm"
name = "Vifm"
homepage = "https://vifm.info/"
description = "File manager with a curses interface and Vim-like keybindings."
executables = ["vifm"]
platforms = ["macos", "linux"]
[dotfiles]
paths = ["~/.config/vifm/vifmrc", "~/.vifm/vifmrc"]
exclude = []
secret = []
[commands]
format = 1
label = "Open file manager"
description = "Start vifm in one or two directories, or use it as a file chooser. Remote-server and logging options are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = false, short_attached = false, short_bundles = false }
[[commands.source]]
id = "man"
kind = "manual"
url = "https://manpages.debian.org/bookworm/vifm/vifm.1.en.html"
revision = "Debian bookworm"
evidence = """<path> Starts Vifm in the specified path.
<path> <path> Starts Vifm in the specified paths.
--select <path> Open parent directory of the given path and select specified file in it.
--choose-files <path>|- Sets output file to write selection into on exit instead of opening files. "-" means standard output.
--choose-dir <path>|- Sets output file to write last visited directory into on exit. "-" means standard output.
--on-choose <command> Sets command to be executed on selected files instead of opening them.
-c <command> or +<command> Run command-line mode <command> on startup.
--no-configs Skip reading vifmrc and vifminfo."""
[[commands.field]]
id = "paths"
label = "Directories"
description = "One path for a single pane, two for a split view."
type = "path"
position = 0
multiple = true
path = { kind = "any", role = "input", must_exist = true }
sources = ["man"]
[[commands.field]]
id = "select"
label = "Select file"
description = "Open the parent directory of this path with the file selected."
type = "path"
option = ["--select"]
path = { kind = "any", role = "input", must_exist = true }
sources = ["man"]
[[commands.field]]
id = "choose_files"
label = "Write chosen files to"
description = "File to write the selection into on exit instead of opening files; - means standard output."
type = "path"
option = ["--choose-files"]
path = { kind = "file", role = "output", must_exist = false }
effect = "overwrite"
sources = ["man"]
[[commands.field]]
id = "choose_dir"
label = "Write last directory to"
description = "File to write the last visited directory into on exit; - means standard output."
type = "path"
option = ["--choose-dir"]
path = { kind = "file", role = "output", must_exist = false }
effect = "overwrite"
sources = ["man"]
[[commands.field]]
id = "on_choose"
label = "Command on selection"
description = "Run this command on the selected files instead of opening them."
type = "string"
option = ["--on-choose"]
sources = ["man"]
[[commands.field]]
id = "startup_command"
label = "Startup command"
description = "Command-line mode command to run on startup."
type = "string"
option = ["-c"]
multiple = true
sources = ["man"]
[[commands.field]]
id = "no_configs"
label = "Skip vifmrc and vifminfo"
type = "boolean"
option = ["--no-configs"]
sources = ["man"]
[[commands.task]]
id = "open"
label = "Open directories"
fields = ["paths"]
[[commands.task]]
id = "chooser"
label = "Pick a file (write to file)"
fields = ["paths", "choose_files"]
required = ["choose_files"]
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["paths", "select", "choose_files", "choose_dir"]
[[commands.group]]
id = "advanced"
label = "Advanced"
fields = ["on_choose", "startup_command", "no_configs"]