{"id":15060006,"url":"https://github.com/welterdevelopment/codeeditorcontol-winui","last_synced_at":"2025-08-21T02:06:59.143Z","repository":{"id":183526396,"uuid":"399585376","full_name":"WelterDevelopment/CodeEditorContol-WinUI","owner":"WelterDevelopment","description":"Win2D-based code editor control for WinUI 3","archived":false,"fork":false,"pushed_at":"2024-10-19T17:59:42.000Z","size":592,"stargazers_count":43,"open_issues_count":8,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-10T05:51:05.900Z","etag":null,"topics":["editor","projectreunion","syntax-highlighting","win2d","windowsappsdk","winui3"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/WelterDevelopment.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-08-24T19:42:13.000Z","updated_at":"2025-02-09T11:11:36.000Z","dependencies_parsed_at":"2023-11-07T19:27:40.431Z","dependency_job_id":"268d5727-80cf-4e58-84fc-9e59e7f7105b","html_url":"https://github.com/WelterDevelopment/CodeEditorContol-WinUI","commit_stats":null,"previous_names":["welterdevelopment/codeeditorcontol-winui"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/WelterDevelopment/CodeEditorContol-WinUI","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WelterDevelopment%2FCodeEditorContol-WinUI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WelterDevelopment%2FCodeEditorContol-WinUI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WelterDevelopment%2FCodeEditorContol-WinUI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WelterDevelopment%2FCodeEditorContol-WinUI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WelterDevelopment","download_url":"https://codeload.github.com/WelterDevelopment/CodeEditorContol-WinUI/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WelterDevelopment%2FCodeEditorContol-WinUI/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271415496,"owners_count":24755639,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-21T02:00:08.990Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["editor","projectreunion","syntax-highlighting","win2d","windowsappsdk","winui3"],"created_at":"2024-09-24T22:51:07.357Z","updated_at":"2025-08-21T02:06:59.075Z","avatar_url":"https://github.com/WelterDevelopment.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# CodeEditorControl-WinUI\nWin2D-based code editor control for WinUI 3.\n\nAt this stage, this is only a proof of concept. \nI tried to port https://github.com/PavelTorgashov/FastColoredTextBox line by line which was a huge pain so I had to stop. The codebase is just too huge and hard to read.\n\nI took some inspiration and created my own Win2d-based control. Feel free to contibute! Would be nice to have a fast full-featured text editor for WinAppSDK / MAUI!\n\n## Screenshot of the TestApp\nStuff that works:\n- Text selection \u0026 beam placement (inputs: PointerPress \u0026 Up/Down/Left/Right keys)\n- Basic text editing (char insertion, back key, delete key, enter key)\n- Basic copy \u0026 paste logic\n- Scrolling (vertical \u0026 horizontal)\n- Text, FontSize, Theme and TabLength are two-way bindable DependencyProperties\n- Proof-of-Concept syntax highlighting for ConTeXt as a static Language Definition within the Control\n- Syntax highligting example for a Lua file in the TestApp\n- Actions (right-click menu \u0026 KeyboardAccelerators)\n- Middle-click scrolling\n- Search and highlight\n- Drag and drop\n- Error/Warning/Message/SearchMatch markers on the line and on the vertical ScrollBar\n- Recource-intensive work does not block the UI thread: Setting the Text, Pasting large chunks of Lines, Changing the Code Language\n\n![Screenshot 2021-09-02 164150](https://user-images.githubusercontent.com/13318246/131864308-d7810b6e-9831-4848-9a5e-fa75a291d6f1.jpg)\n\n![Screenshot 2021-09-02 163928](https://user-images.githubusercontent.com/13318246/131863972-107058f3-e835-4c2c-a66f-fb26e9c16e41.jpg)\n\n## ToDo\n\n- Line wrapping\n- Text folding\n- Text-wide instead of line-wise regexing (respectively lexer states for multiline-comment handling)\n- Incremental regexing when Text source changes (Regex and draw the VisibleLines immediately, then regex the rest in blocks)\n- IntelliSense for commands and arguments\n- Find and highlight matching bracket/parenthesis/braces pairs, auto-close pairs\n- Generalize the syntax highlighting and IntelliSense for more (user-definable) languages\n- Minimap\n- Breakpoints and breakpoint line highlighting\n- Word/Keyword/Variable highlighting\n- Multi-cursor selection and editing\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwelterdevelopment%2Fcodeeditorcontol-winui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwelterdevelopment%2Fcodeeditorcontol-winui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwelterdevelopment%2Fcodeeditorcontol-winui/lists"}