tpope / vim-fireplace

fireplace.vim: Clojure REPL support
https://www.vim.org/scripts/script.php?script_id=4978
1.74k stars 139 forks source link

No ! allowed #143

Closed bcarrell closed 10 years ago

bcarrell commented 10 years ago

A recent commit seems to have broken my setup, here's the relevant error message:

Error detected while processing function <SNR>60_leiningen_init..<SNR>60_leiningen_connect:
line   11:
E477: No ! allowed:       Start! -title=lein\ repl lein repl

When I revert back to before b0f9fad9ec192daad66a914cc14d8568c69ed823, everything seems okay.

Version information:

VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Feb  9 2014 18:19:12)
MacOS X (unix) version
Included patches: 1-103
Compiled by Homebrew
tpope commented 10 years ago

What does :verbose command :Start report?

tpope commented 10 years ago

I mean :verbose command Start

bcarrell commented 10 years ago

So, it was vim-startify breaking it. Removing it fixed the issue, thanks!

:verbose command Start
    Name        Args Range Complete  Definition
    Startify    0                    enew | call startify#insane_in_the_membrane()
        Last set from ~/.vim/bundle/vim-startify/plugin/startify.vim
tpope commented 10 years ago

Well, the problem is we're calling it when we think we're calling :Start from dispatch.vim. What does :echo exists(':Start') report?

bcarrell commented 10 years ago

With vim-startify installed, echo exists(':Start') reports 1. Without, 0.

tpope commented 10 years ago

Confused because we're explicitly checking for 2 (exact match). https://github.com/tpope/vim-fireplace/blob/2dec3b49b2b42ff890a6a486a28979b0c9f7e114/plugin/fireplace.vim#L1474

Humor me and try :echo 1 && empty('') && exists(':Start') ==# 2 and see if there's some precedence issue I'm missing.

bcarrell commented 10 years ago

:echo 1 && empty('') && exists(':Start') ==# 2 yields 0 with and without vim-startify.

tpope commented 10 years ago

I really don't know what else to say other than double check your source file and make sure that line is correct. If it's a Vim bug it sure is a strange one. Report back on your exact patch level from :version in case anybody else has the same problem.

bcarrell commented 10 years ago

Tried both mvim -v and vim, here's full :version output from both. The error in the original post gets thrown and breaks fireplace if vim-startify is installed and everything works great if it isn't. Not really sure -- oh well.

VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Feb  9 2014 18:19:12)
MacOS X (unix) version
Included patches: 1-103
Compiled by Homebrew
Huge version with MacVim GUI.  Features included (+) or not (-):
+acl             +cryptv          +find_in_path    +lispindent      +mouse_urxvt     +quickfix        +tcl             +wildmenu
+arabic          +cscope          +float           +listcmds        +mouse_xterm     +reltime         +terminfo        +windows
+autocmd         +cursorbind      +folding         +localmap        +multi_byte      +rightleft       +termresponse    +writebackup
+balloon_eval    +cursorshape     -footer          +lua             +multi_lang      +ruby            +textobjects     -X11
+browse          +dialog_con_gui  +fork()          +menu            -mzscheme        +scrollbind      +title           -xfontset
++builtin_terms  +diff            +fullscreen      +mksession       +netbeans_intg   +signs           +toolbar         +xim
+byte_offset     +digraphs        -gettext         +modify_fname    +odbeditor       +smartindent     +transparency    -xsmp
+cindent         +dnd             -hangul_input    +mouse           +path_extra      -sniff           +user_commands   -xterm_clipboard
+clientserver    -ebcdic          +iconv           +mouseshape      +perl            +startuptime     +vertsplit       -xterm_save
+clipboard       +emacs_tags      +insert_expand   +mouse_dec       +persistent_undo +statusline      +virtualedit     -xpm
+cmdline_compl   +eval            +jumplist        -mouse_gpm       +postscript      -sun_workshop    +visual
+cmdline_hist    +ex_extra        +keymap          -mouse_jsbterm   +printer         +syntax          +visualextra
+cmdline_info    +extra_search    +langmap         +mouse_netterm   +profile         +tag_binary      +viminfo
+comments        +farsi           +libcall         +mouse_sgr       +python          +tag_old_static  +vreplace
+conceal         +file_in_path    +linebreak       -mouse_sysmouse  -python3         -tag_any_white   +wildignore
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
  system gvimrc file: "$VIM/gvimrc"
    user gvimrc file: "$HOME/.gvimrc"
