Skip to content

Add Windows platform support for terminal handling#1

Closed
Copilot wants to merge 5 commits intomainfrom
copilot/fix-build-issues
Closed

Add Windows platform support for terminal handling#1
Copilot wants to merge 5 commits intomainfrom
copilot/fix-build-issues

Conversation

Copy link

Copilot AI commented Nov 27, 2025

Windows CI build failing due to Unix-only headers (sys/ioctl.h, termios.h, unistd.h) that don't exist on Windows.

Changes

  • terminal.h/cpp: Windows Console API implementation

    • GetConsoleMode/SetConsoleMode for raw mode
    • ReadConsoleInput for keyboard input with VK_* to ANSI escape sequence mapping
    • Enable ENABLE_VIRTUAL_TERMINAL_PROCESSING for ANSI support
  • buffer.cpp: Replace ioctl(TIOCGWINSZ) with GetConsoleScreenBufferInfo() for terminal size

  • history.cpp: Fallback to USERPROFILE env var on Windows when HOME unset

  • readline.cpp: Guard kill(0, SIGSTOP) as Unix-only

All changes use #ifdef _WIN32 conditional compilation to preserve existing Unix behavior.

Original prompt

Fix this build:

2025-11-27T14:14:18.9654761Z ##[group]Run cmake --build build --config Release
2025-11-27T14:14:18.9655192Z �[36;1mcmake --build build --config Release�[0m
2025-11-27T14:14:18.9716930Z shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'"
2025-11-27T14:14:18.9717262Z env:
2025-11-27T14:14:18.9717431Z CommandPromptType: Native
2025-11-27T14:14:18.9717775Z DevEnvDir: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE
2025-11-27T14:14:18.9718265Z ExtensionSdkDir: C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs
2025-11-27T14:14:18.9789462Z EXTERNAL_INCLUDE: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\include;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\ATLMFC\include;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\include;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\shared;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\winrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\cppwinrt;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um
2025-11-27T14:14:18.9793373Z Framework40Version: v4.0
2025-11-27T14:14:18.9793823Z FrameworkDir: C:\Windows\Microsoft.NET\Framework64
2025-11-27T14:14:18.9794373Z FrameworkDir64: C:\Windows\Microsoft.NET\Framework64
2025-11-27T14:14:18.9794858Z FrameworkVersion: v4.0.30319
2025-11-27T14:14:18.9795244Z FrameworkVersion64: v4.0.30319
2025-11-27T14:14:18.9796117Z FSHARPINSTALLDIR: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\CommonExtensions\Microsoft\FSharp\Tools
2025-11-27T14:14:18.9797104Z HTMLHelpDir: C:\Program Files (x86)\HTML Help Workshop
2025-11-27T14:14:18.9797879Z IFCPATH: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\ifc\x64
2025-11-27T14:14:18.9801459Z INCLUDE: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\include;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\ATLMFC\include;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\include;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\shared;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\winrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\cppwinrt;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um
2025-11-27T14:14:18.9804944Z is_x64_arch: true
2025-11-27T14:14:18.9806910Z LIB: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\ATLMFC\lib\x64;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\lib\x64;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\lib\um\x64;C:\Program Files (x86)\Windows Kits\10\lib\10.0.26100.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\lib\10.0.26100.0\um\x64
2025-11-27T14:14:18.9811263Z LIBPATH: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\ATLMFC\lib\x64;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\lib\x64;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\lib\x86\store\references;C:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.26100.0;C:\Program Files (x86)\Windows Kits\10\References\10.0.26100.0;C:\Windows\Microsoft.NET\Framework64\v4.0.30319
2025-11-27T14:14:18.9814558Z NETFXSDKDir: C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8
2025-11-27T14:14:18.9831284Z Path: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\bin\HostX64\x64;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\VC\VCPackages;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\bin\Roslyn;C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64;C:\Program Files (x86)\HTML Help Workshop;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\CommonExtensions\Microsoft\FSharp\Tools;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Team Tools\DiagnosticsHub\Collector;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\Extensions\Microsoft\CodeCoverage.Console;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin;C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64;C:\Program Files (x86)\Windows Kits\10\bin\x64;C:\Program Files\Microsoft Visual Stu...


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI self-assigned this Nov 27, 2025
Copilot AI and others added 4 commits November 27, 2025 14:20
Co-authored-by: ericcurtin <1694275+ericcurtin@users.noreply.github.com>
Co-authored-by: ericcurtin <1694275+ericcurtin@users.noreply.github.com>
Co-authored-by: ericcurtin <1694275+ericcurtin@users.noreply.github.com>
Co-authored-by: ericcurtin <1694275+ericcurtin@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix build issues in project configuration Add Windows platform support for terminal handling Nov 27, 2025
Copilot AI requested a review from ericcurtin November 27, 2025 14:25
@ericcurtin ericcurtin closed this Nov 27, 2025
@ericcurtin ericcurtin deleted the copilot/fix-build-issues branch November 27, 2025 15:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants