diff options
| author | joott <josh@ottmail.me> | 2025-07-30 15:53:29 -0400 |
|---|---|---|
| committer | joott <josh@ottmail.me> | 2025-07-30 15:53:29 -0400 |
| commit | 26694e09e8f5bf2262737312e7ad217118db20de (patch) | |
| tree | ca55eee2f8c5106c61e747979780d6f393fd24c9 /.config/xplr | |
| parent | 89a596a50ec61b8ebd6040b06a7cab994afd1b3a (diff) | |
| download | dotfiles-26694e09e8f5bf2262737312e7ad217118db20de.tar.gz dotfiles-26694e09e8f5bf2262737312e7ad217118db20de.zip | |
switching to yadm
Diffstat (limited to '.config/xplr')
| -rw-r--r-- | .config/xplr/init.lua | 62 | ||||
| -rw-r--r-- | .config/xplr/plugins/icons.lua | 90 |
2 files changed, 152 insertions, 0 deletions
diff --git a/.config/xplr/init.lua b/.config/xplr/init.lua new file mode 100644 index 0000000..c935ada --- /dev/null +++ b/.config/xplr/init.lua @@ -0,0 +1,62 @@ +version = "1.0.0" + +local home = os.getenv("HOME") +package.path = home + .. "/.config/xplr/plugins/?/init.lua;" + .. home + .. "/.config/xplr/plugins/?.lua;" + .. package.path + +local xpm_path = home .. "/.local/share/xplr/dtomvan/xpm.xplr" +local xpm_url = "https://github.com/dtomvan/xpm.xplr" +package.path = package.path +.. ";" + .. xpm_path + .. "/?.lua;" + .. xpm_path + .. "/?/init.lua" + +os.execute( + string.format( + "[ -e '%s' ] || git clone '%s' '%s'", + xpm_path, + xpm_url, + xpm_path + ) +) + +require("xpm").setup({ + plugins = { + 'dtomvan/xpm.xplr', + 'sayanarijit/fzf.xplr', + 'gitlab:hartan/web-devicons.xplr', + 'sayanarijit/wl-clipboard.xplr', + 'sayanarijit/map.xplr', + 'sayanarijit/zoxide.xplr', + 'sayanarijit/zentable.xplr', + }, + auto_install = true, + auto_cleanup = true, +}) + +xplr.config.modes.builtin.default.key_bindings.on_key.x = { + help = "xpm", + messages = { + "PopMode", + { SwitchModeCustom = "xpm" }, + }, +} + +require("fzf").setup({ + mode = "default", + key = "ctrl-f", + bin = "fzf", + recursive = true, + enter_dir = true, +}) + +require("wl-clipboard").setup() +require("map").setup() +require("zoxide").setup() +require("zentable").setup() +require("icons").setup() diff --git a/.config/xplr/plugins/icons.lua b/.config/xplr/plugins/icons.lua new file mode 100644 index 0000000..58e9a74 --- /dev/null +++ b/.config/xplr/plugins/icons.lua @@ -0,0 +1,90 @@ +local xplr = xplr + +local function setup() + local function black(x) + return "\x1b[30m" .. x .. "\x1b[0m" + end + + local function red(x) + return "\x1b[31m" .. x .. "\x1b[0m" + end + + local function green(x) + return "\x1b[32m" .. x .. "\x1b[0m" + end + + local function yellow(x) + return "\x1b[33m" .. x .. "\x1b[0m" + end + + local function blue(x) + return "\x1b[34m" .. x .. "\x1b[0m" + end + + local function magenta(x) + return "\x1b[35m" .. x .. "\x1b[0m" + end + + local function cyan(x) + return "\x1b[36m" .. x .. "\x1b[0m" + end + + local function white(x) + return "\x1b[37m" .. x .. "\x1b[0m" + end + + xplr.config.node_types.mime_essence = { + audio = { + ["*"] = { meta = { icon = yellow "" } }, + }, + video = { + ["*"] = { meta = { icon = "" } }, + }, + image = { + ["*"] = { meta = { icon = "" } }, + }, + application = { + -- application/zip + zip = { meta = { icon = "" } }, + }, + text = { + ["*"] = { meta = { icon = "" } }, + }, + } + + xplr.config.node_types.directory.meta.icon = blue "" + xplr.config.node_types.file.meta.icon = cyan "" + xplr.config.node_types.symlink.meta.icon = magenta "" + + xplr.config.node_types.special["Desktop"] = { meta = { icon = blue "" } } + xplr.config.node_types.special["Documents"] = { meta = { icon = blue "" } } + xplr.config.node_types.special["Downloads"] = { meta = { icon = blue "" } } + xplr.config.node_types.special["Music"] = { meta = { icon = blue "" } } + xplr.config.node_types.special["Pictures"] = { meta = { icon = blue "" } } + xplr.config.node_types.special["Templates"] = { meta = { icon = blue "" } } + xplr.config.node_types.special["Videos"] = { meta = { icon = blue "" } } + + xplr.config.node_types.extension["7z"] = { meta = { icon = "" } } + xplr.config.node_types.extension.apk = { meta = { icon = "" } } + xplr.config.node_types.extension.bz2 = { meta = { icon = "" } } + xplr.config.node_types.extension.cab = { meta = { icon = "" } } + xplr.config.node_types.extension.cbr = { meta = { icon = "" } } + xplr.config.node_types.extension.cbr = { meta = { icon = "" } } + xplr.config.node_types.extension.cbz = { meta = { icon = "" } } + xplr.config.node_types.extension.cpio = { meta = { icon = "" } } + xplr.config.node_types.extension.gz = { meta = { icon = "" } } + xplr.config.node_types.extension.gzip = { meta = { icon = "" } } + xplr.config.node_types.extension.lha = { meta = { icon = "" } } + xplr.config.node_types.extension.lzh = { meta = { icon = "" } } + xplr.config.node_types.extension.lzma = { meta = { icon = "" } } + xplr.config.node_types.extension.rar = { meta = { icon = "" } } + xplr.config.node_types.extension.rpm = { meta = { icon = "" } } + xplr.config.node_types.extension.tar = { meta = { icon = "" } } + xplr.config.node_types.extension.tgz = { meta = { icon = "" } } + xplr.config.node_types.extension.txz = { meta = { icon = "" } } + xplr.config.node_types.extension.xbps = { meta = { icon = "" } } + xplr.config.node_types.extension.xz = { meta = { icon = "" } } + xplr.config.node_types.extension.zip = { meta = { icon = "" } } +end + +return { setup = setup } |