diff options
Diffstat (limited to 'user-profiles')
| -rw-r--r-- | user-profiles/zsh/default.nix | 1 | ||||
| -rw-r--r-- | user-profiles/zsh/p10k.zsh | 11 | ||||
| -rw-r--r-- | user-profiles/zsh/zshrc | 26 |
3 files changed, 36 insertions, 2 deletions
diff --git a/user-profiles/zsh/default.nix b/user-profiles/zsh/default.nix index 58fa0376..88873c1a 100644 --- a/user-profiles/zsh/default.nix +++ b/user-profiles/zsh/default.nix | |||
| @@ -21,6 +21,7 @@ in { | |||
| 21 | source "${cfg.home.homeDirectory}/${p10kZsh}" | 21 | source "${cfg.home.homeDirectory}/${p10kZsh}" |
| 22 | ''; | 22 | ''; |
| 23 | initExtra = lib.mkAfter '' | 23 | initExtra = lib.mkAfter '' |
| 24 | source ${./zshrc} | ||
| 24 | source "${pkgs.zsh-syntax-highlighting}/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" | 25 | source "${pkgs.zsh-syntax-highlighting}/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" |
| 25 | ''; | 26 | ''; |
| 26 | }; | 27 | }; |
diff --git a/user-profiles/zsh/p10k.zsh b/user-profiles/zsh/p10k.zsh index fb9af12c..ff66f0df 100644 --- a/user-profiles/zsh/p10k.zsh +++ b/user-profiles/zsh/p10k.zsh | |||
| @@ -37,6 +37,7 @@ | |||
| 37 | vcs # git status | 37 | vcs # git status |
| 38 | # =========================[ Line #2 ]========================= | 38 | # =========================[ Line #2 ]========================= |
| 39 | newline # \n | 39 | newline # \n |
| 40 | dir | ||
| 40 | prompt_char # prompt symbol | 41 | prompt_char # prompt symbol |
| 41 | ) | 42 | ) |
| 42 | 43 | ||
| @@ -100,6 +101,9 @@ | |||
| 100 | time # current time | 101 | time # current time |
| 101 | # =========================[ Line #2 ]========================= | 102 | # =========================[ Line #2 ]========================= |
| 102 | newline | 103 | newline |
| 104 | status | ||
| 105 | command_execution_time | ||
| 106 | time | ||
| 103 | # ip # ip address and bandwidth usage for a specified network interface | 107 | # ip # ip address and bandwidth usage for a specified network interface |
| 104 | # public_ip # public IP address | 108 | # public_ip # public IP address |
| 105 | # proxy # system-wide http/https/ftp proxy | 109 | # proxy # system-wide http/https/ftp proxy |
| @@ -500,7 +504,7 @@ | |||
| 500 | 504 | ||
| 501 | # Status when it's just an error code (e.g., '1'). No need to show it if prompt_char is enabled as | 505 | # Status when it's just an error code (e.g., '1'). No need to show it if prompt_char is enabled as |
| 502 | # it will signify error by turning red. | 506 | # it will signify error by turning red. |
| 503 | typeset -g POWERLEVEL9K_STATUS_ERROR=false | 507 | typeset -g POWERLEVEL9K_STATUS_ERROR=true |
| 504 | typeset -g POWERLEVEL9K_STATUS_ERROR_FOREGROUND=160 | 508 | typeset -g POWERLEVEL9K_STATUS_ERROR_FOREGROUND=160 |
| 505 | typeset -g POWERLEVEL9K_STATUS_ERROR_VISUAL_IDENTIFIER_EXPANSION='✘' | 509 | typeset -g POWERLEVEL9K_STATUS_ERROR_VISUAL_IDENTIFIER_EXPANSION='✘' |
| 506 | 510 | ||
| @@ -1540,7 +1544,10 @@ | |||
| 1540 | # - always: Trim down prompt when accepting a command line. | 1544 | # - always: Trim down prompt when accepting a command line. |
| 1541 | # - same-dir: Trim down prompt when accepting a command line unless this is the first command | 1545 | # - same-dir: Trim down prompt when accepting a command line unless this is the first command |
| 1542 | # typed after changing current working directory. | 1546 | # typed after changing current working directory. |
| 1543 | typeset -g POWERLEVEL9K_TRANSIENT_PROMPT=always | 1547 | typeset -g POWERLEVEL9K_TRANSIENT_PROMPT=off |
| 1548 | |||
| 1549 | function p10k-on-pre-prompt() { p10k display '1'=show '2/left/dir'=hide '2/right/(status|command_execution_time|time)'=hide } | ||
| 1550 | function p10k-on-post-prompt() { p10k display '2/left/(dir|prompt_char)'=show 'empty_line|1'=hide '2/right/(status|command_execution_time|time)'=show } | ||
| 1544 | 1551 | ||
| 1545 | # Instant prompt mode. | 1552 | # Instant prompt mode. |
| 1546 | # | 1553 | # |
diff --git a/user-profiles/zsh/zshrc b/user-profiles/zsh/zshrc new file mode 100644 index 00000000..3660ef27 --- /dev/null +++ b/user-profiles/zsh/zshrc | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | fancy-ctrl-z () { | ||
| 2 | emulate -LR zsh | ||
| 3 | if [[ $#BUFFER -eq 0 ]]; then | ||
| 4 | [[ -n $(jobs -s) ]] && bg | ||
| 5 | zle redisplay | ||
| 6 | else | ||
| 7 | zle push-input | ||
| 8 | fi | ||
| 9 | } | ||
| 10 | zle -N fancy-ctrl-z | ||
| 11 | bindkey '^Z' fancy-ctrl-z | ||
| 12 | |||
| 13 | function fancy-ctrl-d() { | ||
| 14 | zle || exit 0 | ||
| 15 | [[ -n $BUFFER ]] && return | ||
| 16 | typeset -g precmd_functions=(fancy-ctrl-d) | ||
| 17 | zle accept-line | ||
| 18 | } | ||
| 19 | zle -N fancy-ctrl-d | ||
| 20 | bindkey '^D' fancy-ctrl-d | ||
| 21 | setopt ignore_eof | ||
| 22 | |||
| 23 | # word navigation for urxvt | ||
| 24 | bindkey -e | ||
| 25 | bindkey ';5C' emacs-forward-word | ||
| 26 | bindkey ';5D' emacs-backward-word \ No newline at end of file | ||
