Tecla de acceso rápido para cambiar el idioma de entrada en Windows 7

10

Estoy usando Windows 7 y me gustaría definir una tecla de acceso rápido personalizada para cambiar entre diferentes idiomas de entrada.

Sé que puedo cambiarlos a Ctrl+ Shift, Left Alt+ Shifto al acento grave, pero no me gusta ninguno de estos. Entonces, ¿hay alguna manera de definir algo como Ctrl+ Spacepara cambiar el idioma de entrada?

Fynn
fuente

Respuestas:

3

Creo que Windows no admite de forma nativa el cambio de estas claves. De todos modos, puede escribir un script AutoIt para escuchar las combinaciones de teclas personalizadas y enviar mediante programación uno de los atajos de teclado predefinidos al sistema para cambiar la distribución del teclado.

;^ = Ctrl
;! = Alt
;# = WinKey (Meta)
;+ = Shift

HotKeySet("^{Space}", "change") ;Registers Control + Space

;Main loop
While 1
    Sleep(100)
WEnd

;Changes Keyboard Layout
Func change()
    Send ("{ALTDOWN}") ;Hold down Alt
    Sleep(100) ;Wait 100 milliseconds
    Send("{LSHIFT}{ALTUP}") ;Press Left-Shift and release Alt
EndFunc

Simplemente descargue e instale AutoIt (use este enlace para descargar e instalar) y cree un archivo con una .au3extensión. Copie y pegue el código anterior y guárdelo. Puede colocar este archivo en su carpeta de Inicio si desea que se abra al iniciar sesión.

Fardjad
fuente
3

El script anterior no funcionó para mí, pero lo modifiqué y ahora sí.

#Include <Misc.au3>
;~ #RequireAdmin
;^ = Ctrl
;! = Alt
;# = WinKey (Meta)
;+ = Shift

HotKeySet("^{Space}", "change") ;Registers Contorl + Space
$dll = DllOpen("user32.dll")

ToolTip("Try to use ^Space"&@CRLF&"!!!!!!!!!!!!!!!!!!!")
Sleep(3000)
ToolTip('')

;Main loop
While 1
    Sleep(100)
WEnd

;Changes Keyboard Layout
Func change()
 While _IsPressed("11",$dll)
  Sleep(10)
 WEnd
 Send ("{ALTDOWN}") ;Hold down Alt
    Sleep(100) ;Wait 100 milliseconds
    Send("{LSHIFT}{ALTUP}") ;Press Left-Shift and release Alt
EndFunc
Sergey Erokhin
fuente
1

En Windows 7, en Panel de control \ Región e idioma \ Teclados e idioma, seleccione 'Cambiar teclados'. Aparecerá una pequeña ventana emergente; allí eligió 'Configuración avanzada de teclas', que le permite establecer combinaciones para obtener directamente cada teclado de destino, así como la secuencia de teclas de cambio general.

Aganju
fuente
2
El problema con esto es que solo ofrece 3 opciones, una de las cuales no está en la misma clave en ambos diseños ... La otra opción es establecer una clave diferente para cada idioma, pero requiere un combo modificador. No es ideal.
Henrik Erlandsson
0

Respuesta alternativa

Si dos diseños de teclado no difieren en muchos símbolos, puede agregar modificadores Alt para el idioma extranjero (por ejemplo, símbolos de diseño estándar de EE. UU. En la capa Alt de un teclado alemán) con una utilidad como AutoHotKey o similar.

O cree un mapa de teclas para el sistema operativo, que es la forma más correcta de hacerlo.

  • nunca tiene que cambiar y preguntarse qué idioma está activo (puede ser muy molesto)
  • puede acceder a la capa Alt con frecuencia y esto ralentiza su flujo.

Para algunos idiomas europeos, puede mover caracteres permanentemente, en lugar de tener una capa.

Por ejemplo, [] y {} a Alt / Shift combos de () y [] ;: '' a teclas cerca de üäö, lo que le permite mantener un diseño estadounidense casi normal para la codificación y dejar espacio para los caracteres de sus idiomas en los puntos donde suelen residir

Henrik Erlandsson
fuente