メインコンテンツへスキップ
記事一覧に戻る
omarchy

【2025年版】Omarchy実践ガイド Part 2 - 開発ワークフローを極める

Omarchyの開発ツールを使いこなして、効率的な開発ワークフローを構築する方法を解説します。Neovim、Lazygit、Docker、fzfなど。

2025-11-2910 min readAdabana Saki
-
OmarchyLinux開発環境NeovimDockerGit

Omarchy実践ガイド Part 2 - 開発ワークフローを極める

Part 1では、Omarchyの基本的なインストールと操作方法を学びました。

この記事では、Omarchyに搭載されている開発ツールを使いこなして、効率的な開発ワークフローを構築する方法を解説します。

Neovimで高速コーディング

OmarchyのデフォルトエディタはNeovimです。LazyVim設定がプリインストールされており、すぐに本格的な開発環境として使えます。

Neovimの起動

# ターミナルから起動
nvim

# ファイルを指定して起動
nvim main.py

# ディレクトリを指定して起動
nvim .

基本的な操作

Neovimはモード切替で操作します:

モード説明切り替え
Normal移動・編集コマンドEsc
Insertテキスト入力i / a / o
Visual範囲選択v / V
Commandコマンド実行:

必須キーバインド(LazyVim)

LazyVimではSpaceキーがリーダーキーです:

キー動作
Space + eファイルエクスプローラー
Space + f + fファイル検索(fuzzy finder)
Space + f + g文字列検索(grep)
Space + b + bバッファ切り替え
Space + c + aコードアクション
Space + c + rリネーム
Space + x + xトラブルリスト(エラー表示)

ウィンドウ操作

キー動作
Ctrl + h/j/k/lウィンドウ間移動
Space + w + v垂直分割
Space + w + s水平分割
Space + w + dウィンドウを閉じる

LSP(言語サーバー)

LazyVimは多くの言語のLSPを自動設定します:

# 対応言語(一部)
- TypeScript / JavaScript
- Python
- Rust
- Go
- Ruby
- Lua

LSP機能:

キー動作
g + d定義にジャンプ
g + r参照を表示
Kホバー情報表示
Space + c + fフォーマット

プラグインの追加

LazyVimでは簡単にプラグインを追加できます:

-- ~/.config/nvim/lua/plugins/custom.lua
return {
  {
    "github/copilot.vim",
    event = "InsertEnter",
  },
}

Lazygitでバージョン管理

LazygitはGit操作のためのTUI(テキストユーザーインターフェース)ツールです。複雑なGit操作を視覚的に行えます。

起動方法

# ターミナルから
lazygit

# Neovim内から
Space + g + g

画面構成

┌─────────────────────────────────────────────────────────┐
│ Status (1) │ Files (2) │ Branches (3) │ Commits (4)     │
├────────────┴───────────┴──────────────┴─────────────────┤
│                                                         │
│              メインパネル(差分表示など)                 │
│                                                         │
└─────────────────────────────────────────────────────────┘

基本操作

キー動作
1〜5パネル切り替え
h/lパネル移動
j/k項目移動
Enter選択/展開
?ヘルプ表示
q終了

ファイル操作

キー動作
Spaceステージング/アンステージング
aすべてステージング
cコミット
Aコミット --amend
d変更を破棄
eファイルを編集

ブランチ操作

キー動作
n新規ブランチ作成
Spaceチェックアウト
Mマージ
rリベース
dブランチ削除

コミット操作

キー動作
sスカッシュ
ffixup
rreword(メッセージ変更)
dドロップ
gリセット

実践的なワークフロー

1. 変更をコミット

1. Filesパネルで変更を確認
2. Spaceでファイルをステージング
3. cでコミットメッセージを入力

2. インタラクティブリベース

1. Commitsパネルで対象コミットを選択
2. eでリベース開始
3. 各コミットを編集(s=スカッシュ, r=rewordなど)
4. リベース完了

3. コンフリクト解決

1. コンフリクトがあるファイルを選択
2. eでエディタで編集
3. 解決後、Spaceでステージング
4. 続行

Lazydockerでコンテナ管理

LazydockerはDocker操作のためのTUIツールです。

起動方法

# ターミナルから
lazydocker

# ショートカット
Super + Shift + D

基本操作

