Commit Graph
3462 Commits
Author SHA1 Message Date
Keith Simmons bad4e01909 Add test for common_prefix_at and rewrite it to be more readable and
pass the new test cases
2022-03-31 01:09:58 -07:00
Max BrunsfeldandKeith Simmons 8450d218cd Start work on interpreting 'label/insertText' completions
These completions don't supply a range that should be overwritten, so
the client needs to infer it via substring matching.

Co-authored-by: Keith Simmons <keith@zed.dev>
2022-03-30 17:47:25 -07:00
Max BrunsfeldandKeith Simmons d97a956050 Hard-code LSP formatting options for now
This is needed for auto-formatting to work properly in TypeScript and JSON

Co-Authored-By: Keith Simmons <keith@zed.dev>
2022-03-30 17:08:40 -07:00
Max BrunsfeldandKeith Simmons e5bb803ebb Improve installation of npm-based language servers
* Use --prefix flag to guarantee that they are installed in .zed
* Use the @latest tag when available
* Extract helper functions

Co-authored-by: Keith Simmons <keith@zed.dev>
2022-03-30 16:48:59 -07:00
Max Brunsfeld 199d4d07f5 Merge branch 'main' into typescript 2022-03-30 14:44:07 -07:00
Max Brunsfeld cd2eafe469 Merge pull request #701 from zed-industries/restart-lsp
Add restart-lsp keybinding
2022-03-30 13:59:04 -07:00
Keith SimmonsandMax Brunsfeld f11b269016 Add assert_set_eq macro to make test clearer
Co-authored-by: Max Brunsfeld <max@zed.dev>
2022-03-30 13:53:38 -07:00
Keith SimmonsandMax Brunsfeld 801cdde8a7 Test language server restart works as expected
Co-authored-by: Max Brunsfeld <max@zed.dev>
2022-03-30 13:08:36 -07:00
Max Brunsfeld 55223be9e4 Parse JS as TSX 2022-03-29 18:26:58 -07:00
Max Brunsfeld 7262c2455b Move all configuration of individual LSP servers to LspAdapter 2022-03-29 18:14:30 -07:00
Max Brunsfeld fa6e6fd8fe Restructure fake language server setup
Replace FakeLanguageServerConfig with FakeLanguageServerAdapter
2022-03-29 17:55:57 -07:00
Keith Simmons 7cedb28a82 Properly dedup restarts of language servers 2022-03-29 17:46:39 -07:00
Keith Simmons 598d2433bf Add restart-lsp keybinding 2022-03-29 17:24:23 -07:00
Max Brunsfeld 207e166471 Start work on allowing language servers to support multiple languages 2022-03-29 16:57:18 -07:00
Keith SimmonsandMax Brunsfeld 3bcc515b7b Add typescript language server
Currently not tested for tsx files

