tela ncurses / tmux-256color

0

Eu tenho meu termo definido como tmux-256color a .tmux.conf , mas não consigo usar o modo de 256 cores em um aplicativo ncurses em funcionamento. De acordo com essa postagem , ela deve receber suporte até o momento. xterm-256color funciona perfeitamente bem.

Executando o aplicativo com:

 env TERM=tmux-256color ./ncurses_app

não funciona também. O mesmo acontece com a tela de 256 cores.

Script 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})

Os argumentos do link para este projeto:

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

Está usando a ampla biblioteca. Também screen-256color e tmux-256color são instalados no banco de dados terminfo.

O suporte completo para o tmux e a tela 256color ainda não está?

    
por ZeroPhase 24.10.2017 / 09:22

1 resposta

1

Isso é bastante vago: a entrada do terminal está instalada ou não está. Sistemas (como o Debian e aqueles derivados dele, como o Ubuntu), cujo padrão é um banco de dados de terminal "pequeno", não instalam nenhuma das variantes tmux .

Se você definir TERM para algo que não está instalado, tanto a tela quanto o tmux darão um erro e pararão. ncurses aplicativos chamando initscr também darão um erro e pararão.

Ao usar 256 cores, você precisaria de ncurses6 e usar a biblioteca de caracteres largos, por exemplo, -lncursesw , pois a biblioteca narrow ( -lncurses ) suporta apenas até 16 cores.

    
por 24.10.2017 / 10:47