通常在我的机器中,我可以通过键入我想要向后搜索的命令的所需第一个字符来向后搜索 R 的历史记录,然后使用 PageUp 或 PageDown 键浏览 R 历史记录中的所有条目。
我现在在远程集群中以访客身份工作,此选项在这台机器上不可用。
有谁知道我可以在哪里将此功能添加到 R 中?
编辑:我对键绑定感兴趣,而不是如何重现此功能。
EDIT2:我在本地的 Fedora 16 机器上;远程 CentOS release 5.3 (Final)
通常在我的机器中,我可以通过键入我想要向后搜索的命令的所需第一个字符来向后搜索 R 的历史记录,然后使用 PageUp 或 PageDown 键浏览 R 历史记录中的所有条目。
我现在在远程集群中以访客身份工作,此选项在这台机器上不可用。
有谁知道我可以在哪里将此功能添加到 R 中?
编辑:我对键绑定感兴趣,而不是如何重现此功能。
EDIT2:我在本地的 Fedora 16 机器上;远程 CentOS release 5.3 (Final)
history(pattern="lm\\(") # finds lines with lm or glm calls
有多种历史记录机制,您的控制台正在查看的内容可能与历史记录调用将访问的内容不同。阅读“历史”页面的详细信息部分。
我找到了在哪里看以便告诉 R 如何表现。
关键是修改我的 ~/.inputrc 文件,因为它是 R 输入法的参考。
我使用本地 Fedora 16 /etc/inputrc 中的相同文件并将其作为 ~/.inputrc 复制到远程集群中。文件看起来像这样
# do not bell on tab-completion
#set bell-style none
set meta-flag on
set input-meta on
set convert-meta off
set output-meta on
# Completed names which are symbolic links to
# directories have a slash appended.
set mark-symlinked-directories on
$if mode=emacs
# for linux console and RH/Debian xterm
"\e[1~": beginning-of-line
"\e[4~": end-of-line
# commented out keymappings for pgup/pgdown to reach begin/end of history
#"\e[5~": beginning-of-history
#"\e[6~": end-of-history
"\e[5~": history-search-backward
"\e[6~": history-search-forward
"\e[3~": delete-char
"\e[2~": quoted-insert
"\e[5C": forward-word
"\e[5D": backward-word
"\e[1;5C": forward-word
"\e[1;5D": backward-word
# for rxvt
"\e[8~": end-of-line
"\eOc": forward-word
"\eOd": backward-word
# for non RH/Debian xterm, can't hurt for RH/DEbian xterm
"\eOH": beginning-of-line
"\eOF": end-of-line
# for freebsd console
"\e[H": beginning-of-line
"\e[F": end-of-line
$endif