###############################################################
# This configuration file lets you
# - define new commands
# - change the shortcut or triggering keys of built-in verbs
# - change the colors
# - set default values for flags
# - set special behaviors on specific paths
# - and more...
#
# Configuration documentation is available at
#     https://dystroy.org/broot
#
# This file's format is Hjson ( https://hjson.github.io/ ). Some
# properties are commented out. To enable them, remove the `#`.
#
###############################################################

###############################################################
# Default flags
# You can set up flags you want broot to start with by
# default, for example `default_flags="ihp"` if you usually want
# to see hidden and gitignored files and the permissions (then
# if you don't want the hidden files you can launch `br -H`)
# A popular flag is the `g` one which displays git related info.
#
default_flags: ihp

###############################################################
# Date/Time format
# If you want to change the format for date/time, uncomment the
# following line and change it according to
# https://docs.rs/chrono/0.4.11/chrono/format/strftime/index.html
#
# date_time_format: %Y/%m/%d %R

###############################################################
# uncomment to activate modal mode
#
# (you really should read https://dystroy.org/broot/modal/
# before as it may not suit everybody even among vim users)
#
# modal: true

###############################################################
# Whether to mark the selected line with a triangle
#
show_selection_mark: true

###############################################################
# Column order
# cols_order, if specified, must be a permutation of the following
# array. You should keep the name column at the end as it has a
# variable length.
#
# cols_order: [
#     mark
#     git
#     size
#     permission
#     date
#     count
#     branch
#     name
# ]

###############################################################
# True Colors
# If this parameter isn't set, broot tries to automatically
# determine whether true colors (24 bits) are available.
# As this process is unreliable, you may uncomment this setting
# and set it to false or true if you notice the colors in
# previewed images are too off.
#
# true_colors: false

###############################################################
# Icons
# If you want to display icons in broot, uncomment this line
# (see https://dystroy.org/broot/icons for installation and
# troubleshooting)
#
# icon_theme: vscode

###############################################################
# Special paths
# If some paths must be handled specially, uncomment (and change
# this section as per the examples)
#
special_paths: {
    "/media" : "no-enter" // comment it if desired
    # "/media/slow-backup-disk"    : no-enter
    # "/home/dys/useless"    : hide
    # "/home/dys/my-link-I-want-to-explore"    : enter
}

###############################################################
# Quit on last cancel
# You can usually cancel the last state change on escape.
# If you want the escape key to quit broot when there's nothing
# to cancel (for example when you just opened broot), uncomment
# this parameter
# 
# quit_on_last_cancel: true

###############################################################
# Search modes
#
# broot allows many search modes.
# A search mode is defined by
# - the way to search: 'fuzzy', 'exact', 'regex', or 'tokens'.
# - where to search: file 'name', 'path', or file 'content'
# A search pattern may for example be "fuzzy path" (default),
# "regex content" or "exact path".
#
# The search mode is selected from its prefix. For example, if
# you type "abc", the default mode is "fuzzy path". If you type
# "/abc", the mode is "regex path". If you type "rn/abc", the mode
# is "regex name".
#
# This mapping may be modified. You may want to dedicate the
# empty prefix (the one which doesn't need a '/') to the
# search mode you use most often. The example below makes it
# easy to search on name rather than on the subpath.
#
# More information on
#  https://dystroy.org/broot/input/#the-filtering-pattern
#
# search_modes: {
#     <empty>: fuzzy name
#     /: regex name
# }

###############################################################
# File Extension Colors
#
# uncomment and modify the next section if you want to color
# file name depending on their extension
#
# ext_colors: {
#     png: rgb(255, 128, 75)
#     rs: yellow
# }

###############################################################
# Max file size for content search
#
# Bigger files are ignored when searching their content. You
# can specify this size either in ISO units (eg 5GB) or in
# the old binary units (eg 44Kib)
content_search_max_file_size: 10MB

###############################################################
# Max Panels Count
#
# Change this if you sometimes want to have more than 2 panels
# open
# max_panels_count: 2

###############################################################
# Imports
#
# While it's possible to have all configuration in one file,
# it's more convenient to split it in several ones.
# Importing also allows to set a condition on the terminal's
# color, which makes it possible to have a different skin 
# chosen when your terminal has a light background and when
# it has a light one.
imports: [

    # Verbs are better configured in verbs.hjson. But you
    # can also add another files for your personal verbs
    verbs.hjson

    # This file contains the skin to use when the terminal
    # is dark (or when this couldn't be determined)
    {
        luma: [
            dark
            unknown
        ]
        # (un)comment to choose your preferred skin
        //file: skins/dark-blue.hjson
        //file: skins/catppuccin-macchiato.hjson
        file: skins/catppuccin-mocha.hjson
        //file: skins/dark-gruvbox.hjson
        //file: skins/dark-orange.hjson
        //file: skins/solarized-dark.hjson
    }

    # This skin is imported when your terminal is light
    {
        luma: light
        # (un)comment to choose your preferred skin
        //file: skins/solarized-light.hjson
        file: skins/white.hjson
    }
]