
Quando no Windows 7 eu clico duas vezes no texto aaa.bbb
, ou aaa
sou bbb
selecionado, mas não ambos, então o texto selecionado é apenas essa parte e não a string inteira aaa.bbb
.
Como outro exemplo, clicar duas vezes em qualquer lugar em algo da forma aaa_bbb
seleciona a palavra inteira - ou seja, o caractere _
não funciona como separador.
Existe uma maneira de alterar ou adicionar no Windows quais delimitadores são considerados separadores de palavras?
Responder1
Não existe um mecanismo unificado no Windows para lidar com a seleção de texto. Ao dar um clique duplo em um programa, ele recebe esse evento e o trata usando sua própria lógica e código. Portanto, você obterá comportamentos diferentes de programas diferentes. Os resultados serão, por exemplo, diferentes no Bloco de Notas, Wordpad, Word etc. Mesmo no Office, haverá diferenças de comportamento e opções entre Word e Excel etc.
Você precisará construir um mecanismo que intercepte o clique duplo e faça seu próprio truque. Uma boa ferramenta seria AutoHotkey com o qual você poderia escrever um script que convertesse o clique duplo em uma série de operações no programa ativo.
Você precisará fazer certas suposições sobre a interface do usuário, que podem não se aplicar a todos os programas, e precisará de um mecanismo para extrair dados dos programas - para mim, o único universal é a área de transferência. Isso entrará em conflito com qualquer produto que gerencie o histórico da área de transferência, pois você preencherá sua lista de histórico com dados parciais.
Você precisará assumir que o programa alvo segue as convenções usuais para mover o cursor e selecionar caracteres.
O script AutoHotkey que você escreverá fará:
- Intercepte o clique duplo lembrando-se da janela de destino e das coordenadas XY do clique
- Envie um simples clique para essas coordenadas
- Envie Shift+ Homepara selecionar todos os caracteres à esquerda
- Envie Ctrl+ Cpara copiar os caracteres e descubra a quantidade de caracteres L para selecionar à esquerda
- Envie outro simples clique para essas coordenadas
- Envie Shift+ Endpara selecionar todos os caracteres à direita
- Envie Ctrl+ Cpara copiar os caracteres e descubra a quantidade de caracteres R para selecionar à direita
- Envie novamente um simples clique para essas coordenadas
- Envie L vezes uma Leftflecha
- Envie L+R vezes Shift+ Rightpara fazer a seleção
- Feito.
Lembre-se de adicionar alguns milissegundos de espera após a emissão das chaves, para permitir que o programa de destino tenha tempo para processá-las.
Responder2
Eu entendo sua pergunta. Não acho que você possa mudar o que o Word considera uma unidade de palavras. Porém, se você quiser um comportamento mais consistente, você pode ir em Opções -> Avançado e desmarcar o segundo item, "Ao selecionar, selecionar automaticamente a palavra inteira".