Prepare vim environment to work with clang-format
问题:
E319: Sorry, the command is not available in this version
问题
当我运行vim环境并尝试重新格式化代码(CTRL + K)时,我在屏幕上收到此警告
环境:
系统:Mac OS X
设定:
Vim:
1 2 3 | VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Nov 17 2016 20:17:27) MacOS X (unix) version Included patches: 1-91 |
Python:
1 | python --version: Python 3.5.2 |
我做的事
- 更新vim:7.3-> 8.0
- 更新python:?2.7->?3.5
-
我更新了.vimrc文件
从
map :pyf .../clang-format.py
imap:pyf .../clang-format.py
至
map ggVG :py3f .../clang-format.py
imap:py3f .../clang-format.py -
我也更新了clang格式的文件
https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/clang-format.py
谢谢,
解:
1.转到.vimrc文件并添加命令
1 2 | map <C-K> :pyf <path-to-this-file>/clang-format.py<cr> imap <C-K><c-o>:pyf <path-to-this-file>/clang-format.py<cr> |
2.将此https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/clang-format.py源代码添加到clang-format.py文件中,您可以将该文件保存到i.e
1 | <path-to-this-file>/clang-format.py |
此文件的路径是指向放置此文件的方向的路径。
3.保存clang-format.py文件并运行vim。 检查命令是否有效。
您也可以为OSX安装macvim。 您可以在此处找到说明。 如何在OS X上安装MacVim?
PS:如果收到"抱歉,该命令在此版本中不可用"错误,请尝试:
1 2 | map <C-K> :py3f <path-to-this-file>/clang-format.py<cr> imap <C-K><c-o>:py3f <path-to-this-file>/clang-format.py<cr> |
这里
1 | $ which clang-format |
退货
1 | /usr/local/bin/clang-format |
然后
1 | ls -ls /usr/local/bin/clang-format |
指着
1 | /usr/local/Cellar/clang-format/2018-04-24/share/clang/clang-format.py |
所以我做
1 2 3 4 | $ vim ~/.vimrc map <C-K> :pyf /usr/local/Cellar/clang-format/2018-04-24/share/clang/clang-format.py<cr> imap <C-K> <c-o>:pyf /usr/local/Cellar/clang-format/2018-04-24/share/clang/clang-format.py<cr> |
这适用于vim(从终端),但不适用于macvim。