#author("2026-02-01T14:19:16+09:00","","")
#author("2026-02-01T14:21:12+09:00","","")
# wenvi

## What is this?

wenviは、ブラウザのテキストエリアをNeovimで編集できるツールです。

## Motivation

ブラウザのテキスト編集でVimのコマンドを使いたいと思ったことはありませんか?  
コピー&ペーストで可能ですが、面倒です。  
wenviは、このコピー&ペースト作業を自動化して肩代わりするために作られました。

例えば、Chrome拡張のVimiumと組み合わせれば、マウスに持ち替えることなく快適にブラウザ操作が可能です。

また、ChatGPTのブラウザ版などで誤ってEnterキーを押して送信してしまったことはありませんか?  
wenviを使えば、Neovim上で編集するため、誤送信の心配がありません。

## Requirements

- macOS
- Neovim
- Hammerspoon
- Chromium系ブラウザ
- Python toml module

## Installation

1. 好きな場所にリポジトリをクローンします。

```bash
git clone https://github.com/USER/wenvi.git ~/oss/wenvi

Hammerspoonの設定をコピーします。

cp examples/hammerspoon/wenvi_config.lua.example ~/.hammerspoon/wenvi_config.lua


~/.hammerspoon/wenvi_config.lua の内容を自分の環境に合わせて修正します。

~/.hammerspoon/init.lua の最後に examples/hammerspoon/init.lua.example を追加します。

設定ディレクトリを作成します。

mkdir -p ~/.config/wenvi/
cp examples/config.toml.example ~/.config/wenvi/config.toml


Neovimの初期化ファイルにサンプルを追加します。

-- 例: ~/.config/nvim/init.lua
-- 追加
vim.opt.runtimepath:append('/path/to/wenvi_home/editor/nvim')
require 'wenvi'

Usage

編集したいブラウザページを表示します。

⌘E を押します(別のキーに変更する場合は WENVI_HOME/platforms/macos/hammerspoon/wenvi/init.lua を修正してください)。

wenviがブラウザ内の編集エリアの文字を dataHome ディレクトリ(省略時 ~/.cache/wenvi)に書き出します。

Neovimが起動し、書き出したファイルを開きます。自由に編集してください。

Neovimでバッファを閉じると、編集したテキストが自動でブラウザに書き戻されます。

Features

編集したテキストは dataHome に保存されます。grepやdiffなどで参照可能です。

保存先はドメインごとにディレクトリが作られ、ファイル名にタイトルが含まれるため検索が容易です。

ChatGPT、Google Drive、GitHubなどのブラウザでも快適に使用できます。

Status

このプロジェクトは主に私自身の日常利用のために開発しています。
フィードバックは歓迎しますが、対応が遅れることがあります。




Front page   Edit Diff History Attach Copy Rename Reload   New Page list Search Recent changes   Help   RSS of recent changes