joshuto: file manager

This commit is contained in:
Filippo Berto 2023-08-15 12:15:01 +02:00
parent f4b2644bd1
commit c645f75aa6
No known key found for this signature in database
GPG key ID: FE98AE5EC52B1056

View file

@ -7,10 +7,10 @@ let tomlGenerate = (pkgs.formats.toml { }).generate; in
home.shellAliases."fm" = "joshuto --change-directory";
xdg.configFile = {
"johsuto/joshuto.toml".source = tomlGenerate "joshuto.toml" {
"joshuto/joshuto.toml".source = tomlGenerate "joshuto-joshuto.toml" {
scroll_offset = 6;
xdg_open = true;
xdg_open_fork = true;
# xdg_open = true;
# xdg_open_fork = true;
use_trash = true;
watch_files = true;
display = {
@ -40,11 +40,217 @@ let tomlGenerate = (pkgs.formats.toml { }).generate; in
home_page = "inherit";
};
};
"johsuto/mimetype.toml".source = tomlGenerate "joshuto.toml" {
# xdg_open = true;
# xdg_open_fork = true;
# line_number_style = "absolute";
# tab.home_page = "inherit";
"joshuto/mimetype.toml".source = tomlGenerate "joshuto-mimetype.toml" {
class = {
audio_default = [
{ command = "mpv"; args = [ "--" ]; }
{ command = "mediainfo"; confirm_exit = true; }
];
image_default = [
{ command = "geeqie"; fork = true; silent = true; }
{ command = "qimgv"; args = [ "--" ]; fork = true; silent = true; }
{ command = "krita"; args = [ "--" ]; fork = true; silent = true; }
{ command = "exiftool"; confirm_exit = true; }
{ command = "swappy"; args = [ "-f" ]; fork = true; }
];
video_default = [
{ command = "mpv"; args = [ "--" ]; fork = true; silent = true; }
{ command = "mediainfo"; confirm_exit = true; }
{ command = "mpv"; args = [ "--mute" "on" "--" ]; fork = true; silent = true; }
];
text_default = [
{ command = "hx"; }
{ command = "micro"; }
{ command = "gedit"; fork = true; silent = true; }
{ command = "bat"; args = [ "--paging=always" ]; }
];
reader_default = [
{ command = "evince"; fork = true; silent = true; }
{ command = "zathura"; fork = true; silent = true; }
];
libreoffice_default = [{ command = "libreoffice"; fork = true; silent = true; }];
};
extension = {
## image formats
avif."inherit" = "image_default";
bmp."inherit" = "image_default";
gif."inherit" = "image_default";
heic."inherit" = "image_default";
jpeg."inherit" = "image_default";
jpe."inherit" = "image_default";
jpg."inherit" = "image_default";
pgm."inherit" = "image_default";
png."inherit" = "image_default";
ppm."inherit" = "image_default";
webp."inherit" = "image_default";
svg.app_list = [
{ command = "inkview"; fork = true; silent = true; }
{ command = "inkscape"; fork = true; silent = true; }
];
tiff.app_list = [
{ command = "qimgv"; fork = true; silent = true; }
{ command = "krita"; fork = true; silent = true; }
];
## audio formats
flac."inherit" = "audio_default";
m4a."inherit" = "audio_default";
mp3."inherit" = "audio_default";
ogg."inherit" = "audio_default";
wav."inherit" = "audio_default";
## video formats
avi."inherit" = "video_default";
av1."inherit" = "video_default";
flv."inherit" = "video_default";
mkv."inherit" = "video_default";
m4v."inherit" = "video_default";
mov."inherit" = "video_default";
mp4."inherit" = "video_default";
ts."inherit" = "video_default";
webm."inherit" = "video_default";
wmv."inherit" = "video_default";
## text formats
build."inherit" = "text_default";
c."inherit" = "text_default";
cmake."inherit" = "text_default";
conf."inherit" = "text_default";
cpp."inherit" = "text_default";
css."inherit" = "text_default";
csv."inherit" = "text_default";
cu."inherit" = "text_default";
ebuild."inherit" = "text_default";
eex."inherit" = "text_default";
env."inherit" = "text_default";
ex."inherit" = "text_default";
exs."inherit" = "text_default";
go."inherit" = "text_default";
h."inherit" = "text_default";
hpp."inherit" = "text_default";
hs."inherit" = "text_default";
html."inherit" = "text_default";
ini."inherit" = "text_default";
java."inherit" = "text_default";
js."inherit" = "text_default";
json."inherit" = "text_default";
kt."inherit" = "text_default";
lua."inherit" = "text_default";
log."inherit" = "text_default";
md."inherit" = "text_default";
micro."inherit" = "text_default";
ninja."inherit" = "text_default";
py."inherit" = "text_default";
rkt."inherit" = "text_default";
rs."inherit" = "text_default";
scss."inherit" = "text_default";
sh."inherit" = "text_default";
srt."inherit" = "text_default";
svelte."inherit" = "text_default";
toml."inherit" = "text_default";
tsx."inherit" = "text_default";
txt."inherit" = "text_default";
vim."inherit" = "text_default";
xml."inherit" = "text_default";
yaml."inherit" = "text_default";
yml."inherit" = "text_default";
# archive formats
"7z".app_list = [
{ command = "7z"; args = [ "x" ]; confirm_exit = true; }
{ command = "file-roller"; fork = true; silent = true; }
];
bz2.app_list = [
{ command = "tar"; args = [ "-xvjf" ]; confirm_exit = true; }
{ command = "file-roller"; fork = true; silent = true; }
];
gz.app_list = [
{ command = "tar"; args = [ "-xvzf" ]; confirm_exit = true; }
{ command = "file-roller"; fork = true; silent = true; }
];
tar.app_list = [
{ command = "tar"; args = [ "-xvf" ]; confirm_exit = true; }
{ command = "file-roller"; fork = true; silent = true; }
];
tgz.app_list = [
{ command = "tar"; args = [ "-xvzf" ]; confirm_exit = true; }
{ command = "file-roller"; fork = true; silent = true; }
];
rar.app_list = [
{ command = "unrar"; args = [ "x" ]; confirm_exit = true; }
{ command = "file-roller"; fork = true; silent = true; }
];
xz.app_list = [
{ command = "tar"; args = [ "-xvJf" ]; confirm_exit = true; }
{ command = "file-roller"; fork = true; silent = true; }
];
zip.app_list = [
{ command = "unzip"; confirm_exit = true; }
{ command = "file-roller"; fork = true; silent = true; }
];
# misc formats
aup.app_list = [{ command = "audacity"; fork = true; silent = true; }];
m3u.app_list = [
{ command = "micro"; }
{ command = "mpv"; }
{ command = "gedit"; fork = true; silent = true; }
{ command = "bat"; confirm_exit = true; }
];
odt."inherit" = "libreoffice_default";
odf."inherit" = "libreoffice_default";
ods."inherit" = "libreoffice_default";
odp."inherit" = "libreoffice_default";
doc."inherit" = "libreoffice_default";
docx."inherit" = "libreoffice_default";
xls."inherit" = "libreoffice_default";
xlsx."inherit" = "libreoffice_default";
ppt."inherit" = "libreoffice_default";
pptx."inherit" = "libreoffice_default";
pdf."inherit" = "reader_default";
kra.app_list = [{ command = "krita"; fork = true; silent = true; }];
kdenlive.app_list = [{ command = "kdenlive"; fork = true; silent = true; }];
tex.app_list = [
{ command = "micro"; }
{ command = "gedit"; fork = true; silent = true; }
{ command = "bat"; confirm_exit = true; }
{ command = "pdflatex"; }
];
torrent.app_list = [{ command = "transmission-gtk"; }];
};
mimetype = {
# application/octet-stream
application.subtype.octet-stream."inherit" = "video_default";
# text/*
text."inherit" = "text_default";
# video/*
video."inherit" = "video_default";
};
};
"joshuto/bookmarks.toml".source = tomlGenerate "joshuto-bookmarks.toml" {
bookmark = [
{ path = "/"; key = "r"; }
{ path = "~/"; key = "h"; }
{ path = "~/Scaricati"; key = "d"; }
{ path = "~/Syncthing"; key = "s"; }
];
};
};
}