我vimrc在两台单独的计算机上使用相同的计算机,两台 macbook 都使用(MacVim)。从终端启动文件后,可以正确检测文件类型。另一个让我手动输入。
:set filetype=php
Run Code Online (Sandbox Code Playgroud)
对 vimrc 中的哪些设置控制此行为的任何其他好奇观察将不胜感激。
对于我的一生,我无法弄清楚为什么set relativenumber在我的.vimrc文件中设置时没有加载。其他设置,如set number设置配色方案,效果很好。如果我愿意set relativenumber,我需要明确地将它设置在当前缓冲区中。有任何想法吗?我的.vimrc文件可以在这里找到:
https://github.com/mhamrah/vimfiles/blob/master/.vimrc
谢谢。
绅士,
关于 Vim 的简单问题!
如何使用vimrc中的函数检查光标是否位于行尾?
[] 的
是否可以在 Vim 中将文件的一部分作为单独的垂直拆分窗口打开?
假设我有一个包含一百行的文件,从第 40 行到第 60 行,我想在主窗口中作为一个单独的锁定窗口呈现为一个拆分“选项卡”,以便更好地关注文件的那部分,并且我在那里所做的更改也会反映在主窗口中的整个文件中。
我有一个很长的文件,我想实现这样的东西来更好地管理它的内容。
我希望能够在 Vim 中评估一行 Javascript(或其他代码),并将结果显示在该行末尾的注释中。
例如,如果我有一个文件,如:
console.log(4 + 5);
Run Code Online (Sandbox Code Playgroud)
我的光标在该行上,我使用命令:.w !node -e,结果“ 9”将出现在下面的缓冲区中。如果我使用:. !node -e,整行将被替换为结果,9。
我如何才能创建一个命令,将结果附加到注释中的行尾,如下所示:
console.log(4 + 5); // 9
Run Code Online (Sandbox Code Playgroud)
另外值得注意的是 using:r将在下一行打印传递给它的任何内容。r !echo "This is text."将This is text.在光标下方的行上插入“ ”。但是像这样的命令...
:r ". !node -e"
Run Code Online (Sandbox Code Playgroud)
...将尝试读取". !node -e"为文件而不是命令;我不太了解这种行为,但它使事情变得不那么直观。
我希望最终结果有点让人想起 Atom 文本编辑器处理 Hydrogen 内核的方式,代码 eval 的结果出现在代码的左侧。计划是创建一个键绑定(<C-Enter>或<F5>)来自动评估当前行并显示结果。
我每天在 vim 中使用多种语言和标记(ruby、python、javascript、CSS、HTML 等),并且希望在启动编辑器时为每个缓冲区设置不同的设置。如何检测当前缓冲区中加载了哪些语法?
具体来说,我真的更喜欢 python 缩进为 4 个空格,而其他语言则为 2 个。我在我的.vimrc文件中设想了这样的事情:
if syntax == 'python'
set softtabstop=4
set shiftwidth=4
else if syntax == 'html'
" ...
endif
Run Code Online (Sandbox Code Playgroud)
在vim中有类似的东西吗?谢谢。
我在 Windows 上使用 gvim。默认情况下它使用 Fixedsys 字体,但我想使用 Consolas 作为默认字体。
我尝试使用菜单选项设置它;它起作用了,但是下次我启动 gvim 时它被重置了。
如何在 gvim 中设置默认字体?我可以添加任何东西.vimrc吗?
我希望尾随空格显示为.,而制表符显示为空格而不是^I. 我认为解决方案很简单:
set listchars=tab: ,trail:.
set list
Run Code Online (Sandbox Code Playgroud)
但这并不完全有效:
Error detected while processing .vimrc:
line 11:
E474: Invalid argument: listchars=tab:
Run Code Online (Sandbox Code Playgroud)
我想我必须以某种方式对空格进行转义或编码,但是如何呢?
我正在运行一个特定的脚本并收到以下错误:
Error detected while processing /home/subhrcho/.vimrc:
line 42:
E538: No mouse support: mouse=a
Run Code Online (Sandbox Code Playgroud)
这是 .vimrc 文件的相关部分:
" In an xterm the mouse should work quite well, thus enable it.
set mouse=a
Run Code Online (Sandbox Code Playgroud)
知道什么是错的吗?
PS:我使用的是以下版本的vim
VIM - Vi IMproved 7.0(2006 年 5 月 7 日,编译于 2010 年 11 月 12 日 05:24:19)包含的补丁:1、3-4、7-9、11、13-17、19-26、29-31、34-44 , 47, 50-56, 58-64, 66-73, 75, 77-92, 94-107, 109, 202, 234-237
我的平台是:
红帽企业 Linux 服务器 5.8 版 (Tikanga)
我使用的各种插件将它们自己的结果加载到 quickfix 窗口中的缓冲区中。例如,ack.vim 在那里加载它的搜索结果。
当缓冲区加载到 quickfix 窗口时,我想关闭拼写检查和 80 列行指示器等各种功能。
如何检测缓冲区已加载到 quickfix 窗口中?
更新
到目前为止,我有这个,它关闭了 quickfix 窗口的 80 列标记。
au BufReadPost quickfix setlocal colorcolumn=0
vim ×10
vimrc ×10
gvim ×3
buffer ×1
command-line ×1
fonts ×1
indentation ×1
linux ×1
macvim ×1
syntax ×1
text-editing ×1
text-editors ×1
vim-plugins ×1
windows ×1