2nd user gvimrc file: "~/.vim/gvimrc"
    system menu file: "$VIMRUNTIME/menu.vim"
  fall-back for $VIM: "/Applications/MacVim.app/Contents/Resources/vim"
Compilation: clang -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_MACVIM -Wall -Wno-unknown-pragmas -pipe  -DMACOS_X_UNIX  -g -O2 -U_FORTIFY_SOUR
CE -D_FORTIFY_SOURCE=1     -I/System/Library/Frameworks/Tcl.framework/Headers  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_DARWIN_C_SOURCE=1
Linking: clang   -L. -L/usr/local/lib -L. -L/usr/local/lib -L/usr/local/Cellar/python/2.7.6/Frameworks/Python.framework/Versions/2.7/lib/pyt
hon2.7/config -F/usr/local/Cellar/python/2.7.6/Frameworks/Python.framework -L/usr/local/lib -o Vim -framework Cocoa -framework Carbon
-lm  -lncurses -liconv -framework Cocoa  -L/usr/local/lib -llua -fstack-protector -L/usr/local/lib  -L/System/Library/Perl/5.16/darwin-threa
d-multi-2level/CORE -lperl -framework Python  -F/System/Library/Frameworks -framework Tcl -framework CoreFoundation -framework Ruby
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Apr  9 2014 21:25:52)
MacOS X (unix) version
Included patches: 1-253
Compiled by Homebrew
Huge version without GUI.  Features included (+) or not (-):
+acl             +conceal         +farsi           +libcall         +mouse_netterm   +profile         +syntax          +visualextra
+arabic          +cryptv          +file_in_path    +linebreak       +mouse_sgr       +python          +tag_binary      +viminfo
+autocmd         +cscope          +find_in_path    +lispindent      -mouse_sysmouse  -python3         +tag_old_static  +vreplace
-balloon_eval    +cursorbind      +float           +listcmds        +mouse_urxvt     +quickfix        -tag_any_white   +wildignore
-browse          +cursorshape     +folding         +localmap        +mouse_xterm     +reltime         -tcl             +wildmenu
++builtin_terms  +dialog_con      -footer          +lua             +multi_byte      +rightleft       +terminfo        +windows
+byte_offset     +diff            +fork()          +menu            +multi_lang      +ruby            +termresponse    +writebackup
+cindent         +digraphs        -gettext         +mksession       -mzscheme        +scrollbind      +textobjects     -X11
-clientserver    -dnd             -hangul_input    +modify_fname    +netbeans_intg   +signs           +title           -xfontset
+clipboard       -ebcdic          +iconv           +mouse           +path_extra      +smartindent     -toolbar         -xim
+cmdline_compl   +emacs_tags      +insert_expand   -mouseshape      -perl            -sniff           +user_commands   -xsmp
+cmdline_hist    +eval            +jumplist        +mouse_dec       +persistent_undo +startuptime     +vertsplit       -xterm_clipboard
+cmdline_info    +ex_extra        +keymap          -mouse_gpm       +postscript      +statusline      +virtualedit     -xterm_save
+comments        +extra_search    +langmap         -mouse_jsbterm   +printer         -sun_workshop    +visual          -xpm
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
  fall-back for $VIM: "/usr/local/share/vim"
Compilation: /usr/bin/clang -c -I. -Iproto -DHAVE_CONFIG_H   -F/usr/local/Frameworks -DMACOS_X_UNIX  -Os -w -pipe -march=native -mmacosx-ver
sion-min=10.9 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: /usr/bin/clang   -L. -fstack-protector -L/usr/local/opt/libyaml/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/libksba/lib -L/u
sr/local/opt/openssl/lib  -L/usr/local/lib -F/usr/local/Frameworks -Wl,-headerpad_max_install_names -o vim        -lm  -lncurses -liconv -fr
amework Cocoa  -L/usr/local/lib -llua  -framework Python   -lruby.2.0.0 -lobjc -L/Users/bc/.rvm/rubies/ruby-2.0.0-p247/lib
tpope commented 10 years ago

I can confirm it works as expected on my 7.4.007 install of MacVim. If you're feeling adventurous, you can throw some debugging statements in that function and try to figure out what's going on. Otherwise, you can work around it by installing dispatch.vim or removing startify. Also, it shouldn't happen if a REPL is already running.

tpope commented 10 years ago

This has been pulled out of fireplace.vim and moved to leiningen.vim.