AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 410335
Accepted
Vladimir Panteleev
Vladimir Panteleev
Asked: 2017-12-12 19:36:27 +0800 CST2017-12-12 19:36:27 +0800 CST 2017-12-12 19:36:27 +0800 CST

为什么 macOS 上的 screen 不接收我的 ~/.terminfo?

  • 772

我想让我的终端(rxvt-unicode)工作的Terminfo,这样当我从 Linux SSH 到 macOS 时,Home/End 和其他键工作正常。

通常,为了使用 Linux 远程主机完成此操作,我使用如下脚本:

ssh "$1" 'mkdir -p ~/.terminfo/r'
for f in /usr/share/terminfo/r/rxvt-unicode{,-256color}
do
    scp "$f" "$1":.terminfo/r/
done

但是,这不适用于 macOS。

当我跑步时screen,首先我得到“TERM too long - sorry.”。

将其更新到 brew 版本 (4.06.02) 后,我现在收到“找不到 'rxvt-unicode-256color' 的 terminfo 条目”。

TERM正确设置为rxvt-unicode-256color,并且~/.terminfo/r/rxvt-unicode-256color存在。

运行screenwithTERMINFO=$HOME/.terminfo/也没有效果。

gnu-screen osx
  • 3 3 个回答
  • 3793 Views

3 个回答

  • Voted
  1. Vladimir Panteleev
    2017-12-12T19:45:32+08:002017-12-12T19:45:32+08:00

    运行(如macOS)揭示了以下内容screen:dtrussstrace

    2131/0x12997:  access("/Users/vladimir/.terminfo/72/rxvt-unicode-256color\0", 0x4, 0x7FFF5F2B56EC)       = -1 Err#2
    

    无论出于何种原因,screen使用第一个字母的十六进制表示而不是简单的第一个字母来展开terminfo目录结构。

    所以,要修复它,我必须运行:

    ln -s r ~/.terminfo/72
    

    现在一切似乎都正常了。

    • 7
  2. Best Answer
    Thomas Dickey
    2017-12-13T02:03:54+08:002017-12-13T02:03:54+08:00

    ncurses对文件系统(例如 MacOS 和 OS/2)使用2 个字符,其中文件名保留大小写/不区分大小写。这记录在NEWS文件中。顺便说一句,Apple 提供了旧版本的 ncurses (5.7),对于此功能来说它仍然足够新。

    便携式应用程序不应依赖于终端数据库的任何特定组织......

    顺便说一句,xterm-256color 的当前 terminfo 条目不能很好地与旧的 ncurses 5.7 基本系统配合使用,因为颜色对值超出了限制。对 rxvt-unicode 的影响取决于源的构造方式。常见问题解答中提到了这一点:

    ncurses 6.1引入了对大量功能的支持,例如,超过 32767 种颜色对。其他实现通常将超出范围的值视为零。

    • 5
  3. Yobert
    2020-06-08T21:05:38+08:002020-06-08T21:05:38+08:00

    在你的 linux 电脑上,反编译infocmp经常和包一起打包的 terminfo ncurses,并保存到一个临时文件中。然后,您可以将此文件 SCP 到您的 mac。

    $ infocmp rxvt-unicode-256color > tmpterminfo
    

    然后在你的 mac 上,使用tic命令编译文件,它也会将输出放在你主目录的正确位置:

    $ tic tmpterminfo
    

    目前,最终文件位置是~/.terminfo/72/rxvt-unicode-256color,但将来可能会改变。

    • 0

相关问题

  • Linux 是类 Unix/Unix 操作系统中唯一使用“fsuid”和“fsgid”的操作系统吗?

  • “弹出”如何让进程关闭文件句柄?

  • 确定自上次以来目录内容是否已更改的最快方法

  • 如何使用 `at` 安排脚本在 macOS 上执行?

  • csplit 无法识别提供的正则表达式

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    JSON数组使用jq来bash变量

    • 4 个回答
  • Marko Smith

    日期可以为 GMT 时区格式化当前时间吗?[复制]

    • 2 个回答
  • Marko Smith

    bash + 通过 bash 脚本从文件中读取变量和值

    • 4 个回答
  • Marko Smith

    如何复制目录并在同一命令中重命名它?

    • 4 个回答
  • Marko Smith

    ssh 连接。X11 连接因身份验证错误而被拒绝

    • 3 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Marko Smith

    systemctl 命令在 RHEL 6 中不起作用

    • 3 个回答
  • Marko Smith

    rsync 端口 22 和 873 使用

    • 2 个回答
  • Marko Smith

    以 100% 的利用率捕捉 /dev/loop -- 没有可用空间

    • 1 个回答
  • Marko Smith

    jq 打印子对象中所有的键和值

    • 2 个回答
  • Martin Hope
    EHerman JSON数组使用jq来bash变量 2017-12-31 14:50:58 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Drux 日期可以为 GMT 时区格式化当前时间吗?[复制] 2017-12-26 11:35:07 +0800 CST
  • Martin Hope
    AllisonC 如何复制目录并在同一命令中重命名它? 2017-12-22 05:28:06 +0800 CST
  • Martin Hope
    Steve “root”用户的文件权限如何工作? 2017-12-22 02:46:01 +0800 CST
  • Martin Hope
    Bagas Sanjaya 为什么 Linux 使用 LF 作为换行符? 2017-12-20 05:48:21 +0800 CST
  • Martin Hope
    Cbhihe 将默认编辑器更改为 vim for _ sudo systemctl edit [unit-file] _ 2017-12-03 10:11:38 +0800 CST
  • Martin Hope
    showkey 如何下载软件包而不是使用 apt-get 命令安装它? 2017-12-03 02:15:02 +0800 CST
  • Martin Hope
    youxiao 为什么目录 /home、/usr、/var 等都具有相同的 inode 编号 (2)? 2017-12-02 05:33:41 +0800 CST
  • Martin Hope
    user223600 gpg —list-keys 命令在将私钥导入全新安装后输出 uid [未知] 2017-11-26 18:26:02 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve