MACSCRPT Archives

October 2008

MACSCRPT@LISTSERV.DARTMOUTH.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
RJay Hansen <[log in to unmask]>
Reply To:
Macintosh Scripting Systems <[log in to unmask]>
Date:
Fri, 3 Oct 2008 10:59:31 -0500
Content-Type:
text/plain
Parts/Attachments:
text/plain (116 lines)
Hmmm... It comes back with a -1700 error: Can't make "{\\rtf1\\ansi\ 
\ansicpg1252\\cocoartf949\\cocoasu.... etc. into text.

I'm not understanding what the purpose of that part of the script is  
for?

rjay


On Oct 2, 2008, at 5:17 PM, Paul Skinner wrote:

> 	This version should be able to handle any filesize that the read  
> command can handle. No text accumulation, it writes as it reads. I  
> think this is pretty solid; I'll stop now.
>
>
> try
> 	set head to "{\\rtf1\\ansi\\ansicpg1252\\cocoartf949\\cocoasubrtf350
> {\\fonttbl\\f0\\fswiss\\fcharset0 Helvetica;}
> {\\colortbl;\\red255\\green255\\blue255;}
> \\margl1440\\margr1440\\vieww12240\\viewh15840\\viewkind1
> \\pard\\tx720\\tx1440\\tx2160\\tx2880\\tx3600\\tx4320\\tx5040\ 
> \tx5760\\tx6480\\tx7200\\tx7920\\tx8640\\ql\\qnatural\\pardirnatural
>
> \\f0\\fs24 \\cf0 "
> 	set tail to "}"
> 	
> 	try
> 		tell application "Finder"
> 			activate
> 			set inputFile to choose file with prompt "Choose an underscore  
> delimited plaintext file for input."
> 			set inputFileName to name of inputFile
> 			set AppleScript's text item delimiters to "."
> 			copy text item 1 of inputFileName to inputFileName
> 			set AppleScript's text item delimiters to ""
> 			set inputFilePath to ((container of inputFile) as alias) as text
> 		end tell
> 		
> 		set inputFileHandle to open for access inputFile
> 		set outputFileHandle to open for access file (inputFilePath &  
> inputFileName & "_Italicized.rtf") with write permission
> 		write head to outputFileHandle as text
> 	on error e number n
> 		display dialog "Error: " & (n as text) & return & e
> 	end try
> 	
> 	set textoutput to {}
> 	
> 	set evenOddOpenCloseItalicsToggle to 0
> 	repeat
> 		try
> 			set currentChunk to read inputFileHandle until "_"
> 			if evenOddOpenCloseItalicsToggle is 0 then
> 				if currentChunk is "_" then
> 					write ((ASCII character 32) & "\\i " as text) to  
> outputFileHandle as text
> 				else
> 					write (text 1 thru -2 of currentChunk) & (ASCII character 32)  
> & "\\i " to outputFileHandle as text
> 				end if
> 				set evenOddOpenCloseItalicsToggle to 1
> 			else
> 				write ((text 1 thru -2 of currentChunk) & (ASCII character 32)  
> & "\\i0" as text) to outputFileHandle as text
> 				set evenOddOpenCloseItalicsToggle to 0
> 			end if
> 		on error e number n
> 			if n is not -39 then display dialog "Error: " & (n as text) &  
> return & e
> 			exit repeat
> 		end try
> 	end repeat
> 	write tail to outputFileHandle as text
> 	try
> 		close access inputFileHandle
> 		close access outputFileHandle
> 	end try
> on error e number n
> 	display dialog "Error: " & (n as text) & return & e
> end try
>
>
>
>
> On Oct 2, 2008, at 5:40 PM, Paul Skinner wrote:
>
>> This got me to thinking and I knocked this out. It generates a  
>> file named "(originalFilename)_Italicized.rtf" right next to the  
>> source file you choose. Let me know how this does on you r large  
>> text file, I'm curious.
> ...
>>
>>
>> On Oct 2, 2008, at 4:36 PM, RJay Hansen wrote:
>>
>>> On Oct 2, 2008, at 1:59 PM, Bill Steele wrote:
>>>
>>>> Unless you need this to happen in front of people's eyes, you  
>>>> don't have to do it in Tex-Edit. You can operate on an  
>>>> Applescript string variable with the search features in the ACME  
>>>> Script Widgets or Satimage OSAXen.
>>>
>>> Can you do the text styling though? From what I've been able to  
>>> determine, you can't although I'd be happy to be shown I'm wrong.
>>>
>>>> Finding what's between two underscores also could be a regular  
>>>> expression job.
>>>
>>> I actually thought of this yesterday when someone on the A.S.S.  
>>> list mentioned regular expressions. However, I've got that part  
>>> of the script working fine. I suspect using regular expressions  
>>> to do that would be quicker, but what I've got goes pretty fast.
>>>
>>> RJay

ATOM RSS1 RSS2