#! /usr/bin/env bash
AVOID="con\|utopiah@benetou.fr"

# TODO
#	invert from goal
#		 http://fabien.benetou.fr/Cookbook/Cognition#AnalysisOfTheUsageHistoriesOfTools
#	consider similar usage for more than bash
#		find ~ -name "*history*"
#		~/.vimperator/info/default/history-command (specific JSON format)
#		~/.newsbeuter/history.cmdline
#		code repository per programming language (PHP, Processing, JavaScript, ... and bash too!)
#			http://fabien.benetou.fr/Tools/Mercurial#PotentialExtensions
#			http://fabien.benetou.fr/Cookbook/Cognition#LearningNewLanguage
#	see also logs_own_vocabulary

echo consider also http://fabien.benetou.fr/Tools/ and to do exercises
# warning, do not miss the environment e.g. http://mywiki.wooledge.org/BashGuide/

cat ~/.bash_history | sed "s/ /\n/g" | grep "^[[:alpha:]]" | sort | uniq -c | grep -v $AVOID | sort -n | tail | sed "s, \([a-zA-Z].*\), \1\t( http://unixhelp.ed.ac.uk/CGI/man-cgi?\1 ) ,"
# simpler version for just the first word, which is bad for commands like sort which never appear first
#cat ~/.bash_history | sed "s/ .*//" | sort  | uniq -c | sort -n | tail