Como alterar a tecla de atalho para alternar entre áreas de trabalho virtuais no Windows 10?

64

No Linux eu uso um atalho para alternar entre 4 áreas de trabalho: win+ 1/2/3/4.

Gostaria de ter algo assim no Windows 10.

SOLUÇÃO DE ATUALIZAÇÃO 2017, WINDOWS 10x64

  1. Atualize sua versão do Windows para a mais recente através deste atualizador . Você também pode precisar do Visual C ++ Redistributable for Visual Studio 2015
  2. Baixe e descompacte este Windows 10 Virtual Desktop Enhancer (0.9.1) funciona para mim.
  3. Altere o conteúdo do arquivo settings.ini para
[KeyboardShortcuts]
Switch=LWin
Move=LAlt, Shift, Ctrl
MoveAndSwitch=LAlt, Shift
Previous=Left
Next=Right
PlusTen=
  1. Execute o virtual-desktop-enhancer.exe como administrador .
Dariusz Filipiak
fonte
2
Essa é uma pergunta válida. No Windows 10, você tem permissão para alternar entre as visualizações da área de trabalho virtual. Isso é muito semelhante ao modo como o Mac OSX e o Linux permitem alternar no passado.
Geruta 14/07/2015
Talvez exista um prompt de comando ou comando PowerShell que possa mudar para uma área de trabalho específica? (Se sim, então deve ser fácil criar um script em lote ou algo assim e, em seguida, basta usar a tecla autohot para redirecionar win + 1/2/3/4 para o referido script em lote). Caso contrário, quando um programa é focado, o Windows 10 alterna na área de trabalho em que o programa está. Portanto, isso significa que, se existe uma maneira de abrir um programa em uma área de trabalho específica, pode ser possível fazer o que descrevi acima com alguns truques baseados nessa função.
Cestarian
Observe que, por padrão, no Windows 10, WIN + 1/2/3/4...abre, alterna para ou minimiza a janela na posição numerada correspondente na barra de tarefas. Por exemplo, se eu tiver o Chrome fixado na barra de tarefas na posição 1 e estiver fechada no momento, ela WIN + 1será aberta. Pressionar novamente o minimiza e pressionar novamente trará a janela de volta. Eu posso combinar isso com outros atalhos; agora pressionar WIN + SHIFT + 1abriria uma nova janela do Chrome, por exemplo.
Ninjakannon
Atualização: a versão (0.9.1) funciona sem nenhum problema na versão. 1903 de maio de 2019
Dariusz Filipiak

Respostas:

41

O que você precisa é o seguinte:

  • Janela de encaixe: WIN +LEFTouRIGHT (pode ser usada comUPouDOWNpara entrar em quadrantes)
  • Mudar para a janela recente: Alt +Tab(inalterado) - Espera mostra a nova visualização da janela da exibição Tarefa, solta e alterna para o aplicativo.
  • Visualização de tarefas: WIN +Tab- A nova visualização de tarefas é aberta e permanece aberta.
  • Crie uma nova área de trabalho virtual: WIN +Ctrl+d
  • Fechar a área de trabalho virtual atual: WIN +Ctrl+F4
  • Alternar área de trabalho virtual: WIN +Ctrl+LEFTouRIGHT
Geruta
fonte
Assim, a diferença aqui é que você primeiro deve criar a segunda área de trabalho com (WIN + CTRL + D), e depois mudar para-lo com (WIN + CTRL + DIREITA)
Geruta
17
Ainda falta uma maneira de mudar para um ambiente de trabalho específico com um atalho (ou seja, em linha reta da área de trabalho 1 para o desktop 3)
Cestarian
Infelizmente, WIN CTRL RIGHT não funciona em um Samsung Ativ 9+. ESQUERDA funciona, mas não há como contornar, por exemplo, 3 áreas de trabalho virtuais. Alguém com uma experiência melhor?
precisa saber é
3
Votado por não responder à pergunta: pergunta como alterá-lo, especificamente para poder usar um número de desktop para mudar.
Luc
16

Acho que acabei de criar exatamente o que você está procurando. Eu uso um gerenciador de janelas no linux e queria usar teclas de atalho de maneira semelhante no Windows.

https://github.com/pmb6tz/windows-desktop-switcher

Meu script usa CapsLock porque é mais conveniente para mim, mas você pode configurá-lo facilmente para funcionar para você. Provavelmente há um bug ou dois lá, mas em geral eu achei bastante sólido. Espero que isto te ajude!

droptic
fonte
Esse script simplesmente funciona perfeitamente, depois que eu comentei o último parágrafo do código. Obrigado por compartilhar. Fiz uma solicitação de recebimento com as alterações feitas no código.
David
12

Acabei de criar um script para a autohotkey que realiza isso no Windows 10 para até 10 áreas de trabalho.

Como fazê-lo funcionar:

Baixe e instale a autohotkey . Copie e cole o código abaixo no bloco de notas e salve-o com a extensão de arquivo .ahk

