vimium etc

This commit is contained in:
Jana Dönszelmann 2026-03-18 11:18:21 +01:00
parent 62ecb566ed
commit 194cefe340
No known key found for this signature in database
7 changed files with 106 additions and 27 deletions

41
flake.lock generated
View file

@ -718,11 +718,11 @@
"nixpkgs": "nixpkgs_5" "nixpkgs": "nixpkgs_5"
}, },
"locked": { "locked": {
"lastModified": 1772058280, "lastModified": 1773832951,
"narHash": "sha256-8gZ6wh++43JAe6PH0hmm4Q8gPEScf0S7rkb0MmIxu2U=", "narHash": "sha256-qzWEWTC1l7aofSoYoW9Zckh/gNLK8pbjiUuRl9qRc7k=",
"owner": "jdonszelmann", "owner": "jdonszelmann",
"repo": "homepage", "repo": "homepage",
"rev": "ead7bebdfa71b207d2513d7f002e164d0b17a264", "rev": "92cb1f2f367d52a64bf088f413aacb6446642794",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1326,6 +1326,22 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_22": {
"locked": {
"lastModified": 1745930157,
"narHash": "sha256-y3h3NLnzRSiUkYpnfvnS669zWZLoqqI6NprtLQ+5dck=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "46e634be05ce9dc6d4db8e664515ba10b78151ae",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1732521221, "lastModified": 1732521221,
@ -1707,6 +1723,7 @@
"sops-nix": "sops-nix", "sops-nix": "sops-nix",
"t": "t", "t": "t",
"totpal": "totpal", "totpal": "totpal",
"vimium-options": "vimium-options",
"vpn-confinement": "vpn-confinement" "vpn-confinement": "vpn-confinement"
} }
}, },
@ -2273,6 +2290,24 @@
"type": "github" "type": "github"
} }
}, },
"vimium-options": {
"inputs": {
"nixpkgs": "nixpkgs_22"
},
"locked": {
"lastModified": 1746118178,
"narHash": "sha256-MtIuTMLMF/Cl3MEJwO56rVhtXUtRhZ/i2hG49jcosEE=",
"owner": "uimataso",
"repo": "vimium-nixos",
"rev": "a9e4b051cf944718fd3fbb638bc1c08057507c31",
"type": "github"
},
"original": {
"owner": "uimataso",
"repo": "vimium-nixos",
"type": "github"
}
},
"vpn-confinement": { "vpn-confinement": {
"locked": { "locked": {
"lastModified": 1767604552, "lastModified": 1767604552,

View file

@ -68,16 +68,15 @@
url = "github:drannex/FirefoxSidebar"; url = "github:drannex/FirefoxSidebar";
flake = false; flake = false;
}; };
vimium-options.url = "github:uimataso/vimium-nixos";
}; };
outputs = outputs =
{ { nixpkgs
nixpkgs, , flake-utils
flake-utils, , sops-nix
sops-nix, , vpn-confinement
vpn-confinement, , deploy-rs
deploy-rs, , ...
...
}@inputs: }@inputs:
let let
custom = pkgs: import ./pkgs/custom.nix (inputs // { inherit pkgs; }); custom = pkgs: import ./pkgs/custom.nix (inputs // { inherit pkgs; });

View file

@ -44,10 +44,11 @@
inherit inputs; inherit inputs;
requirements = [ "graphical" ]; requirements = [ "graphical" ];
home-config = home-config =
{ config {
, pkgs config,
, lib pkgs,
, ... lib,
...
}: }:
let let
disableFeatures = [ disableFeatures = [
@ -212,6 +213,7 @@
just just
uv uv
llvmPackages.bintools llvmPackages.bintools
nodejs
(writeShellScriptBin "nas" '' (writeShellScriptBin "nas" ''
mkdir -p ~/Documents/nas mkdir -p ~/Documents/nas

View file

@ -23,6 +23,48 @@ inputs@{ machine, ... }:
# }; # };
in in
{ {
imports = [ flakes.vimium-options.homeManagerModules.vimium-options ];
home.vimiumOptions = {
enable = true;
outputFilePath = ".cache/vimium-options.json";
keyMappings = {
unmapAll = true;
map = {
"j" = "scrollDown";
"k" = "scrollUp";
"<" = "goBack";
">" = "goForward";
"gi" = "focusInput";
"gr" = "goToRoot";
"gu" = "goUp";
"g[" = "goNext";
"g]" = "goPrevious";
"gF" = "mainFrame";
"gf" = "nextFrame";
"p" = "openCopiedUrlInCurrentTab";
"P" = "openCopiedUrlInNewTab";
"G" = "scrollToBottom";
"gg" = "scrollToTop";
"C-o" = "visitPreviousTab";
"f" = "LinkHints.activateMode";
"F" = "LinkHints.activateModeToOpenInNewTab";
"<a-f>" = "LinkHints.activateModeWithQueue";
"yf" = "LinkHints.activateModeToCopyLinkUrl";
};
};
exclusionRules = [
{
pattern = "https?://mail.google.com/*";
}
{
pattern = "https?://squaredle.app/*";
}
];
};
programs.firefox = { programs.firefox = {
enable = true; enable = true;
package = pkgs.wrapFirefox pkgs.firefox-unwrapped { package = pkgs.wrapFirefox pkgs.firefox-unwrapped {
@ -88,7 +130,7 @@ inputs@{ machine, ... }:
ublock-origin ublock-origin
sidebery sidebery
sponsorblock sponsorblock
# vimium vimium
]; ];
bookmarks = { bookmarks = {
@ -154,16 +196,16 @@ inputs@{ machine, ... }:
}; };
}; };
xdg.mimeApps = { xdg.mimeApps.defaultApplications = {
defaultApplications."x-scheme-handler/http" = [ "x-scheme-handler/http" = [
"firefox.desktop" "firefox.desktop"
]; ];
defaultApplications."x-scheme-handler/https" = [ "x-scheme-handler/https" = [
"firefox.desktop" "firefox.desktop"
]; ];
defaultApplications."text/html" = [ "firefox.desktop" ]; "text/html" = [ "firefox.desktop" ];
defaultApplications."x-scheme-handler/about" = [ "firefox.desktop" ]; "x-scheme-handler/about" = [ "firefox.desktop" ];
defaultApplications."x-scheme-handler/unknown" = [ "firefox.desktop" ]; "x-scheme-handler/unknown" = [ "firefox.desktop" ];
}; };
}; };
}; };

View file

@ -28,9 +28,10 @@ end, { remap = true })
-- vim.keymap.set('n', 'gr', (function() builtin.lsp_references({jump_type="vsplit"}) end), {}) vim.keymap.set('n', 'gr', (function() builtin.lsp_references({}) end), {})
-- vim.keymap.set('n', 'gd', (function() builtin.lsp_definitions({jump_type="vsplit"}) end), {}) vim.keymap.set('n', 'gd', (function() builtin.lsp_definitions({}) end), {})
-- vim.keymap.set('n', 'gt', (function() builtin.lsp_type_definitions({jump_type="vsplit"}) end), {}) vim.keymap.set('n', 'gt', (function() builtin.lsp_type_definitions({}) end), {})
vim.keymap.set('n', 'gi', (function() builtin.lsp_implementations({}) end), {})
-- vim.keymap.set('n', 'gt', (function() builtin.lsp_type_definitions({jump_type="vsplit"}) end), {}) -- vim.keymap.set('n', 'gt', (function() builtin.lsp_type_definitions({jump_type="vsplit"}) end), {})

View file

@ -19,8 +19,7 @@ in
# jumplist # jumplist
(map "" "<C-a>" "<C-i>") # note: C-a is actually C-i, remapped through kitty. (map "" "<C-a>" "<C-i>") # note: C-a is actually C-i, remapped through kitty.
(luamap "n" "<leader>r" "${telescope}.jumplist()") (luamap "n" "<leader>j" "${telescope}.jumplist()")
(luamap "n" "<leader>R" "${telescope}.loclist()")
# pickers # pickers
(luamap "n" "<leader><leader>" "${telescope}.find_files()") (luamap "n" "<leader><leader>" "${telescope}.find_files()")

View file

@ -27,6 +27,7 @@ let
mimeMap = { mimeMap = {
text = [ text = [
"text/rust"
"text/plain" "text/plain"
"text/english" "text/english"
"application/x-zerosize" "application/x-zerosize"