Bu bir işlem filtresi ile yapılır.
Varsayılan olarak comint-output-filter-functions, comint-watch-for-password-promptbunu işleyen filtre işlevidir.
Metin eşleşmesini görürse kullanıcıdan şifre istemek için comint-password-prompt-regexpçağrıda bulunur send-invisible.
İşlem filtrelerinin nasıl çalıştığı hakkında daha fazla bilgi için bkz. C-hig (elisp)Filter Functions
Düzenleme: Bir takip olarak, ayrıca M-x toggle-debug-on-quitve sonra sudo istemi türünde C-gneler olduğunu gösteren bir geri izleme almak için unutmayın. Örneğin:
Debugger entered--Lisp error: (quit)
read-string("[sudo] password for <username>: " nil t nil)
read-passwd("[sudo] password for <username>: ")
send-invisible("[sudo] password for <username>: ")
comint-watch-for-password-prompt("[sudo] password for <username>: ")
run-hook-with-args(comint-watch-for-password-prompt "[sudo] password for <username>: ")
comint-output-filter(#<process shell> "[sudo] password for <username>: ")
Değerlendirilen bayt-derlenmiş kod nedeniyle çıktı minimumdur, bu nedenle detayı comint-output-filter-functionskaybolur, ancak genel durumu hemen görebilirsiniz. Ayrıca M-x load-library RET comint.el RET, derlenmemiş kodu yükleyebilir ve daha ayrıntılı bir geri izleme elde etmek için tüm işlemi tekrarlayabilirsiniz.