
나는 Gnus가 IMAP 도메인 앞에 사용자 이름을 입력하라는 요청을 하는 문제를 해결하려고 합니다. 즉, Gnus가 프롬프트에서 사용자 이름 [email protected]
을 [email protected]@mail.bar.com
.
온라인에서 읽은 모든 가이드는 로그인 자격 증명 설정에 대해 다음과 같이 지정합니다.
~/.authinfo에 다음과 같은 줄을 넣으세요.
machine imap.gmail.com login [email protected] password your-password port 993
그 다음에 다음과 같은 문자열을 추가했습니다.
machine mail.foo.com login [email protected] port 993
이렇게 하면 좋은 동작을 얻을 수 있지만(비밀번호만 묻는 메시지가 표시됨) 여전히 전체 사용자 이름이 컴퓨터 주소 앞에 추가됩니다. 게다가 뭔가를 변경하고 로그인을 다시 시도하면 오류가 발생합니다 Wrong type argument: wholenump, nil
.
내 gnus.el
파일에는 IMAP에 대한 다음이 있습니다.
; IMAP
(setq gnus-select-method
'(nnimap "mymail"
(nnimap-address "mail.bar.com")
(nnimap-server-port 993)
(nnimap-stream ssl)))
답변1
프롬프트는 소스( nnimap.el
)에 하드 코딩되어 있습니다.
(defun nnimap-credentials (address ports user)
(let* ((auth-source-creation-prompts
'((user . "IMAP user at %h: ")
(secret . "IMAP password for %u@%h: ")))
(found (nth 0 (auth-source-search :max 1
:host address
:port ports
:user user
:require '(:user :secret)
:create t))))
(if found
(list (plist-get found :user)
(let ((secret (plist-get found :secret)))
(if (functionp secret)
(funcall secret)
secret))
(plist-get found :save-function))
nil)))
따라서 이를 변경하는 유일한 방법은 함수를 재정의하고 프롬프트를 just 로 수정하는 것 같습니다 "IMAP password for %u: "
.