I thought of another situation.. what if you have single quotes inside double quotes or the other way? How will you handle that?
(Howard, hope you don't mind.. I borrowed a little from your script...) I added enhancements including multiple quote handling, file closing, better text formatting on printed messages....

Give this script a go:
code:
$Q = 0 
$R = 0
$C = 0
if Open (1,$f) = 0
While @error=0
$L = READLINE(1)
$M = LEN($L)
For $I = 1 to $M
$A=asc(substr($L,$i,1))
IF $A = 34 AND $R = 0
$Q = $Q + 1 & 1
ENDIF
IF $A = 39 AND $Q = 0
$R = $R + 1 & 1
Endif
If $A = 59 $I = $M
Else
If $Q|$R
$C = $C + 1
Else
If $A > 32 AND $A < 127
$C = $C + 1
Endif
Endif
Endif
Next
Loop
$ = Close(1)
Else
"$F?" ?
Endif
If $Q|$R
"Mis-matched quotes. Probable score error." ?
Endif
"KixGolf score = " + $C

$f is passed on the commandline
$f=filename.kix

Brian