我已经尝试在 [askubuntu.com] 上寻找一些可以回答我的问题的东西,但没有任何内容能满足我的需求。因此,我想要将 vim 构建为一个非常强大且有用的编辑器,用于 html、css、javascript 等,但也用于编程。我正在尝试学习 css,总的来说,我想要一个带有许多插件的非常好的编辑器。因此,有人能帮助我一步一步地自定义 vim 以及了解在学习期间哪些功能可能对我有帮助吗?谢谢
哦,vim 运行的唯一方式是从终端运行?谢谢
***编辑--->我找不到 my.vimrc 文件
答案1
其他人都给出了很好的建议,我想我会补充一些基本内容:
1. GVim 用于控制台外的 vim,以及如何安装它
您问 vim 是否只能从控制台运行。GVim (GUI-Vim) 是独立版本。从您的屏幕截图来看,您似乎正在使用 Ubuntu,您可以在软件中心找到 gvim 并从那里安装它。或者,您也可以sudo apt-get install gvim
从终端安装。
2. 创建 .vimrc 配置文件
默认情况下,vim/gvim 似乎不会.vimrc
为您创建一个,因此您可以自己创建一个。打开 vim,然后键入以编辑主文件夹中:e ~/.vimrc
名为的新文件( ).vimrc
~
我们首先添加一个设置,以便查看它是否有效。添加以下文本:
" switch on line numbering
set number
是"
注释字符。
然后,退出 vim 并重新启动它 - 您应该会发现左上角出现了行号 1,并且您应该会发现从现在开始您编辑的任何文件都默认打开了行号。
3. 安装插件
插件位于名为的文件夹中~/.vim/
,但是,vim 再次默认不会创建该文件夹,因此您必须创建它:
mkdir ~/.vim
随着时间的推移,该.vim
文件夹将会增加几个子文件夹,例如:
plugin
对于插件color
配色方案doc
用于文档syntax
用于语法高亮模式
但现在它是空的。让我们添加一个插件来尝试一下。
首先使用vim .
- 打开 vim,这告诉 vim 以“资源管理器”模式打开一个文件夹。我们将安装 NERDtree,这是一个流行的文件浏览器插件,它将取代默认的资源管理器。
去http://www.vim.org/scripts/script.php?script_id=1658并从页面底部的表格中下载 zip 文件。
在档案管理器中打开它,选择“提取”,然后告诉它提取到您的~/.vim/
文件夹中。您可能需要点击Ctrl+H
档案管理器的文件夹浏览器,以显示隐藏文件夹。
一旦解压完成,它将.vim
为你创建几个子文件夹。如果你现在使用以下命令重新启动 vim:
vim .
您应该看到资源管理器视图已更改!它现在正在使用 NERDtree 插件。
4.更多.vimrc 设置
我的完整 .vimrc 可以在这里找到https://bitbucket.org/hjwp/vim/src,但这里有一些我认为非常有用的设置:
" syntax highlighting
syntax on
" map cut & paste to what they bloody should be
vnoremap <C-c> "+y
vnoremap <C-x> "+x
map <C-v> "+gP
" sane text files
set fileformat=unix
set encoding=utf-8
" sane editing
set tabstop=4
set shiftwidth=4
set softtabstop=4
" convert all typed tabs to spaces
set expandtab
"autocompletion with ctrl+space
inoremap <c-space> <c-n>
inoremap <Nul> <c-n>
5. Ctags
一开始我不会太担心插件,只要了解 vim 提供的开箱即用功能就足以帮助你编写代码了。但在 vim 中真正有用的一件事是标签。ctags 允许您执行诸如“跳转到定义”之类的操作,并自动完成源树中的所有关键字。开始于:
apt-get 安装 exuberant-ctags
然后,在你的 .vimrc 中添加
map <f12> :!ctags -R .<cr>
现在,当您在 vim 会话中按下“F12”时,它将生成一个.tags
文件,vim 可以使用它来扫描关键字。
现在,如果您正在源代码中调用函数,则可以使用ctrl+]
跳转到其定义。更多信息请见此处:https://stackoverflow.com/questions/563616/vim-and-ctags-tips-and-tricks
6. 下一步
其他人发布了一些看起来非常有用的指南,这里有几个我发现很有用的 SO 页面:
- https://stackoverflow.com/questions/95072/what-are-your-favorite-vim-tricks
- https://stackoverflow.com/questions/726894/what-are-the-dark-corners-of-vim-your-mom-never-told-you-about
- https://stackoverflow.com/questions/164847/what-is-in-your-vimrc
这是整个 vim 世界。但是:警告:如果你发现自己开始沉迷于 vim golf,那么你可能已经走得太远了 -http://vimgolf.com/;-)
答案2
我建议你开始研究 .vimrc,就像上面的一样。每个人的需求和偏好都不同,所以你绝对应该手动安装东西,而不是仅仅复制别人的配置。
关于学习 VIM 本身的一些资源:
- 循序渐进地学习 Vim,关于学习 Vim 的很棒的指南。
- Vim 新手教程,由 Derek Wyatt 制作的一系列视频 当我刚开始我的旅程时,我玩得很开心。
- 备忘单,如果你以前不熟悉 Vim,我建议你像考试一样对待它。把按键绑定写在纸上,命令写在左边,描述写在右边。然后开始记忆,隐藏命令或描述并尝试记住答案。用不了多久,你就会自然而然地掌握这些命令,但请记住在 Vim 中也要积极使用它们,否则你很快就会忘记。
- http://usevim.com(评估 vim 插件并且还有 Vim 101 系列)
- http://vimcasts.org/episodes/archive(一些出色的演员)
一些非常有用的插件
- 句法多种语言的静态代码分析
- vim-css3-语法CSS3 语法高亮。一般来说,如果您使用 HTML5 和 Javascript,您也应该更新它们的语法文件。
- 马奇特扩展 % 的功能
- 环绕标签/括号等的映射,对于 Web 开发人员来说非常强大
- 评论轻松切换大多数语言的评论
- 病原保持 vim 文件夹井然有序,以便你可以卸载和试用插件
- NERD树这是一个非常流行的树形浏览器,但我个人更喜欢 :e 。
- Command-T一个流行的缓冲区管理器,我个人无法使用它,因为它依赖于 ruby。
- 斯尼普特轻松插入代码片段。
- Sparkup将 div#stuff.class > ul > li*5 扩展至 HTML,您就会明白。
其他一些值得了解的信息
- 要获得项目的制表符补全功能,您可以使用 vim 支持的 ctags
- 将 caps-lock 重新绑定到 esc,一天之后你就无法理解自己怎么会有精力一直按到 esc。
- Vim 具有分支撤消树,这意味着即使你改变了撤消树,你仍然可以撤消。贡多帮助您形象化这一点。
- Vim 具有持久撤消功能,这意味着即使您重新启动计算机它也会保存您的撤消历史记录,您绝对应该启用此功能。
- 在我自己的 vimrc 中,我有一个函数可以检查我是否正在处理 Drupal 或 Wordpress 网站,具体取决于设置不同的代码约定。(我想这可能很有用,您可以在下面链接的我的存储库中找到它。)
- Steve Losh 有这个很棒的配置在 vim 中定义一个数字对象,这样你就可以通过按 cN 来删除/更改/等等,例如 200px 中的数字
值得一看的 Vimrc 存储库
答案3
你可以使用这个:
bash < <(curl -s https://raw.github.com/wongyouth/vimfiles/master/install.sh)
这是我老师的配置,希望能够帮助到大家。
少量 vim 插件都保存在一个包子目录中,这是非常有用的 vim 配置,尤其适用于 Rails 编码。所有插件都包含在子模块中,因此您只需一个命令即可更新插件,让生活更轻松。