vim方向键乱码

问题描述

有的docker容器使用的父镜像比较精简,安装的vim不带vimrc文件,只支持使用 h, j, k, l来进行方向键的移动。具体的历史背景是:

在 Vim 的前身 vi 编辑器开发时(1976 年),很多终端并不具备现代键盘那样的箭头键。终端键盘的布局非常简单,没有专门的方向键。

vi 编辑器的作者 Bill Joy 使用的是 ADM-3A 终端,这种终端的键盘上没有独立的方向键。为了在这种环境下高效地移动光标,他利用了 h, j, k, l 这些键作为光标移动的快捷键。

解决方案

bash 复制代码
cat << 'EOF' > ~/.vimrc
" Enable arrow keys for normal mode
map <Up> k
map <Down> j
map <Left> h
map <Right> l

" Enable arrow keys for insert mode
imap <Up> <C-o>k
imap <Down> <C-o>j
imap <Left> <C-o>h
imap <Right> <C-o>l

" Enable arrow keys for visual mode
vmap <Up> k
vmap <Down> j
vmap <Left> h
vmap <Right> l
EOF
相关推荐
Darkwanderor4 分钟前
使用管道实现进程间通信 (IPC, Inter-Process Communitation)
linux·c语言·c++
减瓦8 分钟前
用 Git 为本地文件打造一台时光机
开发语言·git·编辑器
Nuanyt17 分钟前
Linux系统的 Shell 常见指令和常见知识点(以bash为主)
linux·运维·chrome·bash
程序员老陆23 分钟前
FFmpeg 硬解在 Linux 上:从“能跑”到“跑满 GPU”的实战笔记
linux·笔记·ffmpeg
星恒随风28 分钟前
Linux 权限详解:从 rwx、chmod 到 umask、目录权限与粘滞位
linux·运维·服务器·笔记·学习
拳里剑气29 分钟前
Linux:进程间通信
linux·运维·数据库·进程
lsh曙光1 小时前
防火墙-iptables
linux
阳光九叶草LXGZXJ1 小时前
达梦数据库-报错-12-[-7184]:对象定义[XXX]被修改,版本检查失败
linux·运维·服务器·数据库·sql·学习
小此方1 小时前
Re:Linux系统篇(四十九)线程篇 · 二:为什么现代操作系统选择分页式存储?分页如何解决物理内存碎片?分页结构如何演化到页表、页目录、MMU?
linux·运维·驱动开发
Huangjin007_2 小时前
【Linux 系统篇(十一)】基础开发工具(六) —— 版本控制器 Git
linux·运维·git