summaryrefslogtreecommitdiff
path: root/users/id1000.scm
diff options
context:
space:
mode:
authorMarek Paśnikowski <marek@marekpasnikowski.pl>2025-01-10 18:10:45 +0100
committerMarek Paśnikowski <marek@marekpasnikowski.pl>2025-01-10 18:10:45 +0100
commitccf660f3d2a545820d47e54d599cbae0db86d29d (patch)
treec6c190708579c3452464038a4ff457ea8864a618 /users/id1000.scm
parent9f3e70f740551f380f358007b4ec218b30273d9c (diff)
id1000: disable tab-completion
Tab-completion was too unpredictable for reliable use. Tab-completion in Bash is a feature that enables users to complete commands, file paths, and other arguments by pressing the Tab key. When a user types part of a command or file name and presses Tab, Bash attempts to auto-complete the input based on available options in the current directory or the system's command list. If the input is unique, Bash completes it automatically. If there are multiple possibilities, pressing Tab twice lists all matching options. In practice, the lack of explicit indication of a unique completion led to spamming of the tab key, countering supposed efficiency gains and breaking focus.
Diffstat (limited to 'users/id1000.scm')
-rw-r--r--users/id1000.scm11
1 files changed, 10 insertions, 1 deletions
diff --git a/users/id1000.scm b/users/id1000.scm
index 91725eb..e112fdf 100644
--- a/users/id1000.scm
+++ b/users/id1000.scm
@@ -5,6 +5,7 @@
;; home-profile-service-type
;; home-xdg-configuration-files-service-type
#:use-module (gnu home services)
+ #:use-module (gnu home services shells)
;; gparted
#:use-module (gnu packages disk)
@@ -477,6 +478,13 @@
;;;
+(define bash
+ (simple-service 'bash-tab-completion
+ home-bash-service-type
+ (home-bash-extension
+ (bashrc (list (plain-file "tab-completion"
+ "bind 'set disable-completion on'"))))))
+
(define dkimproxy-out-configuration*
(dkimproxy-out-configuration
(listen "127.0.0.1:10027")
@@ -573,7 +581,8 @@
packages))
(%suweren-home-services* (%suweren-home-services host-name*))
- (user-services (list emacs-software
+ (user-services (list bash
+ emacs-software
git-configuration
git-software
profile))