我在终端中写入行末时遇到问题。我可以正常输入,但当我向左移动以编辑行(使用箭头键)时,我无法使用箭头键返回到行末。我可以使用 alt + up 跳转到行末,或者移动到最后一秒的最后一个字符,然后按 delete 并再次开始在行末输入。有人知道这个错误吗?或者是否有可能通过编辑我的 bash_profile 删除了一些有助于修复此错误的内容?
有没有办法使用箭头键来移动?
谢谢
export PATH=/usr/local/bin:$PATH
#Create prompt with colors
function prompt
{
# \[ sets the charcters to no over write so the line wraps correctly
local RED="\[\e[0;31m\]"
local BLACK="\[\e[1;30m\]"
local WHITE="\[\e[0;0m\]"
local GREEN="\[\e[1;32m\]"
local PLAIN="\[\e[m\]"
export PS1="${BLACK}${RED}\W ${GREEN}- ${WHITE}${PLAIN}"
}
set prompt="%{e[?7h%}%m%# "
prompt
# File and Directory Highlighting
export CLICOLOR=1
export LSCOLORS=ExFxCxDxBxegedabagacad
# Terminal Options
set complete=enhance
set autolist=v
set implicitcd
set -o noclobber
set -o vi
# RVM path
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
答案1
您的 bash_profile 可能是罪魁祸首。我在指定提示符的外观时犯了一个小错误,这导致了各种奇怪的错误。
尝试:
mv ~/.bash_profile ~/.bash_profile.bak
touch ~/.bash_profile
source ~/.bash_profile
这将为你提供一个空的 bash_profile。如果它解决了问题,那么你就知道你的敌人是谁了。
答案2
我从其他人那里获取了一些 .bash_profile 设置后,也遇到了同样的问题。有问题的行如下:
set -o vi
这将设置终端使用 vi 样式的键绑定和编辑模式。只要您意识到它正在发生,它就是有用的。如果您没有意识到发生了什么,您似乎无法将光标移到行中的最后一个字符之外。
以下是有关 bash 中的 vi 模式的一些信息:
http://www.catonmat.net/blog/bash-vi-editing-mode-cheat-sheet/
答案3
ctrl + a
移至开头。
ctrl + e
移至结尾。
答案4
你可以使用终端像我一样,那么您可以在偏好设置中设置键绑定。您还可以获得一大堆其他功能。强烈推荐给 Mac 开发人员。