Co-authored-by: Max Brunsfeld <max@zed.dev>
2022-03-29 13:42:21 -07:00
Max Brunsfeld 79884d9e72 WIP 2022-03-29 11:06:08 -07:00
Max BrunsfeldandKeith Simmons 833065a311 Add basic TypeScript and TSX support
Co-Authored-By: Keith Simmons <keith@zed.dev>
2022-03-29 10:42:46 -07:00
Max Brunsfeld c6b04f7797 Make language's language server config non-optional 2022-03-28 18:14:49 -07:00
Max Brunsfeld f675fc0c12 Remove duplication in build_language_registry 2022-03-28 18:01:29 -07:00
Antonio Scandurra 9ac7e584c3 Merge pull request #692 from zed-industries/selection-history
Allow undoing and redoing selections via `cmd-u` and `cmd-shift-u`
2022-03-28 17:55:09 +02:00
Antonio Scandurra 87cb21b390 Avoid unnecessary clones when undoing/redoing selections 2022-03-28 17:47:14 +02:00
Antonio Scandurra b905efe0c3 Merge branch 'main' into selection-history 2022-03-28 17:24:46 +02:00
Antonio ScandurraandNathan Sobo 87528c7a2e Test selection history
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-28 17:20:52 +02:00
Antonio ScandurraandNathan Sobo c329a0f620 Always use square brackets in marked_text_ranges
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-28 17:11:35 +02:00
Antonio Scandurra 26a3076f5a Merge pull request #690 from zed-industries/indent-keybindings
Bind `Outdent` and `Indent` respectively to `cmd-[` and `cmd-]`
2022-03-28 16:50:23 +02:00
Antonio Scandurra cdcdc6665f Cap selection history to 1024 entries 2022-03-28 16:37:48 +02:00
Antonio ScandurraandNathan Sobo 616034a4a1 Insert tabs instead of indenting only when all selections are empty
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-28 16:36:12 +02:00
Antonio Scandurra ba0d4f7246 Merge pull request #689 from zed-industries/format-timeout
Skip formatting during save if it takes too long
2022-03-28 16:17:56 +02:00
Antonio Scandurra 43c4df2200 Merge pull request #691 from zed-industries/snap-icons-to-pixel-grid
Snap icon sprites to pixel grid
2022-03-28 16:16:06 +02:00
Antonio Scandurra f3871654a0 Implement cmd-u and cmd-shift-u to undo and redo selections 2022-03-28 16:05:44 +02:00
Antonio Scandurra 04524d0cb8 Extract SelectionHistory in preparation to store an undo/redo stack 2022-03-28 14:52:54 +02:00
Antonio Scandurra 5008138919 Autoscroll to newest cursor on cmd-d instead of fitting all selections 2022-03-28 14:38:51 +02:00
Antonio Scandurra 5af07d69fa Snap icon sprites to pixel grid
This should resolve some rendering artifacts potentially caused by
floating point errors when sampling the texture. It should also lead
to crisper images when icons are rendered midway through a pixel.
2022-03-28 11:52:13 +02:00
Antonio Scandurra dc87310b05 Bind Outdent and Indent respectively to cmd-[ and cmd-] 2022-03-28 11:34:46 +02:00
Antonio Scandurra f87b66efc7 Make indent and outdent explicit actions and unify tabbing logic 2022-03-28 11:34:38 +02:00
Antonio Scandurra 0995424cf7 Fix warnings 2022-03-28 11:05:55 +02:00
Antonio Scandurra c3a7e13408 Skip formatting during save if it takes too long 2022-03-28 11:02:20 +02:00
Antonio Scandurra 5d18def959 Fire fake timers waking up at the same time as the current clock 2022-03-28 10:57:52 +02:00
Antonio Scandurra fb4f218382 Allow returning futures in fake language server request handlers 2022-03-28 10:44:32 +02:00
Nathan Sobo d22cc7b8c7 Merge pull request #686 from zed-industries/disable-vim-on-start
Fully disable vim mode on start unless it's enabled
2022-03-26 19:23:46 -06:00
Nathan Sobo 96254384cf Assign normal mode when re-enabling 2022-03-26 19:19:12 -06:00
Nathan Sobo 8a57598939 Fully disable vim mode on start unless it's enabled
Also: Make some structural adjustments to remove the need for defer. Instead of accessing the global in associated VimState functions, have a single method that allows us to call update instance methods.
2022-03-26 19:19:12 -06:00
Nathan Sobo 60dff22cf2 Test that vim mode can be disabled on startup 2022-03-26 19:19:12 -06:00
Nathan Sobo c1f83a7a6d 0.23.0 2022-03-26 07:22:01 -06:00
Nathan Sobo 331c615c31 Merge pull request #684 from zed-industries/subword
Add bindings for subword movement and deletion
2022-03-26 07:18:29 -06:00
Nathan Sobo b0e20a4715 Merge pull request #682 from zed-industries/vim-hjkl
Vim hjkl
2022-03-26 07:11:46 -06:00
Nathan Sobo e94325777a Add bindings for subword movement and deletion 2022-03-26 07:10:16 -06:00
Keith Simmons 19c4e3cbff Fixed issue with enabling and disabling vim mode dynamically
Also added indoc and marked text utility to vim tests to improve readability
2022-03-25 20:10:52 -07:00
Keith SimmonsandNathan Sobo 4e569432a2 Add clip_to_line_end to display_map/snapshot and set it to ensure vim positioning in normal mode
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-03-25 20:10:52 -07:00
Keith SimmonsandNathan Sobo 4a4982d518 Add initial vim mode mode switching
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-03-25 20:10:37 -07:00