2010-07-13 1 views
7

내 X 서버를 실행하는 컴퓨터를 다시 부팅해야하는 경우에도 emacs 데몬을 사용하여 이맥스 세션을 유지합니다. 다른 컴퓨터에서 동일한 세션에 액세스하려고합니다. 이것은 잘 작동하지만 세션을 복원 할 때 새로운 파일을 열지 않고 데몬에 연결하려면 "emacsclient --create-frame --no-wait"를 실행하고 싶습니다. 파일 이름을 지정하지 않아도 나를 버릴 수 없습니다.emacsclient가 새 파일을 열지 않고 기존 emacs 데몬 창을 열 수있게하려면 어떻게해야합니까?

필자는 파일을 열지 않고 --eval을 사용하여 함수를 실행하려고 시도했지만 평가가 완료되면 창은 사라집니다. (데비안 GNU/리눅스 5.0에 백 포트를 통해 이맥스 23.1.)

+0

나는이 질문이에 대한 http://superuser.com/ –

+0

덕분에 더 적합하다고 생각 고려할 수 있습니다 포괄적 인 답변, 특히 내가 단서가 없다는 것을 지적하지 않았을 때! 파일 이름이 없기 때문에 "emacsclient --create-frame - no-wait"가 작동하지 않는다고 잘못 본 것 같습니다. 나는 emacs와 emacsclient 버전이 혼합되어 있어야만한다. (v22의 emacsclient는 파일 이름이 필요하지만 그 버전에서는 의미가있다.) –

답변

11

emacsclient가 제공하는 도움말에서 몇 가지 옵션이 있습니다. 첫째, 이미 언급 된 것은 emacsclient -c입니다. 그러면 emacs 데몬과 관련된 프레임을 만들려고 시도합니다. 이것의 장점은 DISPLAY가 설정되어 있지 않으면 터미널에서 emacs를 열 것이라는 점입니다.

특히 원격으로 로그인하는 경우 다음 최상의 옵션을 제공합니다 : emacsclient -t DISPLAY가 설정되어 있어도 이맥스가 터미널 모드로 열립니다.

또한 명령 줄에서 디스플레이를 설정할 수도 있습니다. VNC에서 원격으로 로그인 할 때 자주 사용합니다. 명령 줄에서 이맥스를 사용하는 경우 전체 명령은 emacsclient -d DISPLAY -c

2

emacsclient -n -e "(make-frame)"

-n 플래그는 emacsclient 대기하지 않는다는 것을 의미하고, 이맥스 인스턴스는 프레임을 파괴하지 않습니다.

5

emacsclient -c이 맞습니다.

+0

흠. 그것은 나에게도 도움이된다. 내가 이전에 두 번 시도했을 때 작동하지 않았지만 지금은 재현 할 수 없다고 확신한다. :( –

2

것입니다, 당신은 또한 emacsclient -t

관련 문제