[DUDA][C][ncurses] Mostrar caracteres Unicode via ncurses.

Iniciado por RyogiShiki, 3 Mayo 2011, 18:41 PM

0 Miembros y 1 Visitante están viendo este tema.

RyogiShiki

Hola a todos! Bueno como leen del título esa es la cuestión, quiero imprimir caracteres Unicode via ncurses, se que esto es posible con libncurses5-dev que tengo instalada, pero no logro hacer que el caracter se muestre, no se si lo hago bien o mal, porque antes no habia trabajado con unicode sobre C/C++, bueno entrando al caso se supone que de esta forma podría lograrse:


#include <ncurses.h>
#include <locale.h>

int main(){
setlocale(LC_ALL,"");
initscr();
curs_set(0);
addstr("\u2588");
refresh();
getch();
endwin();
return 0;
}

pero mi salida es:
M-b~V~H
Cuando debería ser: █ (Bloque cuadrado negro)

igualmente si pruebo con un kana como por ejemplo: "ピ" y cuyo valor hexadecimal unicode es: 0x30d4, obtengo la siguiente salida:
M-c~C~T

No si si esque estoy usando mal "\u" o si tengo algo mal en el código o si debería especificar la codificación en setlocale(.., ..). Y por último aclarar que si lo hago en C++ puro con wcout y wchar_t la salida es perfecta, lo que descartaría problemas de codificación del terminal.

Espero a algún entendido de ncurses por aquí XD!

Saludos y gracias de antemano

PD: Espero que puedan ver los caracteres de arriba.