PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

ncurses_clear> <ncurses_can_change_color
Last updated: Fri, 22 Aug 2008

view this page in

ncurses_cbreak

(PHP 4 >= 4.0.7, PHP 5, PECL ncurses:1.0.0)

ncurses_cbreakCambio de búferes de entrada

Descripción

bool ncurses_cbreak ( void )
Warning

Esta función es EXPERIMENTAL. Esto significa que el comportamiento de esta función, el nombre de esta función y en definitiva TODO lo documentado sobre esta función, puede cambiar en una futura version de PHP SIN AVISO. La advertencia queda hecha, y utilizar esta extensión queda bajo su propia responsabilidad.

Deshabilita el uso de búferes de línea y el procesamiento de caracteres (los caracteres de interrupción y control de flujo no son alterados), haciendo que los caracteres escritos por el usuario sean entregados al programa inmediatamente.

Valores retornados

Devuelve TRUE o NCURSES_ERR si ocurre un error.

Ver también



add a note add a note User Contributed Notes
ncurses_cbreak
php at kormoc dot com
28-Nov-2005 06:16
re satoru's post,
While it's not using cbreak, it sorta is an example. The only difference between raw and cbreak is how control keys are delt with.

Quoted from the ncurses_programming_howto:
Normally the terminal driver buffers the characters a user types until a new line or carriage return is encountered. But most programs require that the characters be available as soon as the user types them. The above two functions are used to disable line buffering. The difference between these two functions is in the way control characters like suspend (CTRL-Z), interrupt and quit (CTRL-C) are passed to the program. In the raw() mode these characters are directly passed to the program without generating a signal. In the cbreak() mode these control characters are interpreted as any other character by the terminal driver.
satoru
06-Nov-2005 08:14
<?php
 
/**************************************
  [WARNING!]
  Your terminal may be uncontrollable.

  [HOW TO EXIT]
  Push space key to terminate raw mode.

  [TESTING]
  Tested with FreeBSD5.3R + PHP5.0.5-CLI.
  The option '--with-ncurses' required.
  **************************************/

 
$tty = system("tty");
 
$handle = fopen($tty, "r");
  if (!
$handle)
    exit(
"cannot open $tty.\\n");

  print
"Push space key to terminate.\\n";

 
ncurses_init();
 
ncurses_raw();
  do {
   
$ch = fread($handle, 1);
   
printf('[%d] ', ord($ch));
  } while (
$ch != " " && ord($ch) != 3);
 
ncurses_noraw();
 
ncurses_end();
  print
"\\n";

 
fclose($handle);
?>

ncurses_clear> <ncurses_can_change_color
Last updated: Fri, 22 Aug 2008
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites