vimshell made other
                shells legacy
                            10th Vim Workshop
                               Nov 13, 2011
                             Tatsuhiro Ujihisa




Monday, November 14, 2011
Vim plugins
              • unite.vim (for everything)
              • neocomplcache (for writings)
              • quickrun (for software devs)
              • vimshell (shell)
              • neobundle, smartchr, and etc
              • specific purpose plugins
Monday, November 14, 2011
shell



Monday, November 14, 2011
vimshell
              • Written in Vim script
              • dependency: vimproc
               • Written in Vim script and C
              • Runs on Vim (of course!)
              • No (bash-compatible) shell script
              • The script language = Vim script
Monday, November 14, 2011
1   ~/
                             2   $ cd /
                             3   /
                             4   $ ls
                             5   Applications/ Users/    etc@       private/
                             6   Developer/ Volumes/        home/      sbin/
                             7   Library/   bin/      mach_kernel tmp@
                             8   Network/     cores/    net/      usr/
                             9   System/     dev/      opt/     var@
                            10
                            11
                            12   /
                            13   $ ls | grep velo
                            14   Developer
                            15
                            16   /
                            17   $ vim ~/.vimrc
                            18   /
                            19   $



Monday, November 14, 2011
pros/cons
              • Integration with Vim
              • Integration with Vim plugins
               • neocomplcache
              • Special built-in commands
              • Multiplatform
              • Incompatibilities
              • Response time
Monday, November 14, 2011
Evolutions
              • Asynchronous execution
              • Escape sequence
              • Interactive commands



Monday, November 14, 2011
vimshell plugins
              • built-in
               • cd
               • vim
               • less
              • vimshell-ssh

Monday, November 14, 2011
Commands for control
              • :VimShellInteractive
              • :VimShellSendBuffer
              • :VimShellSendString



Monday, November 14, 2011
TIPS
              • Start vimshell automatically
               • just write VimShell in your vimrc
              • Open/create a vimshell buffer
                   • nmap <Space>v <Plug>(vimshell_split_switch)
              •     cd in tab context
                   • let g:vimshell_cd_command = 'TabpageCD'



Monday, November 14, 2011
FAQ
              • top?
              • No.



Monday, November 14, 2011
FAQ
              • tail -f?
              • tail -f
              • $ iexe tail -f


Monday, November 14, 2011
FAQ
              • Vim?
              • $ vim
               • Opens in another window
              • $ texe vim
               • Runs actual vim!
Monday, November 14, 2011
FAQ
              • emacs?
              • $ texe emacs



Monday, November 14, 2011
FAQ
              • Filename completion doesn't work
              • use ./ explicitly



Monday, November 14, 2011

vimshell made other shells legacy

  • 1.
    vimshell made other shells legacy 10th Vim Workshop Nov 13, 2011 Tatsuhiro Ujihisa Monday, November 14, 2011
  • 2.
    Vim plugins • unite.vim (for everything) • neocomplcache (for writings) • quickrun (for software devs) • vimshell (shell) • neobundle, smartchr, and etc • specific purpose plugins Monday, November 14, 2011
  • 3.
  • 4.
    vimshell • Written in Vim script • dependency: vimproc • Written in Vim script and C • Runs on Vim (of course!) • No (bash-compatible) shell script • The script language = Vim script Monday, November 14, 2011
  • 5.
    1 ~/ 2 $ cd / 3 / 4 $ ls 5 Applications/ Users/ etc@ private/ 6 Developer/ Volumes/ home/ sbin/ 7 Library/ bin/ mach_kernel tmp@ 8 Network/ cores/ net/ usr/ 9 System/ dev/ opt/ var@ 10 11 12 / 13 $ ls | grep velo 14 Developer 15 16 / 17 $ vim ~/.vimrc 18 / 19 $ Monday, November 14, 2011
  • 6.
    pros/cons • Integration with Vim • Integration with Vim plugins • neocomplcache • Special built-in commands • Multiplatform • Incompatibilities • Response time Monday, November 14, 2011
  • 7.
    Evolutions • Asynchronous execution • Escape sequence • Interactive commands Monday, November 14, 2011
  • 8.
    vimshell plugins • built-in • cd • vim • less • vimshell-ssh Monday, November 14, 2011
  • 9.
    Commands for control • :VimShellInteractive • :VimShellSendBuffer • :VimShellSendString Monday, November 14, 2011
  • 10.
    TIPS • Start vimshell automatically • just write VimShell in your vimrc • Open/create a vimshell buffer • nmap <Space>v <Plug>(vimshell_split_switch) • cd in tab context • let g:vimshell_cd_command = 'TabpageCD' Monday, November 14, 2011
  • 11.
    FAQ • top? • No. Monday, November 14, 2011
  • 12.
    FAQ • tail -f? • tail -f • $ iexe tail -f Monday, November 14, 2011
  • 13.
    FAQ • Vim? • $ vim • Opens in another window • $ texe vim • Runs actual vim! Monday, November 14, 2011
  • 14.
    FAQ • emacs? • $ texe emacs Monday, November 14, 2011
  • 15.
    FAQ • Filename completion doesn't work • use ./ explicitly Monday, November 14, 2011