树莓派的vi编辑器控制问题

/ 默认分类 / 0 条评论 / 66浏览

问题描述

今天在重装系统的树莓派上使用 vi 编辑器时,发现按下方向键(上下左右)时,屏幕上显示的是 A、B、C、D,而不是正常的光标移动。这影响了编辑体验,因此需要找到问题的原因并解决它。

问题分析

方向键在终端中实际上发送的是一串控制字符,例如:

正常情况下,vi 或 vim 识别这些控制字符,并将它们解析为光标移动命令。但是,如果 vi 版本过于精简,或者终端环境设置不正确,就可能直接显示这些字符,而不是执行正确的光标移动操作。

可能的原因包括:

  1. 使用的是精简版 vi:某些 Linux 发行版(包括树莓派 OS)默认提供的是轻量级 vi(如 busybox 版本),它不支持完整的方向键控制。
  2. 没有安装完整版 vim:vim 是 vi 的增强版,功能更完善,支持方向键、语法高亮等。
  3. 终端环境变量设置不正确:如果 $TERM 变量未正确设置,vi 可能无法识别方向键信号。
  4. SSH 终端兼容性问题:如果是通过 SSH 连接树莓派,所使用的终端模拟器可能不支持 vi 的方向键解析。

解决方案

安装完整版 vim

最简单的方法是安装完整的 vim,这样 vi 也会被替换为支持方向键的版本。

sudo apt update
sudo apt install vim -y

然后直接使用 vim 打开文件,而不是 vi:

vim myfile.py

如果希望 vi 也自动使用 vim,可以执行:

sudo update-alternatives --install /usr/bin/vi vi /usr/bin/vim 100

确保终端环境变量正确

检查当前终端类型:

echo $TERM

如果返回的是 dumb,说明终端类型不支持 vi。可以手动修改为 xterm 兼容模式:

export TERM=xterm-256color

选择兼容的 SSH 终端(如果使用 SSH 连接)

如果是从其他设备 SSH 连接到树莓派,建议使用以下终端模拟器:

结论

我安装了完整的vim编辑器之后,vim可以正常使用了,vi也可以了。

sudo apt install vim