aboutsummaryrefslogtreecommitdiff
path: root/home/profiles/zsh
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--home/profiles/zsh.nix (renamed from home/profiles/zsh/default.nix)22
-rw-r--r--home/profiles/zsh/completion-style.zsh42
-rw-r--r--home/profiles/zsh/new-go-project.zsh19
-rw-r--r--home/profiles/zsh/options.zsh27
-rw-r--r--home/profiles/zsh/prompt.zsh17
-rw-r--r--home/profiles/zsh/tmux.zsh9
6 files changed, 11 insertions, 125 deletions
diff --git a/home/profiles/zsh/default.nix b/home/profiles/zsh.nix
index 38450ab..3da6baa 100644
--- a/home/profiles/zsh/default.nix
+++ b/home/profiles/zsh.nix
@@ -6,16 +6,17 @@
enable = true;
dotDir = ".config/zsh";
+ defaultKeymap = "emacs";
enableCompletion = true;
enableAutosuggestions = true;
history = {
size = 500000;
save = 500000;
- extended = false;
+ extended = true;
ignoreSpace = true;
ignoreDups = true;
- share = false;
+ share = true;
# see
# https://github.com/nix-community/home-manager/blob/32a7da69dc53c9eb5ad0675eb7fdc58f7fe35272/modules/programs/zsh.nix#L537
path = "${config.xdg.dataHome}/zsh/zsh_history";
@@ -38,14 +39,13 @@
dhcp-leasese = "xdg-open http://192.168.6.1:8067/";
};
- defaultKeymap = "emacs";
-
- initExtra = lib.concatMapStrings builtins.readFile [
- ./completion-style.zsh
- ./options.zsh
- ./prompt.zsh
- ./tmux.zsh
- ./new-go-project.zsh
- ];
+ prezto = {
+ enable = true;
+ prompt = { theme = "pure"; };
+ pmodules = [
+ "prompt"
+ "git"
+ ];
+ };
};
}
diff --git a/home/profiles/zsh/completion-style.zsh b/home/profiles/zsh/completion-style.zsh
deleted file mode 100644
index 79a4e68..0000000
--- a/home/profiles/zsh/completion-style.zsh
+++ /dev/null
@@ -1,42 +0,0 @@
-# 'ctrl-x r' will complete the 12 last modified (mtime) files/directories
-zle -C newest-files menu-complete _generic
-# Use "*newest-files" so that it matches both "newest-files" and
-# "load-completion-and-newest-files".
-zstyle ':completion:*newest-files:*' completer _files
-zstyle ':completion:*newest-files:*' file-patterns '*(omN[1,12])'
-zstyle ':completion:*newest-files:*' menu select yes
-zstyle ':completion:*newest-files:*' sort false
-zstyle ':completion:*newest-files:*' matcher-list 'b:=*' # important
-
-# colors for zsh file name completion
-zmodload zsh/complist
-zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}
-
-# Show a prompt on selection
-zstyle ':completion:*' select-prompt '%SScrolling active: current selection at %p%s'
-
-# Use arrow keys in completion list
-zstyle ':completion:*' menu select
-
-# Group results by category
-zstyle ':completion:*' group-name ''
-
-# Keep directories and files separated
-zstyle ':completion:*' list-dirs-first true
-
-# match uppercase from lowercase
-zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
-
-# Filename suffixes to ignore during completion (except after rm command)
-zstyle ':completion:*:*:(^rm):*:*files' ignored-patterns '*?.old'
-
-# command for process lists, the local web server details and host completion
-# on processes completion complete all user processes
-zstyle ':completion:*:processes' command 'ps -au$USER'
-
-# Completion formatting and messages
-zstyle ':completion:*' verbose yes
-zstyle ':completion:*:descriptions' format '%B%d%b'
-zstyle ':completion:*:messages' format '%d'
-zstyle ':completion:*:warnings' format 'No matches for: %d'
-zstyle ':completion:*:corrections' format '%B%d (errors: %e)%b'
diff --git a/home/profiles/zsh/new-go-project.zsh b/home/profiles/zsh/new-go-project.zsh
deleted file mode 100644
index 0b96a34..0000000
--- a/home/profiles/zsh/new-go-project.zsh
+++ /dev/null
@@ -1,19 +0,0 @@
-new-go-project() {
- local project_name=$1
-
- echo "> creating ${project_name}"
- cd ~/workspace/
- mkdir $project_name
- cd $project_name
-
- echo "> initializing the git repository"
- git init .
-
- echo "> setting the default template for go projects"
- nix flake init -t ~/workspace/world/templates#go
- direnv allow
-
- echo "> creating initial commit, touch your yubikey"
- git add .
- git commit -m 'initial commit'
-}
diff --git a/home/profiles/zsh/options.zsh b/home/profiles/zsh/options.zsh
deleted file mode 100644
index 6d39bc1..0000000
--- a/home/profiles/zsh/options.zsh
+++ /dev/null
@@ -1,27 +0,0 @@
-# Show an error when a globbing expansion doesn't find any match
-setopt nomatch
-
-# List on ambiguous completion and Insert first match immediately
-setopt autolist menucomplete
-
-# Use pushd when cd-ing around
-setopt autopushd pushdminus pushdsilent
-
-# Use single quotes in string without the weird escape tricks
-setopt rcquotes
-
-# Single word commands can resume an existing job
-setopt autoresume
-
-# Append commands to history as they are exectuted
-setopt inc_append_history_time
-
-# Remove useless whitespace from commands
-setopt hist_reduce_blanks
-
-# Those options aren't wanted
-unsetopt beep extendedglob notify
-
-# word select works like in bash
-autoload -U select-word-style
-select-word-style bash
diff --git a/home/profiles/zsh/prompt.zsh b/home/profiles/zsh/prompt.zsh
deleted file mode 100644
index 8a3efa9..0000000
--- a/home/profiles/zsh/prompt.zsh
+++ /dev/null
@@ -1,17 +0,0 @@
-setopt prompt_subst
-
-autoload -Uz vcs_info
-
-# display the name of the branch
-zstyle ':vcs_info:git*' formats " [%b]"
-zstyle ':vcs_info:*' enable git
-
-precmd () { vcs_info }
-PROMPT='%m%f:%F{green}%~%f%F{yellow}$vcs_info_msg_0_ %F{reset}'
-
-# For tramp (emacs).
-if [ "$TERM" = "dumb" ]; then
- unset PROMPT
- PS1='$ '
- unsetopt zle
-fi
diff --git a/home/profiles/zsh/tmux.zsh b/home/profiles/zsh/tmux.zsh
deleted file mode 100644
index 97944f5..0000000
--- a/home/profiles/zsh/tmux.zsh
+++ /dev/null
@@ -1,9 +0,0 @@
-# If we're not in an ssh connection, and tmux is installed, and we're
-# not already in a tmux session, attach to the session named
-# 'default', and if the session does not exist, start one named
-# 'default'
-if [ -z "$SSH_CONNECTION" ]; then
- if command -v tmux &> /dev/null && [ -z "$TMUX" ]; then
- tmux attach -t default || tmux new -s default
- fi
-fi