I am using exactly the same version of Vim (Gvim 8.0.1123) across all my Windows machines, and only have the following problem on one of them:
Problem
That I cannot use <c-d> in insert-mode, to decrease the indentation level of the currently edited line. <c-t> does still work for increasing the indentation level.
- On this particular Windows machine (Windows 10 Pro), I have tried to uninstall and reinstall Gvim.exe for a few times, and the problem is consistent;
- And,
<c-d>fails to take effect regardless of the filetypes. - I have tried to use a
:Listmapsfunction (from Plug-invim-scripts/listmaps.vim), but do not find anything thing special for<c-d>mapping.
Environment
Across all the Windows machines that I have, I should have had almost everything identical: same Gvim distribution (installed from the same *.exe file), same _vimrc: all sourcing settings from a common Dropbox folder and same directory structure etc.
Interesting observation
According to the standard Vim debugging protocol, I shall first try to start Vim (or Gvim) afresh, with no .vimrc (or _vimrc loaded at all). I have tried both of the following:
vim -u NONE -U NONE -Ngvim -u NONE -U NONE -N
While I am not confident that when I open vim in the Windows Command Prompt, key-code representing the <c-d> mapping is passed to the Vim process or not, it is interesting to observe that, the Gvim process started afresh shall have the same problem: <c-d> does not decrease the level of indentation. I think things are only getting more interesting for now.
:verbose imap <c-d>? – Mass Oct 16 '17 at 17:05<c-d>mapped, the:verbosecommand shows exactly the same mapping; and for filetypes that does not have<c-d>mapped, the:verbosecommand shows "No mapping found". I was thinking that there might be a third party thing that occupies<c-d>permanently. However,<c-d>works just fine in Normal mode. It is just failing in Insert-mode. – llinfeng Oct 16 '17 at 20:17