On 24 May 2021, at 22:37, Christopher Stone wrote:
On 05/24/2021, at 19:11, Duncan Thorne <[email protected]
<mailto:[email protected]>> wrote:
I'm pretty clueless with Applescript so please bear with me. I want
to copy text from a Safari table, paste it into a new BBEdit window
and do some text manipulation, mostly finding and replacing.
Hey Duncan,
This task is pretty simple if you know how, and a real head-scratcher
if you don't.
It's great to be able to record AppleScript, but it often produces
semi-useless results – unless you savvy AppleScript enough to be
able to rewrite the recording and pick out the good bits.
I almost never use it, BUT it sometimes comes in really handy when I
just can't figure out the syntax for something.
Appended is a script that will:
- Copy the selected text in Safari.
- Create a new BBEdit document with said text.
- Reset the size and position of the new document.
- Do one regex-based find/replace on the document.
- You can add more replace statements as needed.
This is a good script. Some feedback: as a matter of best practices and
future proofing, avoid targeting windows (or elements of them).
"make new text document" will return a reference to the document just
created.
The "text" property of a document provides access to the text without
going through the windowing system. It's also faster and avoids
complications that can arise when the 1:1 relationship between documents
and windows is not in effect (as has been the case since BBEdit started
supporting multiple documents per window, back whenever that was).
Thus:
set myDoc to make new text document with properties { text:
tableContent }
followed by
tell text of myDoc
-- do the replace in here
end tell
is recommended.
R.
--
Rich Siegel Bare Bones Software, Inc.
<[email protected]> <https://www.barebones.com/>
Someday I'll look back on all this and laugh... until they sedate me.
--
This is the BBEdit Talk public discussion group. If you have a feature request or need
technical support, please email "[email protected]" rather than posting here.
Follow @bbedit on Twitter: <https://twitter.com/bbedit>
---
You received this message because you are subscribed to the Google Groups "BBEdit Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/bbedit/9F85F2C7-5105-426B-A609-ECA60A235988%40barebones.com.