Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

vim + tmuxに入門した話

$
0
0

Vim + tmuxに入門した話

tmuxについてはこの記事がわかり易かった(後ほども同じリンクがでてきますが):vim流tmuxチュートリアル

まずVimがちゃんとVimしてるか?

ずっとvimって苦手だな、なんであんなの使うんだろうってずっと思ってたんですよ。
そしたらなんと、僕が使ってたのって、vimじゃなくてtiny vimとか呼ばれる軽量版のvimでした。
どうやら、ubuntuの標準搭載がtiny vimらしいです。
まず、このコマンドを打ってもらって、

vi --version
VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Apr 10 2018 21:31:58)
適用済パッチ: 1-1453
Modified by pkg-vim-maintainers@lists.alioth.debian.org
Compiled by pkg-vim-maintainers@lists.alioth.debian.org
Huge 版 without GUI.  機能の一覧 有効(+)/無効(-)
+acl               +farsi             +mouse_sgr         -tag_any_white
+arabic            +file_in_path      -mouse_sysmouse    -tcl
+autocmd           +find_in_path      +mouse_urxvt       +termguicolors
-autoservername    +float             +mouse_xterm       +terminal
-balloon_eval      +folding           +multi_byte        +terminfo
+balloon_eval_term -footer            +multi_lang        +termresponse
-browse            +fork()            -mzscheme          +textobjects
++builtin_terms    +gettext           +netbeans_intg     +timers
+byte_offset       -hangul_input      +num64             +title
+channel           +iconv             +packages          -toolbar
+cindent           +insert_expand     +path_extra        +user_commands
-clientserver      +job               -perl              +vertsplit
-clipboard         +jumplist          +persistent_undo   +virtualedit
+cmdline_compl     +keymap            +postscript        +visual
+cmdline_hist      +lambda            +printer           +visualextra
+cmdline_info      +langmap           +profile           +viminfo
+comments          +libcall           -python            +vreplace
+conceal           +linebreak         +python3           +wildignore
+cryptv            +lispindent        +quickfix          +wildmenu
+cscope            +listcmds          +reltime           +windows
+cursorbind        +localmap          +rightleft         +writebackup
+cursorshape       -lua               -ruby              -X11
+dialog_con        +menu              +scrollbind        -xfontset
+diff              +mksession         +signs             -xim
+digraphs          +modify_fname      +smartindent       -xpm
-dnd               +mouse             +startuptime       -xsmp
-ebcdic            -mouseshape        +statusline        -xterm_clipboard
+emacs_tags        +mouse_dec         -sun_workshop      -xterm_save
+eval              +mouse_gpm         +syntax
+ex_extra          -mouse_jsbterm     +tag_binary
+extra_search      +mouse_netterm     +tag_old_static
      システム vimrc: "$VIM/vimrc"
      ユーザー vimrc: "$HOME/.vimrc"
   第2ユーザー vimrc: "~/.vim/vimrc"
       ユーザー exrc: "$HOME/.exrc"
  デフォルトファイル: "$VIMRUNTIME/defaults.vim"
       省略時の $VIM: "/usr/share/vim"
コンパイル: gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fdebug-prefix-map=/build/vim-NQEcoP/vim-8.0.1453=. -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
リンク: gcc   -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -o vim        -lm -ltinfo -lnsl  -lselinux  -lacl -lattr -lgpm -ldl     -L/usr/lib/python3.6/config-3.6m-x86_64-linux-gnu -lpython3.6m -lpthread -ldl -lutil -lm 

こんな感じででてくると思いますが、見てほしいのは5行目のHuge版というところがtinyとか別のものになってたら、

sudo apt-get install -y vim

でインストールすればそのままのコマンドでHuge版が使えます。

キーとかはこれ見て覚えました
vimチートシート

tmuxを入れる

やっとtmuxの話ですが、最新版がいいのであればgitからソースを落としてきてバイナリつくるのが簡単そうです。
ここではそこまでこだわらずに素直にインストールします。

sudo apt-get install -y tmux

そしたら設定関連ですが、この方の設定(vim流tmuxチュートリアル)が分かりやすかったのでそのまま使ってます。
homeディレクトリ配下でwegetすれば生成されるので、

先程の記事の

cd ~ && wget https://raw.githubusercontent.com/sa-inu/dotfiles/qiita/linked/.tmux.conf

これをしてあげればOKです。

端末を開いたら自動的に開いてほしい

僕の場合、bashを使ってるので、~/.bashrcのエイリアスの上の部分、(aliasと書いてある部分が全て下に来るように)に

if command -v tmux>/dev/null; then
         [[ ! $TERM =~ screen ]] && [ -z $TMUX ] && exec tmux
fi

を追加すると、tmuxが入っていて通常に動く場合にはtmuxの状態で起動してくれます。

コピー&ペーストをOSのものと連携させたい

まずはxselというものをインストールします。

sudo apt-get install xsel

そしたら、tmuxの設定ファイル(~/.tmux.conf)の最下部に下記のように追加します。

unbind -t vi-copy Enter
unbind -t vi-copy y
set-window-option -g mode-keys vi
bind-key -t vi-copy v begin-selection
bind-key -t vi-copy C-v rectangle-toggle
bind-key -t vi-copy y copy-pipe "xsel -bi"
bind-key -t vi-copy Enter copy-pipe "xsel -bi"

みなさんも良いvim + tmuxライフを。


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>