From owner-freebsd-current@FreeBSD.ORG Fri Feb 10 12:49:55 2012 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 230381065672; Fri, 10 Feb 2012 12:49:55 +0000 (UTC) (envelope-from joel@vnode.se) Received: from mail.vnode.se (mail.vnode.se [62.119.52.80]) by mx1.freebsd.org (Postfix) with ESMTP id 974B68FC12; Fri, 10 Feb 2012 12:49:54 +0000 (UTC) Received: from mail.vnode.se (localhost [127.0.0.1]) by mail.vnode.se (Postfix) with ESMTP id 82D61E3F07B; Fri, 10 Feb 2012 13:49:53 +0100 (CET) X-Virus-Scanned: amavisd-new at vnode.se Received: from mail.vnode.se ([127.0.0.1]) by mail.vnode.se (mail.vnode.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6DAt2oVe977Z; Fri, 10 Feb 2012 13:49:50 +0100 (CET) Received: from goofy01.vnodelab.local (unknown [212.247.52.12]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.vnode.se (Postfix) with ESMTPSA id 88733E3F079; Fri, 10 Feb 2012 13:49:50 +0100 (CET) Date: Fri, 10 Feb 2012 13:49:48 +0100 From: Joel Dahl To: Warren Block Message-ID: <20120210124948.GC85504@goofy01.vnodelab.local> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Cc: Colin Percival , Chris Rees , Eitan Adler , freebsd-current Current , "Wojciech A. Koszek" , Gonzalo Nemmi Subject: Re: Enhancing the user experience with tcsh X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 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: Fri, 10 Feb 2012 12:49:55 -0000 On 09-02-2012 23:50, Warren Block wrote: > On Fri, 10 Feb 2012, Gonzalo Nemmi wrote: > > > On Thu, Feb 9, 2012 at 9:52 PM, Eitan Adler wrote: > >> In conf/160689 (http://www.freebsd.org/cgi/query-pr.cgi?pr=160689) > > >> there has been some discussion about changing the default cshrc file. > > In the same line that Wojciech on the PR ".cshrc should be updated for > > modern hardware" I always set this ones on /usr/share/skel/dot.cshrc > > > > bindkey "\e[1~" beginning-of-line #make Home key work; > > bindkey "\e[2~" overwrite-mode #make Ins key work; > > bindkey "\e[3~" delete-char #make Delete key work; > > bindkey "\e[4~" end-of-line #make End key work; > > > > Besides that I add an "if [ -d $HOME/bin ]" and add it to $PATH if it > > exists, but that has nothing to do with ".cshrc should be updated for > > modern hardware" ... it jsut comes in really handy. > > The question becomes "how much is too much?" For example, ever since a > thread in the forums showed examples of csh/tcsh autocompletion, I've > thought the default .cshrc should be stuffed with them. Not for typing > reduction so much as self-documenting commands like > > complete chown 'p/1/u/' > complete man 'C/*/c/' > complete service 'n/*/`service -l`/' > > 'service' autocompletes with a list of services--it helps the user by > showing valid choices. Same with 'chown', it gives a list of users. > > Then there's this, which probably isn't quite right but has been useful > to me (thanks to forum members for help with it): > > complete make 'n@*@`make -pn | sed -n -E "/^[#_.\/[:blank:]]+/d; /=/d; s/[[:blank:]]*:.*//gp;"`@' > > That completes with all lower-case make targets for the current > directory. > > Package operations are easier when the package names autocomplete: > > complete pkg_delete 'c/-/(i v D n p d f G x X r)/' \ > 'n@*@`ls /var/db/pkg`@' > complete pkg_info 'c/-/(a b v p q Q c d D f g i I j k K r R m L s o G O x X e E l t V P)/' \ > 'n@*@`\ls -1 /var/db/pkg | sed s%/var/db/pkg/%%`@' How about adding stuff like this to /usr/share/examples/tcsh/complete.tcsh ? -- Joel