当我用Vim语法打开ARB模板时,突出显示不起作用:
-app /视图/管理/新闻/ _show.html.arb
panel "#{t('active_admin.details', model: "News")}" do
attributes_table_for news do
row :id
row :title
row :description
row :twitter_url do
link_to(news.twitter_url, news.twitter_url, target: "_blank") if news.twitter_url
end
#...
Run Code Online (Sandbox Code Playgroud)
一切都只是黑色和白色,它不显示颜色
如何解决?
例如
文件a.txt具有以下上下文
aaa
bbb
ccc
ddd
eee
Run Code Online (Sandbox Code Playgroud)
什么是可以实现这一目标的脚本,如此
script.sh a.txt 2 4
输出:
bbb
ccc
ddd
Run Code Online (Sandbox Code Playgroud)
其中2和4是指定的行号.
运用
" Customize jshint highlights
hi clear SpellBad
hi SpellBad cterm=underline,bold ctermfg=white ctermbg=black
Run Code Online (Sandbox Code Playgroud)
SpellBad当我第一次打开包含jshint错误的缓冲区时,我能够将我的jshint高光自定义为我想要的颜色.从这里可以看出,我的背景是黑色的,带错误的行是粗体白色和下划线.正如我在.vimrc上面使用这些定义所指定的那样.

问题是,当我在缓冲区之间切换或稍后再打开一个缓冲区时,我的自定义jshint SpellBad颜色不再适用,我得到了我不想要的"默认"颜色.

为什么会这样?如何使我的自定义jshint SpellBad颜色坚持下去?
我有一个文件:
mr l 0x19600000 0x00004341
mr l 0x19600004 0x00004820
mr l 0x19600008 0x00003130
mr l 0x1960000c 0x00003920
Run Code Online (Sandbox Code Playgroud)
我想删除每一行的最后一部分.所以在我上面的例子中我想删除
0x00004341
0x00004820
...
Run Code Online (Sandbox Code Playgroud)
等等.
该文件包含大约4000行,所以我想正则表达式应该是这样做的.到目前为止,我一直在vim中尝试这个没有运气.
所以问题是如何做到这一点?
我有以下格式的文件:
"Abu Road","ABR Rajasthan NWR/North Western 260 m [5]
Run Code Online (Sandbox Code Playgroud)
我想在第一个标签后删除所有内容.结果将是:
"Abu Road","ABR Rajasthan
Run Code Online (Sandbox Code Playgroud)
在Windows上使用gVim.
在用Vim打开的文本文件中,我试图匹配两个字符串DRIVER_ACTIVITY和DriverGroup的出现,其间有任意数量的行:
2013-07-01 05:06:23,801 DRIVER_ACTIVITY
2013-07-01 05:06:23,804 text
2013-07-01 05:06:23,804 more text
2013-07-01 05:06:23,805 DriverGroup
Run Code Online (Sandbox Code Playgroud)
使用:
/DRIVER_ACTIVITY(.*)DriverGroup/s
/DRIVER_ACTIVITY((.|\n|\r)*)DriverGroup
/\vDRIVER_ACTIVITY((.|\n|\r)*)DriverGroup
/DRIVER_ACTIVITY\[\S\s\]*DriverGroup
Run Code Online (Sandbox Code Playgroud)
什么都不匹配.如何匹配所有行/新行?
我有一个系统在vim中插入单个字符 - 我使用:nmap <Space> i_<Esc>r.然而,出于某种原因,这似乎干扰了我重新逃脱.我重新开始逃跑了:imap kj <Esc>.
每当我按下时kj,vim会_在我的光标前插入一个,然后改变我按下空格的样子.我无法弄清楚为什么这些东西会像这样互动.有人可以解释一下这个问题吗?我很感激.
这是我的整个vimrc
"general settings
syntax on
filetype plugin on
set number
set smd
set ru
"Leader
let mapleader=','
nmap <Leader>w :w<Enter>
nmap <leader>e :wq<Enter>
nmap <leader>q :q!<Enter>
"remappings
nmap ; :
imap kj <Esc>
nmap <Space> i_<Esc>r
"au comands
au Filetype python source ~/.vim/scripts/python.vim
au Filetype ruby source ~/.vim/scripts/ruby.vim
au Filetype c source ~/.vim/scripts/c.vim
Run Code Online (Sandbox Code Playgroud) 我是初学者vi用户.我不知道术语,但我想把我的gvim终端(屏幕?)拆分成2个窗口,每个窗口有5个不同的文件(缓冲区?).我可以在一个窗口中打开前5个文件,然后拆分到第二个窗口,但我不知道如何在第二个窗口中打开另外5个不同的文件.我一直无法找到这些信息.通常我用:n和切换文件:prev.
再说一遍:我想在左侧窗口中输入文件1-5,在右侧窗口中输入文件6-10.这可能吗?
在正常模式下,我输入以下内容时,会选择分配的左侧:
^v/=
Run Code Online (Sandbox Code Playgroud)
这种行为不会在看似等效的映射中复制:
onoremap lhs :<c-u>execute "normal! ^v/="
Run Code Online (Sandbox Code Playgroud)
工作有什么区别?
我使用Vim来编辑我的电子邮件,我每天要做的事情是删除所有引用的行,直到我的签名开始:
Some my text and the caret _
> Some other quoted text I want to get rid of
> Blah blah
--
My signature
Run Code Online (Sandbox Code Playgroud)
我一直做的是jVjjjjjjd或类似的东西.
我希望在这方面更有效率并删除所有内容,直到双破折号.不幸的是df-只能在当前行上工作,我想指定像"^ - "这样的正则表达式.
怎么做?谢谢!
vim ×10
regex ×2
activeadmin ×1
awk ×1
bash ×1
buffer ×1
command-line ×1
jshint ×1
remap ×1
split ×1
substitution ×1
window ×1