如何在 FreeBSD 上使用 `nvi` 删除带有退格键的文本?

如何在 FreeBSD 上使用 `nvi` 删除带有退格键的文本?

由于某种原因,无法退格删除当前插入模式切换之前文件中已存在的文本。

如果我尝试编辑此文本中的一行,然后在插入模式下退格它,我只能通过在esc后面点击来删除新添加的字母backspace。但它不会删除已经存在的字母。插入符号就停在他们面前。

nvi也不支持:set backspace

简而言之,我的任务是使用 中的退格键删除当前文本中单词中间左侧的一些字母nvi。如何实现这一目标?

答案1

这就是nvi行为方式。要更改,nvi您需要修补源代码,可能需要注释掉下面的块v_txt.c,并重新编译:

    /* If nothing to erase, bell the user. */
    if (tp->cno <= tp->offset) {
        if (!LF_ISSET(TXT_REPLAY))
            txt_nomorech(sp);
        break;
    }

或者,vim如果您需要vim功能,您可以安装。

相关内容