|
|
|
|
||||||
| fr.comp.os.unix Système UNIX. |
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 |
|
Messages: n/a
Hébergeur: |
Bonjour,
J'aimerais savoir le fonctionnement des terminaux concernant echok. Sous Mac OS X avec le terminal iTerm, "stty -a" me dit -echok. Un Ctrl-U en mode cooked (e.g. taper "cat" dans un shell) efface bien la ligne courante. Quand je me connecte sur mon Zaurus (PDA sous Linux) avec ssh, un "stty -a" me dit maintenant echok (ça a changé!). Et un Ctrl-U provoque toujours l'effacement de la ligne. Maintenant quand je me connecte sur une machine sous Debian par ssh, "stty -a" me dit -echok me dit -echok et cette fois, un Ctrl-U ne provoque plus l'effacement de la ligne dans le terminal! (Elle est bien effacée de l'entrée standard, comme prévu, car kill = ^U.) Qui a raison concernant l'effacement de la ligne dans le terminal (i.e. ce qui est affiché)? Note: je peux toujours faire un "stty echok" pour régler le problème, mais est-ce qu'il n'aurait pas dû être réglé automatiquement? Comment? Merci d'avance pour tout information. -- Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/> Work: CR INRIA - computer arithmetic / SPACES project at LORIA |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
Vincent Lefevre wrote in message
<20060312105617$547e@prunille.vinc17.org>: > J'aimerais savoir le fonctionnement des terminaux concernant echok. > Sous Mac OS X avec le terminal iTerm, "stty -a" me dit -echok. Un > Ctrl-U en mode cooked (e.g. taper "cat" dans un shell) efface bien > la ligne courante. > > Quand je me connecte sur mon Zaurus (PDA sous Linux) avec ssh, un > "stty -a" me dit maintenant echok (ça a changé!). Et un Ctrl-U > provoque toujours l'effacement de la ligne. > > Maintenant quand je me connecte sur une machine sous Debian par ssh, > "stty -a" me dit -echok me dit -echok et cette fois, un Ctrl-U ne > provoque plus l'effacement de la ligne dans le terminal! (Elle est > bien effacée de l'entrée standard, comme prévu, car kill = ^U.) > > Qui a raison concernant l'effacement de la ligne dans le terminal > (i.e. ce qui est affiché)? Ça dépend des autres modes, en particulier tous ceux qui s'appellent echoquelquechose. Que sont-ils sur les différentes machines? |
|
|
|
#3 |
|
Messages: n/a
Hébergeur: |
Dans l'article <dv13bb$1eml$4@biggoron.nerim.net>,
Nicolas George <nicolas$george@salle-s.org> écrit: > Ça dépend des autres modes, en particulier tous ceux qui s'appellent > echoquelquechose. Que sont-ils sur les différentes machines? Sous Mac OS X: prunille:~> stty -a | grep echo isig icanon iexten echo echoe -echok -echonl -noflsh -tostop -echoprt echoctl echoke Sur Zaurus (Linux 2.4.18), même terminal via connexion ssh: zaurus:~> stty -a | grep echo isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke Sur ces deux machines, le Ctrl-U en mode cooked fonctionne bien. Mais pas sous divers GNU/Linux 2.4.x et 2.6.x, même terminal via connexion ssh: ay:~> stty -a | grep echo isig icanon iexten echo echoe -echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke ay:~> cat abc^Udef def ay:~> (Après le cat: abc[Ctrl-U]def[Return][Ctrl-D]) -- Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/> Work: CR INRIA - computer arithmetic / SPACES project at LORIA |
|
|
|
#4 |
|
Messages: n/a
Hébergeur: |
Vincent Lefevre wrote in message
<20060312130015$13cb@prunille.vinc17.org>: > prunille:~> stty -a | grep echo > isig icanon iexten echo echoe -echok -echonl -noflsh -tostop -echoprt echoctl > echoke > ay:~> stty -a | grep echo > isig icanon iexten echo echoe -echok -echonl -noflsh -xcase -tostop -echoprt > echoctl echoke Je vois, ces deux là ont vraiment des modes similaires. Comment le macos se comporte-t-il avec stty echok? |
|
|
|
#5 |
|
Messages: n/a
Hébergeur: |
Dans l'article <dv18tt$1ghp$2@biggoron.nerim.net>,
Nicolas George <nicolas$george@salle-s.org> écrit: > Je vois, ces deux là ont vraiment des modes similaires. Comment le > macos se comporte-t-il avec stty echok? Normalement. Une idée du pourquoi je n'ai pas du echok par défaut? Avec xterm sous MacOSX, j'ai bien du echok. Mais avec Terminal (terminal fourni avec MacOSX) et iTerm, j'ai du -echok. Et j'ai exactement le même problème avec Terminal qu'avec iTerm après une connexion ssh vers une machine Linux. -- Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/> Work: CR INRIA - computer arithmetic / SPACES project at LORIA |
|
|
|
#6 |
|
Messages: n/a
Hébergeur: |
Nicolas George wrote:
> Vincent Lefevre wrote in message > <20060312130015$13cb@prunille.vinc17.org>: >> prunille:~> stty -a | grep echo >> isig icanon iexten echo echoe -echok -echonl -noflsh -tostop -echoprt echoctl >> echoke > >> ay:~> stty -a | grep echo >> isig icanon iexten echo echoe -echok -echonl -noflsh -xcase -tostop -echoprt >> echoctl echoke > > Je vois, ces deux là ont vraiment des modes similaires. Comment le macos se > comporte-t-il avec stty echok ? Il me semble que c'est echoke qui provoque l'effacement de la ligne, pas echok qui lui entraine un saut de ligne, cela dit les deux config sont là aussi identiques ... |
|
|
|
#7 |
|
Messages: n/a
Hébergeur: |
Dans l'article <441435d0$0$8491$636a55ce@news.free.fr>,
Jean-Louis Liagre <jlliagre@localhost.fr> écrit: > Nicolas George wrote: > > Je vois, ces deux là ont vraiment des modes similaires. Comment le > > macos se comporte-t-il avec stty echok ? > Il me semble que c'est echoke qui provoque l'effacement de la ligne, > pas echok qui lui entraine un saut de ligne, cela dit les deux > config sont là aussi identiques ... Oui, ceci dit, un man stty indique: [-]echok echo a newline after a kill character * [-]echoke same as [-]crtkill et * crtkill kill all line by obeying the echoprt and echoe settings * -crtkill kill all line by obeying the echoctl and echok settings Mais comme j'ai echoke (et non -echoke), c'est la config d'echoe qui intervient et pas celle d'echok. Il est donc bizarre que modifier la config d'echok (sous Linux) modifie le comportement du Ctrl-U. -- Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/> Work: CR INRIA - computer arithmetic / SPACES project at LORIA |
|
|
|
#8 |
|
Messages: n/a
Hébergeur: |
Vincent Lefevre wrote:
> Dans l'article <441435d0$0$8491$636a55ce@news.free.fr>, > Jean-Louis Liagre <jlliagre@localhost.fr> écrit: > >> Nicolas George wrote: >>> Je vois, ces deux là ont vraiment des modes similaires. Comment le >>> macos se comporte-t-il avec stty echok ? > >> Il me semble que c'est echoke qui provoque l'effacement de la ligne, >> pas echok qui lui entraine un saut de ligne, cela dit les deux >> config sont là aussi identiques ... > > Oui, ceci dit, un man stty indique: > > [-]echok > echo a newline after a kill character > > * [-]echoke > same as [-]crtkill > > et > > * crtkill > kill all line by obeying the echoprt and echoe settings > > * -crtkill > kill all line by obeying the echoctl and echok settings > > Mais comme j'ai echoke (et non -echoke), c'est la config d'echoe qui > intervient et pas celle d'echok. Il est donc bizarre que modifier la > config d'echok (sous Linux) modifie le comportement du Ctrl-U. Il faudrait comparer le "man termios" sous Linux et MacOS X pour voir si ces options sont supportées de la même façon. echoke, echoprt et crtkill ne sont pas POSIX. |
|
|
|
#9 |
|
Messages: n/a
Hébergeur: |
Dans l'article <44145276$0$8469$636a55ce@news.free.fr>,
Jean-Louis Liagre <jlliagre@localhost.fr> écrit: > Il faudrait comparer le "man termios" sous Linux et MacOS X pour > voir si ces options sont supportées de la même façon. > echoke, echoprt et crtkill ne sont pas POSIX. Sous Linux: ECHO Echo input characters. ECHOE If ICANON is also set, the ERASE character erases the preceding input character, and WERASE erases the preceding word. ECHOK If ICANON is also set, the KILL character erases the current line. ECHONL If ICANON is also set, echo the NL character even if ECHO is not set. ECHOCTL (not in POSIX) If ECHO is also set, ASCII control signals other than TAB, NL, START, and STOP are echoed as ^X, where X is the character with ASCII code 0x40 greater than the control signal. For example, character 0x08 (BS) is echoed as ^H. ECHOPRT (not in POSIX) If ICANON and IECHO are also set, characters are printed as they are being erased. ECHOKE (not in POSIX) If ICANON is also set, KILL is echoed by erasing each character on the line, as specified by ECHOE and ECHOPRT. Sous Mac OS X: ECHOKE /* visual erase for line kill */ ECHOE /* visually erase chars */ ECHO /* enable echoing */ ECHONL /* echo NL even if ECHO is off */ ECHOPRT /* visual erase mode for hardcopy */ ECHOCTL /* echo control chars as ^(Char) */ If ECHO is set, input characters are echoed back to the terminal. If ECHO is not set, input characters are not echoed. If ECHOE and ICANON are set, the ERASE character causes the terminal to erase the last character in the current line from the display, if possible. If there is no character to erase, an implementation may echo an indication that this was the case or do nothing. If ECHOK and ICANON are set, the KILL character causes the current line to be discarded and the system echoes the '\n' character after the KILL character. If ECHOKE and ICANON are set, the KILL character causes the current line to be discarded and the system causes the terminal to erase the line from the display. If ECHOPRT and ICANON are set, the system assumes that the display is a printing device and prints a backslash and the erased characters when processing ERASE characters, followed by a forward slash. If ECHOCTL is set, the system echoes control characters in a visible fashion using a caret followed by the control character. If ECHONL and ICANON are set, the '\n' character echoes even if ECHO is not set. -- Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/> Work: CR INRIA - computer arithmetic / SPACES project at LORIA |
|
![]() |
| Outils de la discussion | |
|
|