【问题标题】:How do I install vim on OSX with Python 3 support?如何在支持 Python 3 的 OSX 上安装 vim?
【发布时间】:2019-06-21 08:09:26
【问题描述】:

我在为MacOS 安装vim 和python 3 时遇到问题。我知道在该主题上有类似的similar question。但我无法解决问题

首先我跑了vim --version并得到了

Included patches: 1-503, 505-680, 682-1283
Compiled by root@apple.com
Normal version without GUI.  Features included (+) or not (-):
+acl             +file_in_path    -mouse_sgr       +tag_old_static
-arabic          +find_in_path    -mouse_sysmouse  -tag_any_white
+autocmd         +float           -mouse_urxvt     -tcl
-balloon_eval    +folding         +mouse_xterm     -termguicolors
-browse          -footer          +multi_byte      -terminal
+builtin_terms   +fork()          +multi_lang      +terminfo
+byte_offset     -gettext         -mzscheme        +termresponse
+channel         -hangul_input    +netbeans_intg   +textobjects
+cindent         +iconv           +num64           +timers
-clientserver    +insert_expand   +packages        +title
-clipboard       +job             +path_extra      -toolbar
+cmdline_compl   +jumplist        -perl            +user_commands
+cmdline_hist    -keymap          +persistent_undo +vertsplit
+cmdline_info    +lambda          +postscript      +virtualedit
+comments        -langmap         +printer         +visual
-conceal         +libcall         -profile         +visualextra
+cryptv          +linebreak       +python/dyn      +viminfo
+cscope          +lispindent      -python3         +vreplace
+cursorbind      +listcmds        +quickfix        +wildignore
+cursorshape     +localmap        +reltime         +wildmenu
+dialog_con      -lua             -rightleft       +windows
+diff            +menu            +ruby/dyn        +writebackup
+digraphs        +mksession       +scrollbind      -X11
-dnd             +modify_fname    +signs           -xfontset
-ebcdic          +mouse           +smartindent     -xim
-emacs_tags      -mouseshape      +startuptime     -xpm
+eval            -mouse_dec       +statusline      -xsmp
+ex_extra        -mouse_gpm       -sun_workshop    -xterm_clipboard
+extra_search    -mouse_jsbterm   +syntax          -xterm_save
-farsi           -mouse_netterm   +tag_binary      
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
  fall-back for $VIM: "/usr/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H   -DMACOS_X_UNIX  -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      
Linking: gcc   -L/usr/local/lib -o vim        -lm -lncurses  -liconv -framework Cocoa 

这是我 Mac 上安装的默认 vim 版本。不幸的是,它说:-python3。所以我假设没有安装python 3。所以我所做的如下:

brew remove vim 一切顺利,然后 brew info vim 并收到以下消息:

vim: stable 8.1.1550 (bottled), HEAD
Vi 'workalike' with many additional features
https://www.vim.org/
Conflicts with:
  ex-vi (because vim and ex-vi both install bin/ex and bin/view)
  macvim (because vim and macvim both install vi* binaries)
Not installed
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/vim.rb
==> Dependencies
Required: gettext ✔, lua ✔, perl ✔, python ✔, ruby ✔
==> Options
--HEAD
    Install HEAD version
==> Analytics
install: 89,945 (30 days), 222,053 (90 days), 835,730 (365 days)
install_on_request: 82,933 (30 days), 204,131 (90 days), 747,520 (365 days)
build_error: 0 (30 days)

是不是因为现在安装了两个版本的vim?

我也试过brew install vim --with-python3,但收到以下消息 invalid option: --with-python3 输入vim --version 时,我得到:

vim --version
VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Feb 22 2019 19:03:04)
Included patches: 1-503, 505-680, 682-1283
Compiled by root@apple.com

编辑

这里是带有相应输出的命令

  • sudo nano /etc/paths:
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
  • command -v vim:
/usr/bin/vim
  • $PATH:
-bash: /Library/Frameworks/Python.framework/Versions/3.7/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin:/opt/X11/bin: No such file or directory

此外,我在another platform 上发布了一个类似的问题,并做了很多尝试来尝试解决这个问题。但是问题仍然存在。

【问题讨论】:

  • invalid option: --with-python3 那是因为 Python3 现在是 Homebrew 中的默认 python。
  • 感谢@ParthS007 的评论。好的,但为什么它说-python3?

标签: python python-3.x macos vim


【解决方案1】:

您运行的 Vim 版本是内置的 Apple 版本,您可以在第二行中看到(“Compiled by root@apple.com”)。您可以使用 Homebrew 安装 vim 或 macvim 软件包,它们将内置 Python 3,因为正如 ParthS007 所提到的,默认 Python 是 Python 3。

但是,如果您想使用 Homebrew 版本而不是默认系统版本(您几乎肯定会这样做),那么您的 PATH 环境变量需要在 /usr/bin 之前有 /usr/local/bin。您可以编辑 shell 配置以更改设置,然后重新启动终端会话。

如果您的PATH 环境变量设置正确,您可能还需要运行brew link vim(或brew link macvim)来创建适当的符号链接。通常,您会希望 command -v vim 显示 /usr/local/bin/vim。手动运行 /usr/local/bin/vim 应该会显示安装了正确的 Vim。

【讨论】:

  • 非常感谢您的回答@bk2204。似乎已经是这样了。这是我在命令sudo nano /etc/paths 之后得到的:/usr/local/bin /usr/bin /bin /usr/sbin /sbin。此外,我在另一个平台上发布了类似的问题并做了很多尝试(apple.stackexchange.com/questions/362833/…)。然而问题仍然存在。你有别的想法吗?
  • 运行 command -v vim 和 'echo $PATH` 会得到什么?
  • 非常感谢:@bk2204。我用请求的命令和相应的输出编辑了问题。你知道问题出在哪里吗?
  • 我必须将 /opt/homebrew/bin 添加到我的 /etc/paths。我把它放在 /usr/local/bin (Mac M1) 之后的第二位
【解决方案2】:

试试

./configure \
--with-python3-command=python3

--with-python3 和 --with-python3-config-dir 均已弃用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-23
    • 2022-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多