如何在支持 Python 3 的 OSX 上安装 vim?

Ada*_*nes 29 vim python3 macos

在我完成的谷歌搜索中,我应该使用的命令是brew install vim --with-python3,它成功而没有错误,但随后vim --version将 Python 3 报告为不可用。

k162:~ asday$ brew install vim --with-python3
==> Using the sandbox
==> Downloading https://github.com/vim/vim/archive/v7.4.2210.tar.gz
Already downloaded: /Users/asday/Library/Caches/Homebrew/vim-7.4.2210.tar.gz
==> ./configure --prefix=/usr/local --mandir=/usr/local/Cellar/vim/7.4.2210/share/man --enable-multibyte --with-tlib=ncurses --enable-cscope --with-compiledby=Homebrew --enable-p
==> make
==> make install prefix=/usr/local/Cellar/vim/7.4.2210 STRIP=true
  /usr/local/Cellar/vim/7.4.2210: 1,732 files, 28.5M, built in 52 seconds
k162:~ asday$ vim --version
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Oct 27 2015 16:22:14)
Compiled by root@apple.com
Normal version without GUI.  Features included (+) or not (-):
-arabic +autocmd -balloon_eval -browse +builtin_terms +byte_offset +cindent
-clientserver -clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments
-conceal +cryptv +cscope +cursorbind +cursorshape +dialog_con +diff +digraphs
-dnd -ebcdic -emacs_tags +eval +ex_extra +extra_search -farsi +file_in_path
+find_in_path +float +folding -footer +fork() -gettext -hangul_input +iconv
+insert_expand +jumplist -keymap -langmap +libcall +linebreak +lispindent
+listcmds +localmap -lua +menu +mksession +modify_fname +mouse -mouseshape
-mouse_dec -mouse_gpm -mouse_jsbterm -mouse_netterm -mouse_sysmouse
+mouse_xterm +multi_byte +multi_lang -mzscheme +netbeans_intg -osfiletype
+path_extra -perl +persistent_undo +postscript +printer -profile +python/dyn
-python3 +quickfix +reltime -rightleft +ruby/dyn +scrollbind +signs
+smartindent -sniff +startuptime +statusline -sun_workshop +syntax +tag_binary
+tag_old_static -tag_any_white -tcl +terminfo +termresponse +textobjects +title
 -toolbar +user_commands +vertsplit +virtualedit +visual +visualextra +viminfo
+vreplace +wildignore +wildmenu +windows +writebackup -X11 -xfontset -xim -xsmp
 -xterm_clipboard -xterm_save
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
      user exrc file: "$HOME/.exrc"
  fall-back for $VIM: "/usr/share/vim"
Compilation: gcc -c -I. -D_FORTIFY_SOURCE=0 -Iproto -DHAVE_CONFIG_H -arch i386 -arch x86_64 -g -Os -pipe
Linking: gcc -arch i386 -arch x86_64 -o vim -lncurses
Run Code Online (Sandbox Code Playgroud)

:py3 print("")在 vim 内执行返回E319: Sorry, the command is not available in this version

我做错了什么?我需要自己编译vim吗?

小智 23

2017 年 5 月 26 日,当-python3Vim 版本已经通过自制软件安装时,以下内容有效:

brew remove vim
brew cleanup
brew install vim --with-python3
Run Code Online (Sandbox Code Playgroud)

  • @Tommy,这是因为 Python3 现在是 Homebrew 中的默认 `python`。如果你运行 `brew info vim`,你会看到有一个选项(`--with-python@2`)使用 Python2 而不是 Python3。 (11认同)
  • 现在报告`警告:vim:这个公式没有--with-python3选项,所以它会被忽略!` (4认同)

Ali*_*rik 7

已经开始工作了。只有当 python --version 是版本 3 时,vim 公式才会安装带有 python3 支持的 vim。 brew install python install python 版本 3 无关紧要(因为它在另一个二进制文件中:python3)

来自:https : //www.reddit.com/r/vim/comments/8iymh8/vim_in_osx_with_python3_support/dyx1b94/

这是我的步骤:

  1. alias python=python3
  2. brew install vim
  3. 在这一点上,我进入+python3vim --version输出
  4. unalias python


小智 6

从 Homebrew 1.6.0版本(2018-04-09)开始,默认的 python 版本是 3。因此,如果您在此更改之前安装了使用 python2 编译的 vim 版本,那么您现在需要做什么来获取 vim使用 python3 很简单:

$ vim --version | grep python
$ brew uninstall --force vim
$ brew cleanup
$ brew install vim
$ vim --version | grep python
Run Code Online (Sandbox Code Playgroud)