Emacs에서 기본 폴더 변경


107

나는 Emacs를 처음 접했고 C-x C-f시작할 때 기본 폴더를 변경하는 방법을 알아 내려고 노력 했습니다. 예를 들어 Emacs를 처음로드하고C-x C-f 하고 기본 폴더C:\emacs\emacs-21.3\bin 이지만, 오히려 데스크탑이됩니다. .emacs이 작업을 수행하기 위해 파일 을 사용자 정의하는 방법이 있다고 생각 하지만 여전히 그게 뭔지 잘 모르겠습니다.

업데이트 : 작동하는 것으로 확인 된 문제에 대한 세 가지 해결책이 있지만 해결책 3은 Windows 전용이라고 생각합니다.

  • 해결 방법 1 : 추가 (cd "C:/Users/Name/Desktop")받는 .emacs파일

  • 해결 방법 2 : 추가 (setq default-directory "C:/Documents and Settings/USER_NAME/Desktop/")받는 .emacs파일

  • 해결 방법 3 : Emacs 바로 가기를 마우스 오른쪽 버튼으로 클릭하고 속성을 누르고 시작 위치 필드를 원하는 디렉토리로 변경합니다.

답변:


84

그렇게 말하지 않았지만 Windows 바로 가기에서 Emacs를 시작하는 것 같습니다.

cx cf로 표시되는 디렉토리는 Emacs 용어로 default-directory(변수) cwd 입니다.

MS Windows 바로 가기를 사용하여 Emacs를 시작할 때는 default-directory처음에 바로 가기 속성의 "시작 위치"필드에 지정된 폴더 (디렉토리)입니다. 바로 가기를 마우스 오른쪽 단추로 클릭하고을 선택한 Properties다음 바탕 화면의 경로를 입력합니다.Start In 필드에 .

명령 줄에서 Emacs를 사용하는 경우 default-directory Emacs (cwd)를 시작한 디렉토리로 시작합니다.

이 방법은 .emacs 파일을 편집하는 것보다 낫습니다. 두 개 이상의 시작 디렉토리가있는 바로 가기를 두 개 이상 가질 수 있고 필요한 경우 Emacs의 정상적인 명령 줄 동작을 사용할 수 있기 때문입니다.

CWD = 현재 작업 디렉토리 = PWD = 현재 작업 디렉토리 . GUI보다 명령 줄에서 훨씬 더 의미가 있습니다.


예, Windows에서 emacs를 사용하고 있습니다.
Anton

5
이것은 MacOS에서도 작동합니다. 나는 이것을 나의 .emacs에 추가했다 : (setq default-directory (concat (getenv "HOME") "/"))
vy32

