🗂
macOSで右クリックメニューに「スネークケース → キャメルケース変換」を追加する方法
はじめに
Macで文字を編集する時、これ自動で変換できたらいいのにな・・・って思うことありますよね?
今回は自分好みのメニューを自作する技を伝授いたします。
方法: Automatorのクイックアクションを利用する
1. Automatorを起動
- Spotlight(⌘ + Space)で「Automator」と入力して起動します。
- 「新規書類」を選び、「クイックアクション」を作成します。
2. ワークフローの設定
- 「ワークフローが受け取る現在の項目」→ テキスト
- 「検索対象」→ すべてのアプリケーション
- 「選択されたテキストを出力で置き換える」にチェック
3. シェルスクリプトを追加
- 「シェルスクリプトを実行」を追加
- 入力の引き渡し方法を 引数として に設定
- 以下のスクリプトを貼り付けます
#!/bin/bash
input="$1"
# スネークケースをキャメルケースに変換
echo "$input" | awk -F'_' '{
for(i=1;i<=NF;i++){
if(i==1){
printf "%s", $i
} else {
printf "%s%s", toupper(substr($i,1,1)), substr($i,2)
}
}
}'
4. 保存
- 名前を「スネーク→キャメル変換」などにして保存します。
動作確認
- 例:
snake_case_exampleをテキストとして選択 - 右クリック → サービス(またはクイックアクション) → 「スネーク→キャメル変換」を実行
-
snakeCaseExampleに置き換われば成功です
作成したサービスの確認方法
Finderから確認
- Finderで右クリック → 「サービス」メニューから確認できます。
システム設定から確認
- macOS Ventura以降:
設定 → プライバシーとセキュリティ → 拡張機能 → サービス - macOS Monterey以前:
システム環境設定 → キーボード → ショートカット → サービス
実体ファイルの場所
作った機能はファイルとして以下のように保存されています。
-
~/Library/Services/に.workflowファイルとして保存されています。
他のMacに配布する方法
作成された .workflow ファイルをコピーして他のMacに渡せば、そのままインストールできます。
- 作成元Macで
~/Library/Services/を開く -
.workflowファイルをコピーして渡す - インストール先Macの
~/Library/Services/に配置する - Finderを再起動、またはログアウト・ログインすれば利用可能に
※ ショートカットキー設定はコピーされないため、必要ならインストール先で再設定してください。
まとめ
- Automatorのクイックアクションで簡単に「スネークケース → キャメルケース変換」を右クリックメニューに追加できる
- 実体は
.workflowファイルであり、他のMacに配布も可能 - 「サービス」メニューや
~/Library/Services/で確認・編集できる
これでチーム内でも統一した変換ツールとして活用できます。
おわりに
いかがでしょうか?シェルスクリプトと組み合わせられるということは色々応用が効くと思います。
ぜひ自分の理想の機能を作ってみてください。
株式会社ONE WEDGEs
【Serverlessで世の中をもっと楽しく】 ONE WEDGEはServerlessシステム開発を中核技術としてWeb系システム開発、AWS/GCPを利用した業務システム・サービス開発、PWAを用いたモバイル開発、Alexaスキル開発など、元気と技術力を武器にお客様に真摯に向き合う価値創造企業です。
Discussion