OCInkjet.com 728x90 banner, image is updated by season.

Apple-AppleScript-Script-Editor-Logo

Shop HP Download Store and get $5 OFF Orders Over $50! Use Promo Code SPEND150SAVE15

Basic AppleScript Dialog:

display dialog "Your text here" with icon stop buttons {"OK"} default button {"OK"} giving up after 5

'giving up after 5' will automatically close the script after the indicated interval of time has elapsed.

HTML Anchor Code

Here is a sample of how to write code to link one part of your blog page to another:

<a name = "By Email">[optional text]</a> --place this where you want the link to go <a href = "#By Email">By Email</a> --this is the actual link

more HTML

HTML Code to Link to Other Web Pages

Here is a sample of code to link to another page. this is similar to the anchor code, except that the destination code is the url of the destination site:

<a href= "www.webSite.
com"> Website Name</a>

--just replace "www.webSite.
com"
with the actual url destination site and replace 'Website Name' with the prompt that the user will see.
Apple-IIc-Apple-Screen

AppleScript Note:

It might be interesting to those of you who are AppleScript enthusiasts that the HyperCard (HyperTalk) project was the prototype back in the '80's of what became the system-wide Applescript language (akin to JavaScript) that is in use today.
Apple-Mac-512-Screen
3d-iMac-Large

Trapping for List Dialog Errors

With 'List Dialog' type dialogs, since errors cannot be intercepted in an 'on error' handler, there is no 'normal' way to trap for 'Cancel' which, of course, would result in some sort of undesirable error dialog such as 'User cancelled. Error number -128'. Here is an example of one simple way I have found to trap for this type of error: set x to (choose from list {"Joe","Amy",
"Bill"} with prompt "Choose a record:")
if x is false then
else
set targetItem to (x as text)
show every record whose cell "Name" contains x
end if
When the user clicks on 'Cancel', the variable x is assigned the boolean value false. So all you have to do is set up a conditional to deal with that and to perform the usual statements otherwise.

Learning AppleScript

Create Multiple Folders with Terminal

If you are more of a techy kind of person and are comfortable with using Terminal, here is a script you can use to easily create multiple folders:

First, for a single folder, type in: mkdir "Folder 1" --or whatever you want to name your folder, this creates a new directory, which, in effect is a new folder. To place multiple items in the 'Documents' folder: cd/Users/ Administrator/ Documents mkdir "Folder 1" "Folder 2" "Folder 3" To quickly create multiple folders, create a text file with the desired folder names (as many as you want) and name it something like 'folderList .txt'. Next type this in Terminal: cat folderList.txt |xargs mkdir Or you could create folders with the same prefix by entering: mkdir "Invoices " {"Corporate", "Individual", "Pro-Bono"}

Digg! Digg This!!

Mac LC III (1994), the first Mac that I ever owned, the CD-Rom and Zip drive were added much later.

Mac LC III (1994), the first Mac that I ever owned, the CD-Rom and Zip drive were added much later.

Basic HTML

Here is an example of a very simple HTML document:

<html>
<head>
<title>Basic HTML Document</title>
</head>
<body>
Your text goes here
</body>
</html>

more HTML

Apple Beveled BlueThere are times when you want to extract part of a text string from another for some specific purpose. There are two basic methods and each has its advantages and disadvantages. We’ll start with a combination of offset and reverse to remove the suffix from “seattleSunset.jpg”:

set jpgFile to characters of "seattleSunset.jpg"
–This gives us the characters as a list: {“s”, “e”, “a”, “t”, “t”, “l”, “e”, “S”, “u”, “n”, “s”, “e”, “t”, “.”, “j”, “p”, “g”}
set jpgFile to (reverse of jpgFile) as string
–>result: “gpj.tesnuSelttaes”

Or we can combine the statements into one:

set jpgFile to (reverse of characters of "seattleSunset.jpg") as string

–>result: “gpj.tesnuSelttaes”

Next we extract the file name without the prefix:

set periodDelimiter to offset of "." in jpgFile
set jpgFile to text (periodDelimiter + 1) thru -1 of jpgFile

–>result: “tesnuSelttaes”

set AppleScript's text item delimiters to {""} –we must reset the item delimiters to empty for this to work correctly
set jpgFile to (reverse of characters of jpgFile) as string
–After resetting the item delimiters, we use the same syntax as above.

First, remembering that what is in parentheses is performed first, jpgFile is coerced to list form and converted to the reverse order.

Then it is coerced back to a string: “seattleSunset”

If we start with set jpgFile to characters of “seattleSunset.jpeg” we still get the result: “seattleSunset”

Note that we could set the text item delimiters to “.” to get the same result:

set AppleScript's text item delimiters to "."
set jpgFile to text item 1 of "seattleSunset.jpg"

–>result: “seattleSunset”

120x20 thumb black

The problem with this method is that if we have something such as “http://www.scriptsforapple.com/” (my website), the result is: “http://www”, which is probably not the result that we want. The original version, however gives us “http://www.scriptsforapple” which is useful if we want to change “.com/” to “.org/”:

set AppleScript's text item delimiters to "."
set theURL to "http://www.scriptsforapple.com/"
set AppleScript's text item delimiters to {""}
set trimURL to (reverse of characters of theURL) as string
set periodDelimiter to offset of "." in trimURL
set trimURL to text (periodDelimiter + 1) thru -1 of trimURL
set trimURL to (reverse of characters of trimURL) as string
set theURL to trimURL & ".org/"

–>”http://www.scriptsforapple.org/”

The point here being that if you use this method, you can get the correct result for many, if not most, cases that you will encounter. That is not to say that there are not times when using text item delimiters alone will not be the right way to go depending upon the situation.


