ncurses 屏幕/tmux-256color

ncurses 屏幕/tmux-256color

我将术语设置为tmux-256colorthrough .tmux.conf,但我无法在 ncurses 应用程序中使用 256 色模式。根据这个邮政现在应该已经支持了。xterm-256color工作得很好。

运行应用程序:

 env TERM=tmux-256color ./ncurses_app

也不行。对于 screen-256color 也是如此。

CMAKE脚本:

cmake_minimum_required(VERSION 3.8)
project(pkgsinfo)

set(CMAKE_C_STANDARD 11)

set(CMAKE_VERBOSE_MAKEFILE  on)
set(SOURCE_FILES
   ProjectFiles.c)

set(CURSES_NEED_WIDE ON)
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/CMake/Modules")
find_package(Curses 6 EXACT REQUIRED)
add_executable(pkgsinfo ${SOURCE_FILES})
target_link_libraries(pkgsinfo ${CURSES_LIBRARIES})

该项目的链接参数:

/usr/bin/cc -g   CMakeFiles/pkgsinfo.dir/ProjectFiles.c.o -o 
pkgsinfo /usr/lib/libncursesw.so /usr/lib/libtinfo.so -lform

它正在使用宽库。 screen-256color 和 tmux-256color 也安装在 terminfo 数据库中。

还没有完全支持 tmux 和屏幕 256color 吗?

答案1

这是相当模糊的:要么安装了终端条目,要么没有安装。默认为“小型”终端数据库的系统(例如 Debian 及其派生系统,例如 Ubuntu)不会安装任何多路复用器变体。

如果你设置TERM为未安装的东西,screen 和 tmux 都会给出错误并停止。 ncurses 应用程序调用initscr也会给出错误,并停止。

使用 256 色时,您需要 ncurses6 并使用宽字符库,-lncursesw因为窄 ( -lncurses) 库仅支持最多 16 种颜色。

相关内容