Estou usando o Emacs 23.3.1 no Windows 7. Eu sei que posso executar o shell do emacs usando o Mx shell. Gostaria de ter várias janelas de shell ao mesmo tempo, mas digitar Mx shell uma segunda vez apenas me abre a mesma janela de shell.
Existe uma maneira de ter diferentes janelas de shell?
C-u
executa o comandouniversal-argument
. É uma maneira de injetar um argumento no próximo comando. Você pode ler mais sobre isso comC-h k C-u
(C-h k
corridasdescribe-key
, muito útil!)C-h f eshell
(C-h f
executadescribe-function
) mostra que a funçãoeshell
aceita um argumento opcional. Citação: Um prefixo numérico arg (como emC-u 42 M-x eshell RET
) muda para a sessão com esse número, criando-o, se necessário. Um prefixo não numérico arg significa criar uma nova sessão.Você pode renomear o buffer do seu shell com M-x rename-buffer. Então você poderá iniciar um segundo shell.
fonte
Veja o MultiTerm , que facilita muito o gerenciamento de vários terminais no Emacs.
fonte
Também pode ser útil usar uma interface semelhante a uma tela para seus shells. Eu escrevi o meu próprio, mas existem outros por aí, como o EmacsScreen .
fonte
Depois de mais de quatro anos, vejo que algumas pessoas ainda estão analisando esse problema algumas vezes, então publicarei uma função rápida que escrevi para carregar um shell e pedir seu nome. Dessa forma, você pode nomear um shell "classificar arquivos" se for dedicado à classificação de arquivos e outro "hive" se for dedicado a executar consultas de seção. Eu uso isso todos os dias agora (no emacs 24):
fonte
Isso gerará automaticamente uma nova instância do shell em qualquer buffer que você estiver usando; ligá-lo ao MS ou algo assim e alegria instantânea:
Muito obrigado ao phils por recomendar uma reescrita usando let, mesmo que o resultado seja parênteses ainda mais terríveis ...: \
fonte
let
vincular variáveis se elas forem destinadas ao uso local. Agora você tem valores globais paracurrentbuf
enewbuf
.Isso abrirá um novo shell sempre que você chamar a função e renomeá-la automaticamente, se necessário. A vantagem adicionada é que, se você estiver editando arquivos remotamente (dired / tramp ...), isso abrirá um shell no host remoto e renomeá-lo-á automaticamente com o nome do host remoto:
fonte