kimukazu様
お世話になっております。
ご丁寧なご回答並びに、複数のご提案ありがとうございます。
HTML+Javascriptでオフライン時に使えるようにするというのも考えましたが、調べ物を多くしながら文章を書くため、
できればサービスから文字カウントができればと考えています。
ご回答いただきましたスクリプトをAppleScriptエディタに貼り付けてみましたところ、
AppleScriptエラー(null)というものが出てきてしまいました。
その後、Automatorにて、サービス追加でAppleScriptを実行と操作し、スクリプトを保存してみました。
すると、選択した文字列をコピーもしくはカットした場合のみ、文字カウントが有効になりました。
(the clipboard)という部分がクリップボードにコピーされた文字列についてワードカウントを行うというスクリプトなのではないかと予想したのですが、この考えで正しいでしょうか?
しかし、文字の入力時にカウントをするため(誤ってコピーを二度してしまうなどすると、問題があるので)、できればクリップボードではなく、選択した範囲を文字カウントするように出来ればと思うのですが、技術的に可能でしょうか?
selected,highlightという文字列とword countで検索してみましたが、手がかりがつかめず、日本語での文字カウントは文字コードや改行コードなどの問題で難しいのかな?と思っています。
実際にAppleScript,Automatorで実行させていただいたスクリプトは以下になります。
<スクリプト>
on run {input, parameters}
tell application "TextEdit"
set theText to the text of (the clipboard)
set word_count to count words of (the clipboard)
set char_count to count characters of (the clipboard)
set para_count to count paragraphs of (the clipboard)
end tell
set theLF to ASCII character 10
set LF_count to countSubstring(theText, theLF)
set space_count to countSubstring(theText, " ")
set show_words to "文字数:" & (char_count as string) & return & "改行を除いた文字数:" & ((char_count - LF_count) as string) & return & "空白、改行を除いた文字数:" & ((char_count - space_count - LF_count) as string) & return & "行数:" & (para_count as string)
display dialog show_words with icon 1 buttons {"OK"} default button "Ok"
end run
-- e.g. countSubstring("abc abc abc", "abc") --> 3
on countSubstring(theText, theSubstring)
-- ljr (http://applescript.bratis-lover.net/library/string/), modified from Aurelio.net (http://aurelio.net/doc/as4pp.html)
local ASTID, theText, theSubstring, i
set ASTID to AppleScript's text item delimiters
try
set AppleScript's text item delimiters to theSubstring
set i to (count theText's text items) - 1
set AppleScript's text item delimiters to ASTID
return i
on error eMsg number eNum
set AppleScript's text item delimiters to ASTID
error "Can't countSubstring: " & eMsg number eNum
end try
end countSubstring
動作環境:
Mac OSX 10.7.5
テキストエディット バージョン1.7.1(289.5)
AppleScriptエディタ バージョン 2.4.3 (131.2)AppleScript 2.2.1
Automator バージョン 2.2.4 (339.2)
動作環境を記載しておらず、申し訳ありませんでした。
今朝方、投稿させていただいたと思っており、ご返信が遅くなり申し訳ございません。
ご回答いただければ幸いです。