さんだすメモ

さメモ

技術ブログでは、ない・・・

エクスプローラのコンテキストメニューから WSL の tmux でディレクトリを開く

こんな感じで設定してみました。

フォルダ選択時のメニュー

  • HKEY_CURRENT_USER\SOFTWARE\Classes\Folder\shell\tmux
    • (既定), REG_SZ, tmuxで開く
    • Icon, REG_SZ, C:\Windows\System32\wsl.exe
  • HKEY_CURRENT_USER\SOFTWARE\Classes\Folder\shell\tmux\command
    • (既定), REG_SZ, C:\Windows\System32\wsl.exe --cd "%V" /path/to/send_to_tmux

フォルダ外でのメニュー

  • HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\Background\shell\tmux
    • (既定), REG_SZ, tmuxで開く
    • Icon, REG_SZ, C:\Windows\System32\wsl.exe
  • HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\Background\shell\tmux\command
    • (既定), REG_SZ, C:\Windows\System32\wsl.exe --cd "%V" /path/to/send_to_tmux

/path/to/send_to_tmux を作って編集します。
実行権限も付けておきます。

#!/bin/sh

if [ $(tmux ls 2> /dev/null | wc -l)  -ne 0 ]; then
  tmux new-window -t "$(tmux ls | head -n 1 | sed -n 's/^\([^:]\+\):.*$/\1/p'):"
fi

レジストリについて参考にしました: https://www.pg-fl.jp/program/winreg/classes.htm

HKCU のレジストリはコマンドで登録できて良いですね。