Gnus-Authentifizierung mit Benutzername, der der Domäne vorangestellt wird

Gnus-Authentifizierung mit Benutzername, der der Domäne vorangestellt wird

Ich versuche, das Problem zu lösen, dass Gnus Sie auffordert, einen Benutzernamen einzugeben, der dann der IMAP-Domäne vorangestellt wird. Das heißt, ich verhindere, dass Gnus den in der Eingabeaufforderung eingegebenen Benutzernamen [email protected]in umwandelt [email protected]@mail.bar.com.

In allen Anleitungen, die ich online gelesen habe, wird zum Einrichten der Anmeldeinformationen ungefähr Folgendes angegeben:

Fügen Sie eine Zeile wie die folgende in ~/.authinfo ein

machine imap.gmail.com login [email protected] password your-password port 993

Anschließend habe ich eine Zeichenfolge hinzugefügt, die wie folgt aussieht:

machine mail.foo.com login [email protected] port 993

Damit erhalte ich ein gutes Verhalten (nur Passwortabfrage), aber der Computeradresse wird trotzdem der gesamte Benutzername vorangestellt. Schlimmer noch: Wenn ich versuche, etwas zu ändern und die Anmeldung zu wiederholen, erhalte ich eine Fehlermeldung Wrong type argument: wholenump, nil.

Meine gnus.elDatei enthält für IMAP Folgendes:

; IMAP
(setq gnus-select-method
      '(nnimap "mymail"
               (nnimap-address "mail.bar.com")
               (nnimap-server-port 993)
               (nnimap-stream ssl)))

Antwort1

Die Eingabeaufforderung ist in der Quelle fest codiert ( 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)))

Die einzige Möglichkeit, dies zu ändern, scheint darin zu bestehen, die Funktion neu zu definieren und die Eingabeaufforderung so zu ändern, dass sie lediglich lautet "IMAP password for %u: ".

verwandte Informationen