This is the first step of ["Solution proposal for folding multiline comments with no indentation"](https://github.com/zed-industries/zed/discussions/31395): > 1. Add block_comment in the config.toml for the languages javascript, typescript, tsx. These are simple languages for this feature, and I am already familiar with them. The next step will be: > 2. Modify the function `crease_for_buffer_row` in `DisplaySnapshot` to handle multiline comments. `editor::fold` and `editor::fold_all` will handle multiline comments after this change. To my knowledge, `editor::unfold`, `editor::unfold_all`, and the **unfold** indicator in the gutter will already work after folding, but there will be no **fold** indicator. Release Notes: - N/A
43 lines
1.6 KiB
TOML
43 lines
1.6 KiB
TOML
name = "TSX"
|
|
grammar = "tsx"
|
|
path_suffixes = ["tsx"]
|
|
line_comments = ["// "]
|
|
block_comment = ["/*", "*/"]
|
|
autoclose_before = ";:.,=}])>"
|
|
brackets = [
|
|
{ start = "{", end = "}", close = true, newline = true },
|
|
{ start = "[", end = "]", close = true, newline = true },
|
|
{ start = "(", end = ")", close = true, newline = true },
|
|
{ start = "<", end = ">", close = false, newline = true, not_in = ["string", "comment"] },
|
|
{ start = "\"", end = "\"", close = true, newline = false, not_in = ["string"] },
|
|
{ start = "'", end = "'", close = true, newline = false, not_in = ["string", "comment"] },
|
|
{ start = "`", end = "`", close = true, newline = false, not_in = ["string"] },
|
|
{ start = "/*", end = " */", close = true, newline = false, not_in = ["string", "comment"] },
|
|
]
|
|
word_characters = ["#", "$"]
|
|
scope_opt_in_language_servers = ["tailwindcss-language-server", "emmet-language-server"]
|
|
prettier_parser_name = "typescript"
|
|
tab_size = 2
|
|
debuggers = ["JavaScript"]
|
|
documentation = { start = "/**", end = "*/", prefix = "* ", tab_size = 1 }
|
|
|
|
[jsx_tag_auto_close]
|
|
open_tag_node_name = "jsx_opening_element"
|
|
close_tag_node_name = "jsx_closing_element"
|
|
jsx_element_node_name = "jsx_element"
|
|
tag_name_node_name = "identifier"
|
|
tag_name_node_name_alternates = ["member_expression"]
|
|
|
|
[overrides.element]
|
|
line_comments = { remove = true }
|
|
block_comment = ["{/* ", " */}"]
|
|
opt_into_language_servers = ["emmet-language-server"]
|
|
|
|
[overrides.string]
|
|
completion_query_characters = ["-", "."]
|
|
opt_into_language_servers = ["tailwindcss-language-server"]
|
|
prefer_label_for_snippet = true
|
|
|
|
[overrides.call_expression]
|
|
prefer_label_for_snippet = true
|