Se connecter
Se connecter
Inscription
Mot de passe perdu
Connexion:
[Actualités]
Nvidia prévient d'une pénurie de GPU ce trimestre, avec une reprise début 2025
[Actualités]
Les Technos #469 : Un jour sans fin
[Actualités]
Test Farming Simulator 25 (PS5) - Des innovations intéressantes mais des perfor...
[Actualités]
Qualcomm souhaite réduire davantage les prix des PC Windows basés sur ARM
[Actualités]
Finalement, Google préparerait une nouvelle tablette mais la Pixel Tablet 2 ser...
[Actualités]
Windows 10 version 22H2 : erreur de mise à jour et de désinstallation
[Actualités]
OpenAI prépare désormais son propre navigateur
[Actualités]
WhatsApp bat Telegram : les transcriptions des messages vocaux arrivent pour tou...
[Actualités]
Unreal et Unreal Tournament désormais gratuits sur Internet Archive
[Actualités]
Windows 10 : Microsoft affiche des publicités en plein écran pour les PC équi...
[Articles]
Dungeons 4 - Nintendo Switch Edition
[Articles]
The Bridge Curse 2 : The Extrication
[Articles]
Farmagia
[Articles]
I*CHU: Chibi Edition
[Articles]
Farming Simulator 25
[Articles]
Goblin Slayer -Another Adventurer- Nightmare Feast
[Articles]
Deel lance des programmes en marque blanche et pour les revendeurs pour plus de ...
[Articles]
ESET Research : WolfsBane, nouvelle porte dérobée de cyber-espionnage Linux cr...
[Articles]
Devoteam présente son nouveau plan stratégique « AMPLIFY » avec un fort acce...
[Articles]
LEGO Horizon Adventures
Actualités
Lettre d'information
Proposer une actualité
Archives
Actualités
Articles
Programmation
Press Release
Matériel
Logiciels
Livres
Interviews
Derniers commentaires
Jeux Vidéos
XBox One
XBox 360
Wii U
PSP
PS4
PS3
PC
DS
GameCube
3DS
Forum
Derniers messages
Informatique
Fun
Divers
Logithèque
Blogs
Divers
A Propos
Annonceurs
Contact
Recherche
RSS
Editer un article
Titre
Mots Clés
Texte
[size=18] [b]Nom[/b] [/size] [b]cbreak[/b], [b]nocbreak[/b], [b]echo[/b], [b]noecho[/b], [b]halfdelay[/b], [b]intrflush[/b], [b]keypad[/b], [b]meta[/b], [b]nodelay[/b], [b]notimeout[/b], [b]raw[/b], [b]noraw[/b], [b]noqiflush[/b], [b]qiflush[/b], [b]timeout[/b], [b]wtimeout[/b], [b]typeahead[/b] - options en entrée de [b]curses[/b] [size=18] [b]Résumé[/b] [/size] [b]#include[/b]
[b]int[/b] cbreak(void); [b][/b] [b]int[/b] nocbreak(void); [b][/b] [b]int[/b] echo(void); [b][/b] [b]int[/b] noecho(void); [b][/b] [b]int[/b] halfdelay(int tenths); [b][/b] [b]int[/b] intrflush(WINDOW *win, bool bf); [b][/b] [b]int[/b] keypad(WINDOW *win, bool bf); [b][/b] [b]int[/b] meta(WINDOW *win, bool bf); [b][/b] [b]int[/b] nodelay(WINDOW *win, bool bf); [b][/b] [b]int[/b] raw(void); [b][/b] [b]int[/b] noraw(void); [b][/b] [b]void[/b] noqiflush(void); [b][/b] [b]void[/b] qiflush(void); [b][/b] [b]int[/b] notimeout(WINDOW *win, bool bf); [b][/b] [b]void[/b] timeout(int delay); [b][/b] [b]void[/b] wtimeout(WINDOW *win, int delay); [b][/b] [b]int[/b] typeahead(int fd); [b][/b] [size=18] [b]Description[/b] [/size] Normalement, le pilote tty met en tampon les caractères saisis avant qu'une nouvelle ligne ou un retour chariot soient saisis. La routine [b]cbreak[/b] désactive la mise en tampons de lignes et écrase/tue le traitement des caractères (les caractères d'interruption et de contrôle du flux ne sont pas affectés), rendant les caractères saisis par l'utilisateur disponibles immédiatement au programme. La routine [b]nocbreak[/b] remet le terminal en mode normal. Initialement le terminal peut ou peut ne pas être en mode [b]cbreak[/b], étant donné que le mode est hérité ; dès lors, un programme peut appeler [b]cbreak[/b] ou [b]nocbreak[/b] explicitement. La plupart des programmes interactifs utilisant [b]curses[/b] mettent en place le mode [b]cbreak[/b]. Notez que [b]cbreak[/b] passe avant [b]raw[/b]. [Reportez-vous à [b]curs_getch[/b](3X) pour des informations sur les interactions de ces routines avec [b]echo[/b] et [b]noecho[/b].] Les routines [b]echo[/b] et [b]noecho[/b] contrôlent si les caractères saisis par l'utilisateur sont affichés par [b]getch[/b] quand ils sont saisis. L'affichage par le pilote tty est toujours désactivé, mais initialement [b]getch[/b] est en mode echo, alors les caractères saisis sont affichés. Les auteurs de la plupart des programmes préfèrent faire leur propre affichage dans une aire contrôlée de l'écran, ou ne rien afficher du tout, alors ils désactivent l'affichage en appelant [b]noecho[/b]. [Reportez-vous à [b]curs_getch[/b](3X) pour plus d'informations sur les interactions de ces routines avec [b]cbreak[/b] et [b]nocbreak[/b].] La routine [b]halfdelay[/b] est utilisée pour le mode half-delay, qui est similaire au mode [b]cbreak[/b] en ce que les caractères saisis par l'utilisateur sont immédiatement disponibles pour le programme. Malgré cela, après avoir bloqué [i]tenths[/i] dizaines de secondes, ERR est retourné si rien n'a été saisi. La valeur de [b]tenths[/b] doit être un nombre compris entre 1 et 255. Utilisez [b]nocbreak[/b] pour quitter le mode half-delay. Si l'option [b]intrflush[/b] est activée, ([i]bf[/i] est [b]TRUE[/b]), quand une touche d'interruption est appuyée sur le clavier (interruption, stopper, quitter), toute la sortie dans la file d'attente du pilote tty sera affichée, donnant un effet de réponse plus rapide à l'interruption, mais donnant à [b]curses[/b] une mauvaise idée de ce qui est à l'écran. En désactivant ([i]bf[/i] est [b]FALSE[/b]), l'option protège de cet affichage. Par défaut l'option est héritée des options du pilote tty. L'argument de la fenêtre est ignoré. L'option [b]keypad[/b] active le pavé numérique du terminal de l'utilisateur. Si activée ([i]bf[/i] est [b]TRUE[/b]), l'utilisateur peut presser une touche de fonction (comme une flèche) et [b]wgetch[/b] retourne une simple valeur représentant la touche, comme [b]KEY_LEFT[/b]. Si désactivée ([i]bf[/i] est [b]FALSE[/b]), [b]curses[/b] ne traite pas les touches de fonction spécialement et le programme doit interpréter les séquences lui-même. Si le pavé numérique du terminal peut être activé (fait pour transmettre) ou non (fait pour travailler localement), activer cette option peut activer le pavé numérique du terminal quand [b]wgetch[/b] est appelé. La valeur par défaut est false. Initialement, que le terminal retourne 7 ou 8 bits significatifs en entrée, cela dépend du mode de contrôle du pilote tty [reportez-vous à termio(7)]. Pour forcer 8 bits à être retournés, invoquez [b]meta[/b]([i]win[/i], [b]TRUE[/b]) ; c'est équivalent, sous POSIX, à mettre le flag CS8 au terminal. Pour forcer 7 bits à être retournés, invoquez [b]meta[/b]([i]win[/i], [b]FALSE[/b]) ; c'est équivalent, sous POSIX, à mettre le flag CS7 au terminal. L'argument de fenêtre [i]win[/i], est toujours ignoré. Si les capacités terminfo [b]smm[/b] (meta_on) et [b]rmm[/b] (meta_off) sont définies pour le terminal, [b]smm[/b] est envoyé au terminal quand [b]meta[/b]([i]win[/i], [b]TRUE[/b]) est appelé et [b]rmm[/b] est envoyé quand [b]meta[/b]([i]win[/i], [b]FALSE[/b]) est appelé. L'option [b]nodelay[/b] fait de [b]getch[/b] un appel non bloquant. Si aucune entrée n'est prête, [b]getch[/b] retourne [b]ERR[/b]. Si désactivée ([i]bf[/i] est [b]FALSE[/b]), [b]getch[/b] attend qu'une touche soit pressée. Lors de l'interprétation d'une séquence en entrée précédée d'Echap, [b]wgetch[/b] met en place un décompte lors de l'attente du caractère suivant. Si [b]notimeout([/b][i]win[/i], [b]TRUE[/b]) est appelé, alors [b]wgetch[/b] ne met pas en place de décompte. Le but de ce décompte est de différencier les séquences reçues d'une touche de fonction et celles saisies par l'utilisateur. Les routines [b]raw[/b] et [b]noraw[/b] placent le terminal à l'intérieur ou à l'extérieur d'un tableau. Ce mode est similaire au mode [b]cbreak[/b], en ce que les caractères saisis sont passés immédiatement à travers le programme de l'utilisateur. Les différences sont que dans ce mode raw, les caractères de contrôle interruption, quitter, suspendre et de flux sont tous passés sans être interprétés, au lieu de générer un signal. L'action de la touche BREAK dépend d'autres bits situés dans le pilote tty et ne sont pas gérés par [b]curses[/b]. Quand la routine [b]noqiflush[/b] est utilisée, l'affichage normal de la queue en entrée et en sortie associé aux caractères [b]INTR[/b], [b]QUIT[/b] et [b]SUSP[/b] ne sera pas effectué [reportez-vous à termio(7)]. Quand [b]qiflush[/b] est appelé, les queues seront affichées quand ces caractères de contrôles seront lus. Vous pouvez vouloir appeler [b]noqiflush()[/b] dans une requête de signal si vous voulez que la sortie continue comme si l'interruption n'avait pas eu lieu, après que la requête se ferme. Les routines [b]timeout[/b] et [b]wtimeout[/b] mettent en place la lecture bloquante ou non bloquante pour une fenêtre donnée. Si [i]delai[/i] est négatif, la lecture bloquante sera utilisée (par exemple, attendre indéfiniment l'entrée. Si [i]delai[/i] est zéro alors la lecture non bloquante sera utilisée (par exemple, la lecture retourne [b]ERR[/b] si aucune entrée n'est en attente). Si [i]delai[/i] est positif, alors la lecture se bloque pour [i]delai[/i] millisecondes, et retourne [b]ERR[/b] si rien n'est en entrée à ce moment. Dans ce cas, ces routines fournissent la même fonctionnalité que [b]nodelay[/b], avec la capacité supplémentaire de bloquer pour seulement [i]delai[/i] millisecondes (quand [i]delai[/i] est positif). La librairie [b]curses[/b] fait une « optimisation de la saisie précoce » en regardant la saisie précoce périodiquement lors de la mise à jour de l'écran. Si du texte en entrée est trouvé, et qu'il vient d'un tty, la mise à jour actuelle est arrêtée avant que [b]refresh[/b] ou [b]doupdate[/b] ne soit appelé de nouveau. Cela permet une réponse plus rapide aux commandes saisies en avance. Normalement le FICHIER pointeur en entrée passé à [b]newterm[/b], ou [b]stdin[/b] dans le cas ou [b]initscr[/b] est utilisé, sera utilisé pour faire cette vérification de la saisie précoce. La routine [b]typeahead[/b] spécifie que le descripteur de fichier [i]fd[/i] doit être utilisé pour chercher la saisie précoce à la place. Si [i]fd[/i] est -1, alors la vérification de saisie précoce n'est pas effectuée. [size=18] [b]Valeur en retour[/b] [/size] Toutes les routines retournant un entier retournent [b]ERR[/b] en cas d'échec et OK (SVr4 ne spécifie qu'une "valeur entière autre que [b]ERR[/b]") en cas de succès, si rien d'autre n'est noté dans les descriptions de routine précédentes. [size=18] [b]ProbabilitÉ[/b] [/size] Ces fonctions sont décrites dans les Curses XSI standard, Version 4. Les librairies ncurses obéissent au standard XPG4 et à la pratique historique des implémentations curses AT&T, en ce que le bit echo est effacé quand curses initialise l'état du terminal. Les curses BSD diffèrent légèrement : elles laissent le bit echo lors de l'initialisation, mais l'appel au [b]raw[/b] de BSD a comme effet de le désactiver. Pour une meilleure portabilité, mettez echo ou noecho en place juste après l'initialisation, même si votre programme reste en développement. [size=18] [b]Notes[/b] [/size] Notez que [b]echo[/b], [b]noecho[/b], [b]halfdelay[/b], [b]intrflush[/b], [b]meta[/b], [b]nodelay[/b], [b]notimeout[/b], [b]noqiflush[/b], [b]qiflush[/b], [b]timeout[/b], et [b]wtimeout[/b] peuvent être macros. Les appels à [b]noraw[/b] et [b]nocbreak[/b] suivent la pratique historique en ce qu'ils tendent à restaurer le mode normal depuis les modes raw et cbreak respectivement. Mixer les appels raw/noraw et cbreak/nocbreak entraînent des états de contrôle du pilote tty qui sont durs à prédire ou à comprendre ; ce n'est pas recommandé. [size=18] [b]Traduction[/b] [/size] Ce document est une traduction, réalisée par Simon DEPIETS le 1 novembre 2004. L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : LANGUAGE=en man mergelib. N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans de cette page de manuel. [size=18] [b]Voir aussi[/b] [/size] [b]curses[/b](3X), [b]curs_getch[/b](3X), [b]curs_initscr[/b](3X), [b]termio[/b](7)
Fichier
Forum
-
Derniers messages
Bavardages
Aujourd'hui, je rénove ou je construis ^^
Software
problème sur windows 10
Réseaux et Télécom
Administrateur Réseau - Cisco
Réseaux et Télécom
Problème wifi (POE)
Software
Postfix - Need help
Bavardages
Oh râge oh désespoir !
Programmation
Enregistrement client et envoi mail
Software
SÉCURITÉ MACBOOK
Hardware
conseil matos réseau?
Hardware
nVidia Shield Android TV
Actualités
-
Archives
Matériel
Nvidia prévient d'une pénurie de GPU ce trimestre, avec une reprise début 2025
Les Technos
Les Technos #469 : Un jour sans fin
Jeux Vidéos
Test Farming Simulator 25 (PS5) - Des innovations intéressantes mais des performances à revoir
Matériel
Qualcomm souhaite réduire davantage les prix des PC Windows basés sur ARM
Tablettes
Finalement, Google préparerait une nouvelle tablette mais la Pixel Tablet 2 serait abandonnée
Ada
CSS
Cobol
CPP
HTML
Fortran
Java
JavaScript
Pascal
Perl
PHP
Python
SQL
VB
XML
Anon URL
DailyMotion
eBay
Flickr
FLV
Google Video
Google Maps
Metacafe
MP3
SeeqPod
Veoh
Yahoo Video
YouTube
6px
8px
10px
12px
14px
16px
18px
Informaticien.be
- © 2002-2024
Akretio
SPRL - Generated via
Kelare
The Akretio Network:
Akretio
-
Freedelity
-
KelCommerce
-
Votre publicité sur informaticien.be ?