Give me your opinion on this post:
hyperscripter@gmail.com or http://twitter.com/hyperscripter.

1,718 comments to Extracting Text Using Offset and Reverse vs Text Item Delimiters

  • It a new idea! Just wanna say thank you for news you have got diffused. Just continue publishing one of these post. I am going to a loyal reader, thanks a lot.

  • Whatever is begun in anger ends in shame. Seneca -Benjamin Franklin. – Benjamin Franklin

  • Thanks for the wonderful information :)

  • The UGG Bailey vital is truly versatile granted that it could be positioned on up or folded lowering for just about any numerous looksequined uggs Then make particular you

  • sex

    I have been surfing online more than 3 hours today, yet I never found any interesting article like yours. It’s pretty worth enough for me. In my view, if all website owners and bloggers made good content as you did, the web will be much more useful than ever before.

  • Several thanks for the excellent posting. I am glad I have taken the time to see this.

  • I just identified your blog though I’d been actually building a browse Yahoo and google, searching for something similar but is not fairly the identical… Nonetheless Now i am over able to read it, since you also seem to have a unique perspective. We would state it can be up to discussion… yet I am frightened don’t allow you to be my own foe, ‘, ‘, haya… In any case, if you need to chat at length concerning this, remember to answer this brief review and also Cover aim to subscribe so I’m going to be warned and come back for much more…

  • I’m also writing to let you understand what a really good encounter my cousin’s girl undergone reading your site. She even learned numerous details, including what it is like to possess an incredible helping heart to get other people with no trouble fully grasp specified impossible issues. You actually surpassed readers’ expected results. Thanks for showing those useful, healthy, revealing and cool tips about your topic to Julie.

  • Thank you for another magnificent article. Where else could anyone get that kind of info in such an ideal way of writing? I’ve a presentation next week, and I am on the look for such information.

  • Thank you so much regarding giving us an update on this subject on your web-site. Please realise that if a fresh post becomes available or in case any adjustments occur with the current post, I would be considering reading a lot more and focusing on how to make good utilization of those methods you write about. Thanks for your efforts and consideration of other people by making this website available.

  • I wanted to follow up and let you know how considerably I valued discovering your website today. I’d consider it a good honor to operate at my office and be able to make real use of the tips shared on your web site and also engage in visitors’ comments like this. Should a position connected with guest article writer become available at your end, i highly recommend you let me know.

  • Q: What does a blonde owl say? A: What, what?

  • I’m really like within your blog…will get found the key to competently asap. I’m really satisfied in addition to your text competencies also with all the present in your web log. Is that this a rewarded masquerade or did you modify it your own? Anyway sustain the excellent high quality composing, it’s rare to determine an exquisite weblog of this nature one lately..

  • Great report. We determination certainly results this information using my pals. Many thanks payment the details.

  • Many thanks your great job posting! I seriously loved analyzing it, you actually are an excellent writer.I’ll confirm that I bookmark your blog which enables you to come back within the foreseeable time to come. I really want to urge maintain one’s fantastic job, have got a good day time!

  • Definitely, exactly what a grand web log and instructive topics, I definitely may bookmark your specific website or blog.All the Best!

  • Försök att bara ta dig igenom veckan utan att skapa några onödiga gräl och dispyter så skall du se att du ser ljusare på situationen inom en snar framtid.

  • I should exhibit my love for your specific support granting assist upto persons that need treatment for that location of concern. Your personal enthusiasm to actually receiving the note all-around came to be pretty invaluable but has in each and every situation activated girls like me to be at their likes and dislikes. This new friendly and pleasant guidance indicates tons with me and substantially excess to firmly my mates. Best wishes; from a lot of people.

  • One necessarily oblige to design severely articles I’d status. This is certainly the really very first time I frequented your online site web page consequently far? I shocked using the research you generated to make this particularly certain submit amazing. Splendid method!

Leave a Reply

  

  

  

HTML Guide from Peachpit Press

$1.99 Web Hosting at Go Daddy 120x240
Apple-Computer-Sticker-Old

iPhoto 6

Apple-ID-Badge
Create Multiple Folders with Terminal

If you are more of a techy kind of person and are comfortable with using Terminal, here is a script you can use to easily create multiple folders:

First, for a single folder, type in: mkdir "Folder 1" --or whatever you want to name your folder, this creates a new directory, which, in effect is a new folder. To place multiple items in the 'Documents' folder: cd/Users/ Administrator/ Documents mkdir "Folder 1" "Folder 2" "Folder 3" To quickly create multiple folders, create a text file with the desired folder names (as many as you want) and name it something like 'folderList.txt'. Next type this in Terminal: cat folderList.txt |xargs mkdir Or you could create folders with the same prefix by entering: mkdir "Invoices " {"Corporate", "Individual", "Pro-Bono"}

AppleScript 1-2-3

Stop by every day to shop our new Deal of the Day at BarnesandNoble.com!

Add http://www.scriptsforapple.com to Technorati Favorites

Apple-iMac-Rainbow

Digg! Digg This!!

An AppleScript to Verify a Date

Run this in the Script Editor:

set dateRecord to (current date)
set defaultDate to (date string of dateRecord)
try
set apptDate to text returned of (display dialog "Enter appointment date:" default answer defaultDate buttons {"Set"} default button {"Set"})
set datetext to apptDate as text
date apptDate --if an invalid date is entered, the next dialog is aborted and it triggers the error alert below.
display dialog datetext & " is a valid date." with icon note buttons {"OK"} default button {"OK"}
on error
set alertText to "An error has occurred!"
set messageText to quote & datetext & quote & " is an invalid date."
display alert alertText message messageText as warning buttons {"OK"} default button "OK" giving up after 15
return
end try