Sugiro fazer um atalho desse arquivo na sua pasta de inicialização para que ele seja executado quando o Windows iniciar.

HOTKEYS PADRÕES:

Alternar área de trabalho: WIN + NÚMERO DE DESKTOP (0 = número da área de trabalho 10)

Nova área de trabalho: CTRL + WIN + D

Fechar a área de trabalho: CTRL + WIN + F4

Exibir estado da área de trabalho: WIN + '

IMPORTANTE:

Para funcionar, você SOMENTE deve usar teclas de atalho para abrir, fechar e alterar áreas de trabalho, pois o script escuta essas teclas de atalho para saber o número atual e total de áreas de trabalho.

Se você criar, fechar ou alterar áreas de trabalho através do menu WIN + TAB com o mouse, o script deixará de funcionar. Para fazê-lo funcionar novamente, você precisará editar as duas primeiras linhas para refletir o estado atual de suas áreas de trabalho. (desktopcount / currentdesktop)

Isso não significa que você não pode usar a tela WIN + TAB como uma visão geral dos seus desktops atuais. Você pode usá-lo na combinação das teclas de atalho para organizar sua área de trabalho. Sim, as teclas de atalho ainda funcionam quando o visualizador de tarefas do Windows está aberto! (WIN + TAB) Apenas NÃO use o mouse !!!

Além disso, aguarde o carregamento do script após a inicialização do Windows antes de criar novas áreas de trabalho ou ele não funcionará. Isso pode levar um momento, dependendo de quantos programas de inicialização você possui.

Ok, adicionei mais uma coisa para tornar mais fácil sincronizar novamente o script com o estado da área de trabalho. Agora existe uma tecla de atalho que exibirá o estado em que o script acredita que as áreas de trabalho estejam, então tudo o que você precisa fazer é ajustar suas áreas de trabalho com o mouse para ajustá-las ao script e tudo será sincronizado novamente! Para mim, com um teclado suíço, funcionou muito bem com o '? chave ao lado de 0 e faz sentido com um? nele, mas em outros teclados, você pode alterar isso, o que pode ser feito facilmente, alterando a linha logo após a tecla de atalho para 0/10 (começando com # ') para o que você quiser.

Na verdade, eu acabei de perceber .... enquanto a Contagem da área de trabalho estiver correta, a criação de uma nova área de trabalho sincronizará automaticamente o valor da Área de trabalho atual.

(As linhas que começam com; são comentários e não afetam o script)

Código:

#NoTrayIcon
;If the script stops working:
;Change the following values to reflect your current desktop state and reload the script.
;Remember to change them back to 1 after reloading the script if you have it set to start with Windows

desktopcount := 1
currentdesktop := 1

;You can change the hotkeys for creating, closing, and switching desktops bellow.
;The current hotkeys are CTRL+WIN+D for new desktop, CTRL+WIN+F4 to close desktop
;and WIN+NUMBER for switching desktops.
;For example, to change the hotkey for new desktop replace ^#D bellow with the desired hotkey.
;Refer to the autohotkey documentation for a full list of symbols refering to modifier keys,
;as you can see ^ is CTRL and # is WIN key.
;If you wanted to change the switch desktop from WIN key to CTRL for example you would have
;to replace the # before each number to a ^

^#D::NewDesktop()
^#F4::CloseDesktop()
#1::SwitchDesktop(1)
#2::SwitchDesktop(2)
#3::SwitchDesktop(3)
#4::SwitchDesktop(4)
#5::SwitchDesktop(5)
#6::SwitchDesktop(6)
#7::SwitchDesktop(7)
#8::SwitchDesktop(8)
#9::SwitchDesktop(9)
#0::SwitchDesktop(10)
#'::MsgBox Desktop Count = %desktopcount%`nCurrent Desktop = %currentdesktop%

;Do not change anything after this line, unless you know what you are doing ;)
;-----------------------------------------------------------------------------------------------
SwitchDesktop(desktop)
{

    global desktopcount
    global currentdesktop
    desktopdiff := desktop - currentdesktop
    if (desktop > desktopcount)
    {
        return
    }
    if (desktopdiff < 0)
    {
        desktopdiff *= -1
        Loop %desktopdiff%
        {
        Send ^#{Left}
        }   
    }
    else if (desktopdiff > 0)
    {
        Loop %desktopdiff%
        {
        Send ^#{Right}
        }
    }
    currentdesktop := desktop
}

NewDesktop()
{
    global desktopcount
    global currentdesktop
    if (desktopcount > 9)
    {
        return
    }
    desktopcount ++
    currentdesktop := desktopcount
    Send ^#d
}

