microsoft / microsoft/terminal
Expose Windows IME status to terminal applications
Nessuno ha ancora preso questa issue.
- Lingua principale
- C++
- Stelle
- 105k
- Fork
- 9.6k
- Merge medio
- 3g 17h
- PR unite (30g)
- 29
Descrizione
### Description of the new feature
I use Windows Terminal with WSL2, and sometimes terminal applications need to know the current Windows IME status.
I had this problem with Neovim before, so I made a small CLI tool called winime_en:
https://github.com/hdformat/winime_en
It switches the Windows IME to English, and I use it from Neovim running inside WSL. I made this because Korean input is inconvenient when entering Normal mode.
Recently I had a similar problem with Herdr. Herdr has a prefix mode like tmux, and the prefix commands need English input. But an application running inside WSL does not have a simple way to know the current Windows IME status.
I think it would be useful if Windows Terminal exposes the IME status to programs running inside the terminal.
For example:
wt.exe --ime-status --format json
Example output:
{
"language": "ko-KR",
"mode": "hangul"
}
or:
{
"language": "ko-KR",
"mode": "ascii"
}
The command and JSON format are only examples. I don't know what is the best interface for Windows Terminal.
This could be useful for Neovim, tmux, Herdr, and other terminal programs, especially when they are running inside WSL.
I found #19491, which suggests showing the IME status by changing the cursor color. I think exposing the same information to terminal applications could also be useful.
### Proposed technical implementation details
I am not sure about the implementation.
Maybe Windows Terminal can expose the current IME status through a CLI command, environment/session interface, or some other machine-readable interface that can also be accessed from WSL.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia esaminando lo strumento winime_en esistente e l’issue #19491 per comprendere le informazioni IME richieste e il comportamento correlato del terminale. Definisci un’interfaccia leggibile dalle macchine a cui possano accedere le applicazioni in esecuzione all’interno di WSL, quindi verifica che le applicazioni del terminale possano recuperare in modo affidabile la lingua e la modalità di input correnti.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- cpp
- Ambito
- cli, operating-systems
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Attiva
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 35/100