summary refs log tree commit diff stats
path: root/user
diff options
context:
space:
mode:
Diffstat (limited to 'user')
-rw-r--r--user/settings/fish.nix51
1 files changed, 21 insertions, 30 deletions
diff --git a/user/settings/fish.nix b/user/settings/fish.nix
index 8ed80e3e..9655ed1e 100644
--- a/user/settings/fish.nix
+++ b/user/settings/fish.nix
@@ -4,38 +4,29 @@
 }: {
   programs.fish = {
     enable = true;
-    plugins = [
-      {
-        name = "tide";
-        src = pkgs.fetchFromGitHub {
-          # https://github.com/IlanCosman/tide
-          owner = "IlanCosman";
-          repo = "tide";
-          rev = "a3426e157f94b8a9cb5bcf96946b1e55625a1948";
-          sha256 = "1fwqmsrd6bpf67rgj6f362abjmpk6q8yynyskc4niwg3g15diqq5";
-        };
-      }
-      {
-        name = "fzf";
-        src = pkgs.fetchFromGitHub {
-          owner = "PatrickF1";
-          repo = "fzf.fish";
-          rev = "6d00ecc6e5b2b1313cfcb25515941ecfd5342b30";
-          sha256 = "1sd5f6707hys6dibs1zb6f1imlkspqad5i24j4gf7lk9cby0zh6i";
-        };
-      }
-      {
-        name = "ghq";
-        src = pkgs.fetchFromGitHub {
-          owner = "decors";
-          repo = "fish-ghq";
-          rev = "cafaaabe63c124bf0714f89ec715cfe9ece87fa2";
-          sha256 = "0cv7jpvdfdha4hrnjr887jv1pc6vcrxv2ahy7z6x562y7fd77gg9";
-        };
-      }
-    ];
+    plugins =
+      let
+        fromNixpkgs = pkg: { name = pkg.name; src = pkg.src; };
+      in
+      with pkgs.fishPlugins; [
+        (fromNixpkgs tide)
+        (fromNixpkgs fzf-fish)
+        {
+          name = "ghq";
+          src = pkgs.fetchFromGitHub {
+            owner = "decors";
+            repo = "fish-ghq";
+            sha256 = "0cv7jpvdfdha4hrnjr887jv1pc6vcrxv2ahy7z6x562y7fd77gg9";
+            # date = "2021-07-16T13:17:09+09:00";
+            rev = "cafaaabe63c124bf0714f89ec715cfe9ece87fa2";
+          };
+        }
+      ];
     interactiveShellInit = ''
       bind \es __ghq_repository_search
+      # don't bind ctrl-t, it does nice things on macOS/BSD
+      set FZF_CTRL_T_COMMAND
+      set --export FZF_DEFAULT_OPTS '--cycle --layout=default --border --height=90% --preview-window=wrap --marker="*"'
       fzf_configure_bindings --directory=\cx\cf
     '';
     shellAliases = {