[FreeBSD] beallitasok
Zahemszky Gábor
Gabor at Zahemszky.HU
2002. Jún. 29., Szo, 23:13:11 CEST
On Sat, Jun 29, 2002 at 09:37:20PM +0200, Marton Fabo wrote:
>
> >A mukodok sikeres bekonfiguralasahoz sokat segithet, ha valamilyen modon
> >meg tudod allapitani, hogy a hasznalt terminalnal az altalad igenyelt
> >(Home, End, stb) gombok milyen szekvenciakat kuldenek el. Ezt pl. magaban
> >a shell-ben is megteheted altalaban, ugyszinten emacs-modot feltetelezve
> >\<HOME> (pdksh eseten <CTRL-^><HOME>) utan _latod_, hogy az adott billentyu
> >milyen szekvenciat kuld.
>
> Ha jol emlekszem, annak idejen az volt vele a nagy bajom, hogy a home/end
> tobb karaktert kuld, mint amihez a ksh-ban bindelni lehet.
>
> Egyebkent a NetBSD 1.5 alatt default felpakolt ksh-t hasznalom leginkabb,
> majd ha odajutok, meg is mondom, pontosan milyen verzio. A terminal meg
> valtozo, hol PuTTY, hol beterm, hol Konzole, hol wscons, stb.
OK. Az pdksh, es az a trukk a kovetkezo:
xterm es konsole alatt a HOME pl. <ESC>[H . Ha kiadod a ``bind'' parancsot,
akkor harom fontos dolog lathato:
1) ^XA = up-history - itt csak az az erdekes, hogy ezzel van definialva a
folnyil hasznalata, ami <ESC>[A
2) ^X = prefix-2 - es
3) ^[[ = prefix-2 - azaz <ESC>[ prefix-2-nek van definialva, de ha egy masik
``bind''-ban akarod hasznalni, akkor - az 1) alapjan ott ^X-kent kell ra
hivatkozni. Rusnya dolog, es baromira nincs dokumentalva, de kitalalhato :-)
Tehat ^XH -t kell bind-olni, es ha mondjuk sor elejere akarod vitetni a
kurzort, akkor pl:
bind ^XH=beginning-of-line
es mar mukodik is - legalabbis a masik ablakban ez most ment.
Amugy ha jol emlekszem, vt100-kompatibilis terminalban ez a szekvencia a
HOME, azaz szinte biztos, hogy mindegy, hogy Putty, wscons, stb, a fenti
muvelet jol mukodik.
ZGabor < Gabor at Zahemszky dot HU >
--
#!/bin/ksh
Z='21N16I25C25E30, 40M30E33E25T15U!' ;IFS=' ABCDEFGHIJKLMNOPQRSTUVWXYZ ';set $Z ;for i { [[ $i = ? ]]&&print $i&&break;[[ $i = ??? ]]&&j=$i&&i=${i%?};typeset -i40 i=8#$i;print -n ${i#???};[[ "$j" = ??? ]]&&print -n "${j#??} "&&j=;typeset +i i;};IFS=' 0123456789 ';set $Z;for i { [[ $i = , ]]&&i=2;[[ $i = ?? ]]||typeset -l i;j="$j $i";typeset +l i;};print "$j"
További információk a(z) BSD levelezőlistáról