mirror of
https://github.com/js0ny/dotfiles.git
synced 2025-12-21 08:43:00 +00:00
feat(gwenview): gwenviewrc partial override and keymaps
This commit is contained in:
parent
f818ffb1bc
commit
94d176692c
9 changed files with 189 additions and 18 deletions
|
|
@ -17,10 +17,6 @@ in {
|
|||
then "/Users/${username}"
|
||||
else "/home/${username}";
|
||||
|
||||
home.packages = with pkgs; [
|
||||
home-manager
|
||||
];
|
||||
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
home.sessionVariables.TERMINAL = config.currentUser.defaultTerminal;
|
||||
|
|
|
|||
|
|
@ -17,7 +17,6 @@
|
|||
sioyek
|
||||
|
||||
# Image Viewer
|
||||
vimiv-qt # Default
|
||||
loupe # SUPER FAST 有催人跑的感觉 w/ GPU Accel.
|
||||
|
||||
kdePackages.elisa
|
||||
|
|
|
|||
|
|
@ -3,6 +3,9 @@
|
|||
config,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
../gwenview.nix
|
||||
];
|
||||
home.packages = with pkgs; [
|
||||
# kdePackages.yakuake
|
||||
krunner-vscodeprojects
|
||||
|
|
|
|||
|
|
@ -37,6 +37,20 @@
|
|||
];
|
||||
open-focused = false;
|
||||
}
|
||||
{
|
||||
matches = [
|
||||
{
|
||||
app-id = "^org.kde.(ark|dolphin)$";
|
||||
title = "^Extracting";
|
||||
}
|
||||
];
|
||||
open-focused = false;
|
||||
default-floating-position = {
|
||||
x = 50;
|
||||
y = 50;
|
||||
relative-to = "top-right";
|
||||
};
|
||||
}
|
||||
{
|
||||
matches = [
|
||||
# Anki add new flashcard
|
||||
|
|
@ -58,6 +72,10 @@
|
|||
app-id = "^QQ$";
|
||||
title = "^图片查看器$";
|
||||
}
|
||||
{
|
||||
app-id = "^QQ$";
|
||||
title = "^群聊的聊天记录$";
|
||||
}
|
||||
{
|
||||
app-id = "^org.telegram.desktop$";
|
||||
title = "^Media viewer$";
|
||||
|
|
|
|||
29
nixcfgs/users/js0ny/programs/gwenview.nix
Normal file
29
nixcfgs/users/js0ny/programs/gwenview.nix
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
home.packages = with pkgs.kdePackages; [
|
||||
gwenview
|
||||
];
|
||||
xdg.configFile."gwenviewrc-override".text = lib.generators.toINI {} {
|
||||
ImageView = {
|
||||
AnimationMethod = "DocumentView::NoAnimation";
|
||||
MouseWheelBehavior = "MouseWheelBehavior::Browse";
|
||||
NavigationEndNotification = "NavigationEndNotification::AlwaysWarn";
|
||||
};
|
||||
};
|
||||
|
||||
# Manually merge gwenview config to existing file
|
||||
home.activation.mergeGwenviewrc = lib.hm.dag.entryAfter ["writeBoundary"] ''
|
||||
if [ -f ~/.config/gwenviewrc-override ]; then
|
||||
# Create gwenviewrc if it doesn't exist
|
||||
touch ~/.config/gwenviewrc
|
||||
|
||||
# Merge the override file into the main config
|
||||
${pkgs.crudini}/bin/crudini --merge ~/.config/gwenviewrc < ~/.config/gwenviewrc-override
|
||||
|
||||
$DRY_RUN_CMD rm -f ~/.config/gwenviewrc-override
|
||||
fi
|
||||
'';
|
||||
}
|
||||
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
{...}: let
|
||||
gvim = "nvim-qt.desktop";
|
||||
in {
|
||||
xdg.configFile."mimeapps.list".force = true;
|
||||
xdg.mime.enable = true;
|
||||
xdg.mimeApps = {
|
||||
|
|
@ -8,20 +10,24 @@
|
|||
# PDF
|
||||
"application/pdf" = "org.kde.okular.desktop";
|
||||
# Plain text
|
||||
"text/plain" = "nvim-qt.desktop";
|
||||
"text/plain" = gvim;
|
||||
# Source Code - C
|
||||
"text/x-csrc" = "nvim-qt.desktop";
|
||||
"text/x-chdr" = "nvim-qt.desktop";
|
||||
"text/x-csrc" = gvim; # .c
|
||||
"text/x-chdr" = gvim; # .h
|
||||
# CSV
|
||||
"text/csv" = gvim;
|
||||
# File Explorer
|
||||
"inode/directory" = "org.kde.dolphin.desktop";
|
||||
# Image Viewer
|
||||
# Image Viewer:
|
||||
# gwenview: keyboard driven, high compatibility
|
||||
# loupe: Performance is incredible
|
||||
"image/jpeg" = "vimiv.desktop;org.gnome.Loupe.desktop";
|
||||
"image/jpg" = "vimiv.desktop;org.gnome.Loupe.desktop";
|
||||
"image/png" = "vimiv.desktop;org.gnome.Loupe.desktop";
|
||||
"image/gif" = "vimiv.desktop;org.gnome.Loupe.desktop";
|
||||
"image/bmp" = "vimiv.desktop;org.gnome.Loupe.desktop";
|
||||
"image/webp" = "vimiv.desktop;org.gnome.Loupe.desktop";
|
||||
"image/jpeg" = "org.kde.gwenview.desktop;org.gnome.Loupe.desktop";
|
||||
"image/jpg" = "org.kde.gwenview.desktop;org.gnome.Loupe.desktop";
|
||||
"image/png" = "org.kde.gwenview.desktop;org.gnome.Loupe.desktop";
|
||||
"image/gif" = "org.kde.gwenview.desktop;org.gnome.Loupe.desktop";
|
||||
"image/bmp" = "org.kde.gwenview.desktop;org.gnome.Loupe.desktop";
|
||||
"image/avif" = "org.kde.gwenview.desktop;org.gnome.Loupe.desktop";
|
||||
"image/webp" = "org.kde.gwenview.desktop;org.gnome.Loupe.desktop";
|
||||
|
||||
# Audio:
|
||||
# music: elisa: fully featured, good cjk support
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@
|
|||
fishInit = builtins.concatStringsSep "\n" (
|
||||
lib.mapAttrsToList (name: path: ''
|
||||
if test -r ${path}
|
||||
set -gx ${name} (< ${path})
|
||||
set -gx "${name}" (cat "${path}")
|
||||
end
|
||||
'')
|
||||
secretPaths
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue