Commit graph

1847 commits

Author SHA1 Message Date
Marshall Bowers
5f1dcb76fe
Load JSON themes (#6893)
This PR changes the theme loading to use the JSON themes bundled with
the binary rather then the Rust theme definitions.

### Performance

I profiled this using `cargo run --release` to see what the speed
differences would be now that we're deserializing JSON:

**Before:** `ThemeRegistry::load_user_themes` took 16.656666ms
**After:** `ThemeRegistry::load_user_themes` took 18.784875ms

It's slightly slower, but not by much. There is probably some work we
could do here to bring down the theme loading time in general.

Release Notes:

- N/A
2024-01-27 16:03:04 -05:00
Stuart Hinson
bd39258fc7
Address a couple comments re Ruby file associations (#6863)
Release Notes:

- Fixed: Address a [couple comments re Ruby file
associations](https://github.com/zed-industries/zed/pull/6812#discussion_r1468437144)
2024-01-27 16:09:15 +02:00
Mikayla Maki
fd3c96dbed
Add Haskell support (#5281) (#6786)
This PR adds the Haskell tree-sitter grammar copied from
[`nvim-treesitter`](https://github.com/nvim-treesitter/nvim-treesitter/tree/master/queries/haskell).
It also adds the Haskell Language Server.

This is a joint effort by myself (adding the grammar) and @leifu1128
(who is adding the language server integration).

This PR resolves https://github.com/zed-industries/zed/issues/5281

Release Notes:

- Added Haskell support
([#5281](https://github.com/zed-industries/zed/issues/5281)).
2024-01-26 18:32:20 -08:00
Marshall Bowers
0e722f6288
Extend support for outlining in Gleam (#6834)
This PR extends support for outlines in the recently-added Gleam
support.

Note that I'm leaving the release notes section blank as we haven't yet
released Gleam support, so it can just roll up into that item.

Release Notes:

- N/A
2024-01-26 21:31:22 -05:00
Pseudomata
030ff0acf3
Simplify Haskell LSP integration
This change will work without any configuration and assume the user will install the Haskell Language Server using `ghcup`
2024-01-26 20:19:36 -05:00
Stuart Hinson
9833d4b0c3
Add a couple common Ruby file suffixes (#6812)
Release Notes:

- Added `Gemfile.lock` and `rake` as associated Ruby files.
2024-01-26 19:24:25 -05:00
Pseudomata
652ec6fb3e
Ability to manually configure LSP for Haskell
Allow users who have HLS installed using `ghcup` to manually provide the path for the Haskell language server
2024-01-26 19:02:31 -05:00
Pseudomata
faf7798577
Use same arguments for LSP binary in haskell.rs 2024-01-26 15:41:11 -05:00
Pseudomata
0576214be7
Remove Haskell injections.scm
Since tree-sitter-haskell does not support injections we don’t want to mix with nvim-treesitter
2024-01-26 15:35:08 -05:00
Pseudomata
6e25b0a718
Switch to tree-sitter-haskell grammar 2024-01-26 15:04:22 -05:00
Piotr Osiewicz
1761e60362
Improve performance of JSON schema creation (#6770)
JSON LSP adapter now caches the schema. `workspace_configuration` is
back to being async, and we are also no longer asking for font names
twice while constructing the schema.
Release Notes:
- Improved performance when opening the .json files.

---------

Co-authored-by: Kirill <kirill@zed.dev>
2024-01-26 19:54:45 +01:00
Mikayla Maki
0a124a9908
Feature: PHP: Add readonly keyword to keyword list (#6798)
Release Notes:

- Added `readonly` to keyword list for PHP
([#6797](https://github.com/zed-industries/zed/issues/6797)).
2024-01-26 10:46:18 -08:00
Remco Smits
ac05853f2c Add readonly keyword to keyword list 2024-01-26 19:16:56 +01:00
Remco Smits
b5c64a128e
Feature: PHP allow single quote autocompletion (#6796)
Release Notes:

- Added support for single quote autocompletion in PHP
([#6794](https://github.com/zed-industries/zed/issues/6794)).
- Added `#` to supported line comments for PHP
([#6794](https://github.com/zed-industries/zed/issues/6794)).
2024-01-26 19:16:35 +01:00
Pseudomata
58a9f51361
Comment out haskell_persistent and sql injections
- the haskell_persistent grammar has not been added, see https://github.com/nvim-treesitter/nvim-treesitter/tree/master/queries/haskell_persistent and https://github.com/MercuryTechnologies/tree-sitter-haskell-persistent
- the sql grammar has not been added either
2024-01-26 12:28:52 -05:00
Lei
ee750e102d implement hls adapter 2024-01-27 00:55:13 +08:00
Pseudomata
2b9ba46cb6
Merge branch 'haskell-support' into add-haskell-grammar 2024-01-26 10:55:43 -05:00
Pseudomata
f9a08287c7
Update Haskell grammar
Copied queries from nvim-tree-sitter, see https://github.com/nvim-treesitter/nvim-treesitter/tree/master/queries/haskell
2024-01-26 10:51:39 -05:00
Thorsten Ball
f537be4704 Fix bracket captures for Go, C, C++, and Zig
This fixes #6702 by adding the captures for Go, C, C++, and Zig.

Witness-by: David <dammerung2718@icloud.com>
2024-01-26 16:45:45 +01:00
Allan Calix
742329ee8f
Highlight a broader range of zig functions 2024-01-25 20:30:07 -08:00
Allan Calix
ebbfff5ce8
Updates zigs highlight to emit right captures 2024-01-25 19:17:18 -08:00
Allan Calix
e5b71cc6ac
Add zig support 2024-01-25 18:04:04 -08:00
Conrad Irwin
9820895284
Try to flesh out our panic stacks more (#6683)
Although we now usually get the .ips file alongside a panic, when we
don't it's much harder to track down where panics happen because we're
not showing inlined frames.

Try iterating over all symbols in a frame to see if that improves panic
reporting.

Release Notes:

- N/A
2024-01-25 18:57:45 -07:00
Lino Le Van
81aac492bd
Add Deno LSP support (#5816)
This PR adds support for the deno LSP. Should be reviewable now.

Release Notes:

- Added support for the Deno LSP
([#5361](https://github.com/zed-industries/zed/issues/5361)).
2024-01-25 17:44:51 -08:00
Marshall Bowers
50b9e5d8d2
Add Gleam support (#6733)
This PR adds support for [Gleam](https://gleam.run/).

<img width="1320" alt="Screenshot 2024-01-25 at 6 39 18 PM"
src="https://github.com/zed-industries/zed/assets/1486634/7891b6e9-d7dc-46a0-b7c5-8aa7854c1f35">

<img width="757" alt="Screenshot 2024-01-25 at 6 39 37 PM"
src="https://github.com/zed-industries/zed/assets/1486634/f7ce6b3f-6175-45cb-8547-cfd286d918c6">

<img width="694" alt="Screenshot 2024-01-25 at 6 39 55 PM"
src="https://github.com/zed-industries/zed/assets/1486634/b0838027-c377-47e6-bdd1-bdc9b67a8672">

There are still some areas of improvement, like extending what
constructs we support in the outline view, but this is a good start.

Release Notes:

- Added Gleam support
([#5162](https://github.com/zed-industries/zed/issues/5162)).
2024-01-25 18:44:35 -05:00
SweetPPro
006e003698
Add syntax highlighting for .htm and .shtml files (#6705)
enabled syntax highlighting for **.htm** and **.shtml** files

Release Notes:
- Added support for syntax highlighting in HTML files with `.htm` and
`.shtml` extensions
([#4510](https://github.com/zed-industries/zed/issues/4510)).
2024-01-25 14:05:17 -05:00
Mikayla Maki
b5fa5beee4
Fix typos discovered by codespell (#6718)
> codespell --skip="*.json,*.rtf" \

--ignore-words-list=crate,delet,inout,iterm,jumo,lightening,othe,ser,tabe,te,tese,thi,updat
* https://github.com/codespell-project/codespell/blob/master/README.rst

Release Notes:

- N/A
2024-01-25 10:57:18 -08:00
Piotr Osiewicz
e9edad1d51
language: Accept multiple values in line_comment language knob. (#6713)
This opens up a possibility of supporting multiple comment continuation
flavours in editor, e.g. doc comments for Rust (which we seize as well
in this commit). Only the first `line_comment` value is used for
Editor::ToggleComments

Fixes: https://github.com/zed-industries/zed/issues/6692

Release Notes:
- Added support for doc-comment continuations in Rust language.
2024-01-25 19:25:21 +01:00
Christian Clauss
cff2e8bbe0 Fix typos discovered by codespell 2024-01-25 18:32:32 +01:00
Conrad Irwin
5c1de4ce26 Try to flesh out our panic stacks more
Although we now usually get the .ips file alongside a panic, when we
don't it's much harder to track down where panics happen because we're
not showing inlined frames.

Try iterating over all symbols in a frame to see if that improves panic
reporting.
2024-01-24 23:33:54 -07:00
Conrad Irwin
01424a62ea Allow prompts to have detail, and use for good
Make channel panel errors louder
2024-01-24 23:15:37 -07:00
Max Brunsfeld
6ed7cc7833
Simplify language server startup (#6449)
These are just some small refactorings of our language-server-starting
code, motivated by another change that I decided to bail on:
https://github.com/zed-industries/zed/pull/6448.
2024-01-24 17:36:50 -08:00
Pseudomata
02ab16037c
Get basic syntax highlighting for Haskell working 2024-01-24 18:08:47 -05:00
Chase Weaver
cf3b4b0ba7
Fix: Comment shortcut in Svelte files now respects if the line(s) are HTML vs JS/TS (#5860)
Release Notes:

- Fixed: When using the comment shortcut, previously HTML or JS/TS would
all prefix lines with `// `. This PR brings the comments inline with
what is expected (`// ` for JS/TS, `<!-- ... -->` for HTML). Fixes
[#4578](https://github.com/zed-industries/zed/issues/4578).
2024-01-24 12:24:49 -08:00
Conrad Irwin
c56debc705 clippy 2024-01-24 12:40:24 -07:00
Conrad Irwin
e7db5d0638 Use run_until_parked instead of condition
Avoids spurious failures when the CI server is going slow
2024-01-24 12:28:45 -07:00
Conrad Irwin
2a11c22760 Ensure chat opens when guests join shared projects
This was broken because the panel was created before being added to a
dock. Invert the control order and add `starts_open()` to the Panel
trait.
2024-01-24 12:06:03 -07:00
Antonio Scandurra
25a7eb27d2 Move interaction with keychain off the main thread 2024-01-24 14:53:05 +01:00
Antonio Scandurra
e3157f7212 Remove unused font 2024-01-24 13:14:47 +01:00
Conrad Irwin
3d5da2f4d9
less secret (#4221)
- Remove ZED_SECRET_CLIENT_TOKEN
- Remove ZED_CLIENT_SECRET_TOKEN

Neither of these were ever actually a secret.

Release Notes:

- N/A
2024-01-23 10:43:15 -07:00
Conrad Irwin
ff60d886f6 Remove ZED_SECRET_CLIENT_TOKEN 2024-01-23 10:34:00 -07:00
Kirill Bulatov
5e0cabc394 Create a special worktree for settings files
To avoid LSP server restarts/leaks when those are being opened

co-authored-by: Piotr <piotr@zed.dev>
2024-01-23 13:10:30 +02:00
Kirill Bulatov
ab8585ee7e Remove the async modifier from the workspace_configuration method 2024-01-23 11:58:17 +02:00
Conrad Irwin
36a8bbfd43 Fix panel deserialization
In the old world, panel loading happened strictly before workspace
deserialization. Now it's inverted.

Fix this by storing on the dock the serialized state so they can restore
state as panels are loaded.
2024-01-22 12:31:28 -07:00
Mikayla
4184686e8d
Lock down test platform implementation 2024-01-20 15:03:36 -08:00
Conrad Irwin
fbc693d1d7 Revert "Improve panic logging"
This reverts commit 345b983c8e.
2024-01-18 19:39:13 -07:00
Conrad Irwin
827a8dade5
Send crash reports to Slack automatically (#4111)
This uploads apples crash reports to our servers when telemetry is
enabled.

Rather than jumping via the website, it uploads to collab directly. (I'd
like
to update the panic handler to do this too to make it possible to work
on that end-to-end without zed.dev running).

Release Notes:

- Added reporting of crashes when telemetry is enabled
2024-01-18 15:30:39 -07:00
Conrad Irwin
f1df6318ba Remove unused variable 2024-01-18 09:06:13 -07:00
Nathan Sobo
9e37232a13 Merge remote-tracking branch 'origin/main' into ownership-post 2024-01-18 07:01:54 -07:00
Joseph T. Lyons
b807e6fe80 Use try_global() 2024-01-18 01:33:30 -05:00