我想從textteditor向我當前的ipython窗口發送一組選定的行(本例中爲TextMate,但這在很大程度上是無關緊要的)。腳本使用bash調用所以它可以接受變量,然後通過Applescript調用將代碼推送到窗口。在終端窗口中將多行引用文本發送到IPython
該當前腳本可以工作,但它一次只能發送一個非嵌套行。有沒有辦法解決這個問題,所以我可以一次發送多個非嵌套的代碼行?
#!/bin/bash
QUOTED_TEXT=${TM_SELECTED_TEXT//\"/\\\"}
echo "$QUOTED_TEXT"
osascript <<- APPLESCRIPT
tell application "Terminal"
set currentTab to (selected tab of (get first window))
set tabProcs to processes of currentTab
set theProc to (end of tabProcs)
if theProc is not "Python" then
set currentTab to (do script "ipython")
end if
do script "$QUOTED_TEXT \n" in currentTab
end tell
APPLESCRIPT
關於第2點,我知道你可以直接調用Applescript,但是據我所知,TextMate只能將它的環境變量傳遞給Bash,Perl,PHP,Python或Ruby。 – WildGunman
環境變量不是特定於語言的。見#3。 – foo
在這裏不要鈍,但Applescript中的Objective-C橋對於非開發人員來說是完全不透明的。是否有任何使用基於簡單工作流的Applescripts的好例子。 – WildGunman