こんにちは。
突然ですが皆さんは、開発をするうえで欠かせないツールやOSSはありますか?
キーボードやマウス、マイクといった物理的なツールは机を見ればわかりますが、他のエンジニアがどういったツールを使って効率化しているかは、その人の画面を見ないとわかりません。
そのため、他のエンジニアがどういったツールを使って効率化しているのか、実は意外と知らないということが多いのではないでしょうか?
そこで今回は、大変ご好評いただきました【エンジニアの日常】これが私の推しツール!〜日々の開発を豊かにするおすすめツール〜 Part1の第二弾としまして、弊社エンジニア達が日々の開発業務で愛用しているツールやOSSを紹介していきます。
それでは見ていきましょう!
Neovim
ファインディでSREを担当しています大矢です。昨年からSREはチームとなりました。これからもチームとして社内外ともに盛り上げていきたいと考えています!
まずはそんな私から、推しツールのNeovimをご紹介します。
Neovimの概要
NeovimはVi系エディタの1つです。元々Viというテキストエディタがあり、その拡張版としてVimが開発されました。NeovimはVimの派生版で、2025年現在も活発に開発が続けられています。
Viは、マウスなどを使わずにキーボードのみで操作可能なエディタで、その操作性は派生版であるNeovimにも受け継がれています。
Vi系エディタは、ノーマルモード、挿入モードなど複数のモードを切り替えながら操作するため、初心者には敷居が高いと感じるかもしれません。
しかし、一度慣れてしまえば、キーボードのみで高速にテキストを編集できる非常に強力なエディタです。
Neovimで開発する
Neovimは標準でターミナル機能やLSPをサポートしています。そこにプラグインも併せて導入することでIDEのような環境を実現できます。
私自身Neovimを使って開発しており、次のようなプラグインを導入しています。(一部のみ)
プラグイン | 概要 |
---|---|
lazy.nvim | Neovimのプラグインマネージャ |
Neo-tree.nvim | ファイルエクスプローラー |
telescope.nvim | ファジーファインダー |
nvim-treesitter | 高精度なシンタックスハイライト |
lualine.nvim | ステータスラインのカスタマイズ |
GitHub Copilot for Vim and Neovim | GitHub Copilot公式プラグイン |
プラグインを導入すると、このような見た目になります。IDEのように見えますね。
また、導入するプラグインの数にも依存しますが、起動に1秒もかからないという早さも嬉しいポイントです。
$ time nvim real 0m2.792s user 0m0.211s sys 0m0.116s
コミュニティが活発
Vim / Neovimは国内のコミュニティも活発で、特にvim-jp Slackコミュニティは多くの情報交換が行われています。
Vim / Neovim以外にもJavaScript, Ruby, コンテナ等々、幅広い話題を取り扱われているので、個人的にはVimを利用されていない方々にもお勧めできるコミュニティです。
おすすめポイント
Neovimのおすすめポイントをまとめると、次のようになります。
- Neovimはキーボードのみで操作可能なテキストエディタ
- プラグインを導入することでIDEのような環境を実現可能
- 起動が早い
- 国内のコミュニティも活発(Vim含む)
Neovimは非常に優秀なツールです。今までVi系エディタを使ったことがない方も、この機会に試してみてはいかがでしょうか。
lazygit
バックエンドエンジニアの西村です。
私が紹介したいツールはlazygitです。
普段、私はGitHubを使いながら開発をしています。
開発する中で一日何回もcommitやプルリクエストやブランチ作成をしています。 当時は作業ごとにgitコマンドを打っていることがとても手間でした。
少しでも作業を楽にしたいと思っていたところ、lazygitを見つけました。
lazygitはgitの操作をcliで行うことができるツールです。
基本的にcommitを作る等のgit操作に対応するキーがひとつ割り当てられています。
主なキーバインド
space
: ファイルのステージ/アンステージa
: すべてのファイルをステージ/アンステージc
: コミット作成p
: ローカルブランチへプッシュP
: リモートブランチへプッシュd
: 差分削除
このようなキーバインドを利用することでgitの基本的な操作をキーボードのみで行うことができます。
さらに、リベースやCherry-pickといった高度な操作をできます。 commitのログをグラフとともに表示しつつ、git bisectやamend等ができるため、git操作が苦手な方でも使いやすいツールになっています。
Neovimとの連携
普段、私はNeovimというエディタを使っています。 Neovimを閉じずに、lazygitを起動するため、Neovim上でlazygitを起動できるようにしています。
これによって、Neovimを使いながら素早くcommitを作成できます。
また、ターミナル上で素早くlazygitを起動するために、次のようなエイリアスを設定しています。
# ~/.zshrcに書いています。 alias l='lazygit'
lazygitの良さ
lazygitを使うことで
- Gitの操作が格段に効率化される
- 複雑な操作も視覚的に確認しながら実行できる
- Neovimと連携することで、コミット作成〜プルリク作成まで完結できる
特にキーボード主体で作業したい開発者には、おすすめしたいツールです。
Raycast
みなさんこんにちは。SREチームの安達です。私からは絶賛愛用しているRaycastについて紹介します。Macを使う人なら、SpotlightやAlfredなどのランチャー機能を一度は使ったことがあると思います。Raycastは多機能かつ高速で、様々な便利機能を備えているのでおすすめです。
Raycastの概要
MacのSpotlightやAlfredなどのランチャーアプリで、アプリケーションの起動などあらゆる作業を高速化できるツールです。具体的に次のようなことが操作可能です。
- アプリやファイルの検索・起動
- クリップボードの履歴管理
- Web検索
- システム管理(音量・画面輝度・シャットダウンなど)
- GitHubなどの連携
- カスタムスクリプトや拡張機能の追加
さて、簡単にセットアップからおすすめの拡張機能について紹介していきましょう。
Raycastのセットアップ
- インストール
$ brew install --cask raycast
- Generalからホットキーの設定
Shift Shift
ホットキーは悩みどころですが、自分はShiftを2回押すことで立ち上がるようにしています。意外と便利です。
- インポートとエクスポートについて
Raycast Settings > Advanced > Import/Export
Raycastでインストールした拡張機能や設定をエクスポートして、他のMacからインポートできます。
- 拡張機能のインストール方法
Shift Shift
> Store
Raycastのおすすめ拡張機能
- Google Search
https://www.raycast.com/mblode/google-search
Google検索をブラウザを開かずに実行できます。検索バーにキーワードを入力するだけで、即座にGoogleの検索結果を表示できます。
- Two-Factor Authentication Code Generator
https://www.raycast.com/cjdenio/two-factor-authentication-code-generator
Google AuthenticatorやAuthyのように、ワンタイムパスワード(OTP)を生成できます。アプリを切り替えずに2FAコードを取得できるので、セキュアかつスムーズなログインが可能になります。Alfredでは有料ですが、Raycastだと無料で利用できるのが素晴らしいですね。
- Password Generator
https://www.raycast.com/joshuaiz/password-generator
大文字と小文字、特殊文字などのオプションを使用して、5~64文字のランダムパスワードを生成できます。
- Window Manager
https://www.raycast.com/core-features/window-management
Window ManagerはMacのアプリケーションウィンドウを高速で移動したり、拡大と縮小が可能です。自分は自宅がウルトラワイドモニターなので、ChromeをFirst Thirdにし、vscodeをLast Two Thirdsにすることで、2対一の割合で表示しています。便利。
- Clipboard History
https://www.raycast.com/core-features/clipboard-history
過去にコピーしたテキストや画像を一覧表示し、簡単に再利用できます。ショートカットキーは ⌘ + Shift + C
にしています。
- Snippets
https://manual.raycast.com/snippets
よく使う定型文を保存し、一瞬で呼び出すことが可能です。例えば、メールアドレス、コードスニペット、など入力できます。ショートカットキーは ⌘ + Shift + V
にしています。
- GitHub
https://www.raycast.com/raycast/github
GitHubを開かずに、リポジトリ検索・Issue / PR の管理・通知の確認が可能です。ですが、Organizationは利用できないので、個人のリポジトリのみになります。
- Speedtest
https://www.raycast.com/tonka3000/speedtest
ブラウザを開かずにインターネットのダウンロード速度・アップロード速度・Pingをすぐに測定できます。地味に便利。
- 1Password
https://www.raycast.com/khasbilegt/1password
1PasswordをRaycastに統合すれば、ブラウザやアプリを開かずにワンクリックでログイン情報を取得可能です。
- Slack
https://www.raycast.com/mommertf/slack
Slackアプリを開かずにメッセージを送信、チャンネルを検索、DMを開始、ステータス変更などが可能です。個人的には Open Unread Messages
で未読メッセージと Open Channel
でチャンネルの検索ができるのはかなり重宝します。
おすすめポイント
Raycastは、他のランチャーアプリと比較して以下のような魅力を持ち、エンジニアだけでなく幅広いユーザーにもおすすめできるツールです。今後はWindows版のリリースも予定されており、さらなる進化が期待されますね。
https://www.raycast.com/windows
- シンプルで直感的なUIとキーボードのみでアプリの確認が可能
- プラグインによる機能拡張が可能
- コードを活用した無限のカスタマイズ性
- クリップボード履歴 & スニペット機能で作業効率アップ
- 高速 & 軽量でストレスフリーな操作感
ghq, peco
こんにちは。去年の12月に入社しました、SREチームの原です。
私からはpecoとghqを使ったリポジトリ移動についてご紹介します。普段の業務で複数のリポジトリを行き来する場面が多く、そのたびcdコマンドでパスを入力してリポジトリを移動するのがかなり面倒でした。
そこで、pecoとghqを組み合わせたリポジトリ移動を取り入れ、瞬時に目的のリポジトリへ移動できるようになりました。
ghqの概要
ghqはGitHubのリポジトリを管理してくれるCLIツールです。規則正しいディレクトリ構造に自動的に整理して保存し、管理しているすべてのリポジトリ一覧を簡単に取得できます。
Macの場合、ghqは次の方法でインストールできます。
$ brew install ghq
管理用のrootディレクトリを設定しておくことで、そのディレクトリ配下にリポジトリが整理されます。
$ git config --global ghq.root '~/src'
pecoの概要
pecoは、リスト形式で表示された項目をインタラクティブにフィルタリングできるシンプルなツールです。CLI上で大量の情報から特定の項目を素早く選べるため、リポジトリを探す際にも非常に便利です。
Macの場合、pecoは次の方法でインストールできます。
$ brew install peco
ghq × pecoの便利な組み合わせによるリポジトリ移動
これらのツールを組み合わせてリポジトリ間の移動を効率的にする方法を紹介します。管理しているリポジトリ一覧を取得するghq listコマンドとpecoを組み合わせると、gitリポジトリのみが抽出対象となります。
ターミナルの設定ファイルに次のようなエイリアスを設定して、ローカルリポジトリを移動できます。
# ~/.zshrcに書いています alias repo='cd $(ghq list --full-path --exact| peco)'
ターミナルでエイリアスに設定したrepoコマンドを実行してみると、リポジトリの一覧が表示されます。目的のリポジトリ名を選択して、Enterを押すと瞬時に移動します。
この組み合わせを導入してからは、リポジトリ移動のストレスがなくなり、業務での作業がスムーズになりました。必要なときにサッとリポジトリへアクセスできます。
複数のリポジトリを行き来しながら開発されている方には、おすすめの組み合わせとなります。
おわりに
いかがでしたでしょうか。今回は私達の推しツールを紹介しました。
ファインディでは一緒に会社を盛り上げてくれるメンバーを募集中です。興味を持っていただいた方はこちらのページからご応募お願いします。