This gets more interesting once we have a way to direct HTML to the preview window. Another thing that would be nice: command execution from URLs, which would allow the references to other man pages to work. But there are -- of course -- security implications to that feature. Perhaps if it only works in the preview window, not system-wide.
ruby -e " def error( message ) %x{osascript <<END tell application "SystemUIServer" activate display dialog "#{message}" end tell END } end
def ask(question, answer = '$TM_SELECTED_TEXT') %x{osascript <<END tell application "SystemUIServer" activate display dialog "#{question}" default answer "#{answer}" set answername to text returned of the result do shell script ("/bin/echo " & answername) end tell END} end
error('Xcode tools must be installed to view man pages') if not File.exist?('/Library/Application Support/Apple/Developer Tools/Plug-ins/DocViewerPlugIn.xcplugin/Contents/Resources/rman')
name = ask('Display man page for which command?') name.chomp!
temptemp = %Q{/tmp/tmp.#{name}.`whoami`.TMmantemp} temphtml = %Q{/tmp/tmp.#{name}.`whoami`.html}
%x{man #{name} > #{temptemp}}
# generate HTML and open it if successfully found the entry if not $?.success? then # puts 'No manual entry for ' + name %x{open -a TextMate &} # switch back to TextMate else %x{cat #{temptemp} | "/Library/Application Support/Apple/Developer Tools/Plug-ins/DocViewerPlugIn.xcplugin/Contents/Resources/rman" -fHTML > #{temphtml}} %x{open #{temphtml}} end "