CloseDesktop()
{
    global desktopcount
    global currentdesktop
    desktopcount --
    if (currentdesktop != 1)
    {
        currentdesktop --
    }
    Send ^#{f4}
}
OptimistPrime
fonte
Além disso, você pode adicionar #NoTrayIcon no início do script, se não gostar do pequeno ícone verde na bandeja do sistema.
OptimistPrime
1
Ah ... eu já criei um script melhor que obtém as áreas de trabalho ativas e totais do registro. Boa ideia!
OptimistPrime
1
Embora, observe que o caminho do registro pode ser diferente por usuário / computador. Eu não sei o que tem influência sobre isso, mas o meu caminho para a corrente id área de trabalho estava em uma pasta com o número 2, não 1: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SessionInfo\2\VirtualDesktops
OptimistPrime
Awesome man !! Obrigado por compartilhar. Eu mudei # 1 com ^ 1. Eu gosto de usar Ctrl em vez de Win.
Gueorgui Obregon
Este script é INCRÍVEL! A única coisa comigo é que já tenho remapeamento de capslock e gostaria de adicionar isso ao meu script. Infelizmente, isso não funciona. Só funciona se eu remover a seguinte linha (antes do script): CapsLock :: Ctrl Alguma idéia de como corrigir isso? Remover esta linha funciona, mas tendo CAPSLOCK agir como Ctrl é muito inportant para mim ...
bitstream
1

Por exemplo, eu quero definir Page Down para a próxima área de trabalho e Page Up para a área de trabalho anterior Depois de instalar o AutoHotkey, crio um novo script AutoHotKey e adiciono a ele esses códigos, salve-o e execute o script

PgDn::^#Right ;Next Desktop
return 

PgUp::^#Left ;Previous Desktop
return 

e vai funcionar bem :)

Atualização: Às vezes, o código acima não funciona e você deve clicar em um ponto. Então eu mudei para este:

PgDn::
   {
      MouseGetPos,,,win
      WinGetClass, class, ahk_id %win%
      If class in Progman,WorkerW
         send {Click}^#{Right}  
      else
         send ^#{Right}  ; Next  Desktop  
      return
    }

PgUp::
    {
       MouseGetPos,,,win
       WinGetClass, class, ahk_id %win%
       If class in Progman,WorkerW
          send {Click}^#{Left}
       else
          send ^#{Left}  ; Previous Desktop  
       return
    }
AliOsat Mostafavi
fonte
0

Ok, solução parcial ... porque não sei como ir direto para a área de trabalho virtual selecionada:

Este programa autohotkey com script:

#NoTrayIcon
#2::^#Right
#1::^#Left
#3::Return
#4::Return
Dariusz Filipiak
fonte
1
Isso é bom se você tiver apenas dois desktops virtuais, mas eu tenho três.
Michael Beijer
-1

Fiz uma atualização local diretamente do Windows 7 para 10 e lutei com o uso das teclas Windows + CTRL + Arrow para alternar entre os desktops, pois eles simplesmente não funcionavam. No entanto, a solução foi simples no meu caso - Use as teclas de função únicas (F1, F2, F3 etc.) para alternar facilmente entre os desktops virtuais. Agora não sei se isso é específico para o meu laptop HP ou parte da versão lançada, mas é elegante e simples. Estou assumindo que, desde que você não tenha as teclas de função mapeadas para algum outro propósito, elas também deverão funcionar para você.

Toutinegra cinza
fonte
1
F1 é ajuda em todas as máquinas Windows que já usei. Você responde não faz sentido.
DavidPostill
Definitivamente, essa não é a minha experiência no meu laptop Dell Precision (com Win 10). Win + Ctrl + F1 / F2 / F3 não fazem nada. Embora seria ótimo se eles fizessem.
Michael Beijer
-1

Estou usando os Desktops v2.0 da SysInternals e tenho 4 desktops com uma única tecla: F1, F2, F3, F4 (alguém está usando F1 para chamar a ajuda, sério?). Para mim, a solução Windows 10 não pode ser usada devido a três atalhos de teclas.

Oficial de desktops v2.0: https://technet.microsoft.com/en-us/sysinternals/cc817881.aspx

dblacha
fonte
Este produto não oferece suporte ao Windows 8 e superior. Como eu sei que isso, porque eu especificamente recordar, uma pergunta no passado perguntando sobre referido programa no Windows 8
Ramhound
1
No entanto ele funciona perfeitamente no Windows 8.1 e 10.
dblacha
-2

O script AHK fornecido pelo OptimistPrime: https://superuser.com/a/1050690/184229 não funciona para mim (as chaves não têm efeito), mas

este funciona bem: https://github.com/pmb6tz/windows-desktop-switcher/blob/master/desktop_switcher.ahk

dvo
fonte
Cite as partes essenciais da resposta nos links de referência, pois a resposta pode se tornar inválida se as páginas vinculadas forem alteradas.
DavidPostill
Eu preferiria comentar a resposta a que me referi, mas não foi permitido. Se você tivesse examinado mais de perto a minha resposta, teria notado que: 1. dá uma resposta à pergunta original 2. seria muito detalhado e não é realmente adequado copiar o conteúdo do segundo link que forneci.
Dvo 23/12