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
相关推荐
say_fall15 分钟前
【Linux网络编程】UDP套接字编程:系统编程组件、基础回显服务、InetAddr与地址转换、翻译服务与线程池聊天室
linux·服务器·网络·udp·vr
ö Constancy39 分钟前
一台电脑的硬件组成与作用:按功能分类详解(Windows 与 Linux 视角)
linux·windows·电脑
江湖有缘44 分钟前
基于Ubuntu部署SoduWork:企业级 AI 原生协同平台实战全流程
linux·人工智能·ubuntu·ai·soduwork
无奈笑天下10 小时前
银河麒麟上nproc命令教程详解
linux·运维·服务器
Rabitebla13 小时前
【Linux】进程控制(十二) 自定义 Shell(二):内建命令与进程工作目录管理
linux·c++·笔记·学习·bash
坤坤子吖17 小时前
Linux网络编程:TCP 粘包与半包问题,如何正确处理 TCP 流式数据?
linux·服务器·网络·笔记·网络协议·学习
AI_Gump17 小时前
Harness篇|DeepSeek Harness 上手机:五条安卓移植路线与 App 内 Linux 拆解
android·linux·人工智能·智能手机·deepseek
星恒随风19 小时前
MySQL 从零入门(六):复合查询详解——多表查询、自连接、子查询与 UNION
linux·服务器·数据库·mysql
少司府19 小时前
嵌入式入门篇(二):初识STM32F103ZET6
linux·python·stm32·单片机·嵌入式硬件·mcu·嵌入式软件
无足鸟ICT20 小时前
【RHCA+】IO调度算法
linux·服务器