AI時代の“入力ストレス”をCotEditorで解消する：GhostText-Any活用ガイド

![b6e07f2c-2c35-4cd4-a4a2-9cada65db7f4_opt.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184128/889682e1-d94d-46dd-9e6d-6d6cf4f22641.jpeg)

## GhostText-Any × CotEditor：ブラウザでの文字入力が爆速になる編集環境をつくる

:::note info
ChatGPT、DeepSeek、Perplexity、Gmailの文章作成アシスタント…
Facebook Messenger、Teams …

もはや「ブラウザ上で文章を書く」ことが当たり前になりました。

（あまりアプリいれないので特に…）
:::

その結果──

* Enterで送信されてしまう事故
* Shift+Enterが変換確定と競合してうまく改行できない

という **日常的ストレス**が地味に増えています。

---

## 🧯それ、GhostTextで解決できます

GhostText は「ブラウザの入力欄をエディタで編集できる」拡張機能です。
拡張を入れておけば、テキストエリアをクリック → お気に入りのエディタで編集 → 保存 → 即反映！

---

## 🖥 対応エディタはこんな感じ

いろいろなブラウザ、いろいろなエディタで使えます。
ブラウザには機能拡張としてインストールします。
ブラウザごとにやり方が違うので詳細割愛。

![SS 2025-06-15 21.49.54.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184128/5b99c54d-e405-48ed-b846-9d13455d2676.png)

:::note tip
公式には **VS Code, Sublime, Emacs, Vim** などが想定されています。
それぞれ専用プラグインが用意されていますが、**GUIエディタ（CotEditorなど）には非対応**です。
:::

---

## 🏗 そこで登場：GhostText-Any

[`ghosttext-any`](https://github.com/newsch/GhostText-Any) は Rust 製の軽量サーバで、**どんなエディタでも使えるようにするラッパー**です。

* 入力内容を一時ファイルに書き出す
* `$EDITOR` で開く
* 保存 or 終了をトリガにしてブラウザへ反映

---

## ⚡️なぜ CotEditor なのか？

* 起動が一瞬（VS Codeより速い）
* Mac標準のGUIアプリに近く、軽い
* 保存すると反映される
* プラグインを組む必要がない

:::note warn
CotEditorは「通常の方法ではプラグイン開発できない」仕様です。
GhostText本家のような拡張方式では動かせません。
:::

なので、**`ghosttext-any` と CotEditor の組み合わせが最適**なのです。

---

## 🛠 セットアップ手順

### 1. Rust toolchain の導入（未導入の場合）

```sh
brew install rustup-init
rustup-init
```

### 2. ghosttext-any のインストール

```sh
cargo install ghosttext-any
```

### 🛠 セットアップ手順（CotEditor編）

#### 3. CotEditor を Homebrew でインストール

```sh
brew install --cask coteditor
```

#### 4. CLI ツール `cot` の確認

Homebrew 版にはすでに `cot` が含まれているので、確認だけでOKです：

```sh
which cot   # /Applications/CotEditor.app/Contents/SharedSupport/bin/cot 等
cot -h      # ヘルプが表示されれば成功
```

---

## 🧠 .zshrc に設定を追加

```zsh
# ローカルのみ GUI で開く用
if [[ -z $SSH_CONNECTION ]]; then
  export VISUAL="cot -w"   # -w: 書類を閉じるまで待機
fi

# CLI用はnvimなどのままでOK
if [[ -n $SSH_CONNECTION ]]; then
  export EDITOR="vim"
else
  export EDITOR="nvim"
fi

# ランチャーエイリアス
alias gtany-cot='gtany --multi --editor "cot -w"'

# RustバイナリのPATH
export PATH="$HOME/.cargo/bin:$PATH"
```

反映：

```sh
source ~/.zshrc
```

---

## 🚀 起動して使ってみる

```sh
gtany-cot
```

* 起動後、ブラウザでテキストエリアをクリック
* GhostText 拡張アイコンをクリック
* `shift + cmd + K` でもOK
* CotEditorが開いて入力できる！
* 保存すると、元のブラウザ欄に反映される！

:::note success
「CotEditorが開く＝執筆開始」。
タブ切り替え・カーソル迷子・うっかり送信の悩みが一気に解消します。
:::

---

## 🔚 おわりに：AI時代の"書く"をもっと快適に

![SS 2025-06-15 22.04.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184128/d9cceba7-4087-4c7e-b04b-1f6483231133.png)


* AI活用の普及で、テキスト入力は増え続ける
* でもブラウザ上の入力体験は、**旧来のテキストエディタに遠く及ばない**
* GhostText + CotEditor で、「**きもちよく書ける環境**」を！

---

## 🧷オマケ（余力があれば）

* Alfred や Raycast から `gtany-cot` を一発起動する設定
* `gtany --idle-timeout 300` で自動終了
* LaunchAgent を使った常駐化

（これらは今後の課題です）

---

以上！短時間で、でもガチで便利な設定をぜひどうぞ。

```sh
brew install rustup-init && rustup-init
cargo install ghosttext-any
gtany-cot
```

これだけで、新しい書き方が始まります。

## リンクと環境

- [fregante/GhostText: 👻 Use your text editor to write in your browser.](https://github.com/fregante/GhostText)
- [newsch/GhostText-Any: A GhostText server for any $EDITOR](https://github.com/newsch/GhostText-Any)

---

- MacBook Pro (14-inch, 2024)
- macOS 15.5（Sonoma）
- GhostText 24.8.10
- GhostText-Any v0.2.1
- CotEditor 5.1.7 (718)