Jan
16
To use a script, copy it into Script Editor, and save it as a script. Create a folder with the same name as the relevant application, put your new script file inside it, and place it in ~/Library/Scripts/Applications/. When you’re all done, the path to the script should be something along the lines of ~/Library/Scripts/Applications/[App Name]/[Script Name].scpt. It will then appear in the Script Menu whenever that application is active. If you don’t have the Script Menu enabled, enable it.
Note that most of these are pretty bad—just a few lines that I’ve smashed together for my own purposes. So they’re poorly commented, have inconsistent variable names, and would probably kill you the first chance they got. That said, if you’re having trouble getting a script to work, feel free to send an email to contact at this website dot com.
System Tools
I put these in their own folder in the ~/Scripts directory, so they’re available in all applications.
- Convert Clipboard to HTML
- A very simple wrapper around John Gruber’s Markdown and SmartyPants. You’ll need to put a copy of each in the folders referenced within the script. I find this script to be more robust than the HumaneText service.
Convert Clipboard to HTML
Requires John Gruber’s Markdown and SmartyPants:
daringfireball.net/projects/
You’ll need to put a copy of each in the folder referenced within the script:
~/Library/Application Support/Scripts/
(This folder does not exist by default.)
set thesource to (the clipboard as string)
set theMacPath to (path to temporary items as text) & “markdown_temp”
set theXPath to quoted form of POSIX path of theMacPath
write_to_file(thesource, theMacPath, false)
set the clipboard to (do shell script “~/Library/Application\\ Support/Scripts/Markdown.pl ” & theXPath & ” | ~/Library/Application\\ Support/Scripts/SmartyPants.pl” as string)
display dialog “The contents of the clipboard have been converted to HTML.” with icon 1 buttons {”OK”} default button 1
to write_to_file(this_data, target_file, append_data)
try
set the target_file to the target_file as text
set the open_target_file to open for access file target_file with write permission
if append_data is false then set eof of the open_target_file to 0
write this_data to the open_target_file starting at eof
close access the open_target_file
return true
on error
try
close access file target_file
end try
return false
end try
end write_to_file
Eliminates any formatting from the text on the clipboard.
try
set the clipboard to (the clipboard as Unicode text)
on error the_error
display dialog the_error buttons {”OK”} default button 1 with icon 2
end try
Invokes the Apple color picker from anywhere, and prepares some useful
information about the color you chose.
property my_color : {0, 32896, 65535}
set my_color to choose color default color my_color
set red to round (first item of my_color) / 257
set green to round (second item of my_color) / 257
set blue to round (third item of my_color) / 257
set red_web to dec_to_hex(red)
set green_web to dec_to_hex(green)
set blue_web to dec_to_hex(blue)
set red_web to normalize(red_web, 2)
set green_web to normalize(green_web, 2)
set blue_web to normalize(blue_web, 2)
set red to normalize(red, 3)
set green to normalize(green, 3)
set blue to normalize(blue, 3)
set decimal_text to “R: ” & red & ” G: ” & green & ” B: ” & blue
set web_text to “#” & red_web & green_web & blue_web
set dialog_text to decimal_text & return & “Web: ” & web_text
set d to display dialog dialog_text with icon 1 buttons {”Cancel”, “Copy as Decimal”, “Copy for Web”} default button 3
if button returned of d is “Copy as Decimal” then
set the clipboard to decimal_text
else if button returned of d is “Copy for Web” then
set the clipboard to web_text
end if
on dec_to_hex(the_number)
if the_number is 0 then
return “0″
end if
set hex_list to {”0″, “1″, “2″, “3″, “4″, “5″, “6″, “7″, “8″, “9″, “A”, “B”, “C”, “D”, “E”, “F”}
set the_result to “”
set the_quotient to the_number
repeat until the_quotient is 0
set the_quotient to the_number div 16
set the_result to (item (the_number mod 16 + 1) of hex_list) & the_result
set the_number to the_quotient
end repeat
return the_result
end dec_to_hex
on normalize(the_number, the_length)
set the_number to the_number as string
if length of the_number ? the_length then
return the_number
end if
repeat until length of the_number is equal to the_length
set the_number to “0″ & the_number
end repeat
return the_number
end normalize
differently from mine. Makes use of a (very) tiny PHP script on my end:
(do shell script "curl http://ip.assortedgeekery.com/ -m 3") & return
on error
set myWANIP to ""
end try
try
set myAirportIP to "AirPort IP: " &
(do shell script "ipconfig getifaddr en1") & return
on error
set myAirportIP to ""
end try
try
set myEthernetIP to "Ethernet IP: " &
(do shell script "ipconfig getifaddr en0") & return
on error
set myEthernetIP to ""
end try
set myInfo to myWANIP & myEthernetIP & myAirportIP
if myInfo is not equal to "" then
display dialog myInfo buttons {"OK"} default button 1 with icon note
else
display dialog "Not Connected!" buttons {"OK"} default button 1 with icon 2
end if
<?php echo getenv('REMOTE_ADDR'); ?>
*)
try
set myWANIP to "External IP: " &
Comments
Leave a Reply