🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.os.linux.programowanie
7 messages
7 total messages Started by Gotfryd Smolik news Thu, 26 Jul 2012 14:57
Czym odpytać terminal?
#72496
Author: Gotfryd Smolik news
Date: Thu, 26 Jul 2012 14:57
39 lines
2432 bytes
   Witam, tu mnie jeszcze nie było :)

   Pic jest taki: potrzebne mi są rozmiary terminala.

   Wyraźnie zaznaczę: *nie* to co jest zapisane w LINES
oraz WIDTH czy też co system trzyma sobie "w środku"
w strukturach opisu terminala, lecz program i/lub
funkcja która tenże terminal odpytuje (i potrzebne
wartości zwraca, skutek uboczny w postaci poustawiania
wartości w strukturach jądra i wartości environmentu
nie zawadzi).
   Również nie to, co emulator terminala na danym systemie
"wie" o ustawieniach (terminal jest zdalny).

   Z tego co czytam systemowa obsługa termcap/terminfo
takiej funkcjonalności nie zawiera (przesiadłem się z OSa
w którym jest to "na wyposażeniu"), na razie dotarłem
do tego iż:

   tput cols

...zwraca faktyczną szerokość, przy okazji ustawia
właściwą wartość w COLUMNS, zawsze coś, ale odpowiednika
dla rozmiaru pionowego nie widzę.

   Nie zawadziłoby jakby narzędzie przy okazji pobrało
komplet ustawień (tych co są w jądrze wystarczy,
ale nie to co jądro "myśli" o stanie terminala,
lecz to co terminal zeznaje o swoim stanie).
   Jest coś takiego, co przeoczyłem?
   Czy mam sobie sam napisać obługę na sekwencjach VT/ESC??
   Wrrr...
(dla jasności, z braku laku i braku koniecznosci obsługi
innych typów terminali nie jest to aż taki problem,
ale jakby mało elegancki)
PS: proszę nie sugerować że "niedasię" (systemowo), z góry
   odsyłam do termtable - smgterms :]

pozdrowiania, Gotfryd
Re: Czym odpytać terminal?
#72497
Author: Bogdan (bogdro)
Date: Thu, 26 Jul 2012 16:22
55 lines
3136 bytes
W dniu 26.07.2012 16:57, Gotfryd Smolik news pisze:
>   Witam, tu mnie jeszcze nie było :)
> 
>   Pic jest taki: potrzebne mi są rozmiary terminala.
> 
>   Wyraźnie zaznaczę: *nie* to co jest zapisane w LINES
> oraz WIDTH czy też co system trzyma sobie "w środku"
> w strukturach opisu terminala, lecz program i/lub
> funkcja która tenże terminal odpytuje (i potrzebne
> wartości zwraca, skutek uboczny w postaci poustawiania
> wartości w strukturach jądra i wartości environmentu
> nie zawadzi).
>   Również nie to, co emulator terminala na danym systemie
> "wie" o ustawieniach (terminal jest zdalny).
> 
>   Z tego co czytam systemowa obsługa termcap/terminfo
> takiej funkcjonalności nie zawiera (przesiadłem się z OSa
> w którym jest to "na wyposażeniu"), na razie dotarłem
> do tego iż:
> 
>   tput cols
> 
> ...zwraca faktyczną szerokość, przy okazji ustawia
> właściwą wartość w COLUMNS, zawsze coś, ale odpowiednika
> dla rozmiaru pionowego nie widzę.
> 
>   Nie zawadziłoby jakby narzędzie przy okazji pobrało
> komplet ustawień (tych co są w jądrze wystarczy,
> ale nie to co jądro "myśli" o stanie terminala,
> lecz to co terminal zeznaje o swoim stanie).
>   Jest coś takiego, co przeoczyłem?
>   Czy mam sobie sam napisać obługę na sekwencjach VT/ESC??
>   Wrrr...
> (dla jasności, z braku laku i braku koniecznosci obsługi
> innych typów terminali nie jest to aż taki problem,
> ale jakby mało elegancki)
> PS: proszę nie sugerować że "niedasię" (systemowo), z góry
>   odsyłam do termtable - smgterms :]
> 
> pozdrowiania, Gotfryd

 Witam.

 Nie wiem, na ile przydatne informacje znajdziesz w "man vcsa" (być
może to jest to, co opisujesz jako "system trzyma sobie w środku"),
ale możesz zacząć od tego.
 Potem poleciłbym strony manuala, do których prowadzi strona "man
console".
 W dalszej kolejności - kod źródłowy biblioteki ncurses.

-- 
Pozdrawiam/Regards - Bogdan                     (GNU/Linux & FreeDOS)
Kurs asemblera x86 (DOS, GNU/Linux):http://rudy.mif.pg.gda.pl/~bogdro
Grupy dyskusyjne o asm:  pl.comp.lang.asm alt.pl.asm alt.pl.asm.win32
www.Xiph.org   www.TorProject.org   Soft (EN): miniurl.pl/bogdro-soft
Re: Czym odpytać terminal?
#72498
Author: Adam Wysocki
Date: Thu, 26 Jul 2012 20:06
9 lines
1670 bytes
"Bogdan (bogdro)" <bogdan@poczta.gazeta.pl> wrote:

> Soft (EN): miniurl.pl/bogdro-soft

