From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Dan Nicolaescu Newsgroups: gmane.emacs.devel Subject: Re: Introducing 'unrecognized and 'ignored Date: Wed, 02 Jan 2008 09:31:23 -0800 Message-ID: <200801021731.m02HVOsr026279@oogie-boogie.ics.uci.edu> References: <20071228174512.66834830BC9@snark.thyrsus.com> <17EA38DF-BCC1-4565-8510-5DD10DD667E3@mac.com> <20071229114551.GD9794@thyrsus.com> <20080102021907.GA15494@thyrsus.com> <200801020445.m024jWU2008538@oogie-boogie.ics.uci.edu> <20080102115035.GB17588@thyrsus.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1199295244 2804 80.91.229.12 (2 Jan 2008 17:34:04 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 2 Jan 2008 17:34:04 +0000 (UTC) Cc: "Eric S. Raymond" , Alexandru Harsanyi , Stefan Monnier , emacs-devel@gnu.org To: esr@thyrsus.com Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Jan 02 18:34:22 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1JA7Tv-0002qU-AI for ged-emacs-devel@m.gmane.org; Wed, 02 Jan 2008 18:34:19 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JA7TZ-0001K5-AK for ged-emacs-devel@m.gmane.org; Wed, 02 Jan 2008 12:33:57 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JA7TU-0001GR-EV for emacs-devel@gnu.org; Wed, 02 Jan 2008 12:33:52 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JA7TS-0001ED-8A for emacs-devel@gnu.org; Wed, 02 Jan 2008 12:33:51 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JA7TS-0001Ds-26 for emacs-devel@gnu.org; Wed, 02 Jan 2008 12:33:50 -0500 Original-Received: from oogie-boogie.ics.uci.edu ([128.195.1.41]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1JA7TR-0001Wu-Jw for emacs-devel@gnu.org; Wed, 02 Jan 2008 12:33:49 -0500 Original-Received: from mothra.ics.uci.edu (mothra.ics.uci.edu [128.195.6.93]) by oogie-boogie.ics.uci.edu (8.13.6/8.13.6) with ESMTP id m02HVOsr026279; Wed, 2 Jan 2008 09:31:24 -0800 (PST) In-Reply-To: <20080102115035.GB17588@thyrsus.com> (Eric S. Raymond's message of "Wed, 2 Jan 2008 06:50:35 -0500") Original-Lines: 57 X-ICS-MailScanner: Found to be clean X-ICS-MailScanner-SpamCheck: not spam, SpamAssassin (score=0.86, required 5, autolearn=disabled, ALL_TRUSTED -1.44, FM_MULTI_ODD2 1.10, J_CHICKENPOX_32 0.60, J_CHICKENPOX_46 0.60) X-ICS-MailScanner-From: dann@mothra.ics.uci.edu X-detected-kernel: by monty-python.gnu.org: Solaris 9 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:85928 Archived-At: "Eric S. Raymond" writes: > Dan Nicolaescu : > > vc-dired could instead use something based on ewocs. Looking at git.el, > > implementing the status display using ewocs looks simple enough. > > Where is ewocs? I don't find anything including that string in the name > in the CVS tree. Because you looked for plural "ewocs" :-). See emacs-lisp/ewoc.el In fact, here's a quick hack that shows how ewocs can be used. To be minimally usable for vc-dired it would just need code to mark/unmark files and to return the list of marked entries. (require 'ewoc) (defvar my-vc-status-cookie nil "") (defun my-vc-status-insert-headers () (insert "Repository : Blah Blah\n") (insert "Working dir: ~/WORKING DIR\n\n\n")) (defun my-vc-status-printer (fileentry) (insert fileentry)) (defun my-vc-dir-state (dir) "The VC dir-state functions should return a list of file+states like this." '(("one" . up-to-date) ("two" . added) ("three" . unregistered))) (defun my-vc-status () "Prototype for a replacement for vc-dired." (interactive) (let (buffer-read-only) (erase-buffer) (set (make-local-variable 'my-vc-status-cookie) (ewoc-create #'my-vc-status-printer)) (my-vc-status-insert-headers) (dolist (elem (my-vc-dir-state "ignored")) (ewoc-enter-last my-vc-status-cookie (format " %-20s %s" (cdr elem) (car elem))))) (goto-char (point-min)) (setq buffer-read-only t)) > > Sort term using dired is fine because it provide the much needed > > multiple file commit functionality. But medium term it should be nuked > > and replaced. > > I'm not attached to retaining dired. But there are other things that need > to happen first. I still have more speed tuning to do. Understood. Some of the speed tuning would not be needed if not using dired though...