From 9d756c27483707b7ca96eaeb1de82e112a946a02 Mon Sep 17 00:00:00 2001 From: Julian Prein Date: Fri, 20 Sep 2024 16:27:58 +0200 Subject: [PATCH] zsh:alias: Add `duration` that formats seconds --- .config/vim/vimrc.d/40-keys.vim | 2 ++ .config/zsh/zshrc.d/30-alias.zsh | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/.config/vim/vimrc.d/40-keys.vim b/.config/vim/vimrc.d/40-keys.vim index dcb4d66..d2ec08a 100644 --- a/.config/vim/vimrc.d/40-keys.vim +++ b/.config/vim/vimrc.d/40-keys.vim @@ -268,6 +268,8 @@ augroup END nnoremap utc ciw=strftime("%F %T", @") vnoremap utc s/\v(^\|[^0-9])\zs[0-9]{10}\ze([^0-9]\|$)/\=strftime("%F %T",submatch(0))/g +" TODO: sec that uses the `duration` alias from zsh + " Relax mappings that jump to opening braces on first column: Just make sure " they are on an unindented line. This is useful for files that use a different " coding style guide than the kernel and similar. diff --git a/.config/zsh/zshrc.d/30-alias.zsh b/.config/zsh/zshrc.d/30-alias.zsh index 24e7862..b709263 100644 --- a/.config/zsh/zshrc.d/30-alias.zsh +++ b/.config/zsh/zshrc.d/30-alias.zsh @@ -131,6 +131,12 @@ fi alias sizes='du -sch * | sort -h' # Count number of occurrences for every line in stdin alias count='sort | uniq -c | sort -n' + # Inspired by https://stackoverflow.com/a/54541337 + # > echo 1747502 | duration + # 20d 5h 25m 2s + # + # TODO: do not print values if they are zero + alias duration="dc -e '?60~r60~r24~rn[d ]nn[h ]nn[m ]nn[s]p'" # Precommand modifiers alias mkdir='nocorrect mkdir'