[Top][All Lists]

[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.

-Mike Gran

reply via email to

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