2009-08-28 4 views
36

누구든지 이맥스 셸을 통해 ssh를 사용하는지 궁금합니다. 원격 컴퓨터에 연결할 수 있지만 '터미널 유형 "멍청한"emacs를 실행할만큼 강력하지 않습니다 (일반적으로 이맥스는 콘솔에서 열릴 때'이맥스 파일 이름 '을 사용하여 이맥스로보기/편집 할 파일을 열 수 없습니다. 터미널을 통해 연결).emacs 쉘을 통한 ssh?

이와 같은 방식으로 이맥스를 사용하는 것은 좋지 않은 생각입니까, 아니면 몇 가지 수정 사항이 있습니까? 감사합니다!

답변

14

아이디어의 몇

  • 의 소스를 .bashrc에 명시 적으로 . ~/.bashrc를 통해 및/또는 bash는 초기화 파일을 재 배열이이 내부에로드되는만큼 ~/.profile 이맥스 껍질; 이멕스 쉘 안에서 ssh을 실행하면 잘 작동한다.
  • 이맥스 전용 Tramp mode을 사용하면 로컬 이맥스 내에서 ssh를 통해 원격 파일에 액세스 할 수있다. 원격 파일을 업데이트/터치/편집하면된다. 로컬 emacs 내부에서 시작된 ssh 세션 내에서 원격 emacs를 열 필요가 없습니다.
+0

나는이 트램프 모드를 체크 아웃해야 할 것이다. 감사! – hatmatrix

+1

예 - 다른 질문자가 1 ~ 2 분 만에 첫 번째 답장을 보았습니다.하지만 파일이나 다른 두 개의 호스트를 빠르게 편집하려는 경우 부랑픈 일이 발생했습니다. 간단하게 그것을 컴퓨터에 복사하고 명시 적으로하지 않아도 scp를 통해 업데이트 버전을 되돌려 보냅니다. X11 세션을 내보내는 것보다 훨씬 더 많은 leightweight가 될 수 있습니다 (다른 옵션으로 올바르게 지적 했음). 또한 tramp는 그가 언급 한 이전 ange ftp의 후속 조치입니다. –

+0

예, 트램프가 다른 스레드에 따라 ange ftp를 대체합니다. 그리고 내 X11 연결은 너무 느려서 트램프가 분명히 내 상황에 더 좋습니다. 고맙습니다. – hatmatrix

6

ssh x forwarding을 사용하여 원격 emacs를 실행하고 로컬 컴퓨터에 표시 할 수 있습니다. 나는 윈도우에

을있을 때
나는 당신이 the remote filesystem with ssh를 탑재하고 일반적으로 로컬 열 수 Xming X Server 사용합니다. 이를 위해
내가 ExpanDrive (상용 응용 프로그램)을 사용하는 Windows

에 당신이 FTP 및 SSH을 통해 원격 파일을 열 수 있습니다 이맥스 Ange ftp over ssh를 사용할 수있을 때.
나는 cygwin 이것을 사용하면 윈도우

+0

감사합니다. 매우 도움이된다 – hatmatrix

16

이맥스는 풀 모드 터미널 에뮬레이터 인 term-mode가 있습니다. 이맥스에서는 이맥스를 실행할 수 있습니다. 터미널에서 실행하는 내용은 모두 term-mode로 실행됩니다.

또한 emacs에는 ssh를 통해 파일을 열 수있는 tramp 모드가 있습니다.


/scp:[email protected]#port:/ 

파일을 앞뒤로 전송합니다. 로컬 파일을 편집하는 것처럼 편집 할 수 있습니다.

x11 전달 또는 기타 속임수가 필요하지 않습니다.

그것은 첫눈에 명확하지 않을 수 있습니다
+0

감사합니다 - 쉘, 셸 및 용어 중 ... 어느 것이 더 선호 하시겠습니까? 나는 조금 봤 거든 그것 '쉘'이 가장 널리 사용되는 것 같았다 ... – hatmatrix

+0

쉘과 그들의 이름에도 불구하고 eshell 실제 쉘되지 않습니다. 그들은 단지 프로세스를 읽고 씁니다. 하지만 다른 한편으로는 term은 osx의 터미널이나 linux의 xterm과 같은 터미널 에뮬레이터입니다. 쉘에서 할 수없는 ncurses를 실행할 수도 있습니다. 당신이 빠른 명령을 실행하고 터미널 (xterm 등 ..)을 사용하고 싶다면 emacs에 살고 쉘을 사용하고 싶다면 용어를 사용하십시오. –

+2

아, 네. eshell은 쉘보다 더 나은 ssh 세션을 처리하는 것처럼 보입니다 ...하지만 emacs에서는 이맥스가 사용됩니까? "emacs : 터미널 유형 eterm-color가 정의되지 않았습니다." TERM 변수를 변경해야하는 것에 대해 말하고 있지만, 더 자세히 읽으면 끝낼 수 있다고 가정합니다. 무서운! – hatmatrix

38

하지만 eshell, 이맥스 리스프에서 구현되는 쉘은 tramp와 함께 잘 작동 :

Welcome to the Emacs shell 

~ $ uname -a 
Linux local-machine 2.6.30-1-686 #1 SMP Thu Jul 30 14:45:30 UTC 2009 i686 GNU/Linux 
~ $ cd /ssh:[email protected]:~ 
/ssh:[email protected]:/home/user $ uname -a 
Linux remote-machine 2.6.18-6-686 #1 SMP Thu Aug 20 21:56:59 UTC 2009 i686 GNU/Linux 
/ssh:[email protected]:/home/user $ 
+1

와우, 꽤 멋져 보입니다. Emacs에는 2 개의 쉘 옵션이 너무 많습니다! – hatmatrix

+2

@hillu 난 그냥 ... 내 의자에 찔 렸다! 지금은 1 시간 정도 밖에 원격 파일에 액세스하기 위해 부랑자를 사용하고있었습니다. 귀하의 게시물에 감사드립니다. 나는 원격 컴퓨터에 직접 "나를"배치 한 eshell을 시작했습니다. 그거 알아? 당신은'''cp'' 명령을 호출하는 것처럼 쉽게 한 컴퓨터에서 다른 컴퓨터로 파일을 복사 할 수 있습니다. A.W.E.S.O.M.E !! –

+2

그리고 우리는 보통 파일을 찾아서 편집 할 수 있습니다! 'Cx Cf'가 작동하고'find-file'과 같은 일부 elisp도 있습니다. http://wikemacs.org/wiki/Eshell#Built-In_Commands – Ehvince

1

I 작동 Xming, 고민되었지만, 같은 내 인터넷 연결은 이맥스 또는 어떤 X 앱이 나타나기까지 30 초 이상 기다려야하는 가장 빠릅니다. 또한 버퍼를 열어서 스크롤하면 시간이 멈 춥니 다.> 매우 성가시다.

시도 No machine (nxserver-freenx 서버/클라이언트). 무료 버전 서버가 있습니다. Linux 상자에 연결하고 xterm 및 emacs를 X에서 사용하려는 경우 가장 빠르고 가장 빠른 솔루션입니다. 바로 표시되어 빠르게 반응합니다.참조를 들어/홈/경로/

: CX의 CF/SSH : 사용자 @ 호스트 심지어 윈도우, 맥 OS, 리눅스

+0

흥미 롭습니다 - 어떤 시점에 체크 아웃합니다. 감사합니다 ~ – hatmatrix