Dans un shell bash (que ce soit xterm X11 ou Terminal.app), lorsque je tape Ctrl-V, End
j'obtiens la séquence : ^[[F
Sous linux, j'obtiens plutôt la séquence : ^[[4~
Y-a-t-il un explication à cette différence ?
Oui. Tous les terminaux sont differents car ont des histoires differentes.
xterm peut etre compilé avec des variantes differentes. Par exemple, si tu le compiles avec --enable-sco-fkeys, tu auras ^[[F (et tu devras utiliser xterm-sco pour $TERM pour que les applications sachent que ^[[F veut dire End).
De plus, lorsque je me connecte depuis un shell Mac OS X à un linux, j'obtiens la séquence ^[[4~, soit la séquence obtenue sous Linux.
Ca, c'est plus surprenant. Par quel moyen te connectes-tu? Je sais que telnet a le moyen de faire des traductions de touches a la volee mais que dans un mode particulier et pas sur des touches comme End.
Peut-etre que le telnet sur MacOSX fait la conversion vers un mode plus /portable/ (ou passe le terminal dans un mode plus portable) pour eviter les problemes d'interoperabilité.
Et quand tu fais un telnet/ssh/rlogin vers un autre OS X, qu'est-ce que tu obtiens?
-- Stephane
2004-12-6, 09:13(+01), DINH Viêt Hoà:
[...]
Dans un shell bash (que ce soit xterm X11 ou Terminal.app),
lorsque je tape Ctrl-V, End
j'obtiens la séquence : ^[[F
Sous linux, j'obtiens plutôt la séquence : ^[[4~
Y-a-t-il un explication à cette différence ?
Oui. Tous les terminaux sont differents car ont des histoires
differentes.
xterm peut etre compilé avec des variantes differentes. Par
exemple, si tu le compiles avec --enable-sco-fkeys, tu auras
^[[F (et tu devras utiliser xterm-sco pour $TERM pour que les
applications sachent que ^[[F veut dire End).
De plus, lorsque je me connecte depuis un shell Mac OS X à un linux,
j'obtiens la séquence ^[[4~, soit la séquence obtenue sous Linux.
Ca, c'est plus surprenant. Par quel moyen te connectes-tu? Je
sais que telnet a le moyen de faire des traductions de touches
a la volee mais que dans un mode particulier et pas sur des
touches comme End.
Peut-etre que le telnet sur MacOSX fait la conversion vers un
mode plus /portable/ (ou passe le terminal dans un mode plus
portable) pour eviter les problemes d'interoperabilité.
Et quand tu fais un telnet/ssh/rlogin vers un autre OS X,
qu'est-ce que tu obtiens?
Dans un shell bash (que ce soit xterm X11 ou Terminal.app), lorsque je tape Ctrl-V, End
j'obtiens la séquence : ^[[F
Sous linux, j'obtiens plutôt la séquence : ^[[4~
Y-a-t-il un explication à cette différence ?
Oui. Tous les terminaux sont differents car ont des histoires differentes.
xterm peut etre compilé avec des variantes differentes. Par exemple, si tu le compiles avec --enable-sco-fkeys, tu auras ^[[F (et tu devras utiliser xterm-sco pour $TERM pour que les applications sachent que ^[[F veut dire End).
De plus, lorsque je me connecte depuis un shell Mac OS X à un linux, j'obtiens la séquence ^[[4~, soit la séquence obtenue sous Linux.
Ca, c'est plus surprenant. Par quel moyen te connectes-tu? Je sais que telnet a le moyen de faire des traductions de touches a la volee mais que dans un mode particulier et pas sur des touches comme End.
Peut-etre que le telnet sur MacOSX fait la conversion vers un mode plus /portable/ (ou passe le terminal dans un mode plus portable) pour eviter les problemes d'interoperabilité.
Et quand tu fais un telnet/ssh/rlogin vers un autre OS X, qu'est-ce que tu obtiens?
-- Stephane
Charles Plessy
Stephane Chazelas wrote:
2004-12-6, 09:13(+01), DINH Viêt Hoà: [...]
Dans un shell bash (que ce soit xterm X11 ou Terminal.app), lorsque je tape Ctrl-V, End
j'obtiens la séquence : ^[[F
Sous linux, j'obtiens plutôt la séquence : ^[[4~
Y-a-t-il un explication à cette différence ?
Oui. Tous les terminaux sont differents car ont des histoires differentes.
... et je conseille vivement http://iterm.sourceforge.net/ , qui permet choisir la valeur que tu désires.
-- Charles
Stephane Chazelas wrote:
2004-12-6, 09:13(+01), DINH Viêt Hoà:
[...]
Dans un shell bash (que ce soit xterm X11 ou Terminal.app),
lorsque je tape Ctrl-V, End
j'obtiens la séquence : ^[[F
Sous linux, j'obtiens plutôt la séquence : ^[[4~
Y-a-t-il un explication à cette différence ?
Oui. Tous les terminaux sont differents car ont des histoires
differentes.
... et je conseille vivement http://iterm.sourceforge.net/ , qui permet
choisir la valeur que tu désires.
Dans un shell bash (que ce soit xterm X11 ou Terminal.app), lorsque je tape Ctrl-V, End
j'obtiens la séquence : ^[[F
Sous linux, j'obtiens plutôt la séquence : ^[[4~
Y-a-t-il un explication à cette différence ?
Oui. Tous les terminaux sont differents car ont des histoires differentes.
... et je conseille vivement http://iterm.sourceforge.net/ , qui permet choisir la valeur que tu désires.
-- Charles
DINH Viêt Hoà
Bonjour,
je n'osais pas m'adresser à toi directement via le newsgroup :)
Oui. Tous les terminaux sont differents car ont des histoires differentes.
xterm peut etre compilé avec des variantes differentes. Par exemple, si tu le compiles avec --enable-sco-fkeys, tu auras ^[[F (et tu devras utiliser xterm-sco pour $TERM pour que les applications sachent que ^[[F veut dire End).
hum ... là, par défaut, c'est plutôt "xterm-color" par défaut et pour xterm, c'est "xterm".
De plus, lorsque je me connecte depuis un shell Mac OS X à un linux, j'obtiens la séquence ^[[4~, soit la séquence obtenue sous Linux.
Ca, c'est plus surprenant.
Effectivement, je racontai n'importe quoi.
Par quel moyen te connectes-tu? Je sais que telnet a le moyen de faire des traductions de touches a la volee mais que dans un mode particulier et pas sur des touches comme End.
Je me connecte en utilisant ssh. Hum ... je viens de vérifier et en fait, c'est lorsque j'utilise screen que les problèmes surviennent.
récapitulons :
combinaison TERM séquence xterm X11 xterm ESC [ F xterm X11 + screen screen ESC OH (lettre O) Terminal.app xterm-color ESC [ F Terminal.app + screen screen ESC [ F
xterm X11 + ssh linux xterm ESC [ F xterm X11 + ssh linux + screen(bce) screen-bce ESC [ 4~ Terminal.app + ssh linux xterm-color ESC [ F Terminal.app + ssh linux + screen(bce) screen-bce ESC [ F
Manque-t-il un travail du côté du terminal Mac OS X ?
-- DINH V. Hoa,
"Il y a anguille sous roche"
Bonjour,
je n'osais pas m'adresser à toi directement via le newsgroup :)
Oui. Tous les terminaux sont differents car ont des histoires
differentes.
xterm peut etre compilé avec des variantes differentes. Par
exemple, si tu le compiles avec --enable-sco-fkeys, tu auras
^[[F (et tu devras utiliser xterm-sco pour $TERM pour que les
applications sachent que ^[[F veut dire End).
hum ... là, par défaut, c'est plutôt "xterm-color" par défaut et pour
xterm, c'est "xterm".
De plus, lorsque je me connecte depuis un shell Mac OS X à un linux,
j'obtiens la séquence ^[[4~, soit la séquence obtenue sous Linux.
Ca, c'est plus surprenant.
Effectivement, je racontai n'importe quoi.
Par quel moyen te connectes-tu? Je
sais que telnet a le moyen de faire des traductions de touches
a la volee mais que dans un mode particulier et pas sur des
touches comme End.
Je me connecte en utilisant ssh.
Hum ... je viens de vérifier et en fait, c'est lorsque j'utilise screen
que les problèmes surviennent.
récapitulons :
combinaison TERM séquence
xterm X11 xterm ESC [ F
xterm X11 + screen screen ESC OH (lettre O)
Terminal.app xterm-color ESC [ F
Terminal.app + screen screen ESC [ F
xterm X11 + ssh linux xterm ESC [ F
xterm X11 + ssh linux + screen(bce) screen-bce ESC [ 4~
Terminal.app + ssh linux xterm-color ESC [ F
Terminal.app + ssh linux + screen(bce) screen-bce ESC [ F
Manque-t-il un travail du côté du terminal Mac OS X ?
je n'osais pas m'adresser à toi directement via le newsgroup :)
Oui. Tous les terminaux sont differents car ont des histoires differentes.
xterm peut etre compilé avec des variantes differentes. Par exemple, si tu le compiles avec --enable-sco-fkeys, tu auras ^[[F (et tu devras utiliser xterm-sco pour $TERM pour que les applications sachent que ^[[F veut dire End).
hum ... là, par défaut, c'est plutôt "xterm-color" par défaut et pour xterm, c'est "xterm".
De plus, lorsque je me connecte depuis un shell Mac OS X à un linux, j'obtiens la séquence ^[[4~, soit la séquence obtenue sous Linux.
Ca, c'est plus surprenant.
Effectivement, je racontai n'importe quoi.
Par quel moyen te connectes-tu? Je sais que telnet a le moyen de faire des traductions de touches a la volee mais que dans un mode particulier et pas sur des touches comme End.
Je me connecte en utilisant ssh. Hum ... je viens de vérifier et en fait, c'est lorsque j'utilise screen que les problèmes surviennent.
récapitulons :
combinaison TERM séquence xterm X11 xterm ESC [ F xterm X11 + screen screen ESC OH (lettre O) Terminal.app xterm-color ESC [ F Terminal.app + screen screen ESC [ F
xterm X11 + ssh linux xterm ESC [ F xterm X11 + ssh linux + screen(bce) screen-bce ESC [ 4~ Terminal.app + ssh linux xterm-color ESC [ F Terminal.app + ssh linux + screen(bce) screen-bce ESC [ F
Manque-t-il un travail du côté du terminal Mac OS X ?
-- DINH V. Hoa,
"Il y a anguille sous roche"
Stephane Chazelas
2004-12-6, 13:07(+01), DINH Viêt Hoà: [...]
récapitulons :
combinaison TERM séquence xterm X11 xterm ESC [ F xterm X11 + screen screen ESC OH (lettre O) Terminal.app xterm-color ESC [ F Terminal.app + screen screen ESC [ F
xterm X11 + ssh linux xterm ESC [ F
xterm X11 + ssh linux + screen(bce) screen-bce ESC [ 4~ Terminal.app + ssh linux xterm-color ESC [ F Terminal.app + ssh linux + screen(bce) screen-bce ESC [ F
Manque-t-il un travail du côté du terminal Mac OS X ?
Le probleme vient du fait que "xterm-color" correspondent a deux choses differentes sur OSX et Linux.
Si tu fait un infocmp sur xterm, xterm-color, screen, screen-bce, tu devrais obtenir sur Linux pour kend:
EOF E[4~ E[4~ E[4~
(EOF, c'est l'equivalent en mode keypad de E[F)
Alors que sous MacOSX, tu as peut-etre:
EOF EOF EOF EOF
Quand, sur Linux, tu lances screen en lui disant que le terminal est "xterm-color", il va voir dans la base terminfo que kend correspond a E[4~. Lui, il pretend envoyer un E[4~ sur frappe de <End>, donc, il va convertir les E[4~ qu'il recoit du terminal en E[4~ qu'il envoie a l'application. Par contre, il va ignorer les E[F et EOF qui viennent du terminal, parce qu'il ne sait pas a quoi ca correspond.
Donc, sous Linux, il faut adapter la valeur de TERM a quelque chose qui ressemble plus a ce qu'est le terminal (peut-etre xterm ou dtterm ou xterm-16color ou xterm-xfree86...)
-- Stephane
2004-12-6, 13:07(+01), DINH Viêt Hoà:
[...]
récapitulons :
combinaison TERM séquence
xterm X11 xterm ESC [ F
xterm X11 + screen screen ESC OH (lettre O)
Terminal.app xterm-color ESC [ F
Terminal.app + screen screen ESC [ F
xterm X11 + ssh linux xterm ESC [ F
xterm X11 + ssh linux + screen(bce) screen-bce ESC [ 4~
Terminal.app + ssh linux xterm-color ESC [ F
Terminal.app + ssh linux + screen(bce) screen-bce ESC [ F
Manque-t-il un travail du côté du terminal Mac OS X ?
Le probleme vient du fait que "xterm-color" correspondent a deux
choses differentes sur OSX et Linux.
Si tu fait un infocmp sur xterm, xterm-color, screen, screen-bce, tu
devrais obtenir sur Linux pour kend:
EOF E[4~ E[4~ E[4~
(EOF, c'est l'equivalent en mode keypad de E[F)
Alors que sous MacOSX, tu as peut-etre:
EOF EOF EOF EOF
Quand, sur Linux, tu lances screen en lui disant que le terminal
est "xterm-color", il va voir dans la base terminfo que kend
correspond a E[4~. Lui, il pretend envoyer un E[4~ sur frappe
de <End>, donc, il va convertir les E[4~ qu'il recoit du
terminal en E[4~ qu'il envoie a l'application. Par contre, il
va ignorer les E[F et EOF qui viennent du terminal, parce
qu'il ne sait pas a quoi ca correspond.
Donc, sous Linux, il faut adapter la valeur de TERM a quelque
chose qui ressemble plus a ce qu'est le terminal (peut-etre
xterm ou dtterm ou xterm-16color ou xterm-xfree86...)
combinaison TERM séquence xterm X11 xterm ESC [ F xterm X11 + screen screen ESC OH (lettre O) Terminal.app xterm-color ESC [ F Terminal.app + screen screen ESC [ F
xterm X11 + ssh linux xterm ESC [ F
xterm X11 + ssh linux + screen(bce) screen-bce ESC [ 4~ Terminal.app + ssh linux xterm-color ESC [ F Terminal.app + ssh linux + screen(bce) screen-bce ESC [ F
Manque-t-il un travail du côté du terminal Mac OS X ?
Le probleme vient du fait que "xterm-color" correspondent a deux choses differentes sur OSX et Linux.
Si tu fait un infocmp sur xterm, xterm-color, screen, screen-bce, tu devrais obtenir sur Linux pour kend:
EOF E[4~ E[4~ E[4~
(EOF, c'est l'equivalent en mode keypad de E[F)
Alors que sous MacOSX, tu as peut-etre:
EOF EOF EOF EOF
Quand, sur Linux, tu lances screen en lui disant que le terminal est "xterm-color", il va voir dans la base terminfo que kend correspond a E[4~. Lui, il pretend envoyer un E[4~ sur frappe de <End>, donc, il va convertir les E[4~ qu'il recoit du terminal en E[4~ qu'il envoie a l'application. Par contre, il va ignorer les E[F et EOF qui viennent du terminal, parce qu'il ne sait pas a quoi ca correspond.
Donc, sous Linux, il faut adapter la valeur de TERM a quelque chose qui ressemble plus a ce qu'est le terminal (peut-etre xterm ou dtterm ou xterm-16color ou xterm-xfree86...)
-- Stephane
DINH Viêt Hoà
Le probleme vient du fait que "xterm-color" correspondent a deux choses differentes sur OSX et Linux.
Si tu fait un infocmp sur xterm, xterm-color, screen, screen-bce, tu devrais obtenir sur Linux pour kend:
Lundi 06 décembre 2004 à 13:45 GMT, DINH Viêt Hoà a écrit :
à noter que j'ai l'impression qu'infocmp n'existe pas sur FreeBSD.
Il suffit de demander : <http://www.freebsd.org/cgi/query-pr.cgi?prq801>.
On peut aussi l'avoir en installant la version qui est dans les ports (devel/ncurses). -- Th. Thomas.
Stephane Chazelas
2004-12-6, 14:13(+00), Thierry Thomas:
Lundi 06 décembre 2004 à 13:45 GMT, DINH Viêt Hoà a écrit :
à noter que j'ai l'impression qu'infocmp n'existe pas sur FreeBSD.
Il suffit de demander : <http://www.freebsd.org/cgi/query-pr.cgi?prq801>.
On peut aussi l'avoir en installant la version qui est dans les ports (devel/ncurses).
Oui, mais il me semble qu'on obtient alors un ncurses mis a la sauce BSD. OK ya un backend terminfo, mais on reste termcap en frontend et ncurses fait la conversion comme elle peut (ce qui peut poser quelques petits problemes et termcap reste toujours plus limité que terminfo). Enfin, ce sont de vieux souvenirs, ca peut avoir evolué depuis.
-- Stephane
2004-12-6, 14:13(+00), Thierry Thomas:
Lundi 06 décembre 2004 à 13:45 GMT, DINH Viêt Hoà a écrit :
à noter que j'ai l'impression qu'infocmp n'existe pas sur FreeBSD.
Il suffit de demander :
<http://www.freebsd.org/cgi/query-pr.cgi?prq801>.
On peut aussi l'avoir en installant la version qui est dans les ports
(devel/ncurses).
Oui, mais il me semble qu'on obtient alors un ncurses mis a la
sauce BSD. OK ya un backend terminfo, mais on reste termcap en
frontend et ncurses fait la conversion comme elle peut (ce qui
peut poser quelques petits problemes et termcap reste toujours
plus limité que terminfo). Enfin, ce sont de vieux souvenirs, ca
peut avoir evolué depuis.
Lundi 06 décembre 2004 à 13:45 GMT, DINH Viêt Hoà a écrit :
à noter que j'ai l'impression qu'infocmp n'existe pas sur FreeBSD.
Il suffit de demander : <http://www.freebsd.org/cgi/query-pr.cgi?prq801>.
On peut aussi l'avoir en installant la version qui est dans les ports (devel/ncurses).
Oui, mais il me semble qu'on obtient alors un ncurses mis a la sauce BSD. OK ya un backend terminfo, mais on reste termcap en frontend et ncurses fait la conversion comme elle peut (ce qui peut poser quelques petits problemes et termcap reste toujours plus limité que terminfo). Enfin, ce sont de vieux souvenirs, ca peut avoir evolué depuis.
-- Stephane
Thierry Thomas
Lundi 06 décembre 2004 à 14:27 GMT, Stephane Chazelas a écrit :
On peut aussi l'avoir en installant la version qui est dans les ports (devel/ncurses).
Oui, mais il me semble qu'on obtient alors un ncurses mis a la sauce BSD. OK ya un backend terminfo, mais on reste termcap en frontend et ncurses fait la conversion comme elle peut (ce qui peut poser quelques petits problemes et termcap reste toujours plus limité que terminfo). Enfin, ce sont de vieux souvenirs, ca peut avoir evolué depuis.
ncurses n'évolue pas beaucoup sur FreeBSD, mais la version installée par ce port utilise bien terminfo par défaut (on peut toujours utiliser termcap si besoin¹ via les routines tget* et tputs).
¹: je suppose pour maintenir une compatibilité avec de vielles applis ? -- Th. Thomas.
Lundi 06 décembre 2004 à 14:27 GMT, Stephane Chazelas a écrit :
On peut aussi l'avoir en installant la version qui est dans les ports
(devel/ncurses).
Oui, mais il me semble qu'on obtient alors un ncurses mis a la
sauce BSD. OK ya un backend terminfo, mais on reste termcap en
frontend et ncurses fait la conversion comme elle peut (ce qui
peut poser quelques petits problemes et termcap reste toujours
plus limité que terminfo). Enfin, ce sont de vieux souvenirs, ca
peut avoir evolué depuis.
ncurses n'évolue pas beaucoup sur FreeBSD, mais la version installée par
ce port utilise bien terminfo par défaut (on peut toujours utiliser
termcap si besoin¹ via les routines tget* et tputs).
¹: je suppose pour maintenir une compatibilité avec de vielles applis ?
--
Th. Thomas.
Lundi 06 décembre 2004 à 14:27 GMT, Stephane Chazelas a écrit :
On peut aussi l'avoir en installant la version qui est dans les ports (devel/ncurses).
Oui, mais il me semble qu'on obtient alors un ncurses mis a la sauce BSD. OK ya un backend terminfo, mais on reste termcap en frontend et ncurses fait la conversion comme elle peut (ce qui peut poser quelques petits problemes et termcap reste toujours plus limité que terminfo). Enfin, ce sont de vieux souvenirs, ca peut avoir evolué depuis.
ncurses n'évolue pas beaucoup sur FreeBSD, mais la version installée par ce port utilise bien terminfo par défaut (on peut toujours utiliser termcap si besoin¹ via les routines tget* et tputs).
¹: je suppose pour maintenir une compatibilité avec de vielles applis ? -- Th. Thomas.
Nicolas George
Stephane Chazelas wrote in message :
(EOF, c'est l'equivalent en mode keypad de E[F)
Ah, peut-être quelqu'un ici poura me renseigner sur ce point : quel est l'_intérêt_ de changer le codage ainsi ?
Stephane Chazelas wrote in message
<slrncr8ltn.4l0.stephane.chazelas@spam.is.invalid>:
(EOF, c'est l'equivalent en mode keypad de E[F)
Ah, peut-être quelqu'un ici poura me renseigner sur ce point : quel est
l'_intérêt_ de changer le codage ainsi ?