2011-10-04 30 views
4

我寫了一個AppleScript,它被設計爲在TextExpander發現按鍵時觸發。從AppleScript編輯器運行時它工作正常,但在某些情況下,它也會在從TextExpander運行時發出嘟嘟聲。當我使用AppleScript從TextExpander設置BBEdit中的文本時,爲什麼系統發出嘟嘟聲?

這裏的腳本:

tell front window of application "BBEdit" 
    if (length of selection) is not 0 then 
     add prefix and suffix of selection prefix "[" suffix "]" 
    else 
     set text of selection to "[" 
    end if 
end tell 

它的設置,當我鍵入[性格,與想法,如果被選中的文本將包裝在文字火[]但如果沒有文字被選中,那麼它應該簡單地鍵入[正常的字符。

它運行正常,但如果從TextExpander 運行,則會出現「else」路徑(set text of selection to "["),系統發出嘟嘟聲。我不確定BBEdit或TextExpander是否產生了嘟嘟聲,但是如果我完全刪除「其他」部分或者如果它選擇了文本(「如果」路徑)運行,則不會發出嗶聲。

回答

1

Smile Software(TextExpander的製造商)的人員爲我找到了一個完美的解決方案。

而不是

set text of selection to "[" 

(其中有以取消[反正跟着select insertion point after selection),這完美的作品:

return "[" 

這是一個更好的主意呢。

相關問題