My development environment
開発スタイルや、普段開発するときに使っているツールなど
開発スタイル
基本ターミナルで完結させる(完全には無理)
CLIを組み合わせて作業する
エディタ
Vim
メリット
キーボードのみで作業できる
高速編集できる
起動が早い
プラグインで拡張できる
ターミナルで動作する
無料
デメリット
慣れるまで時間がかかる
自分で色々と設定をしないとまともに使えない(慣れれば問題はないが)
設定をするのにスクリプト言語(Vim script)を覚えないと行けない
ちょっと重たい時がある(特にHTMLやJavaScriptなど)
VSCode
メリット
デフォルトでもそれなりに使える
便利な拡張が山程ある(draw.ioをVSCode内で使える、UMLシーケンス図をプレビューできるなど)
Chromiumベースなので、ブラウザでできることは全部できる
無料(お金払ってもいいレベルのクオリティ)
Vimはコーディングや記事を書く時に使う
VSCodeは資料作成、ペアプロの時に使う
Vimのプラグイン(一部)
junegunn/fzf.vim Vimでファジーファンダー
lambdalisue/fern.vim ファイラー(いわゆるファイルエクスプローラー)
mattn/emmet.vim HTMLのコーディングが爆速になるやつ
mattn/sonictemplate-vim コーディングが爆速になるやつ
mattn/vim-maketable Markdownのテーブルを簡単に作るやつ
skanehira/gh.vim Vim上でGitHubを操作できるやつ
skanehira/docker.vim Vim上でDockerを操作できるやつ
skanehira/translate.vim Google翻訳してくれるやつ
lambdalisue/gina.vim Vimでgitを操作できるやつ
skanehira/code2img.vim コードを画像化するやつ
previm/previm Markdownをプレビューするやつ
thinca/vim-quickrun コードをサクッと実行するやつ
VSCodeの拡張(一部)
Docker docker操作できるやつ
Draw.io Integration draw.ioが使えるやつ
Eslint eslint
PlantUML UMLシーケンスのプレビュー
Swagger Veiwer swaggerプレビュー
Vim Vimキーバインド
Remote - Container コンテナに接続してあれこれする
CLI
fzf https://github.com/junegunn/fzf
ファジーファンダー(あいまい検索ができるツール)
bashの履歴、ファイル、ディレクトリ移動など、絞り込みができて最強
標準入力で渡したテキストを絞り込み、出力できる(パイプのような使い方)
gh https://github.com/cli/cli
GitHubの公式CLI(最近では自作プラグインしか使っていない)
issueの一覧、作成など
PRの一覧、作成など
リポジトリ一覧、作成など
色々便利な機能がある
code:sh
$ gh
Work seamlessly with GitHub from the command line.
USAGE
gh <command> <subcommand> flags
CORE COMMANDS
issue: Manage issues
pr: Manage pull requests
repo: Create, clone, fork, and view repositories
lazygit https://github.com/jesseduffield/lazygit
GitのTUIツール
TUIはText User Interfaceの略で、ターミナルでGUIのような操作体験を可能にするツールの総称
gitコマンドを使わず直感的に操作できるので便利
docui https://github.com/skanehira/docui
DockerのTUIツール
コンテナの起動・停止やイメージのPullなどができる
TUIなので直感的に操作できて便利
リモートのdockerへの接続もできる
tmux https://github.com/tmux/tmux
ターミナルマルチプレクサ
要は1つのターミナルで複数のターミナルを操作できる
並行して複数の画面で作業する時便利
ag https://github.com/ggreer/the_silver_searcher
grepの高速版
.gitignoreなどを考慮してくれる
jq https://qiita.com/Nakau/items/272bfd00b7a83d162e3a
JSONを整形、絞り込みができる
知らない人がいないくらい有名なツール
ブラウザ
Vivaldi
カスタマイズ性が高い
タブ、ブックマーク検索できる
パネルで特定の画面を固定表示できる
画面分割表示できる
ChromiumベースなのでChromeの拡張が使える
拡張
vimium
Google翻訳
パッケージ管理
Macなら Homebrew
Macのツール
spectacle アプリのリサイズツール。Windowsでいうと❖+↑→↑←などと同じ感じにできる
SpaceLauncher スペース+任意キーでアプリを起動できる