並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 74件

新着順 人気順

LSPの検索結果1 - 40 件 / 74件

LSPに関するエントリは74件あります。 vimプログラミングlsp などが関連タグです。 人気エントリには 『すべてのエディタでSQLの自動補完をするためにSQL Language Server(sqls)を作った - Qiita』などがあります。
  • すべてのエディタでSQLの自動補完をするためにSQL Language Server(sqls)を作った - Qiita

    sqlsとは sqlsとは、いま私が開発中のSQL用Language Serverです。SQLをエディタで編集するときの支援機能を実装したサーバとなっており、主な特徴は以下です。 Language ServerなのでLSクライアントが存在するエディタであればどんなエディタでも利用可能 SQL編集支援機能 自動補完(テーブル名、カラム名など) 定義参照 SQL実行 複数のRDSMSに対応 MySQL PostgreSQL SQLite3 Language Serverとは Language Server(あるいはLanguage Server Protocol)とは、プログラム言語の開発支援機能をエディタに提供するサーバ、およびその通信内容を規定したプロトコルです。ただしサーバといってもほとんどの場合ローカル内にホスティングしてローカルのエディタと通信をします。 ここでは主題ではないので詳し

      すべてのエディタでSQLの自動補完をするためにSQL Language Server(sqls)を作った - Qiita
    • Language Server Protocol の仕様 及び実装方法

      Language Server Protocol通称LSPの仕様と、各機能をどうやって実装したら良いかの指針を示します。 対象読者 * 言語処理系を実装する人/したい人 * Language Serverを実装する/したい人 * LSPに興味がある人、日本語のまとまった情報源を探している人 * Language Serverがエディタの裏でどのようなことをしているのか気になる人 本書で解説される機能は以下の通りです。 * Diagnostics (検査) * Completion (補完) * Inlay hint * Hover * Goto definition (定義へ移動) * Find references (参照を表示/移動) * Rename (名前変更) * Code actions * Code lens * Signature help * Command * Docu

        Language Server Protocol の仕様 及び実装方法
      • Neovimを一瞬でVSCode並みに便利にする - k0kubun's blog

        去年8年ぶりに vimrc を書き直した時はLSPの体験があんまりよくなくてLSPなしでNeovimを使い続けていたのだが、様々な言語のOSSをメンテする都合で用途に応じてIntelliJとVSCodeとNeovimの三刀流で暮らしていた結果、可能ならNeovimに寄せたいけどそれならLSPを使いたいなということになり、今回LSPの所を真面目に設定し直して、かなり良い体験になっている。 正直Neovimの設定はVSCodeのそれに比べたら面倒なんじゃないかという印象がありサボっていた節があるが、実際にやってみるとVSCodeと同程度に簡単に済む方法もあったので紹介したい。 何故Neovimなのか LSPの話の前に、タイトルだけ見た人がそもそも単にVSCode使えばいいじゃんと言いそうなので、どうしてIntelliJやVSCodeではなくNeovimに揃えようと思ったのかについて書いておく。

          Neovimを一瞬でVSCode並みに便利にする - k0kubun's blog
        • Big Sky :: Vim をモダンな IDE に変える LSP の設定

          Go 言語の IDE 機能を得る為に何か知る必要はありません。Java の IDE 機能を得る為に何か知る必要はありません。HTML の IDE 機能をインストールする為に npm コマンドの使い方を覚えたり、LaTeX の IDE 機能をインストールする為に、配置場所を考える必要もありません。もしインストールを実行しても動かなかったら、それは vim-lsp-settings のバグです。 以前まででれば vim-lsp を導入すると Language Server の登録が必要でした。 if executable('gopls') au User lsp_setup call lsp#register_server({ \ 'name': 'gopls', \ 'cmd': {server_info->['gopls']}, \ 'whitelist': ['go'], \ }) au

            Big Sky :: Vim をモダンな IDE に変える LSP の設定
          • まだ PostgreSQL の開発で疲弊してるの? - Qiita

            { "plpgsqlLanguageServer.database": "データベース名", "plpgsqlLanguageServer.user": "ユーザ名", "plpgsqlLanguageServer.password": "パスワード", "plpgsqlLanguageServer.definitionFiles": [ // glob をサポート。 "**/*.sql", "**/*.psql", "**/*.pgsql" ], // Language Server が対応するファイルの拡張子はデフォルトで ['*.pgsql', '*.psql'] です。 // ( SQLite など他の RDS と競合させないためです。) // '*.sql' のファイルも対応させたい場合は、下記の設定を追加してください。 "files.associations": { "*.sq

              まだ PostgreSQL の開発で疲弊してるの? - Qiita
            • Big Sky :: Vim で Go 言語を書くために行った引越し作業 2020年度版

              はじめに この文章は、普段から Vim を使い、仕事でも趣味でも Go 言語を書いている僕が、最近どの様な環境で書いているかを説明した文章です。ベストプラクティスではありません。 vim-go と僕 元々、Go 言語はリポジトリの misc/vim に Vim で Go 言語を書くための syntax やコマンドを持っていました。今でもそれらは Google のリポジトリに置かれています。ミュージアム的な物なので、実用的ではないと思います。 GitHub - google/vim-ft-go A rudimentary Go filetype plugin. Provides syntax files and basic settings for go files. This is a f... https://github.com/google/vim-ft-go これを Fatih A

                Big Sky :: Vim で Go 言語を書くために行った引越し作業 2020年度版
              • vim-lsp の導入コストを下げるプラグイン vim-lsp-settings を書いた。 - Qiita

                これら全ての機能は、テキストエディタと Language Server との間で JSON-RPC を使い、ソースコード本体、コード補完候補、座標情報などを交換する事で実現されています。 温故知新 実は Language Server Protocol は OmniSharp というソースコード補完サーバがベースとなっています。 OmniSharp は元々、Vim で C# のコードを補完する為に作られた Vim プラグインでした。当時は Vim が curl コマンドで通信できる様に REST サーバとして作られていました。それを Microsoft が双方向の通信を行える様に通信仕様を JSON-RPC に定め、汎用化の為に仕様として策定した物が現在の Language Server Protocol です。 Language Server Protocol は Visual Stud

                  vim-lsp の導入コストを下げるプラグイン vim-lsp-settings を書いた。 - Qiita
                • Rustプログラミングのための環境構築

                  Author: blackenedgold Published: 2020-12-04 Last Modified: 2021-06-30 GitHub Source: md 概要 EmacsでのRust言語をプログラミングする際の環境構築について示します。 このページは以下の記事をemacs-jpのために再編集し投稿したものです。 Rustの環境構築(Emacs) | κeenのHappy Hacκing Blog ツールのインストール Rustupによるrustツールチェーンのセットアップは済んでいるものとして、他のツールの準備方法を案内します。 フォーマッタ、リンタ 公式で配布されているrustfmt(フォーマッタ)とclippy(リンタ)が鉄板です。 インストールは…既に上記の方法でインストールされています。 確認してみましょう。

                    Rustプログラミングのための環境構築
                  • Big Sky :: Go 言語の Language Server「gopls」が completeUnimported に対応した。

                    先日、Gopls の v0.2.0 がリリースされました。 v0.2.0 https://github.com/golang/go/issues/33030#issuecomment-549629508 リリースノートに書かれていますが、このバージョンから completeUnimported に対応しています。fmt が import されていなくても fmt.Println が補完できる様になります。ただしデフォルトでは無効になっています。Visual Studio Code であれば以下を settings.json に含める事で使える様になります。 "gopls": { "completeUnimported": true }, また vim-lsp をお使いであれば以下の様に設定する事で使える様になります。 if executable('gopls') augroup LspGo

                      Big Sky :: Go 言語の Language Server「gopls」が completeUnimported に対応した。
                    • GitHub - lapce/lapce: Lightning-fast and Powerful Code Editor written in Rust

                      You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                        GitHub - lapce/lapce: Lightning-fast and Powerful Code Editor written in Rust
                      • Language Server Protocol に対応したミニ言語処理系を作る

                        自作プログラミング言語でコード補完やタグジャンプをしたり、ソースコードに色をつけたりする。

                          Language Server Protocol に対応したミニ言語処理系を作る
                        • Emacs でだって Docker で開発したい! - ESM アジャイル事業部 開発者ブログ

                          こんにちは。wat-aro です。 Docker 環境で開発する際に VSCode の Remote Container はとても便利ですね。 でも今まで Emacs で開発してきた人は VSCode ではなく Emacs を使いたいはずです。 ここでは僕が Emacs + Docker 環境でどのように開発しているかを紹介します。 docker コマンド まずは docker コマンドを使えなくてはなりません。 Emacs 使いのみなさんはターミナルでなく Emacs から docker コマンドを叩きたいですよね。 そんなときは docker.el です。 https://github.com/Silex/docker.el docker image コマンドや docker compose コマンドが Emacs から実行できます。 docker compose up で立ち上げたコ

                            Emacs でだって Docker で開発したい! - ESM アジャイル事業部 開発者ブログ
                          • RuboCopにLSPを標準搭載した - koicの日記

                            タイトルのとおり。RuboCop 1.53 で LSP (言語サーバー) を標準搭載しました。 最初に3行まとめを書いておきます。 RuboCop を使っているけれど LSP を使っていない場合は、高速なリアルタイム性で開発体験が変わると思います。速い! VS Code ユーザーを使っている方は、後述する vscode-rubocop という VS Code 拡張をインストールすれば OK です。 Emacs や Vi などのユーザーは、LSP クライアントの設定で rubocop --lsp を起動するように LSP 設定してください (VS Code では不要) 。 公式の使い方としては以下のドキュメントを更新していくことになるものの、実装者が自分なのでこちらに軽く書き記します。 docs.rubocop.org rubocop --lsp コマンドは直接ユーザーが手動実行するものでは

                              RuboCopにLSPを標準搭載した - koicの日記
                            • RubyKaigi 2023 参加報告とちょっとエモい話 - joker1007’s diary

                              RubyKaigi 2023に参加してきました。 今回は長野県の松本での開催でした。 全体的な感想 今回は、会場のスポンサーブースの数や来場者が去年より格段に多く、かつてのRubyKaigiが戻ってきたことを強く感じました。 4, 5年ぶりぐらいに会う人も沢山居て、会う人会う人に「うおー、久しぶりです!」って言って回ってた気がします。 久しぶりに会う人と直接近況をやり取りできるのは、とても嬉しいことですね。 自分はあんまり写真撮らないタイプなのですが(食べ物と酒は除く)、今回は割と多くの #rubyfriends 写真を撮った気がする。 それぐらいはしゃいでいたと言えるのかもしれない。 (撮った写真を了解無く上げるのは、ちょっと気になったので写真は割愛) とにかく、色々な人にまた会えたのが嬉しかった。そういうRubyKaigiでした。 セッションについて 今回は、パーサー周りのトークが妙に

                                RubyKaigi 2023 参加報告とちょっとエモい話 - joker1007’s diary
                              • Why LSP?

                                Why LSP? Apr 25, 2022 LSP (language server protocol) is fairly popular today. There’s a standard explanation of why that is the case. You probably have seen this picture before: I believe that this standard explanation of LSP popularity is wrong. In this post, I suggest an alternative picture. Standard Explanation The explanation goes like this: There are M editors and N languages. If you want to

                                • Behind VS Code Extensions for JavaScript / TypeScript Linnting and Formatting

                                  # Behind VS Code Extensions for JavaScript / TypeScript Linnting and Formatting This slides are used at VS Code Conference Japan 2024 https://vscodejp.github.io/conference-2024/ (15 ~ 20 minutes) ## References: - Extension API | Visual Studio Code Extension API https://code.visualstudio.com/api - The Biome Tool Chain https://fosdem.org/2024/schedule/event/fosdem-2024-2563-the-biome-toolchain/ - Mo

                                    Behind VS Code Extensions for JavaScript / TypeScript Linnting and Formatting
                                  • プログラミング言語「Rust」、これまでの言語サーバを廃止して新たにrust-analyzerを採用

                                    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

                                      プログラミング言語「Rust」、これまでの言語サーバを廃止して新たにrust-analyzerを採用
                                    • コンパイラを書いてセルフホストした

                                      Quartzという言語をデザインしてコンパイラを書いて自身をコンパイルできるところまで到達したので記録として書く (人に使ってもらうことなどは特に想定してないので、ドキュメントなどはありません) Quartzについて 言語機能的にはGoとかに近く、syntax的にはRustに近い言語としてデザインした。ターゲットとしてWASM(wat形式)のみサポート。 元々の想定として、ゲームのスクリプトやアプリケーションのプラグインなど、動的に読み込めて気軽にかけて、型やLSPなどの現代的なDXは提供したいというモチベで作り始めた。 例えばfizzbuzzのコードは以下のような感じ。 fun main() { for i in 1..100 { if i % 15 == 0 { println("FizzBuzz"); } else if i % 3 == 0 { println("Fizz"); }

                                        コンパイラを書いてセルフホストした
                                      • Building an Intelligent Emacs

                                        This post introduces the combination of Emacs and LSP, and how you can make your own editor “smarter” by using the same idea of communications between an editor client and multiple language servers. Edit: Thank you for the support, this blog post got featured on the front page of Hacker News (YCombinator). BackgroundWhen compared with modern editors and IDEs (such as IntelliJ IDEA, PyCharm, and Vi

                                        • lsp-modeのLSPサーバーをプロジェクト別に切り替える方法

                                          最近、Denoの開発をはじめたことにより、EmacsでTypeScriptの開発をするときに、lsp-modeで起動するLSPサーバーをプロジェクトによってNode.js(ts-ls)とDeno(deno-ls)で切り替えたいと思いました。 lsp-modeはすでにJavascript/Typescript (deno)をサポートしているので、おそらくできるはです。 公式回答はディレクトリローカル変数を使う # 調べてみたところ、公式ドキュメントのFAQに次の記載がありました。 I have multiple language servers for language FOO and I want to select the server per project, what can I do? You may create dir-local for each of the project

                                            lsp-modeのLSPサーバーをプロジェクト別に切り替える方法
                                          • go-mode + eglotを使ってEmacsのGolang開発環境を整える - A Day In The Life

                                            普段 Golang でサーバコードを書くときはもっぱら Emacs を使っています。Go Modules に移行してから gocode が動作しなくなったので最近はやりの LSP(Language Server Protocol) を導入することにしました。Go の Language Server は gopls 、Emacs のLSPクライアントは eglot を使います 動作確認バージョン Emacs 26系 Golang 1.12.x Emacsは25以上、Golangは1.11以上なら問題なく動作するはずです。 gopls のインストール Go の Language Server は3種類あります。一番下の gopls が Golang の公式 Language Server です。 go-langserver bingo gopls 一長一短あるようですが公式が安心そうなので g

                                              go-mode + eglotを使ってEmacsのGolang開発環境を整える - A Day In The Life
                                            • A decent VS Code + Ruby on Rails setup

                                              Setting up VS Code for Ruby on Rails development can be tricky, so I wrote this article to help. Plus, I've turned the extensions in this article into a VS Code Extension Pack. Use it to install all the extensions from this article in 1-click, to get started quickly with VS Code + Ruby on Rails. Table of Contents Using VS Code as a Ruby on Rails editor shouldn't be so hard! It's tricky deciding wh

                                                A decent VS Code + Ruby on Rails setup
                                              • First Release

                                                I am pleased to announce the first alpha release of rust-analyzer — a new "IDE backend" for the Rust programming language. Support rust-analyzer on Open Collective. Wait a second…​ Haven’t people been using rust-analyzer for a long time now? Well, yes, but we’ve never actually made a release announcement, so here’s one! Better late than never :-) Broadly speaking, rust-analyzer is a new compiler f

                                                • Improving the Developer Experience with the Ruby LSP

                                                  Opens in a new windowOpens an external siteOpens an external site in a new window Ruby has an explicit goal to make developers happy. Historically, working towards that goal mostly meant having rich syntax and being an expressive programming language—allowing developers to focus on business logic rather than appeasing the language’s rules. Today, tooling has become a key part of this goal. Many mo

                                                    Improving the Developer Experience with the Ruby LSP
                                                  • LSP概観|Language Server Protocol の仕様 及び実装方法

                                                      LSP概観|Language Server Protocol の仕様 及び実装方法
                                                    • LSP ルーターを作った - tmtms のメモ

                                                      最近は Emacs の LSP クライアント機能である Eglot を使って Ruby を書いたり読んだりしてる。 ruby-mode では LSP サーバーはデフォルトで Solargraph が使われてる。 半年くらい前に rubocop に LSP サーバー機能が搭載されたらしいんで使ってみた。 (add-to-list 'eglot-server-programs '(ruby-mode . ("rubocop" "--lsp"))) rubocop の機能であるコードのチェックはちゃんと使えたんだけど、Solargraph で使えてたコードジャンプとかが使えなくなった。まあそれはそう。 Eglot はモードごとに LSP サーバーを指定することはできるけど、同じモードに複数の LSP サーバーを指定することはできなそう。Emacs Lisp はよくわからないんでちゃんと調べてない

                                                        LSP ルーターを作った - tmtms のメモ
                                                      • GitHub - supabase-community/postgres_lsp: A Language Server for Postgres

                                                        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                          GitHub - supabase-community/postgres_lsp: A Language Server for Postgres
                                                        • Rustのtokioを使ってLSP, DAPサーバーを書く

                                                          はじめに 最近はioliteという言語とそのコンパイラを書いています。 そこで、VSCode上の言語機能やデバッガーの機能を作りたくなったので、それをRustのtokio上で動くLSP,DAPサーバーを書いたのでそれに関する記事です。 (この記事執筆時点のリポジトリ) LSPとDAPについて この記事を読んでいる人はLSPについては知っている人が多いと思いますが、LSPはmicrosoftが定める規格で、エディター上のautocompleteや定義ジャンプ、エラーの表示やホバー時の型表示などの機能を提供することができる規格です。 一方でDAPはLSPのデバッガーバージョンのようなもので、VSCodeのデバッガーを起動した時に提供される、ブレイクポイントやステップ実行などの機能について定めた規格です。 いずれもエディターから呼ぶためのプロトコルとして定義されており、通信は必ずしもサーバーを立

                                                            Rustのtokioを使ってLSP, DAPサーバーを書く
                                                          • Neovim の LSP を設定するための基本知識

                                                            概要 LSP は定義ジャンプやメソッド名の補完など言語ごとの編集機能をサポートするための仕組みであり、現代的なテキストエディタにとって非常に重要な機能のひとつになっています。Neovim も組み込みで LSP のサポートを備えていますが、思い通りに設定を行えるようにするためにはそれなりの知識が必要になります。 一方、LSP の設定例などについては比較的多く見つかるものの、それ以前の基本知識についてまとまった資料は意外と少ないように感じられます。 また、設定の紹介においてもプラグインの使用を前提とした設定方法の紹介が多いため プラグインがないと LSP は使えないのではないかのように思いこんでしまう どのプラグインをなんのために入れているのかわからなくなる といった問題を感じることもあります。 そこで、この記事では前半でそもそも LSP とは何であるかという部分を説明し、後半では Neovi

                                                              Neovim の LSP を設定するための基本知識
                                                            • neovimで作る最新Ruby開発環境2023

                                                              大阪Ruby会議03 登壇資料。 neovimの話かと思わせておいて、実は半分以上LSPの話だったりする。 source markdown: https://github.com/joker1007/slides/blob/gh-pages/osaka_rubykaigi_03/slides.md

                                                                neovimで作る最新Ruby開発環境2023
                                                              • GitHub - tennashi/lsp_spec_ja: LSP 仕様の日本語訳

                                                                Language Server Protocol Specification - 3.15 以下の文書は Language Server Protocol Specification - 3.15 の日本語訳である。 Base Protocol ベースプロトコルはヘッダ部とコンテント部で構成される(HTTP と似ている)。ヘッダ部 とコンテント部は \r\n で分割される。 Header Part ヘッダ部はヘッダフィールドで構成される。それぞれのヘッダフィールドは : (コロ ンとスペース) で分割された名前と値で構成される。それぞれのヘッダフィールドは \r\n で終了する。最後のヘッダフィールドとヘッダ全体はそれぞれ \r\n で終了す ることと、少なくとも1つのヘッダが必須であることを踏まえると、常にメッセージのコ ンテント部の直前には2つの \r\n があることになる。 現在次の

                                                                  GitHub - tennashi/lsp_spec_ja: LSP 仕様の日本語訳
                                                                • EmacsによるScala開発 2022年版 (補完編) - Lambdaカクテル

                                                                  最近ちまちまEmacsでScalaを書けるようにしているのですが、そのメモ的な記事です。特に、補完の話に注目して書きます。 補完 じゃあどうすればいいの 相性の悪いプラグイン 参考elisp 01_company.el 02_lsp.el 03_scala.el 補完 補完を行うためには、まずは言語を認識して適切な解析を行うメカニズムが必要になります。この仕組みはデファクトスタンダードが確立しています。それはLSP (Language Server Protocol) です。LSPはエディタと解析ツールとの間の共通語を定義して、どんなエディタでも等しく補完や解析の恩恵に与れるようにするものです。ScalaのデファクトスタンダードなLSPバックエンドはMetalsです。MetalsはLSPの上で各種エディタにScalaの解析メカニズムやリファクタ機能等を提供します。 次に、エディタがLSPに

                                                                    EmacsによるScala開発 2022年版 (補完編) - Lambdaカクテル
                                                                  • GitHub - microsoft/lsif-node: Define an index format for Language Servers

                                                                    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

                                                                      GitHub - microsoft/lsif-node: Define an index format for Language Servers
                                                                    • LSP 実装メモ(gopls cache `Cache` `Session` 編) - あれ

                                                                      前回 tennashi.hatenablog.com 今回から少し gopls の cache 機構を集中して読んでいく。 というのも結局 LSP サーバの実装の肝は クライアントから受け取った TextDocument の中身をいつパースするか どのようにパースするか どのように保持するか どうやって TextDocument の中身にアクセスするか なはずで、gopls の場合この cache 機構を読み解くことがこの大部分の理解に繋がると思われるからである。 cache 機構に関連して参考になるドキュメントは以下である。 github.com gopls の cache は 3層になっており、それぞれ Cache Session View と名付けられており、各々が互いに参照及び構築できる。 各々について、もう少し詳細を見ていく。 Cache cache の最下層にある構造。 ファイ

                                                                        LSP 実装メモ(gopls cache `Cache` `Session` 編) - あれ
                                                                      • 最速LSPクライアント lsp-bridgeを使おう - Qiita

                                                                        最速LSPクライアント lsp-bridgeを使おう こんにちは! メリークリスマス! LSP使ってますか? 現在Emacsで代表的なLSPクライアントとして使われているのはLSP Mode、Emacs 29から標準のLSPクライアントとしてマージされたEglotがあります。 そんな中、今回紹介するlsp-bridgeは「最速」を謳うEmacsの第三のLSPクライアントです。 このパッケージはMELPAなどには登録されておらず、まだ開発段階の趣きがありますが、非常に快適な実装なのでこの期に紹介します。 特徴 The goal of lsp-bridge is to become the fastest LSP client in Emacs, not a complete implementation of LSP protocol. lsp-bridgeはLSPの全機能を網羅するよりも最

                                                                          最速LSPクライアント lsp-bridgeを使おう - Qiita
                                                                        • 「EmEditor」が言語サーバープロトコル(LSP)をついにサポート ~最新v22.3.0が正式公開/クラッシュ防止のため検索・置換の前にCSV構文チェックを中止するかを確認する仕様に

                                                                            「EmEditor」が言語サーバープロトコル(LSP)をついにサポート ~最新v22.3.0が正式公開/クラッシュ防止のため検索・置換の前にCSV構文チェックを中止するかを確認する仕様に
                                                                          • アセットの import を簡単にする TypeScript Language Service Plugin を作った - mizdra's blog

                                                                            Web ページを作るときに、あらかじめファイルに書き出しておいた画像 (アセット) をページに埋め込みたいことがよくあると思います。例えばヘッダーにサービスのロゴ画像を埋め込む場合、以下のようなコードを書くと思います。 // src/components/Header.tsx export function Header() { return ( <header> <img src="/assets/logo.png" alt="Logo image" /> {/* ... */} </header> ); } 一方で、最近のWeb フロントエンドフレームワーク (例: Next.js, Remix) を使う場合は、import 文を用いて以下のように書くことが多いと思います。 // src/components/Header.tsx import I_LOGO from '../asse

                                                                              アセットの import を簡単にする TypeScript Language Service Plugin を作った - mizdra's blog
                                                                            • Vimにcoc.nvimを入れたら便利すぎて感動したっていう話 - Qiita

                                                                              ぼくはパソコンは実家にしか無く、開発系は全てAndroidのTermuxで済ませなくてはなりません。 (Termuxを使えば結構色々なLinux系のコマンド、ソフトを使えるのでたいへん助かってます) よって、ぼくの開発環境は"ポケットIDE"。そう、(neo)Vimです。 こういうわけで、開発毎に、それぞれの言語の補完プラグイン、Linter(これはうまく動かなかったのだが)を入れ、またファイラを入れ、がんばっていた訳です。 プロローグ 数年前、ネットをVimについてググりサーフィンしていると、"LSP"という単語が目に入りました。"Language Server Protocol"。どうやら、コーディング補助系について規格化したものであるようなのです。 (参考:https://langserver.org/) Vimに対応させるプラグインも出てきたと聞いて、すぐ飛びついた訳ですが、当時、

                                                                                Vimにcoc.nvimを入れたら便利すぎて感動したっていう話 - Qiita
                                                                              • Language Server Protocol開発チュートリアル - Qiita

                                                                                はじめに プログラマの仕事道具といえばソースコードエディタ(以下,エディタ)です.エディタ開発はプログラマの能力を最大化するための有効な手段と言えます.本記事はエディタ開発の第一歩して拡張機能,またはプラグインの開発を行います.特にEclipse登場以降のプログラミングエディタの多くは拡張機能の集合体として設計されているため,拡張機能開発の経験はエディタ本体の開発にも応用可能です. 本記事ではLanguage Server Protocol (以下,LSP)を用いたエディタの拡張機能開発を行います.LSPとは,コード補完や,変数参照,スタイル修正といった機能実装をあらゆるエディタ/IDE へ提供するプロトコルです.本記事ではVisual Studio Codeを用いて拡張機能開発を行いますが,作成した機能はVimやEmacsでも使えます. 一応公式チュートリアルもありますが,拡張機能の開発

                                                                                  Language Server Protocol開発チュートリアル - Qiita
                                                                                • Language Server Protocolを用いたVSCode拡張機能開発 (前編) | フューチャー技術ブログ

                                                                                  はじめにこんにちは、Futureでアルバイトをしている川渕です。アルバイトの前はFutureのインターンシップでRust製SQLフォーマッタの作成を行っていました(その時の記事はこちら)。現在はそのSQLフォーマッタをVSCodeの拡張機能にする作業を行っており、そのための方法を学んでいます。 本記事ではLanguage Server Protocol(以下LSP)を用いたVSCode拡張機能開発について説明します。 前編ではLSPを用いたVSCodeの拡張機能開発チュートリアルと、チュートリアルに使用したサンプルコードの解説を行います。 後編ではサンプルコードに機能を追加する方法を説明します。 Language ServerとはLanguage Serverとは、自動補完、エラーチェック、型チェックなどの様々な言語機能をIDEに提供するものです。 Language Server Prot

                                                                                    Language Server Protocolを用いたVSCode拡張機能開発 (前編) | フューチャー技術ブログ

                                                                                  新着記事