mirror of
https://github.com/zed-industries/zed.git
synced 2024-12-29 14:43:55 +03:00
Merge branch 'main' into project-diagnostics
This commit is contained in:
commit
8f90d42723
21
Cargo.lock
generated
21
Cargo.lock
generated
@ -5136,18 +5136,28 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "tree-sitter"
|
||||
version = "0.19.5"
|
||||
source = "git+https://github.com/tree-sitter/tree-sitter?rev=d72771a19f4143530b1cfd23808e344f1276e176#d72771a19f4143530b1cfd23808e344f1276e176"
|
||||
version = "0.20.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9394e9dbfe967b5f3d6ab79e302e78b5fb7b530c368d634ff3b8d67ede138bf1"
|
||||
dependencies = [
|
||||
"cc",
|
||||
"regex",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tree-sitter-markdown"
|
||||
version = "0.0.1"
|
||||
source = "git+https://github.com/maxbrunsfeld/tree-sitter-markdown?rev=b2b4eefd51ada972ef8bb581b83b6b8e7a28c7a6#b2b4eefd51ada972ef8bb581b83b6b8e7a28c7a6"
|
||||
dependencies = [
|
||||
"cc",
|
||||
"tree-sitter",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tree-sitter-rust"
|
||||
version = "0.19.0"
|
||||
version = "0.20.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "784f7ef9cdbd4c895dc2d4bb785e95b4a5364a602eec803681db83d1927ddf15"
|
||||
checksum = "3df540a493d754015d22eaf57c38f58804be3713a22f6062db983ec15f85c3c9"
|
||||
dependencies = [
|
||||
"cc",
|
||||
"tree-sitter",
|
||||
@ -5644,8 +5654,6 @@ dependencies = [
|
||||
"project",
|
||||
"serde_json",
|
||||
"theme",
|
||||
"tree-sitter",
|
||||
"tree-sitter-rust",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -5732,6 +5740,7 @@ dependencies = [
|
||||
"tiny_http",
|
||||
"toml",
|
||||
"tree-sitter",
|
||||
"tree-sitter-markdown",
|
||||
"tree-sitter-rust",
|
||||
"unindent",
|
||||
"url",
|
||||
|
@ -4,7 +4,6 @@ default-members = ["crates/zed"]
|
||||
|
||||
[patch.crates-io]
|
||||
async-task = { git = "https://github.com/zed-industries/async-task", rev = "341b57d6de98cdfd7b418567b8de2022ca993a6e" }
|
||||
tree-sitter = { git = "https://github.com/tree-sitter/tree-sitter", rev = "d72771a19f4143530b1cfd23808e344f1276e176" }
|
||||
# TODO - Remove when a version is released with this PR: https://github.com/servo/core-foundation-rs/pull/457
|
||||
cocoa = { git = "https://github.com/servo/core-foundation-rs", rev = "025dcb3c0d1ef01530f57ef65f3b1deb948f5737" }
|
||||
cocoa-foundation = { git = "https://github.com/servo/core-foundation-rs", rev = "025dcb3c0d1ef01530f57ef65f3b1deb948f5737" }
|
||||
|
@ -43,5 +43,5 @@ ctor = "0.1"
|
||||
env_logger = "0.8"
|
||||
rand = "0.8"
|
||||
unindent = "0.1.7"
|
||||
tree-sitter = "0.19"
|
||||
tree-sitter-rust = "0.19"
|
||||
tree-sitter = "0.20"
|
||||
tree-sitter-rust = "0.20"
|
||||
|
@ -38,7 +38,7 @@ smallvec = { version = "1.6", features = ["union"] }
|
||||
smol = "1.2"
|
||||
time = { version = "0.3" }
|
||||
tiny-skia = "0.5"
|
||||
tree-sitter = "0.19"
|
||||
tree-sitter = "0.20"
|
||||
usvg = "0.14"
|
||||
waker-fn = "1.1.0"
|
||||
|
||||
|
@ -14,7 +14,7 @@ include = ["bindings/rust/*", "grammar.js", "queries/*", "src/*"]
|
||||
path = "bindings/rust/lib.rs"
|
||||
|
||||
[dependencies]
|
||||
tree-sitter = "0.19.3"
|
||||
tree-sitter = "0.20"
|
||||
|
||||
[build-dependencies]
|
||||
cc = "1.0"
|
||||
|
@ -107,7 +107,7 @@ impl Renderer {
|
||||
"path_atlas",
|
||||
"path_atlas_vertex",
|
||||
"path_atlas_fragment",
|
||||
MTLPixelFormat::R8Unorm,
|
||||
MTLPixelFormat::R16Float,
|
||||
);
|
||||
Self {
|
||||
sprite_cache,
|
||||
@ -827,7 +827,7 @@ fn build_path_atlas_texture_descriptor() -> metal::TextureDescriptor {
|
||||
let texture_descriptor = metal::TextureDescriptor::new();
|
||||
texture_descriptor.set_width(2048);
|
||||
texture_descriptor.set_height(2048);
|
||||
texture_descriptor.set_pixel_format(MTLPixelFormat::R8Unorm);
|
||||
texture_descriptor.set_pixel_format(MTLPixelFormat::R16Float);
|
||||
texture_descriptor
|
||||
.set_usage(metal::MTLTextureUsage::RenderTarget | metal::MTLTextureUsage::ShaderRead);
|
||||
texture_descriptor.set_storage_mode(metal::MTLStorageMode::Private);
|
||||
|
@ -205,8 +205,6 @@ vertex SpriteFragmentInput sprite_vertex(
|
||||
};
|
||||
}
|
||||
|
||||
#define MAX_WINDINGS 32.
|
||||
|
||||
fragment float4 sprite_fragment(
|
||||
SpriteFragmentInput input [[stage_in]],
|
||||
texture2d<float> atlas [[ texture(GPUISpriteFragmentInputIndexAtlas) ]]
|
||||
@ -216,7 +214,7 @@ fragment float4 sprite_fragment(
|
||||
float4 sample = atlas.sample(atlas_sampler, input.atlas_position);
|
||||
float mask;
|
||||
if (input.compute_winding) {
|
||||
mask = 1. - abs(1. - fmod(sample.r * MAX_WINDINGS, 2.));
|
||||
mask = 1. - abs(1. - fmod(sample.r, 2.));
|
||||
} else {
|
||||
mask = sample.a;
|
||||
}
|
||||
@ -303,6 +301,6 @@ fragment float4 path_atlas_fragment(
|
||||
);
|
||||
float f = (input.st_position.x * input.st_position.x) - input.st_position.y;
|
||||
float distance = f / length(gradient);
|
||||
float alpha = saturate(0.5 - distance) / MAX_WINDINGS;
|
||||
float alpha = saturate(0.5 - distance);
|
||||
return float4(alpha, 0., 0., 1.);
|
||||
}
|
||||
|
@ -34,8 +34,8 @@ rand = { version = "0.8.3", optional = true }
|
||||
serde = { version = "1", features = ["derive"] }
|
||||
similar = "1.3"
|
||||
smol = "1.2"
|
||||
tree-sitter = "0.19.5"
|
||||
tree-sitter-rust = { version = "0.19.0", optional = true }
|
||||
tree-sitter = "0.20.0"
|
||||
tree-sitter-rust = { version = "0.20.0", optional = true }
|
||||
|
||||
[dev-dependencies]
|
||||
text = { path = "../text", features = ["test-support"] }
|
||||
@ -43,5 +43,5 @@ gpui = { path = "../gpui", features = ["test-support"] }
|
||||
lsp = { path = "../lsp", features = ["test-support"] }
|
||||
util = { path = "../util", features = ["test-support"] }
|
||||
rand = "0.8.3"
|
||||
tree-sitter-rust = "0.19.0"
|
||||
tree-sitter-rust = "0.20.0"
|
||||
unindent = "0.1.7"
|
||||
|
@ -7,12 +7,7 @@ edition = "2018"
|
||||
path = "src/workspace.rs"
|
||||
|
||||
[features]
|
||||
test-support = [
|
||||
"client/test-support",
|
||||
"project/test-support",
|
||||
"tree-sitter",
|
||||
"tree-sitter-rust",
|
||||
]
|
||||
test-support = ["client/test-support", "project/test-support"]
|
||||
|
||||
[dependencies]
|
||||
client = { path = "../client" }
|
||||
@ -23,13 +18,9 @@ theme = { path = "../theme" }
|
||||
anyhow = "1.0.38"
|
||||
log = "0.4"
|
||||
postage = { version = "0.4.1", features = ["futures-traits"] }
|
||||
tree-sitter = { version = "0.19.5", optional = true }
|
||||
tree-sitter-rust = { version = "0.19.0", optional = true }
|
||||
|
||||
[dev-dependencies]
|
||||
client = { path = "../client", features = ["test-support"] }
|
||||
gpui = { path = "../gpui", features = ["test-support"] }
|
||||
project = { path = "../project", features = ["test-support"] }
|
||||
serde_json = { version = "1.0.64", features = ["preserve_order"] }
|
||||
tree-sitter = "0.19.5"
|
||||
tree-sitter-rust = "0.19.0"
|
||||
|
@ -84,8 +84,9 @@ thiserror = "1.0.29"
|
||||
time = "0.3"
|
||||
tiny_http = "0.8"
|
||||
toml = "0.5"
|
||||
tree-sitter = "0.19.5"
|
||||
tree-sitter-rust = "0.19.0"
|
||||
tree-sitter = "0.20.0"
|
||||
tree-sitter-rust = "0.20.0"
|
||||
tree-sitter-markdown = { git = "https://github.com/maxbrunsfeld/tree-sitter-markdown", rev = "b2b4eefd51ada972ef8bb581b83b6b8e7a28c7a6" }
|
||||
url = "2.2"
|
||||
|
||||
[dev-dependencies]
|
||||
|
@ -50,3 +50,10 @@ comment = "#6a9955"
|
||||
property = "#4e94ce"
|
||||
variant = "#4fc1ff"
|
||||
constant = "#9cdcfe"
|
||||
|
||||
title = { color = "#9cdcfe", weight = "bold" }
|
||||
emphasis = "#4ec9b0"
|
||||
"emphasis.strong" = { color = "#4ec9b0", weight = "bold" }
|
||||
link_uri = { color = "#6a9955", underline = true }
|
||||
link_text = { color = "#cb8f77", italic = true }
|
||||
list_marker = "#4e94ce"
|
||||
|
@ -50,3 +50,10 @@ comment = "#6a9955"
|
||||
property = "#4e94ce"
|
||||
variant = "#4fc1ff"
|
||||
constant = "#9cdcfe"
|
||||
|
||||
title = { color = "#9cdcfe", weight = "bold" }
|
||||
emphasis = "#4ec9b0"
|
||||
"emphasis.strong" = { color = "#4ec9b0", weight = "bold" }
|
||||
link_uri = { color = "#6a9955", underline = true }
|
||||
link_text = { color = "#cb8f77", italic = true }
|
||||
list_marker = "#4e94ce"
|
||||
|
@ -49,4 +49,11 @@ number = "#b5cea8"
|
||||
comment = "#6a9955"
|
||||
property = "#4e94ce"
|
||||
variant = "#4fc1ff"
|
||||
constant = "#9cdcfe"
|
||||
constant = "#5a9ccc"
|
||||
|
||||
title = { color = "#5a9ccc", weight = "bold" }
|
||||
emphasis = "#267f29"
|
||||
"emphasis.strong" = { color = "#267f29", weight = "bold" }
|
||||
link_uri = { color = "#6a9955", underline = true }
|
||||
link_text = { color = "#a82121", italic = true }
|
||||
list_marker = "#4e94ce"
|
||||
|
24
crates/zed/languages/markdown/highlights.scm
Normal file
24
crates/zed/languages/markdown/highlights.scm
Normal file
@ -0,0 +1,24 @@
|
||||
(emphasis) @emphasis
|
||||
(strong_emphasis) @emphasis.strong
|
||||
|
||||
[
|
||||
(atx_heading)
|
||||
(setext_heading)
|
||||
] @title
|
||||
|
||||
[
|
||||
(list_marker_plus)
|
||||
(list_marker_minus)
|
||||
(list_marker_star)
|
||||
(list_marker_dot)
|
||||
(list_marker_parenthesis)
|
||||
] @list_marker
|
||||
|
||||
[
|
||||
(indented_code_block)
|
||||
(fenced_code_block)
|
||||
(code_span)
|
||||
] @text.literal
|
||||
|
||||
(link_destination) @link_uri
|
||||
(link_text) @link_text
|
@ -27,8 +27,11 @@ fn rust() -> Language {
|
||||
}
|
||||
|
||||
fn markdown() -> Language {
|
||||
let grammar = tree_sitter_markdown::language();
|
||||
let config = toml::from_slice(&LanguageDir::get("markdown/config.toml").unwrap().data).unwrap();
|
||||
Language::new(config, None)
|
||||
Language::new(config, Some(grammar))
|
||||
.with_highlights_query(load_query("markdown/highlights.scm").as_ref())
|
||||
.unwrap()
|
||||
}
|
||||
|
||||
fn load_query(path: &str) -> Cow<'static, str> {
|
||||
|
Loading…
Reference in New Issue
Block a user