Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

:zenn:zed導入ログ #3

Open
hrm1810884 opened this issue Nov 20, 2024 · 8 comments
Open

:zenn:zed導入ログ #3

hrm1810884 opened this issue Nov 20, 2024 · 8 comments

Comments

@hrm1810884
Copy link
Owner

neo vimが微妙になったので一旦こっちを試す

@hrm1810884
Copy link
Owner Author

typescript-language-servervtsls はどちらも TypeScript/JavaScript 用の Language Server Protocol (LSP) 実装ですが、それぞれの特長と目的に違いがあります。


1. TypeScript Language Server (typescript-language-server)

概要

  • 公式的なLSP実装として広く使用される。
  • Microsoft の TypeScript (tsserver) をバックエンドに使用。
  • tsserver を抽象化し、LSP クライアント(例: VSCode、Neovim など)とやり取りする。

特長

  • 安定性:
    TypeScript公式の tsserver を使用しているため、機能の安定性と互換性が高い。
  • TypeScriptのすべての機能をサポート:
    型チェック、補完、リファクタリング、コードナビゲーションなど、TypeScript の機能をフルサポート。
  • 広い互換性:
    様々なエディタや IDE で使用可能。
  • 制約:
    大規模プロジェクトや特定のエディタ環境では、パフォーマンスがやや遅いと感じる場合がある。

使用例

  • VSCode のデフォルト。
  • TypeScript をメインとする開発環境で一般的に採用される。

プロジェクトURL

typescript-language-server GitHub


2. Vtsls (vtsls)

概要

  • vtsls は、typescript-language-server の代替 LSP 実装
  • 高速化と最適化を目的に設計された非公式プロジェクト。
  • TypeScript API を直接利用して、パフォーマンスを向上させることを重視。

特長

  • パフォーマンスの向上:
    特に大規模プロジェクトでレスポンスが速い。初期化時間や補完の応答が軽快。
  • 軽量:
    必要最低限の機能を提供するよう設計されているため、リソース消費が少ない。
  • シンプルな設計:
    必要に応じてカスタマイズや最適化がしやすい。
  • 制約:
    一部のTypeScriptの機能や拡張には対応していない場合がある(公式と完全一致ではない)。

使用例

  • 大規模プロジェクトでの補完や型チェックの高速化を求める場合。
  • 標準の typescript-language-server に不満がある場合に試される。

プロジェクトURL

vtsls GitHub


比較表

特性 typescript-language-server vtsls
パフォーマンス 標準的 高速
安定性 高い(公式実装) 非公式、やや実験的
TypeScript機能のサポート 完全 一部機能に制約がある場合がある
適用範囲 中小〜大規模プロジェクト 特に大規模プロジェクト向け
メンテナンス アクティブ(公式チーム) コミュニティ主導

どちらを使うべきか?

typescript-language-server が適している場合

  • TypeScriptの公式機能をすべてサポートしたい場合。
  • 標準的な環境での安定性を重視する場合。
  • 小規模から中規模プロジェクトの場合。

vtsls が適している場合

  • パフォーマンスに不満があり、高速化を求める場合。
  • 大規模プロジェクトや補完速度が特に重要なプロジェクト。
  • 軽量化された環境での開発を重視する場合。

適切な選択は、プロジェクトの規模や開発環境のニーズに依存します。どちらを選ぶべきか悩む場合は、両方を試してみて実際のパフォーマンスや機能の違いを比較するのも良い方法です。

@hrm1810884
Copy link
Owner Author

ファイルのハイライトが実装された

zed-industries/zed#18182
しかも先週暑い

@hrm1810884
Copy link
Owner Author

git周りがまだ開発途上

zed-industries/zed#8665

@hrm1810884
Copy link
Owner Author

diffの表示と編集は可能

zed-industries/zed#4630
自分の作業を見ることはできる

@hrm1810884
Copy link
Owner Author

git関連のTUI補強

  • gitui
    • Rust製
    • 若い
    • 開発は活発
    • 20k
  • lazygit
    • お馴染みlazy系
    • 50k
  • git-fuzzy
    • 2k
    • 開発が二ヶ月前?

@hrm1810884
Copy link
Owner Author

biome導入

@hrm1810884
Copy link
Owner Author

quick fix欲しいな。。

biome ignoreとかの正しい書き方がわからない

@hrm1810884
Copy link
Owner Author

これ大事

// command shift F でダブルクリックで開く
  "double_click_in_multibuffer": "open",

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant