unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [michael.cadilhac@lrde.org: PC-completion and trailing dashes.]
@ 2006-04-15 17:32 Richard Stallman
  2006-04-17  5:24 ` Fwd: PC-completion and trailing dashes Stefan Monnier
  0 siblings, 1 reply; 4+ messages in thread
From: Richard Stallman @ 2006-04-15 17:32 UTC (permalink / raw)


Would someone else who knows and uses partial-completion-mode
please take a look and see if this is a good fix?

------- Start of forwarded message -------
From: michael.cadilhac@lrde.org (=?iso-8859-1?Q?Micha=EBl?= Cadilhac)
To: emacs-devel@gnu.org
Organization: Epita/LRDE
Date: Fri, 14 Apr 2006 18:30:49 +0200
MIME-Version: 1.0
Subject: PC-completion and trailing dashes.
Content-Type: multipart/mixed; boundary="===============0652986555=="
X-Spam-Status: No, score=0.1 required=5.0 tests=FORGED_RCVD_HELO 
	autolearn=failed version=3.0.4

- --===============0652986555==
Content-Type: multipart/signed; boundary="==-=-=";
	micalg=pgp-sha1; protocol="application/pgp-signature"

- --==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

- --=-=-=


  Here's the problem:

  emacs -Q
  M-x partial-completion-mode RET
  M-x set- RET then click a choice, you'll have the error message
  `Symbol function definition is void: set-yourchoice-'

  M-x set-s- RET then select one and your choice will be suffixed with
  `-s-'.

  The smallest change I can propose is the following:


- --=-=-=
Content-Type: text/x-patch; charset=iso-8859-1
Content-Disposition: inline; filename=complete.patch
Content-Transfer-Encoding: quoted-printable

Index: ChangeLog
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /cvsroot/emacs/emacs/lisp/ChangeLog,v
retrieving revision 1.9401
diff -b -c -w -r1.9401 ChangeLog
*** ChangeLog	14 Apr 2006 11:30:20 -0000	1.9401
=2D-- ChangeLog	14 Apr 2006 16:22:47 -0000
***************
*** 1,3 ****
=2D-- 1,11 ----
+ 2006-04-14  Micha=EBl Cadilhac  <michael.cadilhac@lrde.org>  (tiny change)
+=20
+ 	* complete.el (PC-goto-eob-and-ret-nil): Function to go to the
+ 	end of buffer and that returns `nil'.
+ 	(partial-completion-mode): Use it as a function of
+ 	`choose-completion-string-functions' to be sure that the whole
+ 	buffer will be erased before choice insertion.
+=20
  2006-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
=20=20
  	* progmodes/cc-langs.el (c-mode-menu):
Index: complete.el
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /cvsroot/emacs/emacs/lisp/complete.el,v
retrieving revision 1.45
diff -b -c -w -r1.45 complete.el
*** complete.el	6 Aug 2005 22:13:42 -0000	1.45
=2D-- complete.el	14 Apr 2006 16:22:47 -0000
***************
*** 1,7 ****
  ;;; complete.el --- partial completion mechanism plus other goodies
=20=20
  ;; Copyright (C) 1990, 1991, 1992, 1993, 1999, 2000, 2002, 2003, 2004,
! ;;   2005 Free Software Foundation, Inc.
=20=20
  ;; Author: Dave Gillespie <daveg@synaptics.com>
  ;; Keywords: abbrev convenience
=2D-- 1,7 ----
  ;;; complete.el --- partial completion mechanism plus other goodies
=20=20
  ;; Copyright (C) 1990, 1991, 1992, 1993, 1999, 2000, 2002, 2003, 2004,
! ;;   2005, 2006 Free Software Foundation, Inc.
=20=20
  ;; Author: Dave Gillespie <daveg@synaptics.com>
  ;; Keywords: abbrev convenience
***************
*** 221,226 ****
=2D-- 221,230 ----
  	       (symbol-function 'read-file-name-internal))
  	 (fset 'read-file-name-internal
  	       'PC-read-include-file-name-internal)))
+   ;; Fix for completion-list selections.
+   (if partial-completion-mode
+       (add-hook 'choose-completion-string-functions 'PC-goto-eob-and-ret-=
nil)
+     (remove-hook 'choose-completion-string-functions 'PC-goto-eob-and-ret=
- -nil))
    (when (and partial-completion-mode (null PC-env-vars-alist))
      (setq PC-env-vars-alist
  	  (mapcar (lambda (string)
***************
*** 941,946 ****
=2D-- 945,958 ----
      (funcall PC-old-read-file-name-internal string dir action)))
  \f
=20=20
+ ;; Hack to be sure that on validation in the completion list, everything
+ ;; will be erased before the choice is inserted.
+ (defun PC-goto-eob-and-ret-nil (&rest args)
+   (goto-char (point-max))
+   nil)
+=20
+ \f
+=20
  (provide 'complete)
=20=20
  ;; arch-tag: fc7e2768-ff44-4e22-b579-4d825b968458

- --=-=-=
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: quoted-printable


  The  aim  is  that `choose-completion-string'  will  `delete-region'
  everything from (+ base-size (point-min)) to (point-max).

  The added  function could  also directly erase  the region,  I don't
  know what's the best here. I don't even know if this way is ok ;-)

  Thanks in advance, however.

=2D-=20
 |      Micha=EBl `Micha' Cadilhac   |   Un certain Blaise Pascal          =
   |
 |         Epita/LRDE Promo 2007   |     etc... etc...                     =
 |
 | http://www.lrde.org/~cadilh_m   |   -- Pr=E9vert (Les paris stupides)   =
   |
 `--  -   JID: micha@amessage.be --'                                   -  -=
- -'

- --=-=-=--

- --==-=-=
Content-Type: application/pgp-signature

- -----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)

iD8DBQFEP848ZYNf4qobZ7kRApI1AJ4letQEzZcuQM8/SxK74BM3ozL2vACcDMdl
MtyCqsftA3bRl5YL7NgM9nQ=
=wUgR
- -----END PGP SIGNATURE-----
- --==-=-=--



- --===============0652986555==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel
- --===============0652986555==--
------- End of forwarded message -------

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2006-04-18 17:34 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-04-15 17:32 [michael.cadilhac@lrde.org: PC-completion and trailing dashes.] Richard Stallman
2006-04-17  5:24 ` Fwd: PC-completion and trailing dashes Stefan Monnier
2006-04-18  1:42   ` Richard Stallman
2006-04-18 17:34     ` Stefan Monnier

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).