cwd*_*cwd 7 vim ssh solaris keyboard vi
我在 Solaris 10 上,默认情况下vi安装了 Solaris 2.5.0 版本 SVR4.0。
系统设置为当我 ssh 到它时Control+H会退格,并退格输出^?
我添加了stty erase '^?'进去,.profile以便在终端中退格键现在可以正常工作。但是,当我使用 vi 时,它仍然在输出^?字符。
通常我会打字:set nocompatible来解决这个问题,但它给了我
compatible: No such option - 'set all' gives all option values
Run Code Online (Sandbox Code Playgroud)
set all 给我
noautoindent nomodelines noshowmode
autoprint nonumber noslowopen
noautowrite nonovice tabstop=8
nobeautify nooptimize taglength=0
directory=/var/tmp paragraphs=IPLPPPQPP LIpplpipnpptags=tags /usr/lib/tags
noedcompatible prompt tagstack
noerrorbells noreadonly term=xterm
noexrc redraw noterse
flash remap timeout
hardtabs=8 report=5 ttytype=xterm
noignorecase scroll=33 warn
nolisp sections=NHSHH HUuhsh+c window=66
nolist shell=/bin/ksh wrapscan
magic shiftwidth=8 wrapmargin=0
mesg noshowmatch nowriteany
Run Code Online (Sandbox Code Playgroud)
我猜这个版本vi太旧了,我需要更新的版本,或者vim如果我想使用set nocompatible,但我想知道是否有另一种方法可以vi使用退格键进行退格而无需加载 vim?
好的。所以我们解决了退格键不起作用的问题。
通过添加
:map! ^? ^H
Run Code Online (Sandbox Code Playgroud)
到您的 .exrc 文件。要以类似方式映射箭头键,您可以将以下内容添加到同一个 .exrc 文件中。
:map! ^[OA ^[ka
:map! ^[OB ^[ja
:map! ^[OC ^[la
:map! ^[OD ^[ha
Run Code Online (Sandbox Code Playgroud)
请记住,所有这些“转义码”都不是通过简单地为“^”字符键入shift+而创建的6,而是通过按以下键来创建的:
退格和删除:
向上箭头:
向下箭头:
右箭头:
左箭头:
.exrc 文件中的任何注释行都必须用", 而不是#。并且您不能在 .exrc 文件中留下任何空行,否则第一个空行就是您的 .exrc 将停止处理的地方。
一旦这些就位,vi 将开始感觉更像是它是为人类设计的。:)
有关 .exrc 文件有多强大的示例,请查看Dave Capella 的这个 .exrc 示例。
| 归档时间: |
|
| 查看次数: |
9671 次 |
| 最近记录: |