開発周りの愛用ツール記録 2023

開発周りで使っている諸々の紹介2023です.

開発周りの愛用ツール記録 2023

本当は年末に出したかったが,卒論に追われて2024年になった.

ハードウェア

ハードウェア周りは2023年に更新が多い.
新卒に向けた準備として段階的に設備移行を行ったことが要因であり,学割が効くうちに学割をフル活用しようという魂胆も含まれる.

メインPC : Desktop PC

2021年にBTOしたPC.
時給900円のバイトで貯めに貯めたお金を使って購入したやつ.

3DCGも快適にできるような構成になっている.

サブPC : ThinkPad X13 Gen4 AMD

2023年12月にSurface Laptop3からThinkPad X13 Gen4 AMDへ変更した.

Surfaceくんの頃はメモリ8GBという人権のない環境だったのでThinkPadでは32GBのメモリマシマシにして快適さを改善した.

買い替えた要因は他にも色々……

自宅サーバ : Raspberry Pi 4とIntel N95のミニPC

↓こいつがRaspberry Pi 4.USB経由でつないだSSDにUbuntuを入れている.

Raspberry Pi 4はMisskeyサーバーとして大活躍している.

↓Intel N95のミニPCはProxmox入れて仮想化して使っている.

安くて小さいながらメモリもSSDも増設できるのがポイント高い.

時計 : CMF by Nothing Watch Pro

2023年12月にXiomi Band 5からCMF by Nothing Watch Proへ変更.

見た目と電池持ちでは気に入っているが,ソフトウェアの完成度が高くなく,Xiomi Band 5と比べて痒いところに手が届かない点はつらい……

携帯 : Google Pixel 7a

2023年7月にOPPO Reno3 AからGoogle Pixel 7aに.

正直価格以外であまり良さはわからない.

周りで流れてる音楽を表示する機能はとても気に入っている.

メインキーボード : Logicool G813

G813は有名なG913の無線機能が使えない代わり有線にしたちょっと安い版.
ロープロが好きなのでG813を選んだ.

↓豆腐ナゲットの後ろに写ってるのがG813

G813はでかくて有線なのもあって,お家に固定して置いている.
G813ないしG913は,ななかぐら先生だったりしぐれうい先生だったり,夢乃ほのかさんだったり……かなりのVTuberさん御用達のキーボードになっている.

サブキーボード : Logicool MX Mechanical Mini

研究室に持ち込んで使用,持ち運びできるロープロメカニカル.
中古で購入したが,いろいろなキャンペーンも併用して実質5000円くらいで美品を入手できた.
Keychron K3と悩んだけどKeychronは日本語配列のスペースが小さすぎて打ちにくいのでやめた.

MX Mechanical Miniはとても体験が良い.電池持ちも良い.キー配列も悪くない(たまにBackSpaceとHomeを押し間違えるが).汚れが目立つのが難点……

メインマウス : Logicool ERGO M575S

トラックボールはよい.

マウス否定派なので,できる限りマウスは使いたくないが……必要なときもある.

ソフトウェア

OS : EndeavourOS(Arch Linux), Windows 11, WSL(Arch Linux), Ubuntu

メインPC,サブPCともにデュアルブート構成である.

メインPC

  • SSD 1: Windows 11 + WSL(Arch Linux)
  • SSD 2: EndeavourOS(Arch Linux)

サブPC(1つのSSDをパーテイション分割)

  • SSD 1: Windows 11 + WSL(Arch Linux)
  • SSD 1: EndeavourOS(Arch Linux)

自宅サーバ

  • ミニPC : Proxmox
  • ラズピコ : Ubuntu22.04

  • 研究室PC(貸与)→Ubuntu(GNOME)
  • お仕事PC(貸与)→MacOSの予定

だいたいの環境でLinuxできる世界になっている.

ウィンドウマネージャ : i3

GitHub - i3/i3: A tiling window manager for X11
A tiling window manager for X11. Contribute to i3/i3 development by creating an account on GitHub.

GNOMEとかの方がオシャレなのは知ってるが……i3はマウスを使わずキーボードショートカットで全ての操作ができるのでよい.

逆にi3になれるとWindowsとかの操作が困難を極めるので慣れると逆に不便かも.

Editor : NeoVim, VSCode

GitHub - neovim/neovim: Vim-fork focused on extensibility and usability
Vim-fork focused on extensibility and usability. Contribute to neovim/neovim development by creating an account on GitHub.

基本的にNeoVimを使用しているが,PlatformIOを用いたC/C++開発などではエラーが出まくるのでVSCodeを使っている.

NeoVimがあれば何でも書ける.
卒論もNeoVimで書いている.

シェル: zsh

特にこだわりなし(一時期Fishを使ってみたが,独特すぎてやめた)

プロンプト : Starship

GitHub - starship/starship: ☄🌌️ The minimal, blazing-fast, and infinitely customizable prompt for any shell!
☄🌌️ The minimal, blazing-fast, and infinitely customizable prompt for any shell! - GitHub - starship/starship: ☄🌌️ The minimal, blazing-fast, and infinitely customizable prompt for any shell!

かっこいい.どこにでも入れてる.

ターミナルエミュレータ : Alacritty

