feat: Readline
This commit is contained in:
45
modules/home/users/crumb/readline.nix
Normal file
45
modules/home/users/crumb/readline.nix
Normal file
@@ -0,0 +1,45 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.sydnix.users.crumb.readline;
|
||||
in {
|
||||
options.sydnix.users.crumb.readline.enable
|
||||
= lib.mkEnableOption "Readline, à la crumb";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.readline = {
|
||||
enable = true;
|
||||
extraConfig = ''
|
||||
# Unfortunately, the Vi mode is... bad!
|
||||
set editing-mode emacs
|
||||
|
||||
# Mimmic Comint/Eshell binds.
|
||||
C-k: history-substring-search-backward
|
||||
C-j: history-substring-search-forward
|
||||
C-s: reverse-search-history
|
||||
|
||||
set history-preserve-point on
|
||||
|
||||
set bell-style none
|
||||
|
||||
set blink-matching-paren on
|
||||
|
||||
# Inhibit that god-awful double-tab bullshit.
|
||||
set show-all-if-ambiguous on
|
||||
set show-all-if-unmodified on
|
||||
set completion-ignore-case on
|
||||
set completion-map-case on
|
||||
|
||||
# Append a '/' when completing the full name of a symlink to a
|
||||
# directory. This mirrors the behaviour when completing real
|
||||
# directories.
|
||||
set mark-symlinked-directories on
|
||||
|
||||
# Visually hint at a file's type in completions.
|
||||
set visible-stats on
|
||||
set colored-stats on
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user