-
Notifications
You must be signed in to change notification settings - Fork 123
Editor #601
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
ije
wants to merge
214
commits into
pierrecomputer:main
Choose a base branch
from
ije:editor
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Editor #601
Changes from 107 commits
Commits
Show all changes
214 commits
Select commit
Hold shift + click to select a range
434ea2a
First implement
ije 364e3b2
Fix paste
ije b915a8c
Fix character X
ije f05e492
Add 'indent' and 'outdent' commands
ije b1edaee
Add typing buffer
ije 3779a55
Type alias migration from `ISelection`/`IEditorSelection` to `EditorS…
ije fefbac3
Fix indent command for multiline selection
ije 1d081f5
Refactor
ije 73623fb
Improve shiki theme/garmmar loading
ije fc88eb8
Add `minNumberColumnWidth` option
ije 0113543
Refactor
ije 79177f5
Remove history coalesce
ije 4cb7b41
Fix selction/crate not updated when do "redo" command
ije 57cfbe6
Remove visualColumns.ts
ije 78ec876
Move editor ts files
ije a0934f8
Refactor textarea buffer
ije 84d5df6
Rename `EditSnippet` type to `TextareaSnapshot`
ije 996db61
Remove `Editor` component, introduce the `Editor` class for `File` co…
ije f95df57
Update demo
ije 18f5422
Update editor constants to set text and background color to transparent
ije 0194e41
Rewrite rerender logic
ije ef525f1
Format
ije dd85b08
Remove dead code
ije 1ae5008
Fix caret postion on empty line
ije a8b41bc
Improve `renderSelectionRange` performance by using cached DOM elements
ije e647f74
Support range selection in textarea
ije d08abe3
Improve rerender performance
ije b9495e7
Use piece table data sturcture for the text document
ije 6ea0708
refactor
ije e42e502
Add public `setSelection` method for the `Editor` class
ije 9a3eb6a
Add `FileContentsWithLineOffsets` interface and update related compon…
ije 3b4d3b4
Add `updateRenderCacheAt` method to `FileRenderer` and `File` classes…
ije fc6a47e
Refactor file iteration logic by removing `iterateOverFile` utility a…
ije a6ec728
Remove EOF field
ije 44d631f
Remove text length fields from HistoryEntry and related test cases in…
ije 59f379e
Rename class `EditHistory` to `EditStack`
ije 0eceba2
Refactor EditStack and PieceTable to use a unified text slice interface.
ije 43247d8
Refactor PieceTable and TextDocument to improve line offset handling …
ije 1b90426
Refactor `Editor` to utilize new dirty line resolution logic, enhanci…
ije ec78938
Fix multi-cursor textarea sync
ije c56c600
Refactor Editor rendering logic for improved performance and reduce d…
ije 2a74aaf
Add grammer cache
ije d456fa9
Enhance line position caching in Editor for improved performance and …
ije c446ad9
Refactor indentation handling in Editor and remove unused utility fun…
ije 3e14a92
Fix testing types
ije d656e4a
Improve performance of the `getCharacterX` method
ije a8961f4
Improve caching mechanism for enhanced performance.
ije 738e2b7
Add maxEntries feature to EditStack for managing undo history size
ije aaedff4
Refactor
ije fe150a0
Enhance PieceTable and TextDocument to trim line endings in getLineTe…
ije 45b71a1
Refactor
ije a685b75
Add `BackgroundTokenzier` class
ije acbde05
Improve performance
ije 209999f
Fix hightlight bug
ije 2b8cb09
Add `--diffs-bg-caret` css property
ije 6f3659a
Fix input
ije 0686fac
Fix selection range rendering
ije cefee50
Fix prebuildStateStackCache funciton
ije af0e508
Update `TOKENIZE_MAX_LINE_LENGTH` to 10,000
ije d9da211
Add `DiffsEditor` interface
ije 092486e
Fix `lineAnnotations` argument on `triggerEdit` invoke
ije 4dcc108
Refactor editor edit method to accept onChange callback directly and …
ije a2cf5cc
Clean up
ije dbbc2b1
typo
ije a187ff8
Refactor BackgroundTokenizer to use message-based scheduling.
ije d69e59b
Refactor editor focus handling by removing redundant event listeners …
ije 24f899a
Refactor
ije 4634c3d
Fix `toTextareaSelectionDirection` function
ije 229e21e
Refactor
ije febadf7
Update `DiffsEditor` types
ije 1002da8
Add line annotation handling
ije a9b7106
Add documentation for `hasVisibleLineAnnotation` function.
ije 264a4ed
Get rid of enum
ije 5521967
Clean up
ije d83eaa6
Refactor
ije c69028b
Update editor CSS
ije 4b26cba
Support text wrap
ije 7fc5f61
Clean up
ije c3a1fa8
Fix line y/wrap cache
ije e567b0b
Fix line cache
ije dd12a8a
Copies leading indentation onto the new line after Enter
ije 415b6df
Focus textare after undo/redo
ije c5ad096
Move multi-selection functions to editorSelection module
ije 8a387b3
Add support for handling leading indentation deletion in applyTextCha…
ije 47e57d4
Fix selection glitch bug
ije 2609f22
Add extendSelection command
ije 23dc842
Fix `focusTextare` function
ije 18487ed
Fix `resolveTextareaChange` function
ije 754958f
Remove unnecessary target check in mouseup event listener in Editor c…
ije fc26f73
Fix textarea selction direction
ije f16e618
Fix selection bg color for safair
ije 779a50a
Clean up
ije d9651ff
Fix shift select
ije 262f8f9
Refactor
ije 2bb2e4b
Refactor
ije f114396
Fix shift select delay
ije f847f63
Coalesce edit stack entries for simple typing or backspace operations.
ije 2967161
Add Support forward-delete coalescing for edit history
ije f63f2fd
docs: add docs for editStack module
ije d4d8dec
Refctor
ije fe5ab6d
Fix 'documentStart' and 'documentEnd' commands
ije 5ff2b42
Rewrite selection handle logic
ije 76a2fb4
Fix shouldCoalesceEditStackEntry function
ije b23ad56
Update demo
ije 1e76276
Add `removeEditor` for File component
ije 3bb44ee
Add react api
ije ff1d452
Clean up
ije 0ff08c9
Update demo app
ije 3b40cf8
Refactor useFileInstance to remove redundant editor cleanup logic
ije d3289c7
Fix `computeLineOffsets` function
ije 2346eef
typo
ije 1a7797c
Update editor style
ije 99720ae
Fix `getOrCreateLineOffSets` method
ije 1abf83a
Refactor line count and annotation handling in File component; remove…
ije e174585
Fix lines deletion crocss virtul viewport
ije 9083774
Remove `normalizeSelectionsForDocument` function
ije 2e6580e
Fix `edit` function
ije 3951793
Add editor sub-module
ije 3219737
Use `contenteditable` model
ije 3fbcba6
Fix line wrap
ije 7c979b1
Fix wrap line
ije 60a98b6
Fix selection on mobile
ije 583adb3
Update editor style
ije 942cba9
Fix resize handling
ije 2095c1d
Add editor overlay layer
ije 3ce394a
Cleanup
ije a8b674d
Add `DiffsEditableComponent` types
ije 1f3a448
Fix `VirtualizedFile` component
ije c18a373
Update `DiffsEditableComponent` type
ije 0d9ea91
Add editor demo
ije c76b51b
Merge branch 'main' into editor
ije b1c50ef
Fix slection rendering
ije c9ef7e8
Update editor demo app
ije 6dea24a
Fix VirualizedFile component
ije 8140e15
Update editor demo app
ije b273533
Fix some selection bugs
ije 6892b6c
Update demo app
ije 50fe728
Refactor findNextNonOverlappingSubstring method into PieceTable and T…
ije 672dae3
Refactor
ije f455639
feat: Implement line jump
ije d1a5aad
Fix selection rendering when scrolling
ije 02883aa
Improve tokenzier performance
ije 7311b69
feat: simple search pannel
ije 59af9aa
Update editor demo app
ije 96d3e51
Fix jump
ije 99caccd
Update search UI
ije 5c5a535
Add lag radar
ije 40262dd
Fix virtualizer
ije d8ea490
Fix render range after typing
ije d4dbb1e
Fix editor tokenzier cache
ije 81b8668
Fix search input focus
ije e53e7e2
Update log rader position
ije cc8a1d8
Improve piece table performance
ije 25543a0
Refactor
ije 777ca44
Add lag radar
ije dcc5233
Fix line count for empty documents
ije 37feda5
Fix offscreen lines flush
ije ae70e25
Introduce gutter width tracking
ije 13881f8
refactor
ije a6e714b
Refactor
ije 79bdaf3
fix import
ije 1791756
Add 'expandSelectionDocStart' and 'expandSelectionDocEnd' commands
ije 9e1d025
Fix buffer height
ije 84a0305
Add matches text for the search pancel
ije e01ac32
Disable preious/next icon when no matches
ije 4327a3e
Update style.css
ije 980f10d
feat: Support `quiteEdit` action
ije 08b1da1
Update edtior demo app
ije 290e3e9
Refactor
ije 0037756
Update demo app
ije aae9c6b
Update demo app
ije c19cbf2
Fix girdRow when render quick edit UI
ije 04205aa
Move testing files
ije 952f671
Clean up
ije 942d3f0
Add searchPanel.ts
ije f8f2ae7
Fix expandCollapsedSelectionToWord to match when the cursor is immedi…
ije 3a39eef
clean up
ije eae60e6
Potential fix for pull request finding
ije da96eac
Fix typo
ije 98e4182
Merge branch 'editor' of https://github.com/ije/pierre into editor
ije d717cbc
Merge branch 'pierrecomputer:main' into editor
ije d911015
Clean up searchPanel and quickEdit when swith file
ije 0fd8945
Rebase to beta-1.2
ije e01c258
Fix selection after clean up quick edit widget
ije b643f6a
Fix virtual buffer
ije c66a6fd
Fix `updateWindowSelection` method of Editor class
ije e478623
Fix render range when typing new line at the end of the file
ije d70a613
Fix buffer when adding large lines
ije 79a6150
[editor] Support 'deleteHardLineForward' input
ije 8f13c91
Add `insertTranspose` input
ije b66f559
Move `change` handler to options
ije 3c990dd
Update css
ije 7b1c844
Merge beta-1.2 changes
ije 1fdc87a
Fix emply line rendering
ije 458213a
Add search settings UI
ije 82b364e
Merge branch 'main' into editor
ije bc4c288
Merge branch 'main' into editor
ije 416674c
Support FileDiff component
ije af87f6f
Update `DiffsEditableComponent` interface
ije 225f0f0
Fix `getSelectionAnchor` function
ije c8ed844
Fix text measurement for emoji
ije df5d640
Increase delay for diff rendering in FileDiff component
ije acd1471
Update types
ije 75035a3
Add unit testings for text measue functions
ije 1a50cad
Clean up dirty render cache
ije f16ca64
Fix `lineAnnotations` re-rendering
ije fec9d4c
Disable gutter utility when editing
ije cd8cd09
Add global css
ije 030136e
Fix scrollToLine method
ije 4746c4d
Refactor selection handling in Editor class to initialize selections …
ije 519ebae
Merge branch 'main' into editor
ije deb3d64
Fix diffs components
ije ca75a7d
Allow to create selection from gutter interaction
ije 953be5d
Fix focus
ije File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.