From owner-freebsd-current@FreeBSD.ORG Tue May 18 17:12:21 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ACFCE16A4CE; Tue, 18 May 2004 17:12:21 -0700 (PDT) Received: from relay.rinet.ru (relay.rinet.ru [195.54.192.35]) by mx1.FreeBSD.org (Postfix) with ESMTP id EF6D843D2D; Tue, 18 May 2004 17:12:20 -0700 (PDT) (envelope-from flist@qqmore.rinet.ru) Received: from relay.rinet.ru (localhost [127.0.0.1]) by relay.rinet.ru (8.12.9p2/8.12.9) with ESMTP id i4J0CIeo062759 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 19 May 2004 04:12:18 +0400 (MSD) (envelope-from flist@qqmore.rinet.ru) Received: (from uucp@localhost)i4J0CHIw062757; Wed, 19 May 2004 04:12:17 +0400 (MSD) (envelope-from flist@qqmore.rinet.ru) Received: from qqmore.rinet.ru. (localhost.rinet.ru [127.0.0.1]) by qqmore.rinet.ru. (8.12.11/8.12.11) with ESMTP id i4J0C6C3008206; Wed, 19 May 2004 04:12:07 +0400 (MSD) (envelope-from flist@qqmore.rinet.ru) Received: (from flist@localhost) by qqmore.rinet.ru. (8.12.11/8.12.11/Submit) id i4J0C6Tj008205; Wed, 19 May 2004 04:12:06 +0400 (MSD) (envelope-from flist) Date: Wed, 19 May 2004 04:12:06 +0400 From: Alex Semenyaka To: freebsd-current@freebsd.org Message-ID: <20040519001206.GC5900@qqmore.rinet.ru> Mail-Followup-To: Alex Semenyaka , freebsd-current@freebsd.org, murray@freebsd.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.6i X-Mailman-Approved-At: Wed, 19 May 2004 04:47:19 -0700 Subject: Editline library improvement X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 May 2004 00:12:21 -0000 Colleagues, I'm trying to improve editline library in order to it would fit my needs and fix some bugs. First of all I'd like to fix the way it handles signals. Now the signal handler at it's end restores the old handler and send interrupt recived to the whole process group. Well, I do not like the last step but some third-party software might rely upon that [strange] behaviour so I would like to have a way to turn it off. But the first step, the restoration of the old hadler, is just wrong for signal SIGWINCH. The result is that application cannot track down the changes of the window size automatically more than one time per line (with the standard handler). That is definitely A Bad Thing. I would say that SIGWINCH needs just different handler. I'd like to hear you opinions how editline should behave. Actually I would like to change the library but do it smoothly and I do not going to break the existing applications. Also in future I want to see in the editline library: 1) a timeout for the input, 2) callbacks for the events (periodic events, arriving new data on the file descriptor from the given set), 3) an interface to obtain editline's idea of terminal state. Ridiculos, but current interface allows to CHANGE it, to PRINT it to the user but does not allow to RETURN them to the program. Could somebody explain why does user need to SEE them more than program to WORK with them? Well, that is simple to add. Those changes can be also made is different ways so the question is which will be more convenient for people who are going to use the library. Any comments would be gracefully accepted! -- Sincerely, Alex Semenyaka