2010-02-02 9 views
3

두 번 클릭하면 모든 .rb 파일 또는 모든 .py 파일을 이맥스에서 열려면 어떻게해야합니까? 말하자면 데스크탑 에서요?더블 클릭으로 이맥스에 파일을 직접 엽니 다.

저는 OS X 10.6.2입니다.

나는 스크립트가 있습니다

on open of finderObjects 
    repeat with currFile in finderObjects 
     set unixPath to POSIX path of currFile 

     set base to do shell script "dirname " & unixPath 
     set fname to do shell script "basename " & unixPath 
     do shell script "cd '" & base & "';" & " emacs " & fname 

    end repeat 
end open 

을하지만이 파일을 드래그하면 - 그것에 (text.py 그냥 행을 인쇄), 내가 얻을 : 이맥스 : 표준 입력은 청각 장애

아니다

그리고이 문제를 해결하는 방법이 확실하지 않습니다.

감사합니다.

편집 : 링크가 해결 : 각 유형에 대해 http://www.macosxhints.com/article.php?story=20031027142625782

set filecount to 0 

on open filelist 
    repeat with i in filelist 
     set filecount to 1 
     tell application "Terminal" 
      set filename to do shell script ¬ 
       "perl -e \"print quotemeta ('" & POSIX path of i & "');\"" 
      do script "emacs " & filename & "; exit" 
     end tell 
    end repeat 
end open 

if filecount < 1 then 
    tell application "Terminal" 
     do script "emacs; exit" 
    end tell 
end if 
+0

나는 이것이 superuser.com에 속할 것이라고 생각한다. –

+0

내가 게시하지 않은 이유는 그것이 bash 스크립트와 관련이 있다고 가정하고 있기 때문에, 나에게 그렇게 보인다. 그러나 그것이 속하지 않으면 움직여 라! – Isaac

+0

이상적인 세계에서 그것은 갈 것입니다. 슬프게도, 나는 아직 개발자가 emacs를 설치하지 않을 것으로 예상되는 환경에서 일해야한다. (또는 더 열악한 편집자를 사용한다. –

답변

3

는 Finder에서 파일을 선택하고 파일 메뉴에서 Get Info을 선택합니다. 열린 Info 창에서 Open with 섹션 아래에서 사용중인 이맥스 앱을 선택하고 앱 버전이어야하며 Change All..을 누릅니다.

커맨드 라인에서 전통적인 curses 이맥을 사용하는 경우 ScriptEditor 또는 Automator 액션에서 작은 AppleScript 응용 프로그램을 빌드하여 파인더에서 파일을 받고 이맥을 열 수 있습니다. 그런 다음 Get Info을 사용하여 앱을 .rb 및 .py 파일과 연결하십시오.

EDIT : AppleScript 실행기 앱을 만드는 한 가지 방법은 recent answer을 참조하십시오. 대신 셸 명령을 수정하여 대신 emacs를 호출하십시오.

추가 편집 : 스크립트가 거의 존재하지만 Terminal.app 아래에서 스크립트를 실행해야합니다. 그래서처럼 수정 해보십시오 :

 launch application "Terminal" 
     tell application "Terminal" 
      do script "cd '" & base & "';" & " emacs " & fname 
     end tell 
+0

여기서 문제는 터미널을 사용하고 있다는 것입니다. 간단하다면 그렇게했을 것입니다! – Isaac

+0

@Isaac 구리. 귀하의 질문에 당신이 그것을 열려면 파일을 클릭 언급했다. 터미널에서 어떻게하고 있니? – chollida

+0

제가 질문에서 말했듯이 저는 데스크탑에서 두 번 클릭하고 있습니다. – Isaac

1

을 내가 OS X의 전문가가 아니지만, 그것은 유닉스와 윈도우에서처럼 이맥스가있는 경우가 이미 실행중인 이맥스 세션에 새 파일을 공급하기위한 emacsclient 유틸리티를 가지고 있어야 .

This previous SO question에는 다중 설정에서이를 수행하는 방법에 대한 몇 가지 세부 정보가 있습니다. 아마도 그 중 일부가 적용될 수 있습니까?

관련 문제