[TxMt] View Man Page in Safari command

Chris Thomas chris at m-audio.com
Thu Jan 13 01:48:57 UTC 2005


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
"




More information about the textmate mailing list