Emacs + vagabondo + plink
-
11-09-2019 - |
Domanda
Sto cercando di ottenere emacs tramp che funziona sotto Windows XP per funzionare su stucco plink su un'istanza Amazon EC2. La documentazione per fare questo è sparsa. Posso trovare la documentazione parziale, ma nessuno che affronta tutti i passaggi necessari per ottenere questo lavoro.
Qualcuno può fornire una passeggiata attraverso, o un puntatore ad una passeggiata attraverso?
Soluzione
(add-to-list 'load-path
(expand-file-name "C:/tools/emacsw32/emacs/lisp/tramp/lisp"))
(require 'tramp)
;(setq tramp-chunksize "500")
(setq tramp-default-method "plink")
dal mio file dot-emacs. Se trovo più note, io fregature.
Altri suggerimenti
I suppone che si dispone di un server GNU / Linux si desidera accedere, un nome utente e un file .ppk. Inoltre, Emacs 24.4+.
Per prima configurare il server in configurazione PuTTY
- Nella sezione Sessione, specificare il nome host, ad esempio
username@server
. - Vai alla sezione di collegamento> SSH> Auth e Sfoglia per il vostro "File chiave privata per l'autenticazione".
- Torna alla sezione Sessione, assegnare un nome al Saved Sessions, per esempio
putty-test
, e fare clic sul pulsante Salva. - Verificare la connessione facendo clic sul pulsante Apri. Se funziona, è possibile chiudere queste ora.
Quindi, la testa al vostro Emacs.
- Assicurati che Emacs sa dove il vostro
plink.exe
è. Un modo è quello di informare solo Emacs direttamente in.emacs
, per esempio ho in questo momento,(setenv "PATH" (concat "c:/Users/Brady/Documents/putty/;" (getenv "PATH")))
- Basta digitare
C-x C-f //plink:putty-test:/ RET
. Attendere un momento mentre si connette, e la finestra si apre al bufferdired
sulla directory~/
remota.
Questo ha funzionato per me su:
- di Windows 10
- https://sourceforge.net/projects/emacsbinw64/files/release / .
- cygwin64
- Putty.
- https://github.com/d5884/fakecygpty
Le modifiche dalla tramp-sh.el
originale è
- per Cygwin, utilizzare fakecygpty con ssh e cambiare il prompt per
##
- per Plink, rimuovere l'opzione
-ssh
Inoltre ho rinominato questi metodo con w
per differenziarlo.
(when (string-equal system-type "windows-nt")
(add-to-list 'tramp-methods
`("sshw"
(tramp-login-program "fakecygpty ssh")
;; ("%h") must be a single element, see `tramp-compute-multi-hops'.
(tramp-login-args (("-l" "%u" "-o \"StrictHostKeyChecking=no\"") ("-P" "%p") ("-t")
("%h") ("\"")
(,(format
"env 'TERM=%s' 'PROMPT_COMMAND=' 'PS1=%s'"
tramp-terminal-type
"##"))
("/bin/sh") ("\"")))
(tramp-remote-shell "/bin/sh")
(tramp-remote-shell-login ("-l"))
(tramp-remote-shell-args ("-c"))
(tramp-default-port 22))
)
(add-to-list 'tramp-methods
`("plinkw"
(tramp-login-program "plink")
;; ("%h") must be a single element, see `tramp-compute-multi-hops'.
(tramp-login-args (("-l" "%u") ("-P" "%p") ("-t")
("%h") ("\"")
(,(format
"env 'TERM=%s' 'PROMPT_COMMAND=' 'PS1=%s'"
tramp-terminal-type
"$"))
("/bin/sh") ("\"")))
(tramp-remote-shell "/bin/sh")
(tramp-remote-shell-login ("-l"))
(tramp-remote-shell-args ("-c"))
(tramp-default-port 22))
)
)