Por que a versão mais recente do emacs não suporta a barra de tarefas do Windows 7?

23

Fiz o download do emacs mais recente para Windows aqui , mas iniciá-lo no Windows 7 mostra um ícone da barra de tarefas que ignora o botão direito do mouse e, portanto, não pode ser fixado. Pesquisei no Google e encontrei muitos relatórios de erros do emacs que não suportam a barra de tarefas do Windows 7 e que é um bug corrigido na versão 23.1+. A versão atual é 23.3., Mas ainda não consigo fixar o emacs na barra de tarefas do Windows 7. O que estou fazendo de errado?

grigoryvp
fonte

Respostas:

15

A discussão sobre o bug # 8268 do Emacs sugere:

Depois de fixar o emacs.exe, edite as propriedades (você pode usar a tecla Shift com o botão direito do mouse) e altere o caminho do executável para apontar para C: /this/is/your/path/to/runemacs.exe em vez de C: /this/is/your/path/to/emacs.exe

harrymc
fonte
4
Isso não vai funcionar. Se você fizer o que foi sugerido e clicar no ícone fixado, o segundo ícone será exibido, representando o emacs.exe. A barra de tarefas do Windows 7 mapeia aplicativos para ícones na barra de tarefas comparando nomes de executáveis ​​de aplicativos com o "caminho executável" do ícone. Portanto, fixar o emacs.exe e alterar o caminho do executável para "runemacs.exe" é o mesmo que fixar o "runemacs.exe" :(
grigoryvp
@harrymc desculpe, esqueci de notificação arroba :)
grigoryvp
1
A notificação está implícita nas próprias respostas.
harrymc
Além disso, verifiquei a discussão do bug # 8268. Onde existe apenas uma pessoa aqui que finge que fixar o runemacs.exe permite iniciar o emacs na barra de tarefas sem janelas adicionais do console ou ícones da barra de tarefas. Para o resto das pessoas, isso não está funcionando. Posso sugerir que a pessoa em questão use a versão não padrão do Windows 7 (versão beta / build verificada / kernel modificado) ou tenha modificações não padrão do sistema operacional.
grigoryvp
1
Isso também não funciona corretamente no Windows 10, sem janelas adicionais do console ou ícones da barra de tarefas.
Svein Fidjestøl 9/09/15
33

Acho que encontrei uma maneira, embora não tenha idéia do por que funciona ...

Em vez de arrastar o ícone do emacs da pasta para a barra de tarefas (que duplicará ícones), abra 'runemacs.exe' sem nenhum ícone pré-existente na barra de tarefas. Agora clique com o botão direito do mouse no ícone já em execução na barra de tarefas e fixe-o na barra de tarefas. Por alguma razão no meu PC, isso interrompeu a duplicação de ícones. Agora, clique com o botão direito do mouse e altere o destino de emacs.exe para runemacs.exe. Agora (pelo menos para mim) o ícone do Emacs funciona conforme o esperado.

Se isso não funcionar, tente atualizar o Emacs. Por exemplo, isso não funcionou para 22.3, mas para 24.3.


Instruções passo a passo:

  1. Execute runemacs.exesem ícone pré-existente na barra de tarefas.
  2. Clique com o botão direito do mouse no ícone do Emacs em execução na barra de tarefas e clique em "fixar este programa na barra de tarefas".
  3. Fechar Emacs
  4. Clique com o botão direito do mouse no ícone fixado do Emacs na barra de tarefas, clique em Propriedades e altere o destino de emacs.exepara runemacs.exe.
falcojr
fonte
4
Isso deve ser marcado como a resposta!
Olegs Jeremejevs
Também funciona para mim, 3ks.
Eastsun
Isso funciona. Deve ser a resposta!
Isakkarlsson
É exatamente o mesmo que a resposta aceita.
harrymc
3
Não, não é. A resposta aceita supõe que o usuário fixou o emacs de uma instância aberta. Outra maneira de fixar o emacs é arrastar o exe para fora da pasta e 'configurá-lo' na barra de tarefas. Este método de fixação não funcionará. A resposta aceita especifica apenas o usuário fixá-lo, não como fixá-lo.
falcojr
3

O EmacsWiki explica estes problemas:

Quando você inicia um programa usando um atalho fixado na barra de tarefas, o atalho é exibido de maneira diferente enquanto o programa está sendo executado, mas nenhum novo botão da barra de tarefas é exibido. Se você iniciar um programa que não esteja fixado na barra de tarefas, um novo botão da barra de tarefas será criado. Isso é diferente das versões anteriores do Windows, que sempre criavam um botão da barra de tarefas para cada janela aberta.

Isso não funciona com o emacs, no entanto. Para eliminar a janela do console, ele deve ser iniciado com o runemacs. Isso significa que teríamos de fixar o runemacs.exe na barra de tarefas para iniciar o emacs. Quando executado, no entanto, simplesmente inicia o emacs.exe e sai. O Windows reconhecerá que esses são dois programas diferentes e não destacará o ícone fixado e criará um novo botão para o emacs.exe.

Uma solução alternativa é proposta aqui :

Minha solução alternativa é fixar o emacs.exe na barra de tarefas e o runemacs.exe no menu Iniciar. Quando quero iniciar o Emacs, tenho que usar o atalho no meu menu Iniciar, mas quando estiver em execução, posso usar o ícone da barra de tarefas normalmente. Isso funciona razoavelmente bem para mim, porque normalmente inicio o Emacs uma vez por sessão da área de trabalho e deixo em execução ...

harrymc
fonte
Infelizmente, isso não funcionará para as janelas mais recentes 7 e emacs (23.3.1.). Eu apenas fixei o emacs.exe na barra de tarefas e o runemacs.exe no menu Iniciar e iniciei o emacs através do atalho do menu Iniciar - onde estão dois ícones do emacs na minha taksbar :(. Um fixado e iniciado no menu Iniciar. E onde não há maneira de fixar o que realmente começou - ele ignora o botão direito do mouse :(
grigoryvp
Tente talvez usar o EmacsClient . Veja esta dica .
harrymc
Como o EmacsClient pode me ajudar a interagir com a barra de tarefas? O_O Claro coisa que eu posso abrir documentos via-lo utilizando emacs execução no modo de servidor - mas o ícone da barra de tarefas problemas permanece na barra de tarefas :(.
grigoryvp
Parece que o Win7 não suporta a divisão do Emacs em 2 programas. Você já viu garfos alternativos, como o XEmacs ?
precisa saber é
1
Seria necessário combinar runemacs.exe e emacs.exe em um executável (que era a intenção anunciada do ntemacs ao iniciar seu projeto).
harrymc
0

Isso é mais uma solução alternativa, mas nenhuma das outras respostas funciona para mim.

Clique com o botão direito do mouse runemacs.exee fixe-o no menu Iniciar e não na barra de tarefas.

jfritz42
fonte