タグ

ブックマーク / zenn.dev/vim_jp (13)

  • VHS で楽に Neovim のデモ動画を録る

    この記事は Vim 駅伝 の 07/15 の記事です。 前回の記事は staticWagomU さんによる、 06/12 の「mini.nvimを使って環境構築したら優勝した」という記事でした。 次回は 07/17 に投稿される予定です。 はじめに 1ヶ月ほど前に Vim のマイナーなテクニックを紹介する記事を公開し、ありがたいことに非常に多くの方に読んでいただきました。 この記事では特にデモ動画を多く載せることを意識していました。数えてみると8つもの GIF 動画が例に用いられています。Vim を用いた編集のスピート感を視覚的に示すことで、紹介したテクニックの魅力がより効果的に伝わったのではないでしょうか。 元記事の末尾に書いた通り、「中級 Vim 操作」では VHS というコマンドラインツール (CLI) と Neovim、そして nvim-keycastr というプラグインを用いてデ

    VHS で楽に Neovim のデモ動画を録る
    homaju
    homaju 2024/07/15
    VHSコマンドでCLIの録画ができる
  • Neovim + oil.nvim + Weztermで頑張って画像を表示する

    TLDR oil.nvimで画像を選択し、Weztermで画像を表示。 画像はこちらから Neovimで画像と向き合う方法を紹介 Quicklookを呼び出す方法は簡単 今回はWeztermとoil.nvimをフル活用して、Terminal上で画像を表示する方法を紹介をメインに紹介 はじめに Vimmerたるもの、普段はTerminalに引きこもっているものです。 特にVim(Neovim)上で作業をすることが多いはず。 しかし、Terminalが苦手なファイルも存在します。 ご存じ、画像ファイルです。 これまで、自分は画像ファイルを見たいときは openコマンドで画像を開く(MacならPreviewで開く) open .でFinderを開いて画像を見る としてきましたが、やはり画像を見たいためだけにFinderを立ち上げたりアプリを起動、終了するのは面倒です。 そこで、これらを改善するこ

    Neovim + oil.nvim + Weztermで頑張って画像を表示する
  • nvim-lspの作用に少し凝ったカスタマイズを加える旅

    はじめに nvim-lspはデフォルトでかなり使いやすいですが、もう少し自分の使い方にあったカスタマズを加えたいと思うことはあります。 今回、これを設定するための方法を探してみたら、思いのほか長い旅の割に簡単な設定で片付いたので、ここに記録しておきます。 やりたかったこと nvim-lspのデフォルトの設定では、signcolumnに表示されるエラー/警告/ヒントの位置が重なると、 エラー/警告/ヒントのどれが表示されるかは予測するのが難しくなっています。 しかし、エラー/警告/ヒントの表示順を深刻度の高い方から表示したいものです。 結論としての設定 今回のやりたかったことは、次のような設定で片が付きました。 シンプルですね。 模索の旅 この設定に辿り着くまでにヘルプを読みあさったので、その課程を記録しておきます。 signの表示方法を変える設定を探す まずは、nvim-lspの設定でsi

    nvim-lspの作用に少し凝ったカスタマイズを加える旅
  • 誰でも簡単手作りわくわくオペレータ作成Neovimプラグイン

    この記事は Vim 駅伝 の 03/20 の記事です。 前回の記事は kyoh86 さんによる、 03/18 の「efm langserverでdeno fmtとprettierを使い分ける」という記事でした。 次回は 03/22 に投稿される予定です。 はじめに VimNeovim には オペレータ と呼ばれるコマンドがあります。オペレータコマンドの直後に適用範囲を指定することで、様々な編集操作を実現できるというものです。 オペレータを用いると、たとえば以下のようなことができます。 yt" と打つと、カーソルからその右の " に到達するまでの範囲をヤンク(コピー)する y: ヤンクを表すオペレータ t": カーソル直後に存在する " の直前まで移動するモーション >ip と打つと、カーソルのある段落のインデントを1段階増やす(右にずらす) >: インデントを1段階増やすオペレータ

    誰でも簡単手作りわくわくオペレータ作成Neovimプラグイン
    homaju
    homaju 2024/03/21
  • 2年間ほとんどメンテしていなかったinit.luaを整理した話

    はじめに 振り返ると、vimrcからinit.luaに乗り換えてluaを使うようになってから約2年ほど経ちました。 しかし、それ以降はinit.luaをまともにメンテしておらず、ずっと一枚岩のままでした。 一枚岩の設定ファイルは検索するのは便利ではありますが、見通しが悪いなとは前から感じていたので、重い腰を上げてファイル分割することにしました。 記事はどんな感じの構成になったのかについて、ざっくり書いていこうと思います。 メンテの結果 メンテ前はinit.lua一枚でしたが、メンテ後はinit.luaが7行になりました。 require('my/settings/disable') require('my/settings/options') require('my/settings/lsp') require('my/settings/autocmd') require('my/set

    2年間ほとんどメンテしていなかったinit.luaを整理した話
    homaju
    homaju 2024/02/16
    init.luaの参考。vimscriptのプラグインの参考に
  • VimによるToDo管理を支える技術

    背景 ToDo管理、大変ですよね。 世間には色んなツールがありますし、様々な方法論も溢れています。 しかしそのどれも、非常に大きな問題を抱えています。 Vimじゃない Vimじゃないんです。そう。われわれはVimに魂を奪われた悲しき獣。 Vim以外の媒体で文字を書くと、全身に蕁麻疹が出て、手足は震え視野が狭窄し、やがて死に至ります。 解決は小さく もう1つの問題として、世にある様々なToDo管理は 完成度の高い、巨大なツール が何冊も出るような、複雑な方法論 を必要としています。 そのため、学習コストが高く、始めるのも慣れるにも時間がかかります。 怠惰だからToDo管理をしたいのに、怠惰な人間には辛い初期コストを要するという理不尽。 私はそんな理不尽に抗えるほどまともな人間ではないので、小さく始めて、問題に直面するたび、少しずつ改善していくようにしたいものです。 スコープも小さく これも

    VimによるToDo管理を支える技術
    homaju
    homaju 2024/02/16
  • Vim で日本語を使うための工夫

    概要 Vim を使いはじめてから 5年ぐらいになりますが、それ以来まとまった量の文章はほとんど全て Vim で書いてきました。その中には日語の文章も多く含まれているわけですが、Vim で日語を編集する際には英語やソースコードを書くときとには生じにくい問題がいくつか出てきます。 代表的な問題としては、IME がオンになったまま normal モードに戻ってしまうと normal モードのコマンドが打てなくなることや、f<char> や / による検索で IME 切り替えのコストが生じてしまうことがあります。 最近このあたりの環境改善についていくつか行ってみて、以前より日語ファイルの編集を行いやすくなっていると感じるので、その方法を紹介したいと思います。 環境 CUI 環境の vim を前提とします。gvim の IME 連携についてはこの記事では対象としません。 課題 Normal モ

    Vim で日本語を使うための工夫
    homaju
    homaju 2024/01/12
  • Quickfixの内容をTableで書き出してみると意外と便利

    背景 VimNeovimにはQuickfixという機能が備わっています。 grepなどの検索結果や、コンパイラーやリンターのエラーメッセージなどから、 ファイル名(ファイルパス) 行位置 などをリスト化して、選択したアイテムの位置にジャンプできる機能です。 今回は、ここにリスト化された各アイテムをMarkdownの表として出力したいシーンがあったので実現してみました。 私のユースケース モノリポで大きいプロジェクトをいじってると、リファクタリングの作業対象が一人では片付けられない、なんてことも。 気軽に「リファクタリングするべき場所のリストを共有して分担する」ムーブを決めたい時なんかは、便利です。 お断り Vim/Neovimでは~と語りだしておきながら申し訳ないのですが、今回は急いで記事を起こしたため、私のDotfilesからそのまま切り出しています。 そのため、NeovimのためのL

    Quickfixの内容をTableで書き出してみると意外と便利
  • Vimmer が紹介する「いぶし銀」なプラグインまとめ(後編)

    この記事は Vim 駅伝 の 08/21 の記事です。 前回の記事は kyoh86 さんによる、 08/18 の「ddu.vimの基設定概観」という記事でした。 次回は 08/23 に投稿される予定です。 はじめに 記事は、いぶし銀プラグイン企画の結果発表の後編です。 Vimmer が実際に普段の編集を行う上で、なくてはならないと感じるプラグインを紹介していきます。前編は以下の記事を参照してください。 後編では、94件の回答のうち前編で紹介しなかったもの全てを紹介します。 全部で52個もあるため、プラグインの大まかな分類ごとに分けて紹介しています。一度に全て読むのは大変ですから、「目次」から気になるカテゴリを選んで読み進めることをおすすめします。 紹介フォーマット 前編の記事同様、各プラグインには以下の項目を設けています。 プラグイン名 プラグインへのリンク 概要 (一応)紹介記事なの

    Vimmer が紹介する「いぶし銀」なプラグインまとめ(後編)
  • Vim/Neovimのプラグインマネージャーを悪用してCLIの管理ツールとして使う

    TL;DR CLI ツールを管理する方法として、Vim/Neovimのプラグインマネージャーを使うと意外と便利 はじめに 皆さんはCLI ツールをどのように管理していますか? 私はmacOSで使うツールの管理に以下のパッケージマネージャーたちを使っています。 汎用的なパッケージマネージャー aqua - YAMLでDeclarativeにツールを管理できる。極力これで管理したい Homebrew - 有名なパッケージマネージャー。macOSのデファクトスタンダード。Aquaで管理できないツールを管理する 言語ごとのパッケージマネージャー volta - Node.jsのバージョン管理ツール。Node.jsのバージョンを切り替えるのに使う rye - Pythonのバージョン管理ツール。Pythonのバージョン/仮想環境/ツールを管理するのに使う rustup - Rustの管理ツール。Ru

    Vim/Neovimのプラグインマネージャーを悪用してCLIの管理ツールとして使う
  • Vim での一括置換を楽に行う裏技

    この記事は Vim 駅伝 の 06/30 の記事です。 前回の記事は ryoppippi さんによる、 06/28 の「とあるコーディングチョットワカル勢のエディタ遍歴」という記事でした。 次回は 07/03 に投稿される予定です。 はじめに ファイル内の特定の文字列を一括置換する場面はよくあります。そんなとき Vim では :substitute コマンド(短縮形: :s)を用いて というコマンドを叩くのがセオリーです (cf. :h :s)。 しかしこれ、まあまあ面倒くさくありませんか? 冒頭に % を書かないといけない 冒頭の % は置換範囲を表し、ファイル全体を置換する、という意味を持ちます (cf. :h :%)。 % を書かない場合、カーソルのある行だけが置換対象となります。 でも、カーソル行だけを置換対象としたいことって…ファイル全体を置換するケースに比べればそこまで多く

    Vim での一括置換を楽に行う裏技
    homaju
    homaju 2023/07/01
    真似する
  • Vim Input Method Editor

    この記事はVim駅伝の7目の記事です。 VimをIME代わりにするVIMEというソフトウェアがvim-jpで紹介された際に試しましたが上手く動かなかったので、カッとなって作ったスクリプトを紹介します。 #!/bin/bash -u wezterm start --class Floaterm nvim /tmp/clip || exit 1 if [[ -e /tmp/clip ]]; then head -c -1 /tmp/clip | xclip -selection clipboard notify-send -t 1000 copied rm -f /tmp/clip fi すると Mod4(Super)+c を押すと画面中央にWezTerm+Vimが立ち上がります。後はコピーしたい内容を入力し保存終了したらクリップボードにコピーされるので貼り付けるだけです。自作の日本語入力

    Vim Input Method Editor
    homaju
    homaju 2023/03/19
  • 今年お世話になった 12 個の Vim (Neovim) プラグインを紹介します

    この記事は Vim advent calendar 2022 その1 の12日目の記事です。 昨日は@isobe_mochiさんの記事「tataku.vim というプラグインを作っている話」でした。 明日は @hanlio さんの記事が公開される予定です。 はじめに 2022年ももうすぐ終わりそうですね。今年は Vim に関するお仕事がいただけたり、設定ファイルを Vim script から Lua に移行したりと、Vimmer としては非常に充実した一年となりました。これも Vim/Neovim コントリビュータの方々と、数多のプラグイン開発者のおかげです。当にありがとうございます。 そこで記事では、私が普段使っている Vim (Neovim) プラグインを主観強めで紹介します。私が普段メインで使っている Neovim には 2022/12/11 現在 91 個のプラグインが入ってい

    今年お世話になった 12 個の Vim (Neovim) プラグインを紹介します
    homaju
    homaju 2022/12/12
    outlineのプラグインをチェック
  • 1