나는 emacs를 처음 접했고 lisp를 처음 접했습니다.
강조 표시된 텍스트(현재 커서 위치)에 대한 마커를 설정하기 위해 Meta + Spacebar를 설정하려고 합니다. 온라인으로 검색하고 실험한 끝에 마침내 명령을 얻었습니다.
(global-set-key (kbd "M-SPC") 'push-mark nil nil 1)
하지만 위의 명령은 작동하지 않습니다. "매개변수 개수가 잘못되었습니다."라는 메시지가 나타납니다.
함수 정의를 가져오고,
- 푸시 마크 및 선택적 위치 nomsg 활성화
- 위치:nil은 위치가 현재 커서 위치로 기본 설정되어야 함을 나타냅니다.
- 사양:난 상관없어 (내 생각엔)
- 할 수 있게 하다:분명히 이것은 기본적으로 사실이 아니기 때문에...뭔가로 설정해야 합니다.
세 가지 값을 전달하도록 명령 형식을 어떻게 지정합니까?
이 오류는 분명히 푸시 마커 함수 호출로 인한 것입니다. 이전 문자(입력을 전달하지 않는)와 같은 다른 기능은 정상적으로 작동하기 때문입니다.
답변1
push-mark
대신 매개변수를 전달해야 합니다 global-set-key
.
(global-set-key (kbd "M-SPC") (lambda() (interactive) (push-mark nil nil 1)))