guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GOOPS Terminal Class - RnRS POSIX support


From: Mike Gran
Subject: Re: GOOPS Terminal Class - RnRS POSIX support
Date: Tue, 23 Jun 2015 13:30:37 +0000 (UTC)

WOn Tuesday, June 23, 2015 1:04 AM, Michael Tiedtke <address@hidden> wrote:

> Now, full access to "POSIX system calls" means more and less than
> that. When you want to have a look at my current terminal
> application driver you will see it's current shortcomings: missing a
> general (Linux specific) ioctl primitive it uses the stay
> command to set raw and sane mode of terminal operation. Try to 
> read out the dimension of the terminal with get-dimensions:
> for me this surprisingly works flawlessly in the modern Gnome
> Terminal - but it remains stuck in the response reader on a
> Linux tty and even in XTerm itsself although the escape
> sequence used stems from it's documentation (ctlseqs.txt).
> Well, probably window control sequences are turned off on
> my Ubuntu system and I should revert to the Linux specific ioctl.
>

Well, already you are running into the small differences
between terminals.  The terminfo part of ncurses tries to
capture the differences between terminals. It is a mammoth
undertaking.  Without reimplementing or using terminfo,
you'll have to choose a small set of target terminals or a
small subset of escape sequences that actually work on
most terminals. 

> I would like to suggest rethinking the POSIX interface
> to allow it to be extended with device semantics, i.e.
> meaningful entries. In the case of the virtual terminal
> a well crafted terminal device application driver allows
> to do without the C-specific readline and ncurses
> libraries and it would allow to write real applications
> capable of treating the terminal as the keyboard+screen
> that it is instead of abusing it as stdio like a typewriter
> from 100 years ago.

Yeah.  In the guile-ncurses bindings, I did try to make the
interface slightly more like Scheme, but,
it is what it is. The underlying ncurses interface is hard
to make scheme-like.

www.gnu.org/s/guile-ncurses

-Mike Gran


reply via email to

[Prev in Thread] Current Thread [Next in Thread]