Emacs + vagabundo + plink
-
11-09-2019 - |
Pergunta
Eu estou tentando obter emacs vagabundo em execução no Windows XP para o trabalho ao longo massa plink em uma instância Amazon EC2. A documentação para fazer isso é escassa. Posso encontrar documentação parcial, mas nenhum que aborda todas as etapas necessárias para começar este trabalho.
Alguém pode fornecer um passeio através, ou um ponteiro para um passeio através?
Solução
(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")
do meu arquivo dot-emacs. Se eu encontrar mais notas, vou adicioná-los aqui.
Outras dicas
Eu vou assumir que você tem um servidor GNU / Linux você deseja acessar, um nome de usuário e um arquivo .ppk. Além disso, Emacs 24.4+.
Em primeiro lugar configurar o servidor em Configuração PuTTY
- Na seção de sessão, especifique o nome do host, por exemplo
username@server
. - Vá à seção Conexão> SSH> Auth e Navegar para o seu "Arquivo de chave privada para autenticação".
- Voltar para a seção de sessão, o nome do seu Saved Sessions, por exemplo
putty-test
, e clique no botão Salvar. - Verifique a conexão clicando no botão Abrir. Se funcionar, você pode fechar estes agora.
Em seguida, cabeça para o seu Emacs.
- Certifique-se de Emacs sabe onde seu
plink.exe
é. Uma maneira é apenas para informar Emacs diretamente em seu.emacs
, por exemplo, eu tenho no momento,(setenv "PATH" (concat "c:/Users/Brady/Documents/putty/;" (getenv "PATH")))
- Basta digitar
C-x C-f //plink:putty-test:/ RET
. Espere um momento, enquanto ele se conecta, e janela será aberta para tampãodired
no diretório~/
remoto.
Isso funcionou para mim em:
- Windows 10
- Emacs encontradas em https://sourceforge.net/projects/emacsbinw64/files/release / .
- cygwin64
- Putty.
- https://github.com/d5884/fakecygpty
As alterações do tramp-sh.el
original está
- para cygwin, uso fakecygpty com ssh e mudar o prompt para
##
- para plink, opção de remoção
-ssh
Eu também renomeado estes método com w
para diferenciá-lo.
(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))
)
)