Releases: Myriad-Dreamin/tinymist
v0.12.4
- Updated roadmap (typst v0.13.0+) in #876
Announcement: New Maintainers
We have added maintainers to GitHub since 2024-11-22:
- @ParaN3xus has become a maintainer of the "Nightly Releases" feature in #783
- @max397574 has become a maintainer of the "Editor integration" feature in #784
- @Eric-Song-Nop has become a maintainer of the "Language Service" feature in #796
- @alerque has become a maintainer of the "Neovim integration" feature in #810
Compiler
Added package related arguments totypstExtraArgs
in #832 and #833- (Help Wanted) Reverted because of the OpenSSL problem. See #885.
- Taking configuration items from
tinymist
section in #835- Some editors, e.g. Emacs, use a shared configuration object for all language servers, so it would be better to allow wrapping all configuration items in a single object.
Editor
- Statically registering formatting and semantic tokens capabilities by @MrLego8-9 in #814
- Some editors, e.g. Kate, support neither to dynamic register formatting and semantic tokens capabilities nor pass configuration when initialization, which causes problem.
- Opening exported files using rust's
open
crate in #838 and #855- Check #837 for more information.
Completion
-
Added more completion tests in #845
-
Completing bracket if the function accepts an only content argument in #848, #860, #867, and #870
2024-11-22.16-46-24.mp4
-
Providing UFCS-style completion on content types in #849
2024-11-22.16-47-47.mp4
-
Providing postfix completion on values in #850 and #880
2024-11-22.16-49-34.mp4
-
Improved and filtered completion in show/set syntax in #858 and #859
-
(Fix) Using correct base directory for path completion by @Eric-Song-Nop in #854
-
Preferring to guide coding by signature help than completion list in #874
-
(Fix) Skipping code completion when editing length in #882
Docstring
- Checking union type annotation in #842
Syntax/Semantic Highlighting
- (Fix) match brackets in content block recursively in #856
Rename
- Added search index to quickly filter unrelated files in #864
- Added support to rename resource paths in files in #869
References
- Added search index to quickly filter unrelated files in #864
Code Action
- Added code action to wrap content blocks in #881
Misc
Full Changelog: v0.12.2...v0.12.4
v0.12.4-rc3
v0.12.4-rc2
Fix an issue of cross building with openssl.
v0.12.4-rc1
- Updated roadmap (typst v0.13.0+) in #876
Announcement: New Maintainers
We have added maintainers to GitHub since 2024-11-22:
- @ParaN3xus has become a maintainer of the "Nightly Releases" feature in #783
- @max397574 has become a maintainer of the "Editor integration" feature in #784
- @Eric-Song-Nop has become a maintainer of the "Language Service" feature in #796
- @alerque has become a maintainer of the "Neovim integration" feature in #810
Compiler
- Added package related arguments to
typstExtraArgs
in #832 and #833 - Taking configuration items from
tinymist
section in #835- Some editors, e.g. Emacs, use a shared configuration object for all language servers, so it would be better to allow wrapping all configuration items in a single object.
Editor
- Statically registering formatting and semantic tokens capabilities by @MrLego8-9 in #814
- Some editors, e.g. Kate, support neither to dynamic register formatting and semantic tokens capabilities nor pass configuration when initialization, which causes problem.
- Opening exported files using rust's
open
crate in #838 and #855- Check #837 for more information.
Completion
-
Added more completion tests in #845
-
Completing bracket if the function accepts an only content argument in #848, #860, #867, and #870
2024-11-22.16-46-24.mp4
-
Providing UFCS-style completion on content types in #849
2024-11-22.16-47-47.mp4
-
Providing postfix completion on values in #850 and #880
2024-11-22.16-49-34.mp4
-
Improved and filtered completion in show/set syntax in #858 and #859
-
(Fix) Using correct base directory for path completion by @Eric-Song-Nop in #854
-
Preferring to guide coding by signature help than completion list in #874
-
(Fix) Skipping code completion when editing length in #882
Docstring
- Checking union type annotation in #842
Syntax/Semantic Highlighting
- (Fix) match brackets in content block recursively in #856
Rename
- Added search index to quickly filter unrelated files in #864
- Added support to rename resource paths in files in #869
References
- Added search index to quickly filter unrelated files in #864
Code Action
- Added code action to wrap content blocks in #881
Misc
Full Changelog: v0.12.2...v0.12.4-rc1
v0.12.2
- Bumped typstyle to v0.12.1 by @Enter-tainer in #764
- Claiming list of maintainers in #781
Announcement: New Maintainers
We are going to add maintainers on GitHub since 2024-11-22 (in 7 days):
- @ParaN3xus want to maintain the "Nightly Releases" feature in #783
- @max397574 want to maintain the "Editor integration" feature in #784
- @Eric-Song-Nop want to maintain the "Language Service" feature in #796
- @alerque want to maintain the "Neovim integration" feature in #810
Please reply in PRs or DM @Myriad-Dreamin if you have any concerns about adding these maintainers to list.
Docs
- Added coc.nvim configuration example by @tanloong in #727
- Maintained docs for tinymist 0.12.2 in #733 and #825
- Updated neovim's setup section in #749
- Added documentation about docstring in #771
Editor
- {En,De}coding base-64 strings with Text{De,En}coder in #719 and #774
- Removed outdated typst.tmLanguage.json in #725
- Disabling unicode bracket pair autocompletion in #726
- This is a degradation, as discussed in #723
- Added preview icon when clicking outside the document by @supersurviveur in #734
Compiler
- Implemented expression checker in #714, #736, #756, #759, #773, #775, #777, #798, #801, #815, and #822
- This is a high-level IR for various analyses above AST, e.g. type checking.
- Improved ways of checking docstring in #752, #755
- Locking and taking snapshot {analysis,token} caches on main thread in #806, #817, and #819
- (Fix) Rendered bitmap and svg glyphs correctly in #745
- This is broken by update typst to v0.12.0.
- (Fix) Ensuring expression and type enums are not too big correctly in #811
Commands/Tools
- Added
tinymist query checkPackage
command in #742 - (Fix) Corrected word count when empty line exists by @Eric-Song-Nop in #795
- (Fix) Corrected usage of
/package/symbol
in package view in #820 - (Fix) Querying file type with following symbolic links when listing packages in #821
- Previously, some directories are not identified because they are behind symbolic links.
- Showing performance statistics in summary page in #743
- Completed symbol classification in handwriting recognizer by @summerBreeze03 in #705
Docstring
-
Strictly matching module-level comments in #770
- Previously both // Docs and /// Docs at the start of some file are regarded as docs of the module (file). However, this is not great because people also usually put shebangs and license information in comments.
Example:
// License: Apache 2.0 /// Some Module Docs.
The exact documentation of the module should be
Some Module Docs
. instead ofLicense: Apache 2.0\nSome Module Docs
. -
Rendering examples in docs in #772
-
Emitting errors into docs instead of causing failures in #786
-
Striping out the line containing the return type in #803
Hover (Tooltip)
- Providing documentation when hovering on module references in #751
- Improved style of parameter documentation in #813
- Conditionally rendering code in documentation in #824
- There is a
supportHtmlInMarkdown
configuration item that controls whether to render equation and remove html in contents. The configuration item is not a user configuration, but for lsp client developers (people who are knowledgeable to configure editors). - on VS Code, contents are rendered and embedded as images:
- on rest clients that aren't aware of
supportHtmlInMarkdown
, no HTML is embedded in the responding contents:
- There is a
Completion
- (Fix) Client-side controlling to whether issue completion callback in #744
- (Fix) Matching all identifier-like nodes for completion in #747
- Avoiding trivial completion when the trigger char is an ascii punctuation in #748
- Added more completion tests in #776
- Consistently enriching colon after show selectors in #785
Syntax/Semantic Highlighting
-
Improved syntax highlighting in #724
-
Improved buggy bold/italic syntax highlighting in #732
- This is benefitted from having the expression checker.
-
(Fix) Corrected to syntax rule to identify function identifiers by syntax in #800
- We were not highlighting
"#{test\n[]}"
correctly.
- We were not highlighting
-
Identifying identifier kind for semantic highlighting in #741
Signature Help
- Improved style of signature docs in #750
Preview
- (Fix) Bidirectionally jumping if page.fill is set in #728
- This is broken by update typst to v0.12.0.
On Enter
- Fully supported
onEnter
edits inside comments in #823- Working with selection with range for all clients.
- Working with selection with multiple cursors for VS Cod{e,ium} client.
Misc
- Uploading test snapshot and log for debugging in #760 and #787
- Added time limit argument to language server's replay command in #816
Full Changelog: v0.12.0...v0.12.2
v0.12.2-rc1
- Bumping typstyle to v0.12.1 by @Enter-tainer in #764
- Claiming list of maintainers in #781
Announcement: New Maintainers
We are going to add maintainers on GitHub since 2024-11-22 (in 7 days):
- @ParaN3xus want to maintain the "Nightly Releases" feature in #783
- @max397574 want to maintain the "Editor integration" feature in #784
- @Eric-Song-Nop want to maintain the "Language Service" feature in #796
- @alerque want to maintain the "Neovim integration" feature in #810
Please reply in PRs or DM @Myriad-Dreamin if you have any concerns about adding these maintainers to list.
Docs
- Added coc.nvim config example by @tanloong in #727
- Maintained docs for tinymist 0.12.2 in #733 and #825
- Updated neovim's setup section in #749
- Added documentation about docstring in #771
Editor
- {En,De}coding base-64 strings with Text{De,En}coder in #719 and #774
- Removed outdated typst.tmLanguage.json in #725
- Disabling unicode bracket pair autocompletion in #726
- This is a degradation, as discussed in #723
- Added preview icon when clicking outside the document by @supersurviveur in #734
Compiler
- Implemented expression checker in #714, #736, #756, #759, #773, #775, #777, #798, #801, #815, and #822
- This is a high-level IR for various analyses above AST, e.g. type checking.
- Improved ways of checking docstring in #752, #755
- Locking and taking snapshot {analysis,token} caches on main thread in #806, #817, and #819
- (Fix) Rendered bitmap and svg glyphs correctly in #745
- This is broken by update typst to v0.12.0.
- (Fix) Ensuring expr and type enum are not too big correctly in #811
Commands/Tools
- Added
tinymist query checkPackage
command in #742 - Showing performance statistics in summary page in #743
- Completed symbol classification in handwriting recognizer by @summerBreeze03 in #705
- (Fix) Corrected word count when empty line exists by @Eric-Song-Nop in #795
- (Fix) Corrected usage of
/package/symbol
in package view in #820 - (Fix) Querying file type with following symbolic links when listing packages in #821
- Previously, some directories are not identified because they are behind symbolic links.
Docstring
-
Strictly matching module-level comments in #770
- Previously both // Docs and /// Docs at the start of some file are regarded as docs of the module (file). However, this is not great because people also usually put shebangs and license information in comments.
Example:
// License: Apache 2.0 /// Some Module Docs.
The exact docs should be
Some Module Docs
. instead ofLicense: Apache 2.0\nSome Module Docs
. -
Rendering examples in docs in #772
-
Emitting errors into docs instead of causing failures in #786
-
Striping out the line containing the return type in #803
Hover (Tooltip)
- Providing docs when hovering on module refs in #751
- Improved style of hover param docs in #813
- Conditionally rendering code in docs in #824
Completion
- (Fix) Client-side controlling to whether issue completion callback in #744
- (Fix) Matching all identifier-like nodes for completion in #747
- Avoiding trivial completion when the trigger char is an ascii punctuation in #748
- Added more completion tests in #776
- Consistently enriching colon after show selectors in #785
Syntax/Semantic Highlighting
- Improved syntax highlighting in #724
- Improved buggy bold/italic syntax highlighting in #732
- This is benefitted from having the expression checker.
- Identifying identifier kind for semantic highlighting in #741
- (Fix) Corrected to syntax rule to identify function identifiers by syntax in #800
- We were not highlighting
"#{test\n[]}"
correctly.
- We were not highlighting
- Refactored semantic tokens apis and crates in #802 and #809
Signature Help
- Improved style of signature docs in #750
Preview
- (Fix) Bidirectionally jumping if page.fill is set in #728
- This is broken by update typst to v0.12.0.
On Enter
- Fully supported
onEnter
edits inside comments in #823- Working with selection with range for all clients.
- Working with selection with multiple cursors for VS Cod{e,ium} client.
Misc
- Uploading test snapshot and log for debugging in #760 and #787
- Added time limit argument to language server's replay command in #816
Full Changelog: v0.12.0...v0.12.2-rc1
v0.12.0
Full Changelog: v0.11.32...v0.12.0
Important Note!: Since this version, all docstrings will be assumed to be in typst format, according to Add api and style section about documentation. We think of this is important to land it as soon as possible. The documentation converter is now in state of early development, and we are welcomed to receive issues on GitHub. It can convert simple markups and equations:
Rendering:
Rendered:
But please keep correct format and syntax and avoid using complex markup in docstrings.
Document Link
- Identifying static path references in documents in #658
Compiler
- Improved code quality of
sync-lsp
in #632- Removed some unwraps that some editors may not love.
- Using
DETACHED_ENTRY
if no entry is provided in #647 - Caching
dirs::data_dir
anddirs::cache_dir
in #659
Editor
- Added configuration to open exported file by system default app in #636
- Supported drag and drop of files into the typst editor in #635
2024-10-19.18-12-29.mp4
Profiling
- Sending trace data via http instead of lsp stdio in #660
Definition
- Recording and using span where the label is attached in #641
- Make go to definition more accurate.
2024-10-19.18-13-34.mp4
- Go to definition of module members in #644
2024-10-19.18-14-10.mp4
Rename
- Added support to rename modules by path in #645
- Issuing import changes request during
willRenameFiles
in #648
2024-10-19.18-14-39.mp4
Preview
- (Fix) Checking existence of
requestIdleCallback
before uses in #643
On Enter
- Adding indent on entering in empty block maths in #646
2024-10-19.18-15-14.mp4
Hover (Tooltip)
-
Made star import tooltip more human readable in #682
2024-10-19.18-16-34.mp4
-
Rendering hover docs with converted result in #701
2024-10-19.18-15-48.mp4
-
Providing parameter docs in hover tips in #702
2024-10-19.18-17-08.mp4
Syntax/Semantic Highlighting
Type Checking
- Implemented ord for
Ty
in #667 - Made elementary select checker in #668
- Made elementary tuple method checker in #669
- Checking call types with default bindings in #671 and #675
- Performing type induction on runtime values in #694
Type Checking (Docstring)
Misc
v0.12.0-rc1
Fix two issues:
- Fixed the version to bump, which should be v0.12.x.
- Fixed test failures in CI.
v0.11.34-rc1
Full Changelog: v0.11.32...v0.11.34-rc1
Important Note!: Since this version, all documentation will be assumed to be in typst format. The documentation converter is now in state of early development, and we are welcomed to receive issues on GitHub. It can convert simple markups and equations:
Rendering:
Rendered:
Document Link
- Identifying static path references in documents in #658
Compiler
- Improved code quality of
sync-lsp
in #632- Removed some unwraps that some editors may not love.
- Using
DETACHED_ENTRY
if no entry is provided in #647 - Caching
dirs::data_dir
anddirs::cache_dir
in #659
Editor
- Added configuration to open exported file by system default app in #636
- Supported drag and drop of files into the typst editor in #635
2024-10-19.18-12-29.mp4
Profiling
- Sending trace data via http instead of lsp stdio in #660
Definition
- Recording and using span where the label is attached in #641
- Make go to definition more accurate.
2024-10-19.18-13-34.mp4
- Go to definition of module members in #644
2024-10-19.18-14-10.mp4
Rename
- Added support to rename modules by path in #645
- Issuing import changes request during
willRenameFiles
in #648
2024-10-19.18-14-39.mp4
Preview
- (Fix) Checking existence of
requestIdleCallback
before uses in #643
On Enter
- Adding indent on entering in empty block maths in #646
2024-10-19.18-15-14.mp4
Hover (Tooltip)
-
Made star import tooltip more human readable in #682
2024-10-19.18-16-34.mp4
-
Rendering hover docs with converted result in #701
2024-10-19.18-15-48.mp4
-
Providing parameter docs in hover tips in #702
2024-10-19.18-17-08.mp4
Syntax/Semantic Highlighting
Type Checking
- Implemented ord for
Ty
in #667 - Made elementary select checker in #668
- Made elementary tuple method checker in #669
- Checking call types with default bindings in #671 and #675
Type Checking (Docstring)
- Reading and checking type annotations in docstring (Part. 1) in #679, #680, and #681
- feat: type induction on runtime values in #694
Misc
v0.11.33
This version is at build: bump node version to 22 (#654), using ParaN3xus/typst tinymist-typst-0.12-rc1, a.k.a. typst/typst v0.12.0-rc1.