Nie działa :(

-- 
Gof
http://www.chmurka.net/
Re: Czym odpytać terminal?
#72499
Author: Bogdan (bogdro)
Date: Fri, 27 Jul 2012 15:49
16 lines
1453 bytes
W dniu 26.07.2012 22:06, Adam Wysocki pisze:
> "Bogdan (bogdro)" <bogdan@poczta.gazeta.pl> wrote:
> 
>> Soft (EN): miniurl.pl/bogdro-soft
> 
> Nie działa :(
> 

Choroba, faktycznie. Trzeba będzie poprawić.
 http://rudy.mif.pg.gda.pl/~bogdro/soft/

-- 
Pozdrawiam/Regards - Bogdan                     (GNU/Linux & FreeDOS)
Kurs asemblera x86 (DOS, GNU/Linux):http://rudy.mif.pg.gda.pl/~bogdro
Grupy dyskusyjne o asm:  pl.comp.lang.asm alt.pl.asm alt.pl.asm.win32
www.Xiph.org   www.TorProject.org
Re: Czym odpytać terminal?
#72500
Author: Gotfryd Smolik news
Date: Fri, 27 Jul 2012 21:49
66 lines
3852 bytes
On Thu, 26 Jul 2012, Bogdan (bogdro) wrote:

  Dzięki, ale pozwolę sobie na skomentowanie odpowiedzi
cytatami z pytania :)

> Nie wiem, na ile przydatne informacje znajdziesz w "man vcsa" (być
> może to jest to, co opisujesz jako "system trzyma sobie w środku"),
> ale możesz zacząć od tego.

  To jest coś co ująłem tak:

>>   Również nie to, co emulator terminala na danym systemie
>> "wie" o ustawieniach (terminal jest zdalny).

  Właśnie - nie o to chodzi, co ma miejsce przy konsoli.
  System, w odróżnieniu od terminala swojej konsoli lub ew. innych
"swoich" terminali (terminali z x-windows, screen itede) nie
ma szans wiedzieć jakie "obcy" terminal ma ustawienia.
  Musi odpytać.
  Funkcja o którą pytam musi być właściwością lub obsługą
terminala (każdego), a nie konsoli.
  Dla jasności: oczywiście, jeśli protokół danego terminala
nie jest "znany" funkcji odpytującej lub dany typ terminala
(bądź emulatora) nie zawiera kodów "odpytywania", to operacja
się nie powiedzi i wynik jest "unknown" (pozostaje załatanie
w takie sposób, jak robi to obsługa związana z terminfo,
czyli przyjęcie defaultów "w ciemno").
  Ale dla wiekszości terminali (tudzież emulatorów), i to
nie tylko VT-* (wszystkie VT obsługują "odpytywanie",
ale nie tylko VT) rozwiązanie to nie jest.

> Potem poleciłbym strony manuala, do których prowadzi strona
> "man console".

  Jak wyżej :)
(w przypadku konsoli system wie jakie ona ma ustawienia, bo
sam ją tworzy i obsługuje "po drugiej stronie").

> W dalszej kolejności - kod źródłowy biblioteki ncurses.

  Przepraszam że nie napisałem, iż rzeczy oczywiste sprawdziłem
przed zadaniem pytania :), w razie potrzeby mogę ponownie
odszukać gdzie w dokumentacji curses zaznaczono że wartości
które zwraca pochodzą z odczytu danych jądra (a nie terminala),
zeznaję również, że organoleptycznie sprawdziłem, że tak
jest (jeśli ustawienie terminala jest inne niż dane jądra
i environment shella, to brane są wartości "programowe",
a nie ustawienie terminala).
  Sprawdziłem (organoleptycznie, znaczy kawałkiem programu)
że newterm i initscr nie wywołują "odpytywania".

  Sprawdziłem również, że tput cols faktycznie "odpytuje"
terminal (i jest to jedyny znalezione przeze mnie "gotowiec").
  Ale już dla "page" (czyli wysokości w liniach) żadnego
"gotowca" nie spotkałem, o reszcie cech (echo, wrapping,
7/8 bit itd) nie wspominając.
  Ale o ile resztę wartości można w większości przypadków
wziąć i po prostu "wcisnąć" do terminala (co stty robi),
to wysokości strony to nie dotyczy (z różnych powodów,
od tego że hardware nie obsługuje, do tego że w emulatorze
jest zablokowane wymiarowanie, właśnie w celu emulacji
hardware).

  No nic, mam na stosie kolejną rzecz "zrobić później" :]

pzdr, Gotfryd
Re: Czym odpytać terminal?
#72501
Author: Bartlomiej Lidke
Date: Sun, 29 Jul 2012 18:24
16 lines
1477 bytes
Gotfryd Smolik news <smolik@stanpol.com.pl> wrote:
>   tput cols
> 
> ...zwraca faktyczną szerokość, przy okazji ustawia
> właściwą wartość w COLUMNS, zawsze coś, ale odpowiednika
> dla rozmiaru pionowego nie widzę.

tput lines

ktore patrzac po trace wola tigetnum

-- 
butthead
                                         o 'Niesmiertelnym' (c) Pleciucha:
"Jest to jedyny film, w którym Szkot gra Egipcjanina, który jest Hiszpanem
 i Francuz, który gra Szkota, który jest Nowojorczykiem..."
Re: Czym odpytać terminal?
#72502
Author: Stachu 'Dozzie' K.
Date: Sun, 29 Jul 2012 18:28
18 lines
1738 bytes
On 2012-07-29, Bartlomiej Lidke <onegrx.yvqxr@barg.rh.rot13.invalid> wrote:
> Gotfryd Smolik news <smolik@stanpol.com.pl> wrote:
>>   tput cols
>> 
>> ...zwraca faktyczną szerokość, przy okazji ustawia
>> właściwą wartość w COLUMNS, zawsze coś, ale odpowiednika
>> dla rozmiaru pionowego nie widzę.
>
> tput lines
>
> ktore patrzac po trace wola tigetnum

...pochodzące z biblioteki ncurses, która powinna być pierwszą
odpowiedzią w wątku.

-- 
Secunia non olet.
Stanislaw Klekot
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads