in vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/InsertCommandLineTextActions.kt [70:94]
protected open fun shouldInsertLiterally(key: KeyStroke): Boolean {
if (insertLiterally) {
// Don't escape <C-V>
if (key.keyCode == KeyEvent.VK_V && key.modifiers and KeyEvent.CTRL_DOWN_MASK != 0) {
return false
}
// Insert Tab and any non-character keystroke literal characters
if (key.keyCode == KeyEvent.VK_TAB || key.keyChar == KeyEvent.CHAR_UNDEFINED) {
return true
}
}
// <C-C>, <Esc> and <CR> are inserted literally. This includes their synonyms
if (key.keyCode == KeyEvent.VK_ENTER || key.keyCode == KeyEvent.VK_ESCAPE) {
return true
}
if (key.keyChar == KeyEvent.CHAR_UNDEFINED && key.modifiers and KeyEvent.CTRL_DOWN_MASK != 0) {
return key.keyCode == KeyEvent.VK_C
|| key.keyCode == KeyEvent.VK_J
|| key.keyCode == KeyEvent.VK_M
|| key.keyCode == KeyEvent.VK_OPEN_BRACKET
}
return false
}