Nvim client for GhostText
Switch branches/tags
Nothing to show
Clone or download

README.adoc

Vim Ghost

Edit browser textarea content in Vim/Neovim!

demo
  1. Install this firefox addon or this Chrome extension

  2. Add this plugin

    " Vim-plug
    Plug 'raghur/vim-ghost', {'do': ':GhostInstall'}
  3. Ensure you have a vim/neovim instance open. Run :GhostStart to start the server.

  4. On any textarea, click the ghost icon - switch to neovim and edit!. Content is sync’ed real time. Works both ways - edits in the browser window are pushed to neovim as well.

  5. When done, just delete the buffer with :bd! - you’ll be disconnected

Requirements

additional requirements for vim

Plug 'roxma/nvim-yarp', {'cond': v:version == 800 && !has('nvim')}
Plug 'roxma/vim-hug-neovim-rpc',  {'cond': v:version == 800 && !has('nvim')}

Auto switching to vim:

Optional, but highly recommended - Switching focus to Neovim
  • Linux: The xdotool command - if available, will be used to focus the nvim window. Works in console, tmux or guis like neovim-qt

    • On Ubuntu, you can install it with sudo apt-get install xdotool

  • Windows: If pywinauto (https://github.com/pywinauto/pywinauto) is available, it will be used to bring the neovim-qt to foreground.

    # Ensure that you install this module for the version of python
    # that is loaded in neovim
    pip install pywinauto

    Limitations: Currently, on windows, the processname is hardcoded to nvim-qt If you use any of the other GUIs for neovim (OniVim, gonvim etc) then this will not work.

Rationale

With Firefox moving to webextensions, It’s all text is dead. Typing in text areas is a royal PITA and I was looking for a replacement. Came across GhostText - but the vim addon seems dead and uses tcl :ugh:

My vimscript fu is pretty limited - so I thought I’d write a python plugin for neovim.

TODOS

PR’s welcome. Some areas:

  • vim compatibility - DONE

Love it or just find it as useful as I do? Star this repo to let me know