GitHub - alacritty/alacritty: A cross-platform, OpenGL terminal emulator.
A cross-platform, OpenGL terminal emulator. Contribute to alacritty/alacritty development by creating an account on GitHub.

なんか早いらしい.WindowsでもLinuxでも使っている.

デフォルトのカラーパレットがとても好き.

ターミナルマルチプレクサ : Zellij

GitHub - zellij-org/zellij: A terminal workspace with batteries included
A terminal workspace with batteries included. Contribute to zellij-org/zellij development by creating an account on GitHub.

お仕事とかで複数のリポジトリを同時に開く必要ある時で活躍.

ただしWindowsではAlacritty+WSL+Zellij+NeoVimの組み合わせでNeoVimの行表示がずれるのであまり使えていない.

バージョン管理 : Git

現代では当たり前だが今後変わるかもなので,一応記録しておく.
Gitは本当に便利.

fuzzy finder : fzf

GitHub - junegunn/fzf: :cherry_blossom: A command-line fuzzy finder
:cherry_blossom: A command-line fuzzy finder. Contribute to junegunn/fzf development by creating an account on GitHub.

↓fzfはこんな感じにファイルパスをコマンドラインに渡すときにめちゃ便利.(右のPreview画面にはbatを使用)

言語のバージョン管理 : mise(旧rtx, asdf互換)

GitHub - jdx/mise: dev tools, env vars, task runner
dev tools, env vars, task runner. Contribute to jdx/mise development by creating an account on GitHub.
2週間前にrtxからmiseに名前変わってることを読者の方よりご指摘いただいた……知らなかった……

miseは様々な言語のバージョン管理ツールとしてとても便利なのだが,特にPHPは壊れまくって大変.

一方Node.jsのちょっとしたリポジトリくらいならDocker使わずmiseでinstallしたnodejsを使うことが多いくらいには大活躍.

miseでなくrtxの頃に叩いたスクショ

プログラミング用フォント: UDEV Gothic NF

GitHub - yuru7/udev-gothic: UDEV Gothic は、ユニバーサルデザインフォントのBIZ UDゴシックと、 開発者向けフォントの JetBrains Mono を合成した、プログラミング向けフォントです。
UDEV Gothic は、ユニバーサルデザインフォントのBIZ UDゴシックと、 開発者向けフォントの JetBrains Mono を合成した、プログラミング向けフォントです。 - GitHub - yuru7/udev-gothic: UDEV Gothic は、ユニバーサルデザインフォントのBIZ UDゴシックと、 開発者向けフォントの JetBrains Mono を合成した、プロ…

プログラミングする上で見やすくて,かつなにかと必要なNerd Fontsも対応なので,便利.

日記管理 : かどで日記

なんだかんだ自分が作ったやつが自分の欲しい物すぎる

文章管理 : Notion

ObsidianはNotionでいうデータベースが使えないので厳しかった.
森羅万象をNotionで管理している.

その他置き換えてる系

ls→exa

GitHub - ogham/exa: A modern replacement for ‘ls’.
A modern replacement for ‘ls’. Contribute to ogham/exa development by creating an account on GitHub.
exaはメンテが終了しているのでezaかlsdに乗り換えたい.

exaを使うとlsよりかなり見やすくできる.

grep→ripgrep

GitHub - BurntSushi/ripgrep: ripgrep recursively searches directories for a regex pattern while respecting your gitignore
ripgrep recursively searches directories for a regex pattern while respecting your gitignore - GitHub - BurntSushi/ripgrep: ripgrep recursively searches directories for a regex pattern while respec…

恥ずかしながらripgrepはgrepをRust実装にして早くしたというイメージでしか使えていない.

cat→bat

GitHub - sharkdp/bat: A cat(1) clone with wings.
A cat(1) clone with wings. Contribute to sharkdp/bat development by creating an account on GitHub.

シンタックスハイライトの効くcatとして利用している.(長い文章をスクロールできるless的なこともしてくれる)

Git client→Tig, Lazygit

基本はTigとGitコマンドで済ませている.

↓Lazygitのほうがいろいろ見れてすごいが,使いこなせていない.

GitHub - jonas/tig: Text-mode interface for git
Text-mode interface for git. Contribute to jonas/tig development by creating an account on GitHub.
GitHub - jesseduffield/lazygit: simple terminal UI for git commands
simple terminal UI for git commands. Contribute to jesseduffield/lazygit development by creating an account on GitHub.

top, free→bottom

GitHub - ClementTsang/bottom: Yet another cross-platform graphical process/system monitor.
Yet another cross-platform graphical process/system monitor. - GitHub - ClementTsang/bottom: Yet another cross-platform graphical process/system monitor.

なんかかっこよくてよい.

df→gdu

GitHub - dundee/gdu: Fast disk usage analyzer with console interface written in Go
Fast disk usage analyzer with console interface written in Go - GitHub - dundee/gdu: Fast disk usage analyzer with console interface written in Go

でかいファイルを見つけるのに使っている.

おわり

思えば2023年はLinuxを使いまくる年だった.

Gitを使ってLinux上で開発し,Linux Kernelを搭載した携帯で生活を送る.
Linus Torvaldsのあるくらしとなった.