キー動作
[ / ]パネル切り替え
j/k項目移動
dコンテナ削除
s停止
r再起動
aアタッチ(ログ表示)
eシェルに入る
bビルド

便利な機能

  • リアルタイムログ - コンテナのログをリアルタイムで確認
  • リソース監視 - CPU/メモリ使用量を表示
  • ボリューム管理 - ボリュームの確認・削除
  • イメージ管理 - イメージの確認・削除

fzfで高速ファイル検索

fzfは曖昧検索(fuzzy finder)ツールです。ファイル名や履歴を素早く検索できます。

基本的な使い方

# ファイル検索
ff

# または
fzf

# コマンド履歴検索
Ctrl + R

よく使うパターン

# ファイル検索してVimで開く
nvim $(fzf)

# パイプと組み合わせ
cat file.txt | fzf

# プレビュー付き検索
fzf --preview 'cat {}'

fzfの便利な設定

Omarchyでは以下のエイリアスが設定されています:

# ff - ファイル検索
ff

# fh - コマンド履歴
Ctrl + R

# fd - ディレクトリ検索
fcd

Zoxideでスマートなディレクトリ移動

Zoxidecdコマンドの強化版です。よく使うディレクトリを学習して、少ないキータイプで移動できます。

基本的な使い方

# 通常のcd
z /home/user/projects/myapp

# 学習後は部分一致でOK
z myapp

# 曖昧検索モード
zi

仕組み

Zoxideはディレクトリへのアクセス頻度を記録し、スコアリングします:

# スコアを確認
zoxide query -l

# 例
10.5    /home/user/projects/myapp
8.2     /home/user/documents
5.1     /home/user/downloads

ripgrepで高速コード検索

ripgreprg)は非常に高速なgrep代替ツールです。

基本的な使い方

# パターン検索
rg "function"

# 特定のファイルタイプのみ
rg "TODO" --type rust

# 大文字小文字を無視
rg -i "error"

# ファイル名のみ表示
rg -l "import"

便利なオプション

# 行番号付き(デフォルト)
rg -n "pattern"

# コンテキスト表示(前後3行)
rg -C 3 "error"

# 隠しファイルも検索
rg --hidden "config"

# .gitignoreを無視して検索
rg --no-ignore "secret"

Neovimとの連携

NeovimのSpace + f + gでripgrepを使ったプロジェクト全体検索ができます。

シェル便利関数

Omarchyには便利なシェル関数が用意されています。

ファイル操作

# tar.gz圧縮
compress mydir

# tar.gz解凍
decompress archive.tar.gz

USB/ドライブ操作

# ISOからブータブルUSB作成
iso2sd /path/to/file.iso

# ドライブをexFATフォーマット
format-drive /dev/sdX

統合開発ワークフローの例

ここまで紹介したツールを組み合わせた実践的なワークフローを紹介します。

1. プロジェクトへ移動

# Zoxideで素早く移動
z myproject

2. ファイルを開く

# fzfでファイル検索してNeovimで開く
nvim $(fzf)

# またはNeovim内で
Space + f + f

3. コーディング

- LSPによる補完・エラー表示
- Space + c + a でコードアクション
- Space + c + f でフォーマット

4. ターミナル操作

# Neovim内でターミナルを開く
:terminal

# または別ウィンドウで
Super + Return

5. 変更をコミット

# Neovim内からLazygitを開く
Space + g + g

# ファイルをステージング → コミット

6. Dockerコンテナの確認

# Lazydockerで状態確認
Super + Shift + D

次のステップ

開発ワークフローの基本をマスターしました!

次回の記事では、以下の内容を解説します:

  • テーマのカスタマイズと自作
  • Hyprlandの設定変更
  • キーバインドのカスタマイズ
  • 拡張機能のインストール

Omarchyカスタマイズガイド Part 3 - 自分だけの環境を作る

まとめ

この記事で紹介したツールを使いこなせば、マウスに頼らない効率的な開発ワークフローが構築できます:

ツール用途
Neovim高速コーディング
Lazygit視覚的なGit操作
Lazydockerコンテナ管理
fzf曖昧ファイル検索
Zoxideスマートなディレクトリ移動
ripgrep高速コード検索

最初は覚えることが多く感じるかもしれませんが、一度身につければ生産性が大きく向上します。

毎日少しずつ新しいキーバインドを覚えていきましょう!

参考リンク