Zedでtsgo(ネイティブ版TypeScript)を使う方法

今年3月にMicrosoftはTypeScriptコンパイラーをGoに移植すると発表しており、数日前には主要な機能の移植を完了したと発表しています。
GoベースのTypeScriptコンパイラーはTypeScript 7としてリリースされる予定で、現在は@typescript/native-previewをインストールすることで、従来のtscコマンド代わってtsgoコマンドとして利用できます。
tsgoを使うことでプロジェクトのビルドや型チェックが高速になるだけでなく、エディターの入力補完などに利用するとプロジェクトのロードが高速になります。
VS Codeでは、Microsoft公式の拡張機能をインストールして設定を変更することで、エディターのコード補完やエラー表示などにtsgoを利用できるようになり、プロジェクトのロードが高速になります。
https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.native-preview
Zedでは、Zed公式の拡張機能を通じてtsgoを利用できます。まずは、tsgoの拡張機能をインストールします。
拡張機能をインストールしただけだと、従来のTypeScriptベースのTypeScriptとtsgoの両方が言語サーバーとして起動してしまうため、次のように設定を変更します。
{ // ...既存の設定 "languages": { "TypeScript": { "language_servers": ["!vtsls", "!typescript-language-server", "..."] }, "TSX": { "language_servers": ["!vtsls", "!typescript-language-server", "..."] }, "JavaScript": { "language_servers": ["!vtsls", "!typescript-language-server", "..."] } }}公式ドキュメントでは"language_servers": ["tsgo"]のようにする設定が紹介されていますが、それだとESLintやcspellなどのtsgo以外の言語サーバーも無効化されてしまいます。
そのため、tsgoと機能の重複するvtslsとtypescript-language-serverに!を付けて無効化し、登録されているほかの言語サーバーの設定を"..."で維持するようにしています。
こうすることで、tsgoと機能の重複する言語サーバーを無効化しつつ、ESLintなどの言語サーバーはそのままにできます。
余談ですが、Zedはデフォルトでvtslsとtypescript-language-serverという機能の重複する2つの言語サーバーを起動しているようですね。
個人的にノートパソコンでZedの動作が全体的に重いと感じていたのはこれのせいだったようです。
今回の設定変更でノートパソコンでもZedの動作が軽量になりました。
記事をシェア
フォローして最新情報を入手
Googleの優先ソースに追加すると、このサイトの記事をGoogleで見つけやすくなります。また、ぜひXやRSSフィードもフォローしてください。
-1.png&w=1080&q=75)
生まれた時から、母国語よりも先にJavaScriptを使っていました。ネットの海のどこにもいなくてどこにでもいます。
Webフロントエンドプログラマーとして、TypeScriptを用いたWebアプリやブラウザー拡張機能を制作。Xのシャドウバン検知ツール「Shadowban Scanner」やリンクカード復活ツール「Restore Link Card」を公開し、国内外のメディアで紹介されました。iGEM 2023ではJapan-UnitedチームのWikiを制作してGrand Prizeの獲得に貢献。ブログではXやSNSの最新ニュース、不具合の検証と対処法、フロントエンド開発の知見を発信しています。



![Discordの[プロフィールのプライバシー]設定のスクリーンショット](/_next/image/?url=%2Fapi%2Fmedia%2Ffile%2Fdiscord-profile-privacy-settings.png&w=3840&q=75)
![スマートフォンのホーム画面の[Social]フォルダーを表示した写真。フォルダー内にはFacebook、Instagram、Threads、X、LinkedIn、TikTok、YouTubeのアイコンが配置されている](/_next/image/?url=%2Fapi%2Fmedia%2Ffile%2Ffacebook-instagram-threads-x-twitter-linkedin-tiktok-youtube-mobile-app-unsplash.jpg&w=3840&q=75)







![VS Codeのウィンドウの右下のスクリーンショット。[Processing]と書かれたボタンにマウスホバーしており、[言語モードの選択]というツールチップが表示されている](/_next/image/?url=%2Fapi%2Fmedia%2Ffile%2Fvs-code-select-language-mode-processing.png&w=640&q=75)