From 46c7a4e8a25f5ee71c4ba5b37d78b18d55dfd73a Mon Sep 17 00:00:00 2001 From: Kyle Isom Date: Sat, 29 Nov 2025 16:57:01 -0800 Subject: [PATCH] Initial import. --- .gitignore | 3 + .idea/.gitignore | 8 + .idea/codeStyles/Project.xml | 166 + .idea/codeStyles/codeStyleConfig.xml | 5 + .idea/editor.xml | 370 + .idea/kte.iml | 2 + .idea/misc.xml | 7 + .idea/modules.xml | 8 + .idea/vcs.xml | 6 + .idea/workspace.xml | 143 + .junie/guidelines.md | 82 + AppendBuffer.h | 15 + Buffer.cpp | 123 + Buffer.h | 165 + CMakeLists.txt | 68 + Editor.cpp | 120 + Editor.h | 177 + GapBuffer.cpp | 203 + GapBuffer.h | 72 + PieceTable.cpp | 226 + PieceTable.h | 97 + README.md | 177 + cmake/imgui.cmake | 39 + cmake/packaging.cmake | 62 + ext/imgui/.editorconfig | 28 + ext/imgui/.gitattributes | 30 + ext/imgui/.github/FUNDING.yml | 1 + ext/imgui/.github/issue_template.md | 46 + ext/imgui/.github/pull_request_template.md | 6 + ext/imgui/.github/workflows/build.yml | 507 + ext/imgui/.github/workflows/scheduled.yml | 15 + .../.github/workflows/static-analysis.yml | 46 + ext/imgui/.gitignore | 59 + ext/imgui/LICENSE.txt | 21 + ext/imgui/backends/imgui_impl_allegro5.cpp | 613 + ext/imgui/backends/imgui_impl_allegro5.h | 38 + ext/imgui/backends/imgui_impl_android.cpp | 304 + ext/imgui/backends/imgui_impl_android.h | 36 + ext/imgui/backends/imgui_impl_dx10.cpp | 589 + ext/imgui/backends/imgui_impl_dx10.h | 31 + ext/imgui/backends/imgui_impl_dx11.cpp | 605 + ext/imgui/backends/imgui_impl_dx11.h | 32 + ext/imgui/backends/imgui_impl_dx12.cpp | 761 + ext/imgui/backends/imgui_impl_dx12.h | 44 + ext/imgui/backends/imgui_impl_dx9.cpp | 388 + ext/imgui/backends/imgui_impl_dx9.h | 31 + ext/imgui/backends/imgui_impl_glfw.cpp | 803 + ext/imgui/backends/imgui_impl_glfw.h | 53 + ext/imgui/backends/imgui_impl_glut.cpp | 308 + ext/imgui/backends/imgui_impl_glut.h | 46 + ext/imgui/backends/imgui_impl_metal.h | 72 + ext/imgui/backends/imgui_impl_metal.mm | 590 + ext/imgui/backends/imgui_impl_opengl2.cpp | 302 + ext/imgui/backends/imgui_impl_opengl2.h | 38 + ext/imgui/backends/imgui_impl_opengl3.cpp | 945 + ext/imgui/backends/imgui_impl_opengl3.h | 66 + .../backends/imgui_impl_opengl3_loader.h | 809 + ext/imgui/backends/imgui_impl_osx.h | 51 + ext/imgui/backends/imgui_impl_osx.mm | 811 + ext/imgui/backends/imgui_impl_sdl2.cpp | 659 + ext/imgui/backends/imgui_impl_sdl2.h | 43 + ext/imgui/backends/imgui_impl_sdl3.cpp | 594 + ext/imgui/backends/imgui_impl_sdl3.h | 41 + .../backends/imgui_impl_sdlrenderer2.cpp | 266 + ext/imgui/backends/imgui_impl_sdlrenderer2.h | 39 + .../backends/imgui_impl_sdlrenderer3.cpp | 261 + ext/imgui/backends/imgui_impl_sdlrenderer3.h | 39 + ext/imgui/backends/imgui_impl_vulkan.cpp | 1504 ++ ext/imgui/backends/imgui_impl_vulkan.h | 169 + ext/imgui/backends/imgui_impl_wgpu.cpp | 772 + ext/imgui/backends/imgui_impl_wgpu.h | 32 + ext/imgui/backends/imgui_impl_win32.cpp | 888 + ext/imgui/backends/imgui_impl_win32.h | 52 + ext/imgui/backends/vulkan/generate_spv.sh | 6 + ext/imgui/backends/vulkan/glsl_shader.frag | 14 + ext/imgui/backends/vulkan/glsl_shader.vert | 25 + ext/imgui/docs/BACKENDS.md | 146 + ext/imgui/docs/CHANGELOG.txt | 5227 ++++++ ext/imgui/docs/CONTRIBUTING.md | 81 + ext/imgui/docs/EXAMPLES.md | 245 + ext/imgui/docs/FAQ.md | 680 + ext/imgui/docs/FONTS.md | 502 + ext/imgui/docs/README.md | 218 + ext/imgui/docs/TODO.txt | 347 + ext/imgui/imconfig.h | 129 + ext/imgui/imgui.cpp | 15086 ++++++++++++++++ ext/imgui/imgui.h | 3221 ++++ ext/imgui/imgui_demo.cpp | 8273 +++++++++ ext/imgui/imgui_draw.cpp | 4293 +++++ ext/imgui/imgui_internal.h | 3457 ++++ ext/imgui/imgui_tables.cpp | 4162 +++++ ext/imgui/imgui_widgets.cpp | 8895 +++++++++ ext/imgui/imstb_rectpack.h | 627 + ext/imgui/imstb_textedit.h | 1440 ++ ext/imgui/imstb_truetype.h | 5085 ++++++ ext/imgui/misc/README.txt | 23 + ext/imgui/misc/cpp/README.txt | 13 + ext/imgui/misc/cpp/imgui_stdlib.cpp | 85 + ext/imgui/misc/cpp/imgui_stdlib.h | 21 + ext/imgui/misc/debuggers/README.txt | 16 + ext/imgui/misc/debuggers/imgui.gdb | 12 + ext/imgui/misc/debuggers/imgui.natstepfilter | 31 + ext/imgui/misc/debuggers/imgui.natvis | 58 + ext/imgui/misc/fonts/Cousine-Regular.ttf | Bin 0 -> 43912 bytes ext/imgui/misc/fonts/DroidSans.ttf | Bin 0 -> 190044 bytes ext/imgui/misc/fonts/Karla-Regular.ttf | Bin 0 -> 16848 bytes ext/imgui/misc/fonts/ProggyClean.ttf | Bin 0 -> 41208 bytes ext/imgui/misc/fonts/ProggyTiny.ttf | Bin 0 -> 35656 bytes ext/imgui/misc/fonts/Roboto-Medium.ttf | Bin 0 -> 162588 bytes .../misc/fonts/binary_to_compressed_c.cpp | 388 + ext/imgui/misc/freetype/README.md | 44 + ext/imgui/misc/freetype/imgui_freetype.cpp | 944 + ext/imgui/misc/freetype/imgui_freetype.h | 52 + .../misc/single_file/imgui_single_file.h | 29 + ke.md | 77 + main.cpp | 26 + 116 files changed, 80806 insertions(+) create mode 100644 .gitignore create mode 100644 .idea/.gitignore create mode 100644 .idea/codeStyles/Project.xml create mode 100644 .idea/codeStyles/codeStyleConfig.xml create mode 100644 .idea/editor.xml create mode 100644 .idea/kte.iml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 .idea/workspace.xml create mode 100644 .junie/guidelines.md create mode 100644 AppendBuffer.h create mode 100644 Buffer.cpp create mode 100644 Buffer.h create mode 100644 CMakeLists.txt create mode 100644 Editor.cpp create mode 100644 Editor.h create mode 100644 GapBuffer.cpp create mode 100644 GapBuffer.h create mode 100644 PieceTable.cpp create mode 100644 PieceTable.h create mode 100644 README.md create mode 100644 cmake/imgui.cmake create mode 100644 cmake/packaging.cmake create mode 100644 ext/imgui/.editorconfig create mode 100644 ext/imgui/.gitattributes create mode 100644 ext/imgui/.github/FUNDING.yml create mode 100644 ext/imgui/.github/issue_template.md create mode 100644 ext/imgui/.github/pull_request_template.md create mode 100644 ext/imgui/.github/workflows/build.yml create mode 100644 ext/imgui/.github/workflows/scheduled.yml create mode 100644 ext/imgui/.github/workflows/static-analysis.yml create mode 100644 ext/imgui/.gitignore create mode 100644 ext/imgui/LICENSE.txt create mode 100644 ext/imgui/backends/imgui_impl_allegro5.cpp create mode 100644 ext/imgui/backends/imgui_impl_allegro5.h create mode 100644 ext/imgui/backends/imgui_impl_android.cpp create mode 100644 ext/imgui/backends/imgui_impl_android.h create mode 100644 ext/imgui/backends/imgui_impl_dx10.cpp create mode 100644 ext/imgui/backends/imgui_impl_dx10.h create mode 100644 ext/imgui/backends/imgui_impl_dx11.cpp create mode 100644 ext/imgui/backends/imgui_impl_dx11.h create mode 100644 ext/imgui/backends/imgui_impl_dx12.cpp create mode 100644 ext/imgui/backends/imgui_impl_dx12.h create mode 100644 ext/imgui/backends/imgui_impl_dx9.cpp create mode 100644 ext/imgui/backends/imgui_impl_dx9.h create mode 100644 ext/imgui/backends/imgui_impl_glfw.cpp create mode 100644 ext/imgui/backends/imgui_impl_glfw.h create mode 100644 ext/imgui/backends/imgui_impl_glut.cpp create mode 100644 ext/imgui/backends/imgui_impl_glut.h create mode 100644 ext/imgui/backends/imgui_impl_metal.h create mode 100644 ext/imgui/backends/imgui_impl_metal.mm create mode 100644 ext/imgui/backends/imgui_impl_opengl2.cpp create mode 100644 ext/imgui/backends/imgui_impl_opengl2.h create mode 100644 ext/imgui/backends/imgui_impl_opengl3.cpp create mode 100644 ext/imgui/backends/imgui_impl_opengl3.h create mode 100644 ext/imgui/backends/imgui_impl_opengl3_loader.h create mode 100644 ext/imgui/backends/imgui_impl_osx.h create mode 100644 ext/imgui/backends/imgui_impl_osx.mm create mode 100644 ext/imgui/backends/imgui_impl_sdl2.cpp create mode 100644 ext/imgui/backends/imgui_impl_sdl2.h create mode 100644 ext/imgui/backends/imgui_impl_sdl3.cpp create mode 100644 ext/imgui/backends/imgui_impl_sdl3.h create mode 100644 ext/imgui/backends/imgui_impl_sdlrenderer2.cpp create mode 100644 ext/imgui/backends/imgui_impl_sdlrenderer2.h create mode 100644 ext/imgui/backends/imgui_impl_sdlrenderer3.cpp create mode 100644 ext/imgui/backends/imgui_impl_sdlrenderer3.h create mode 100644 ext/imgui/backends/imgui_impl_vulkan.cpp create mode 100644 ext/imgui/backends/imgui_impl_vulkan.h create mode 100644 ext/imgui/backends/imgui_impl_wgpu.cpp create mode 100644 ext/imgui/backends/imgui_impl_wgpu.h create mode 100644 ext/imgui/backends/imgui_impl_win32.cpp create mode 100644 ext/imgui/backends/imgui_impl_win32.h create mode 100644 ext/imgui/backends/vulkan/generate_spv.sh create mode 100644 ext/imgui/backends/vulkan/glsl_shader.frag create mode 100644 ext/imgui/backends/vulkan/glsl_shader.vert create mode 100644 ext/imgui/docs/BACKENDS.md create mode 100644 ext/imgui/docs/CHANGELOG.txt create mode 100644 ext/imgui/docs/CONTRIBUTING.md create mode 100644 ext/imgui/docs/EXAMPLES.md create mode 100644 ext/imgui/docs/FAQ.md create mode 100644 ext/imgui/docs/FONTS.md create mode 100644 ext/imgui/docs/README.md create mode 100644 ext/imgui/docs/TODO.txt create mode 100644 ext/imgui/imconfig.h create mode 100644 ext/imgui/imgui.cpp create mode 100644 ext/imgui/imgui.h create mode 100644 ext/imgui/imgui_demo.cpp create mode 100644 ext/imgui/imgui_draw.cpp create mode 100644 ext/imgui/imgui_internal.h create mode 100644 ext/imgui/imgui_tables.cpp create mode 100644 ext/imgui/imgui_widgets.cpp create mode 100644 ext/imgui/imstb_rectpack.h create mode 100644 ext/imgui/imstb_textedit.h create mode 100644 ext/imgui/imstb_truetype.h create mode 100644 ext/imgui/misc/README.txt create mode 100644 ext/imgui/misc/cpp/README.txt create mode 100644 ext/imgui/misc/cpp/imgui_stdlib.cpp create mode 100644 ext/imgui/misc/cpp/imgui_stdlib.h create mode 100644 ext/imgui/misc/debuggers/README.txt create mode 100644 ext/imgui/misc/debuggers/imgui.gdb create mode 100644 ext/imgui/misc/debuggers/imgui.natstepfilter create mode 100644 ext/imgui/misc/debuggers/imgui.natvis create mode 100644 ext/imgui/misc/fonts/Cousine-Regular.ttf create mode 100644 ext/imgui/misc/fonts/DroidSans.ttf create mode 100644 ext/imgui/misc/fonts/Karla-Regular.ttf create mode 100644 ext/imgui/misc/fonts/ProggyClean.ttf create mode 100644 ext/imgui/misc/fonts/ProggyTiny.ttf create mode 100644 ext/imgui/misc/fonts/Roboto-Medium.ttf create mode 100644 ext/imgui/misc/fonts/binary_to_compressed_c.cpp create mode 100644 ext/imgui/misc/freetype/README.md create mode 100644 ext/imgui/misc/freetype/imgui_freetype.cpp create mode 100644 ext/imgui/misc/freetype/imgui_freetype.h create mode 100644 ext/imgui/misc/single_file/imgui_single_file.h create mode 100644 ke.md create mode 100644 main.cpp diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b8e0b31 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +!.idea +cmake-build* +build diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml new file mode 100644 index 0000000..fa7efa8 --- /dev/null +++ b/.idea/codeStyles/Project.xml @@ -0,0 +1,166 @@ + + + + \ No newline at end of file diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..79ee123 --- /dev/null +++ b/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/.idea/editor.xml b/.idea/editor.xml new file mode 100644 index 0000000..32fe360 --- /dev/null +++ b/.idea/editor.xml @@ -0,0 +1,370 @@ + + + + + \ No newline at end of file diff --git a/.idea/kte.iml b/.idea/kte.iml new file mode 100644 index 0000000..f08604b --- /dev/null +++ b/.idea/kte.iml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..0b76fe5 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,7 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..534705a --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 0000000..b240c10 --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1764457173148 + + + + + + + + + + + + +