From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stephen Leake Newsgroups: gmane.emacs.devel Subject: Re: Reading major-mode name via completion? Date: Sun, 29 May 2016 13:47:05 -0500 Message-ID: <86a8j8bt1y.fsf@stephe-leake.org> References: <22346.23006.319783.759804@gargle.gargle.HOWL> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1464547697 28797 80.91.229.3 (29 May 2016 18:48:17 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 29 May 2016 18:48:17 +0000 (UTC) Cc: emacs-devel@gnu.org To: raman@google.com Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun May 29 20:48:06 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1b75ks-0007Ai-9g for ged-emacs-devel@m.gmane.org; Sun, 29 May 2016 20:48:06 +0200 Original-Received: from localhost ([::1]:56684 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b75kr-0006kd-6G for ged-emacs-devel@m.gmane.org; Sun, 29 May 2016 14:48:05 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:60326) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b75kJ-0006gk-Ie for emacs-devel@gnu.org; Sun, 29 May 2016 14:47:32 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b75kF-0007Zb-E6 for emacs-devel@gnu.org; Sun, 29 May 2016 14:47:30 -0400 Original-Received: from gproxy1-pub.mail.unifiedlayer.com ([69.89.25.95]:55175) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1b75kF-0007Yb-6L for emacs-devel@gnu.org; Sun, 29 May 2016 14:47:27 -0400 Original-Received: (qmail 15026 invoked by uid 0); 29 May 2016 18:47:11 -0000 Original-Received: from unknown (HELO cmgw2) (10.0.90.83) by gproxy1.mail.unifiedlayer.com with SMTP; 29 May 2016 18:47:11 -0000 Original-Received: from host114.hostmonster.com ([74.220.207.114]) by cmgw2 with id 0Jn61t00f2UdiVW01Jn9Wv; Sun, 29 May 2016 12:47:09 -0600 X-Authority-Analysis: v=2.1 cv=LKr1Hvm9 c=1 sm=1 tr=0 a=CQdxDb2CKd3SRg4I0/XZPQ==:117 a=CQdxDb2CKd3SRg4I0/XZPQ==:17 a=L9H7d07YOLsA:10 a=9cW_t1CCXrUA:10 a=s5jvgZ67dGcA:10 a=hEr_IkYJT6EA:10 a=x_XPkuGwIRMA:10 a=yrkiwgmsf1kA:10 a=1XWaLZrsAAAA:8 a=4joznGHaiuRBcKhxG5cA:9 a=nJcEw6yWrPvoIXZ49MH8:22 Original-Received: from [76.218.37.33] (port=55798 helo=TAKVER4) by host114.hostmonster.com with esmtpa (Exim 4.86_2) (envelope-from ) id 1b75jw-0004lp-Fq; Sun, 29 May 2016 12:47:08 -0600 In-Reply-To: <22346.23006.319783.759804@gargle.gargle.HOWL> (raman@google.com's message of "Sat, 28 May 2016 19:54:22 -0700") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (windows-nt) X-Identified-User: {2442:host114.hostmonster.com:stephele:stephe-leake.org} {sentby:smtp auth 76.218.37.33 authed with stephen_leake@stephe-leake.org} X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - host114.hostmonster.com X-AntiAbuse: Original Domain - gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - stephe-leake.org X-Source-IP: 76.218.37.33 X-Exim-ID: 1b75jw-0004lp-Fq X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: (TAKVER4) [76.218.37.33]:55798 X-Source-Auth: stephen_leake@stephe-leake.org X-Email-Count: 0 X-Source-Cap: c3RlcGhlbGU7c3RlcGhlbGU7aG9zdDExNC5ob3N0bW9uc3Rlci5jb20= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 69.89.25.95 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:204134 Archived-At: raman@google.com writes: > Is there a completion table that already exists in emacs that one > could pass to completing-read for reading in a major-mode name? I use this: (completing-read "mode: " (apply-partially #'completion-table-with-predicate obarray (lambda (sym) ;; predicate (or (get sym 'derived-mode-parent) ;; most modes (get sym 'custom-mode-group) ;; ada-mode ;; FIXME: leaves out fundamental-mode, maybe others )) 'strict) nil ;; predicate t ;; require-match (symbol-name major-mode) ;; initial history) as the FIXME: says, it leaves out some. -- -- Stephe