stow - symlink farm manager
https://www.gnu.org/software/stow
https://www.youtube.com/watch?v=y6XCebnB9gs
stow - symlink farm manager
https://www.gnu.org/software/stow
https://www.youtube.com/watch?v=y6XCebnB9gs
ripgrep - line oriented search tool
https://github.com/BurntSushi/ripgrep
eg
rg fast README.mdrg 'fast\w+' README.mdrg 'fast\w*' README.md
recursive search: rg 'fn write\('
Home page: http://calcurse.org/
vim .calcurse/conf (edit as desired)
format.inputdate=2
format.outputdate=%F: %a
# list 28 days appointments
calcurse -r28 --format-apt='- %S -> %E\n\t%m\n%N'
# list appointment for a day (dd/mm/yyyy)
calcurse -d 09/11/2026
# list appointment for number of days
calcurse --day 14
calcurse -d 09/11/2025 --day 7
calcurse --query --from 11/11/2025 --to 30/11/2025
# search (case sensitive) for appointment
calcurse --day 28 --search ai1wmbackup
# list todo
calcurse -t --format-todo '(%p) %m\n'
# export as ical
calcurse --export=ical > calcurse_export.ical
# email appointments 3 days ago to 4 days after today with fcron
%daily * 1-23 /bin/bash -c 'calcurse -d $(date --date="3 days ago" +%m/%d/%Y) --day 7 --todo --appointment | mail -s "[calcurse] upcoming appointment!" user@email.com
# Youtube link: https://www.youtube.com/watch?v=hvc-pHjbhdE
https://web.archive.org/web/20131228142311/http://practicalthought.com/sl/
sl takes the most common use of Unix ls, to display the files in a directory compactly in multiple columns, and makes it substantially more useful.
$ cat .bash_functions
# Automatically do an ls after each cd
cd() {
if [ -n "$1" ]; then
#builtin cd "$@" && ls --group-directories-first
builtin cd "$@" && sl
else
#builtin cd ~ && ls --group-directories-first
builtin cd ~ && sl
fi
}
In .bashrc add line
source ~/.bash_functions
ccze - log colorizer sudo tail -f /var/log/syslog | ccze