我喜欢使用vim(在ms窗口上),我想每个人都有一个喜欢的编辑器,这是我的。
在一台特定的PC上,我遇到了mark[a-zA-Z]
命令的问题。
它对字母a和A不起作用,但它对b-z和B-Z起作用,我想知道原因。
如果我使用命令:marks
,我可以看到ma
和mA
设置了一个条目。但'a
和'A
无效。反引号版本也是如此。
如果我对标签b或B做同样的事情就行了。
我检查了我的_vimrc,但没有一行做某事或A。
什么可以阻止标签a和A? 我怎样才能找出导致这个问题的原因?
欢迎任何消化。
其他信息:2016年3月5日,23:59
我没有_gvimrc文件并使用`标准' _vimrc文件,从来没有花时间深入挖掘vim配置。所以它仍然很香草。我喜欢这种方式,有太多的PC我必须使用和同步_vimrc文件不是我想要的。 : - )
这是在我的_vimrc文件中。
:source C:\Program Files (x86)\Vim\_vimrc
let g:xml_syntax_folding=1
:filetype on
:filetype plugin on
:set foldmethod=marker
:set foldmarker={,}
autocmd FileType xml source C:\Users\andre\vimfiles\ftplugin\xml.vim
autocmd FileType python source C:\Users\andre\vimfiles\ftplugin\py.vim
autocmd FileType cs source C:\Users\andre\vimfiles\ftplugin\cs.vim
我已经尝试了cbaumhardt提出的建议,并没有任何区别,运行vim -Nu NONE -U NONE
。
其他信息:2016年3月6日,20:23LT
键盘设置干扰了输入。 (US-international
)
将键盘设置更改为US
解决了问题。
答案 0 :(得分:1)
操作系统可以在vim看到之前拦截按键。因此,如果您使用国际键盘布局,declare @orderId as int, @sql AS VARCHAR(MAX)
set @orderId = 10
set @sql = 'select orderId, categoryId, itemId from Orders where orderId = ' + CONVERT(varchar(10), @orderId)
declare @dt table(orderId varchar(10), categoryId varchar(10), itemId varchar(10))
insert into @dt exec(@sql)
-- this is what you needed
select '{"orderinfo" : [' + STUFF((
select
',{"Order Id":' + orderId
+ ',"Category Id":' + categoryId
+ ',"Item Id":' + itemId
+'}'
from @dt
for xml path(''), type
).value('.', 'varchar(max)'), 1, 1, '') + ']}' as jsonData
--end results: {"orderinfo" : [{"Order Id":10,"Category Id":281,"Item Id":1054}]}
可能会生成带有重音符号。 Vim不会看到'a
这就是为什么商标无效。
一种解决方案是将带有重音的角色映射到'a
或更改键盘布局。
'a