Skip to content

Instantly share code, notes, and snippets.

@boneskull
Created October 21, 2015 08:06
Show Gist options
  • Save boneskull/4b6378784e2d719dd543 to your computer and use it in GitHub Desktop.
Save boneskull/4b6378784e2d719dd543 to your computer and use it in GitHub Desktop.
Open any man page (using "man") in Dash.app
function encodeuri {
local string="${@}"
local strlen=${#string}
local encoded=""
for (( pos = 0; pos < strlen; pos ++ )); do
c=${string:$pos:1}
case "$c" in
[-_.~a-zA-Z0-9]) o="${c}" ;;
*) printf -v o '%%%02x' "'$c"
esac
encoded+="${o}"
done
echo "${encoded}"
}
function man {
if [[ -d /Applications/Dash.app && \
-d "$HOME/Library/Application Support/Dash/DocSets/Man_Pages" ]]; then
/usr/bin/open dash://manpages:`encodeuri ${@}`
else
/usr/bin/man ${@}
fi
}
@bahshat
Copy link

bahshat commented Aug 31, 2019

It opens your man pages directly in Dash app.
Just go and integrate man plugin of Dash app. The plugin would read all pages available on your system. You can also search any Unix/Linux command in Dash app itself.

Or

Above .bash_profile addition would open man pages in Dash directly by hitting command directly in the terminal.

Eg.
$ man ls
Dash App

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment