Commit Graph
31406 Commits
Author SHA1 Message Date
Max Brunsfeld 6539e1da5e Fix editor settings deserialization in editor2 2023-11-09 15:37:46 -08:00
Conrad Irwin 24049ece95 Render more than one item 2023-11-09 16:36:36 -07:00
Marshall Bowers 3b3b4c0752 Extend RGBA hex color parsing to support 3-value and 4-value variants (#3295)
This PR extends our support for parsing hex color codes to `Rgba` to
additionally support 3-value (`#rgb`) and 4-value (`#rgba`) formats.

See [here](https://developer.mozilla.org/en-US/docs/Web/CSS/hex-color)
for more details on these hex color variants.

Release Notes:

- N/A
2023-11-09 18:27:47 -05:00
Marshall Bowers 82f0f3de80 Improve digit duplication 2023-11-09 18:19:58 -05:00
Marshall Bowers dc54ff5500 Improve error conditions when parsing hex colors 2023-11-09 18:00:17 -05:00
Marshall Bowers b13d59b977 Add support for parsing 3-value and 4-value hex codes 2023-11-09 17:45:05 -05:00
Nate Butler e3e45b7c0a Extend theme converter to allow multimatching against vscode colors (#3294)
[[PR Description]]

Adds the ability to specify a vec of VScode syntax scopes to match
against for a given syntax style.

Example:

```rust
pub fn to_vscode(&self) -> Vec<&'static str> {
        use ZedSyntaxToken::*;

        match self {
            SyntaxAttribute => vec!["entity.other.attribute-name"],
            SyntaxBoolean => vec!["constant.language"],
            SyntaxComment => vec!["comment"],
            SyntaxCommentDoc => vec!["comment.block.documentation"],
            SyntaxConstant => vec!["constant.character"],
            SyntaxConstructor => vec!["entity.name.function.definition.special.constructor"],
            SyntaxEmbedded => vec!["meta.embedded"],
            SyntaxEmphasis => vec!["markup.italic"],
            SyntaxEmphasisStrong => vec![
                "markup.bold",
                "markup.italic markup.bold",
                "markup.bold markup.italic",
            ],
            SyntaxEnum => vec!["support.type.enum"],
            SyntaxFunction => vec![
                "entity.name.function",
                "variable.function",
                "support.function",
            ],
            SyntaxKeyword => vec!["keyword"],
            SyntaxLabel => vec![
                "label",
                "entity.name",
                "entity.name.import",
                "entity.name.package",
            ],
            // .. more styles
}}
```

Useful `settings.json` for testing themes:

```json5
{
  // --- Dark Themes ---
  "theme": "Ayu Dark"
  // "theme": "Ayu Mirage"
  // "theme": "Dracula"
  // "theme": "Gruvbox Dark Hard"
  // "theme": "Gruvbox Dark Medium"
  // "theme": "Gruvbox Dark Soft"
  // "theme": "Night Owl"
  // "theme": "Noctis Obscuro"
  // "theme": "Noctis"
  // "theme": "Nord"
  // "theme": "Palenight (Mild Contrast)"
  // "theme": "Palenight Operator"
  // "theme": "Palenight"
  // "theme": "Rose Pine Moon"
  // "theme": "Rose Pine"
  // "theme": "Solarized Dark"
  // "theme": "Synthwave 84"
  // --- Light Themes ---
  // "theme": "Ayu Light"
  // "theme": "Gruvbox Light Hard"
  // "theme": "Gruvbox Light Medium"
  // "theme": "Gruvbox Light Soft"
  // "theme": "Noctis Lux"
  // "theme": "Rose Pine Dawn"
  // "theme": "Solarized Light"
}
```

Release Notes:

- N/A
2023-11-09 17:40:10 -05:00
Max Brunsfeld 64b809317a Merge branch 'main' into search-query-suggestion-fixes 2023-11-09 14:18:17 -08:00
Conrad Irwin f02f75bc86 Make command dispatching work 2023-11-09 15:14:23 -07:00
Max Brunsfeld c9bd5548ae Add a setting for when to seed the search query from the text under the cursor 2023-11-09 14:03:14 -08:00
Nate Butler 2de7dad850 regenerate themes, format 2023-11-09 16:48:35 -05:00
Nate Butler 8b6e43ce60 Remove unused import 2023-11-09 16:41:58 -05:00
Nate Butler 1cc2984fef Extend theme converter to allow multimatching against vscode colors 2023-11-09 16:38:48 -05:00
Max Brunsfeld 0a5075ca96 Generalize Refineable derive macro to derive arbitrary traits on the refinement type 2023-11-09 13:23:31 -08:00
Max Brunsfeld 34cf021595 Avoid suggesting search query if cursor is not on a word 2023-11-09 12:33:30 -08:00
Marshall Bowers 26c4abcc19 Refine theme styles (#3291)
This PR refines a number of styles in the default theme, as well as
updates the theme importer to support importing syntax styles from VS
Code themes.

Release Notes:

- N/A
2023-11-09 15:32:10 -05:00
Marshall Bowers f1108c1ad9 Allow user-theme related methods to be unused 2023-11-09 15:16:59 -05:00
Nathan Sobo 15870b35b0 Call init 2023-11-09 13:14:11 -07:00
Nate ButlerandMarshall Bowers 6460a6d1d3 Deal with special case where a VSCode theme doesn't have a foreground color
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 14:53:04 -05:00
Nate ButlerandMarshall Bowers c392e567a0 Finish passing Syntax from VSCode themes to Zed Themes
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 14:41:26 -05:00
Max Brunsfeld efa5263528 Use normal JS comments within JSX tags and JSX expression blocks (#3290)
This fix only required changing the `overrides` queries for JavaScript
and TSX. I've made the fix in both the `zed2` and `zed` crates.

Release Notes:

- Fixed an issue in JavaScript and TSX files, where the 'toggle
comments' command used the wrong comment syntax inside of JSX tags and
expressions within JSX.
2023-11-09 11:15:08 -08:00
Max Brunsfeld 785a835091 Duplicate buffer test changes in language2 version 2023-11-09 11:09:49 -08:00
Max BrunsfeldandKirill 3248d712e5 Use normal JS comments within JSX tags and JSX expression blocks
Co-authored-by: Kirill <kirill@zed.dev>
2023-11-09 10:58:33 -08:00
Nathan Sobo d14317653a Polish actions macros 2023-11-09 11:57:13 -07:00
Nate ButlerandMarshall Bowers b260ab5947 Extend UserSyntax to allow font_style and font_weight to be specified
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 13:46:08 -05:00
Conrad Irwin f68d8e9612 Fix escape in GoToLine with new event emitter (#3289)
[[PR Description]]

Release Notes:

- N/A
2023-11-09 11:23:26 -07:00
Marshall Bowers 70651e3fc1 Use IndexMap for a deterministic order when importing syntax colors 2023-11-09 13:12:36 -05:00
Antonio Scandurra 05aa510d5c WIP 2023-11-09 19:11:17 +01:00
Marshall Bowers 7a0eef99ff Reorganize theme_importer 2023-11-09 13:07:32 -05:00
d6b35eefbb Start on rendering context menu in editor2
Co-Authored-By: Nathan <nathan@zed.dev>
Co-Authored-By: Mikayla <mikayla@zed.dev>
2023-11-09 19:03:10 +01:00
Marshall Bowers c2d703c963 Properly emit UserHighlightStyles 2023-11-09 12:59:20 -05:00
Conrad Irwin bab847a209 Fix escape in GoToLine with new event emitter 2023-11-09 10:52:17 -07:00
Piotr OsiewiczandConrad 0493b2f3a3 Some more woogaloo around action dispatch
Co-authored-by: Conrad <conrad@zed.dev>
2023-11-09 18:51:41 +01:00
Marshall Bowers 0c2aef6068 Add importing-themes feature flag to theme2 crate
When this feature is set the `themes` module won't be compiled.
This allows us to run the `theme_importer` even when the `themes` module
has compile errors in it.
2023-11-09 12:49:16 -05:00
Marshall Bowers 9e2de5ad97 Emit unique highlights for each syntax token 2023-11-09 12:46:37 -05:00
Antonio ScandurraandNathan 9d6d2c59e3 Render code actions indicator
Co-Authored-By: Nathan <nathan@zed.dev>
2023-11-09 18:43:26 +01:00
Piotr OsiewiczandConrad bbc0341411 Fix up keybindings propagation
Co-authored-by: Conrad <conrad@zed.dev>
2023-11-09 18:33:36 +01:00
Nate ButlerandMarshall Bowers 4cabcdd6d4 WIP – Add Syntax themes to importer
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 12:30:53 -05:00
Piotr Osiewicz 9228845242 Start working on command_palette2 2023-11-09 17:54:05 +01:00
Julia 229c106781 zed2: Get tsserver running again 2023-11-09 11:43:40 -05:00
Nate ButlerandMarshall Bowers f727945f16 Allow imported themes to refine StatusColors
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 11:30:59 -05:00
Antonio ScandurraandNathan Sobo adc8be051f Extract AnyElement::{measure,draw}
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-11-09 17:30:41 +01:00
Nate Butler 5ccd6e67b6 Add more vscode colors 2023-11-09 11:01:18 -05:00
Kirill Bulatov fa4e7604c6 Do not use prettier for formatting node_modules/** files (#3286)
Fixes

> the most annoying thing i'm running into right now is that when i'm
patching something inside node_modules, Zed tries to pretty-format it
according to my prettier config. this messes up the patch because it has
formatting changes now. i need the pretty formatting on save to be off
inside node_modules, that never makes sense

feedback from #influencers 

Do note though, that language servers will still format any file inside
node_modules, but at least it's not prettier now.
VSCode seem to format the node_modules/** files via language servers
too, so that seems ok for now, and the rest could be fixed during

> "project diagnostics" (eslint) seem to be running inside node_modules,
e.g. i'm seeing 3182 "errors" in my project. that doesn't make sense and
probably wastes resources in addition to being annoying

feedback later.

Release Notes:

- Fixed prettier formatting files inside node_modules
2023-11-09 17:42:58 +02:00
Kirill Bulatov 01d7e2d231 Port changes to gpui2 2023-11-09 17:18:41 +02:00
Julia 2b093c7839 Get tsserver running again (#3277)
Release Notes:

- Fixed a few issues preventing Javascript/Typescript language server
from working with latest upstream changes.
2023-11-09 10:14:36 -05:00
Kirill Bulatov 23c8be7dac Do not propose prettier formatters for documents in node_modules/ 2023-11-09 14:49:37 +02:00
Kirill Bulatov 8d8e38a741 Adjust the tests 2023-11-09 14:40:32 +02:00
Kirill Bulatov 7918982c6e Change locate prettier method signature 2023-11-09 14:23:33 +02:00
Mikayla ee983f89b2 WIP 2023-11-09 00:18:00 -08:00