Emacs가 해당 디렉토리의 Dired에서 시작하도록하려면 Start In필드 에 넣는 것 외에도 필드 끝에 추가하고 Target하나 이상의 공백 뒤에 큰 따옴표 ( ") 로 묶습니다 . 예 : "d:\path\to\the\folder".
Drew

49

.emacs에 추가해야 할 줄은 다음과 같습니다.

(setq default-directory "C:/Documents and Settings/USER NAME/Desktop/" )

Emacs는 파일이 열려 있지 않으면 데스크탑에서 시작됩니다. 그렇지 않으면 일반적으로 현재 버퍼의 파일과 동일한 디렉토리에서 시작됩니다.


26

'cd'emacs 명령을 입력 할 수 있습니다. (Mx cd)를 눌러 기본 폴더를 한꺼번에 변경합니다.


24

나는 넣었다

(cd "c:/cvsroot/")

내 .emacs에서 작업을 수행했습니다.


6

기본 폴더는 실제로 버퍼의 현재 작업 폴더와 동일합니다. 즉, 작업하는 모든 파일에 대해 다를 수 있습니다. 작업중인 파일이에 있으며 C:\dir_a해당 버퍼의 작업 디렉토리는 기본적으로 C:\dir_a. 이를 변경 M-x cd하고 대신 기본값으로 사용하려는 디렉토리를 입력 할 수 있습니다 (기본적으로 표시 할 디렉토리를 의미합니다.C-x C-f ).

파일을 열지 않고 emacs를 시작하면 *scratch*버퍼가 열린 상태로 끝납니다 . Windows 바로 가기에서 emacs를 시작한 경우 작업 디렉토리는 바로 가기 속성에 지정된 것과 동일합니다. 명령 줄에서 시작한 경우 시작한 디렉토리가됩니다. 를 사용하여이 기본 디렉토리를 버퍼 M-x cd에서도 변경할 수 있습니다 *scratch*.

마지막으로 Vadim이 제안하고 다음과 같이 할 수 있습니다.

(cd "c:/dir_a/")

당신의 .emacs파일에 상관없이 이맥스를 시작하는 방법 디렉토리에게 기본을 없습니다.


4

Windows에서 바로 가기를 사용하여 수행 할 수 있습니다.

에 대한 바로 가기를 만듭니다 C:\emacs\emacs-21.3\bin\runemacs.exe. 바로 가기의 속성을 편집하고의 값 Start In:을 원하는 기본 디렉터리로 변경합니다.


4

나는 Windows XP에서 emacs 22.2.1을 사용하고 있으며 Cx Cf 명령에 원하는 미니 버퍼에서 응답을 얻기 위해 위의 답변으로 도움을 받았습니다. 처음에는 Anton과 같은 "파일 찾기 : C : \ Program Files \ emacs \ bin /"을 얻었습니다. 홈을 "C : \ Documents and settings \ USER NAME \ My Documents"로 설정했습니다. 미니 버퍼에서 원하는 Cx Cf에 대한 응답은 "파일 찾기 : ~ /"입니다. 내 .emacs 파일에 (setq default-directory "C : / Documents and Settings / USER NAME / My Documents")를 추가하여 "Find file : C : \ Documents and settings \ USER NAME \ My Documents"라는 응답을 얻을 수있었습니다. / "는"파일 찾기 : ~ / "와 기능적으로 동일합니다. 그러나 나는 또 하나의 점을 발견했다. "옵션"의 "Emacs 사용자 지정"을 통해 시작 화면을 금지 할 수있었습니다. 이제 emacs를 열면 즉시 스크래치 버퍼로 이동합니다. 스크래치 버퍼에 Cx Cf를 입력하면 원하는 정확한 응답을 얻습니다.


시작 화면 금지를 언급하는 +1. 내 Windows 10 시스템에서 이것이 핵심이라는 것을 알았습니다. 관련 질문에 대한 답변을 게시했습니다. stackoverflow.com/a/38435697/823636
Rob_before_edits

1

빈 더미 파일 이름 인 pramater를 바로 가기 (Gnome, Linux)에 추가하고 디렉터리를 지정합니다. 내 emacs의 기본값은 "home"이므로 간단히 다음과 같이 말합니다.

/ Desktop / blank_file

그러면 "blank_file"이라는 파일이 열립니다.

또한 해당 emacs 세션의 현재 작업 디렉토리를 데스크탑으로 이동합니다.

"blank_file"에 항목을 넣은 다음 저장하면 물론 저장됩니다. 짜증나거나 좋은 일이 될 수도 있습니다.


1

Dired에서 기본 디렉토리를 DESKTOP로 변경하려면 ~ / .emacs :

;; Windows XP에서 작동합니다.
(setq 기본 디렉토리 ( "C : \ Documents and Settings \ MY_ACCOUNT \ DESKTOP \"연결))


0

Windows 8에서는 바탕 화면에 바로 가기를 만들고 바로 가기의 '시작 위치 :'속성을 변경합니다.

이제 권장하는대로 emacs-23.3 \ bin \ addpm.exe 프로그램을 실행했으며 Windows-8 화면 (Microsoft의 끔찍한 발명품)은 Emacs에 대한 아이콘 링크로 나타났습니다. 그러나 여기서 '시작'속성을 다시 변경해야합니다. (데스크톱에있는 것과 다릅니다). 마우스 오른쪽 버튼을 클릭하고 하단 표시 줄에서 '파일 위치 열기'(또는 유사한, 내 언어로 수행)를 선택하면 새 바로 가기가있는 폴더로 이동합니다. 속성 '시작 :'.

약간 관련이 있지만 실제로는 매우 쉽습니다.


0

가장 성가신 일은 바로 가기를 사용하고 있지만 다른 모든 경우가 작동하기를 원할 때 Windows Emacs가 system32에 사용자를 덤프하는 것이므로 약간의 elisp를 사용하십시오.

((문자열 < "C : \ WINDOWS \ system32"기본 디렉터리) (setq 기본 디렉터리 "~ /"))

따라서 시스템에서 끝날 때만 기본적으로 홈 디렉토리로 설정됩니다. 유일한 단점은 system32에서 emacs를 시작하려는 경우입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.