Clipboard Sync and Buffer Sync. zsh tmux emacs vi with MacOSX Linux Windows. sync code part on ruby.
Ruby Shell Emacs Lisp Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
bin
config
emacs
log
spec
tmp
vim
zsh
.gitignore
.rubocop.yml
.travis.yml
Gemfile
Gemfile.lock
LICENSE
README.md
Rakefile
config.ru
development.md
setup_windows.md

README.md

Cilpss

Build Status

Japanese

Clipboard Sync and Buffer Sync. zsh tmux emacs vi with MacOSX Linux Windows.

you have to install.

EX Let's Usage. case local only

  1. zsh . input spell hello world. go a head and C-k (kill-line)
  2. switch emacs and C-y (yank) . curbuffer insert hello world.
  3. switch other vi,tmux,MacOSX and paste . insert hello world.

EX Let's Usage. case remote PC & clipboard sync

  1. emacs. input spell hello world. go a head and C-k (kill-line)
  2. swith remote PC (windows) and paste.
  3. PC (windows) copy string foo bar baz.
  4. switch emacs and C-y (yank) . curbuffer insert foo bar baz.

Installation

get code

$ cd ${HOME}
$ git    clone https://github.com/mukaer/clipss.git
$ cd     clippss
$ gem    install bundle
$ bundle install --without development test

MacOSX clipboard

example install

$ cd ~
$ git  clone https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard
$ cd   tmux-MacOSX-pasteboard
$ make reattach-to-user-namespace 
$ cp   reattach-to-user-namespace  /usr/local/bin

zsh

  • ~/.zshrc

Recommendation to use RAMDISK .CLIPSS_FILE

export CLIPSS_PATH="${HOME}/clipss"
export CLIPSS_FILE="/tmp/clipss_file.txt"
export CLIPSS_PORT="9116"
export CLIPSS_REMOTE_SV="http://192.168.0.100:9116 http://192.168.0.101:9116"
source ${CLIPSS_PATH}/zsh/clipss.zsh
clipss_initialize


bindkey '^Y'  clipss+yank
bindkey '^k'  clipss+kill-line
bindkey '^[w' clipss+copy-region-as-kill
bindkey '^W'  clipss+backward-kill-word-or-kill-region

restart zsh

$ zsh

tmux

  • ~/.tmux.conf
bind-key -t emacs-copy  M-w  copy-pipe "${CLIPSS_PATH}/bin/clipss_push"  #tmux 1.8 conf gramma
bind-key ]  run 'tmux load-buffer -- $CLIPSS_FILE;tmux paste-buffer --;'

emacs

  • ~/.emacs
(add-to-list 'load-path (concat (getenv "CLIPSS_PATH") "/emacs"))
(require 'clipss)
(setq clipss-path (getenv "CLIPSS_PATH") )
(clipss-init)

vim

  • ~/.vimrc
source  ${CLIPSS_PATH}/vim/clipss.vim
nmap yy yy:call Clipss_Push()<CR>
nmap p :call Clipss_Pop()<CR>

Configuration and Usage. case remote

Adds remote server url. zsh export CLIPSS_REMOTE_SV or ruby config file clipss/config/config.rb.

if use config.rb. overwirte setting variable

$ cd clipss/config/
$ cp config.rb.template  config.rb
  • clipss/config/config.rb
config.remote_svs  = ["http://192.168.0.100:9116",
                      "http://192.168.0.101:9116"]

comand exec start clipss server. local and remote .

$ clipss_httpd    #path clipss/bin/clips_httpd

access

http://localhost:9116

More info