Antonio Scandurra
f2d92d640d
Copy setting and keymap files from legacy config locations
2022-07-29 10:01:48 +02:00
Antonio Scandurra
5f6e4c7d91
Extract all zed config/cache paths into a paths
module
2022-07-29 10:01:48 +02:00
Antonio Scandurra
cfe3ebd2b3
Use XDG-compliant directories for config and cache files
2022-07-29 10:01:48 +02:00
Max Brunsfeld
868c460620
🎨 Rename and simplify some autoindent stuff
2022-07-28 22:40:30 -07:00
Max Brunsfeld
7a26fa18c7
Record start columns when writing to the clipboard from Zed
2022-07-28 22:13:32 -07:00
Max Brunsfeld
2d05f906f1
Start work on adjusting pasted text based on old start column
2022-07-28 17:29:42 -07:00
Mikayla Maki
8471af5a7d
Improved render performance implementation to use a fork of alacritty which includes the last # of bytes processed as a way of estimating throughput in cases where the terminal output is chanegd in place
2022-07-28 16:03:00 -07:00
Max Brunsfeld
3a74290359
Merge branch 'main' into autoindent-on-paste
2022-07-28 15:09:18 -07:00
Mikayla Maki
81cbdcfd11
Reduced time holding lock even more
2022-07-28 14:58:19 -07:00
Max Brunsfeld
fa5af4383d
Introduce AutoindentMode parameter to Buffer::edit
...
This controls whether or not we preserve the relative indentation
of inserted text blocks.
Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
2022-07-28 14:03:31 -07:00
Max Brunsfeld
cdf6ae25bb
Remove indent_size
parameter from Buffer::edit_with_autoindent
...
Instead, compute the indent size by reading the settings inside that method.
Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
2022-07-28 13:00:05 -07:00
Max Brunsfeld
b1b252ee45
Fix error in autoindent range calculation
2022-07-28 11:51:03 -07:00
Antonio Scandurra
df6e733e68
Open both old and new log files, but just retain the last 1000 lines
2022-07-28 10:25:40 +02:00
Antonio Scandurra
de35c3f99d
Prevent log file from becoming larger than 1MB
2022-07-28 10:02:38 +02:00
Isaac Clayton
b20aefc842
First draft for opening Zed.log
2022-07-28 09:25:39 +02:00
Mikayla Maki
57146b6e39
Added variable rate refreshing based on terminal throughput. Should be the last of the performance improvements for now
2022-07-27 16:46:15 -07:00
Mikayla Maki
8a48a11a00
Implemcargo
2022-07-27 16:33:15 -07:00
K Simmons
20d45221c9
Move terminal modal keymap context to the connected view
2022-07-27 11:00:54 -07:00
Mikayla Maki
0ccdc64668
Working on finding a way of estimating throughput
2022-07-27 10:58:23 -07:00
Mikayla Maki
153305f5e4
Finished long-lock style rendering. Need to dynamically adjust the notification rate to handle high throughput scenarios
2022-07-27 10:21:50 -07:00
Mikayla Maki
9dfdaae94d
Nearly done, not scheduling our own re-render yet
2022-07-27 10:11:10 -07:00
Antonio Scandurra
92de5ab000
v0.49.1
2022-07-27 13:39:29 +02:00
Antonio Scandurra
f0814c7784
Fix vim tests using old key bindings
2022-07-27 12:19:01 +02:00
Antonio Scandurra
6a718dc4da
Don't insert input when the fn
key is held
2022-07-27 12:01:44 +02:00
Antonio Scandurra
d3f14fb1c2
Dispatch application menu events if custom key equivalent wasn't found
2022-07-27 11:46:47 +02:00
Antonio Scandurra
fe7ba09d52
Honor shift when converting keystroke to native key equivalent
2022-07-27 09:28:56 +02:00
Max Brunsfeld
f547c268ce
Restructure autoindent to preserve relative indentation of inserted text
2022-07-26 17:43:43 -07:00
Max Brunsfeld
537530bf76
🎨 compute_autoindents
2022-07-26 17:09:30 -07:00
Max Brunsfeld
09ed149184
Improve calculation of which lines are new when auto-indenting
2022-07-26 17:09:30 -07:00
Mikayla Maki
d1e878f0c6
Checkpoint, still not compiling
2022-07-26 16:58:14 -07:00
Mikayla Maki
6b9c1e78c1
Merge pull request #1417 from zed-industries/working-directory-regression
...
Fixed regression in working directory code
2022-07-26 16:39:40 -07:00
Mikayla Maki
8a6605c090
Added test covering this feature
2022-07-26 16:30:51 -07:00
Mikayla Maki
88202a567c
Fixed regression in working directory code
2022-07-26 16:22:07 -07:00
Mikayla Maki
ace16b63a9
Checkpoint, still converting terminal to events. Not compiling
2022-07-26 16:17:26 -07:00
Max Brunsfeld
ef1efb615e
0.49.0
2022-07-26 14:26:45 -07:00
Mikayla Maki
71af876489
removed stray file
2022-07-26 13:10:04 -07:00
Keith Simmons
4ff007eaab
Merge pull request #1414 from zed-industries/fix-theme-issues
...
Fix tab bar themes
2022-07-26 11:55:17 -07:00
K Simmons
2bd0819ac8
Extract tab bar from workspace
2022-07-26 10:41:02 -07:00
Antonio Scandurra
8552ba15dc
Show symbols located in visible paths before ones located externally
2022-07-26 14:48:18 +02:00
Antonio Scandurra
f775cb2947
Honor sort_text
when language server provides completions
2022-07-26 10:41:39 +02:00
Antonio Scandurra
45eb0e7889
Clip invalid edits from LSP instead of reporting an error
...
This fixes an issue with the Go language server, which reports invalid
formatting ranges when there's a missing newline at the end of the file.
Specifically, if the buffer is `N` lines long, it will try to insert the
newline at `Point(N + 1, 0)`.
I confirmed the behavior is the same in VS Code, and they indeed clip the
LSP ranges as well.
2022-07-26 08:43:27 +02:00
Mikayla Maki
67e650b0e0
Fixed conflicts
2022-07-25 17:24:25 -07:00
Mikayla Maki
aea3508b69
keeping both...
2022-07-25 17:24:25 -07:00
Mikayla Maki
bc2c8e0e05
Finished refactor for mutable terminal and long-single-lock style. Currently terminal is deadlocking instantly, need to just do the full refactor
2022-07-25 17:24:25 -07:00
Mikayla Maki
be4873b92b
Checkpoint, build failing
2022-07-25 17:24:25 -07:00
Mikayla Maki
27e76e3ca2
Retouched a test, should still be failing
2022-07-25 17:24:25 -07:00
Mikayla Maki
889720d06d
Fixed conflict
2022-07-25 17:24:21 -07:00
Mikayla Maki
4d8cd6d8ea
Added event buffering, need to figure out a proper fix
2022-07-25 17:23:00 -07:00
Max Brunsfeld
9cefeb08e1
Merge pull request #1411 from zed-industries/no-gpu-log
...
Log instead of showing an alert when exiting due to no GPU
2022-07-25 16:21:05 -07:00
Max Brunsfeld
ea82b9353d
Log instead of showing an alert when exiting due to no GPU
...
Showing the alert resulted in a panic because tasks
dispatched to the app's main GCD queue continue
to run even while the alert is displayed.
2022-07-25 16:13:28 -07:00
Mikayla Maki
313316fe88
fixed
2022-07-25 16:08:31 -07:00
Julia
888405a4b2
Merge pull request #1409 from zed-industries/middle-mouse-close-tabs
...
Allow closing tabs with the middle mouse button
2022-07-25 17:05:00 -04:00
Max Brunsfeld
13097ea110
Update terminal test to reflect new text insertion approach
2022-07-25 12:21:26 -07:00
Max Brunsfeld
ab037fe844
Simulate calling of text-insertion APIs in TestAppContext::dispatch_keystroke
2022-07-25 12:20:12 -07:00
Max Brunsfeld
a54d9f1697
Add comment about noop performKeyEquivalent function
2022-07-25 11:42:54 -07:00
Max Brunsfeld
09c0211c96
Bump the RPC protocol version
2022-07-25 11:36:52 -07:00
Max Brunsfeld
4c8d9384b1
Replaces lines_utf16 with a single u32 - last_line_len_utf16
2022-07-25 11:35:42 -07:00
ForLoveOfCats
36d789ff84
Allow closing tabs with the middle mouse button
2022-07-25 14:23:38 -04:00
Antonio Scandurra
6dc27cbba2
Add test for IME composition with multiple cursors
2022-07-25 17:47:10 +02:00
Antonio Scandurra
ff99f8d0ca
Clip UTF-16 offsets provided by Cocoa when composing IME input
2022-07-25 17:32:33 +02:00
Antonio Scandurra
47e8bd5f4f
Introduce MultiBuffer::clip_offset_utf16
2022-07-25 15:06:04 +02:00
Antonio Scandurra
c46be992e0
Introduce Rope::clip_offset_utf16
2022-07-25 15:02:45 +02:00
Antonio Scandurra
bb55d654ce
Handle IME composition with multiple cursors
2022-07-25 14:50:09 +02:00
Antonio Scandurra
acdfb933e8
Honor shift if pressing command switches keyboard
2022-07-25 11:01:38 +02:00
Antonio Scandurra
ca3e73106c
Merge branch 'main' into ime-support-2
2022-07-25 10:47:49 +02:00
Antonio Scandurra
d3567e381c
Coalesce IME compositions into a single edit
2022-07-25 09:53:51 +02:00
Antonio Scandurra
555e705ccb
🎨
2022-07-23 09:31:41 +02:00
Antonio Scandurra
0fc7308932
Allow grouping local transactions even if remote peer edits in between
2022-07-23 09:27:21 +02:00
Max Brunsfeld
79f960b69e
Combine adjacent ranges in 'edited_ranges_for_transaction'
2022-07-22 17:41:31 -07:00
Max Brunsfeld
7c3421e041
Remove versioned offset ranges from transactions and undo operations
...
Now, instead of using these versioned offset ranges, we locate the
fragments associated with a transaction using the transaction's
edit ids. To make this possible, buffers now store a new map called
`insertion_slices`, which lets you look up the ranges of insertions
that were affected by a given edit.
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2022-07-22 17:28:55 -07:00
Nate Butler
f963c0ed45
WIP for keith
2022-07-22 17:28:58 -04:00
Mikayla Maki
8c1d4d877f
Merge pull request #1393 from zed-industries/graceful-exit
...
Polishing the terminal
2022-07-22 13:59:13 -07:00
Mikayla Maki
a41e54f3dc
Finished terminal refactoring
2022-07-22 13:54:46 -07:00
Mikayla Maki
119207a9e5
Refactored a bunch of stuff, working on tidying element code
2022-07-22 12:06:42 -07:00
Max Brunsfeld
65fd943509
Move edited_ranges_for_transaction from BufferSnapshot to Buffer
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2022-07-22 11:24:14 -07:00
Keith Simmons
2111fdc118
Merge pull request #1378 from zed-industries/diagnostics-popover
...
Diagnostics Popover
2022-07-22 11:12:56 -07:00
K Simmons
b93040a6ae
attempt to fix broken test
2022-07-22 10:55:57 -07:00
Mikayla Maki
dce27870ce
Refactored terminal tests
2022-07-22 10:20:15 -07:00
Nate Butler
088668ecf8
Fix reversed disclosure arrows in project panel
2022-07-22 11:57:53 -04:00
Antonio Scandurra
7b009c8bbe
Merge branch 'main' into ime-support-2
2022-07-22 16:03:38 +02:00
Antonio Scandurra
2bfa3b9006
Synthesize CGEvents instead of using charactersByApplyingModifiers
2022-07-22 15:51:34 +02:00
Antonio Scandurra
622596619c
Honor ⌘ when Dvorak-QWERTY is used
2022-07-22 14:52:24 +02:00
Antonio Scandurra
136550de9f
Discard shift
when it causes keyboard to output a different character
2022-07-22 08:15:44 +02:00
Max Brunsfeld
9c412a8806
Remove test for handling input via key events
...
Now, textual input is handled by a different code path than other key events.
2022-07-21 21:40:37 -07:00
Max Brunsfeld
372c3eed52
Adjust editor tests to use input APIs instead of key events
2022-07-21 21:36:40 -07:00
Max Brunsfeld
0185b4fef4
Add simple IME handling to the terminal
2022-07-21 21:32:58 -07:00
Keith Simmons
9286e5ea04
Merge pull request #1396 from zed-industries/better-empty-pane
...
Fix Pane Focus Issues
2022-07-21 15:07:03 -07:00
K Simmons
d6519ad280
Minor naming improvements and revert empty pane background color change
2022-07-21 14:56:17 -07:00
Max Brunsfeld
6d264502b2
Remove print statements
2022-07-21 13:44:58 -07:00
Max Brunsfeld
2142fca673
Remove Input action, detect ignored input in vim via an event
2022-07-21 13:40:48 -07:00
Max Brunsfeld
beeaec8647
Prevent IME window from appearing while editor's input is disabled (vim)
2022-07-21 12:48:36 -07:00
Mikayla Maki
c6d5decbf9
Finished erorr terminal refactoring
2022-07-21 12:37:15 -07:00
Max Brunsfeld
7c575990be
Remove the set_selected_text_range method from the InputHandler trait
2022-07-21 12:22:12 -07:00
Mikayla Maki
7c0a031506
added cursor text back
2022-07-21 10:04:12 -07:00
Antonio Scandurra
509f54bf20
Don't dispatch keydown event if editor is still composing
2022-07-21 17:37:32 +02:00
Antonio Scandurra
97ce3998ec
Position IME input according to where the selection is rendered
2022-07-21 17:35:40 +02:00
Antonio Scandurra
3c5d7e001e
Always mark keydown events as handled to suppress beep
2022-07-21 15:53:21 +02:00
Antonio Scandurra
3d6c257551
🎨
2022-07-21 14:39:22 +02:00
Antonio Scandurra
b2f2c5b055
Handle keydown event even when charactersIgnoringModifiers
is empty
...
This allows the input system to work in the presence of dead keys.
2022-07-21 14:36:47 +02:00
Antonio Scandurra
101a0663d3
Remove input
from KeyDownEvent
2022-07-21 14:29:27 +02:00