Codice di esempio del Terminale Windows
Esplorare alcuni codici di esempio ospitati nel repository Terminale Windows, inclusi esempi Pixel Shader .hlsl, una pseudo console Win32 EchoCon CONPTY di esempio, una console WPF GUIConsole di esempio destinata a .NET, un MiniTerm di esempio che usa chiamate API PTY di base e una demo ReadConsoleInputStream per il monitoraggio degli eventi della console durante lo streaming dell'input di caratteri.
A causa della quantità di potenza di calcolo nelle GPU, è possibile eseguire operazioni straordinarie con pixel shader, ad esempio zoom frattale in tempo reale, ray tracer ed elaborazione delle immagini.
Terminale Windows consente agli utenti di fornire un pixel shader, applicato al terminale aggiungendo la proprietà experimental.pixelShaderPath
a un profilo nel file settings.json. Gli shader pixel vengono scritti in un linguaggio denominato HLSL, un linguaggio simile a C con alcune restrizioni.
Provare uno dei diversi esempi di pixel shader .hlsl forniti nel repository di Terminale Windows: Pixel Shader.
Questa applicazione di esempio illustra come usare la pseudo console Win32 (ConPTY) con:
- Creazione di un input e di una pipe di output
- Chiamata di CreatePseudoConsole() per creare un'istanza ConPTY collegata all'altra estremità delle pipe
- Generazione di un'istanza di ping.exe connessa a ConPTY
- Esecuzione di un thread in ascolto dell'output da ping.exe, scrittura di testo ricevuto nella console
Visitare il repository Terminale Windows per trovare questo esempio: App di esempio EchoCon ConPTY.
Questa applicazione di esempio fornisce una struttura di esempio di una console WPF personalizzata.
In questo esempio sono disponibili:
GUIConsole.WPF: un'applicazione WPF destinata a .NET 4.6.1 che crea una singola finestra WPF che funge da console e mantiene visibile la console sottostante.
GUIConsole.ConPTY: libreria .NET Standard 2.0 che gestisce la creazione della console e abilita il comportamento di pseudo console. Il file Terminal.cs contiene le parti visibili pubblicamente con cui l'applicazione WPF interagirà. Terminal.cs espone due elementi che consentono la lettura e la scrittura nella console:
ConsoleOutStream
: FileStream collegato alla pipe di output della pseudo console. Verrà restituito VT100.WriteToPseudoConsole
(input stringa): metodo che accetta la stringa specificata e la scrive nella pseudo console tramite la relativa pipe di input. Accetta VT100.
Visitare il repository Terminale Windows per trovare questo esempio: GUIConsole.
Questo terminale sperimentale illustra le chiamate API di base (non destinate all'utilizzo reale) usando API PTY di Microsoft. Scritto in C# e fortemente basato sugli esempi di codice nativo.
Visitare il repository Terminale Windows per trovare questo esempio: MiniTerm.
Dimostrazione del monitoraggio asincrono degli eventi della console (ad esempio mouse, menu, stato attivo, ridimensionamento buffer/viewport) durante lo streaming simultaneo della visualizzazione di input dei caratteri dalla console. Una funzionalità particolarmente utile quando si utilizzano flussi VT100 e ConPTY.
Visitare il repository Terminale Windows per trovare questa demo: ReadConsoleInputStream Demo.
Feedback su Windows Terminal
Windows Terminal è un progetto di open source. Selezionare un collegamento per fornire feedback: