Emacs / CVS / OpenSSH: предотвращение пароля раскрывается

Я использую GNU Emacs на моем нетбуке Ubuntu в полноэкранном режиме. Когда я редактирую файлы, которые являются объектом управления версиями и хита C-x v v для фиксации последних изменений, всплывающее окно OpenSSH откроет и попросит у меня моего пароля для сервера, на котором живет мой репозиторий.

К сожалению, из-за полноэкранного режима, всплывающее окно не прибудет впереди, и я не могу ввести свой пароль. Но это все еще так или иначе модально, таким образом, я также не могу вернуться к emacs и, скажем, оставить полноэкранный режим или (или сделать что-либо еще, как C-g). Я в основном захватываюсь.

Как emacs пользователь, я нахожу идею всплывающих окон отвратительной так или иначе ;-) так идеально, я хотел бы попроситься ssh пароля в мини-буфере. Как я могу настроить свою установку, чтобы заставить это произойти? (Я предпочитаю вводить в своем пароле каждый раз вместо того, чтобы хранить пару ключей в ~/.ssh/).

8
задан Thomas 14 July 2010 в 11:39
поделиться

3 ответа

Вы можете использовать ssh-agent перед запуском emacs (или в другой оболочке).

7
ответ дан 5 December 2019 в 14:00
поделиться

Это, вероятно, сработала программа ssh-askpass, которую я think смотрит на переменную среды DISPLAY, чтобы решить, как запросить пароль. Если установлено, появляется графическое окно, а если нет, запрашивается TTY.

Если подсистема vcs определяет, когда у пользователя запрашиваются пароли (что вполне вероятно), то возможно, что вы можете отключить $ DISPLAY для подпроцессов:

(setenv "DISPLAY" nil)

Это может иметь другие отрицательные побочные эффекты, поэтому также проверьте из "man ssh-askpass" на случай, если что-то там может помочь.

(Отказ от ответственности: я лично использую решение на основе ssh-agent, которое настоятельно рекомендую.)

1
ответ дан 5 December 2019 в 14:00
поделиться

Здесь я рассуждаю, поскольку я не использую CVS или vc в Emacs, однако я предполагаю, что Emacs передает соответствующую программу для выполнения фиксации, а запрос пароля - это нечто совершенно внешнее по отношению к Emacs. Поэтому я подозреваю, что вы хотите сначала выяснить, какие опции необходимы для выполнения коммита без графического интерфейса из вашей оболочки без Emacs, а затем изменить vc-checkin-switches (или определить vc-cvs-checkin-switches) в Emacs (см. defun vc-switches).

1
ответ дан 5 December 2019 в 14:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: