From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.ciao.gmane.org!not-for-mail From: Daniele Nicolodi Newsgroups: gmane.emacs.devel Subject: Documentation about the completion framework Date: Mon, 21 Jan 2019 12:22:39 -0700 Message-ID: <62c8a43a-16f4-cd86-da24-df3dcbe68537@grinta.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.org; posting-host="ciao.gmane.org:195.159.176.228"; logging-data="69752"; mail-complaints-to="usenet@ciao.gmane.org" User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 To: Emacs developers Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Jan 21 20:46:39 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1glfWm-000I3t-3o for ged-emacs-devel@m.gmane.org; Mon, 21 Jan 2019 20:46:36 +0100 Original-Received: from localhost ([127.0.0.1]:58931 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1glfWl-0003Dl-3X for ged-emacs-devel@m.gmane.org; Mon, 21 Jan 2019 14:46:35 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:43665) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1glf9r-0003SJ-7l for emacs-devel@gnu.org; Mon, 21 Jan 2019 14:22:55 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1glf9p-0003h6-3I for emacs-devel@gnu.org; Mon, 21 Jan 2019 14:22:53 -0500 Original-Received: from zed.grinta.net ([109.74.203.128]:50632) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1glf9o-0003dQ-Ii for emacs-devel@gnu.org; Mon, 21 Jan 2019 14:22:53 -0500 Original-Received: from black.hsd1.co.comcast.net (c-98-245-163-4.hsd1.co.comcast.net [98.245.163.4]) (Authenticated sender: daniele) by zed.grinta.net (Postfix) with ESMTPSA id 1D12CE301F for ; Mon, 21 Jan 2019 19:22:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=grinta.net; s=mail; t=1548098564; bh=Y7PxElt9SSbVKSXL5WdV4xoHI8d20fXNPhnnVthRLQ4=; h=To:From:Subject:Date:From; b=mg262CizZftKZCUMYfuzSy6E125MZcsAAxjPWdlLneLX36wW7Ev+YuiQTv0tFoJvG fDX5VcehkImrxXizemmEjMvW0yHVafqEYvJ7kCTJxPoEjScoGoq4Myi96ij4A1odWu EQYyP21M+UeL5VRJu4YYUnL12v/mHR6BJHqghuWc= Openpgp: preference=signencrypt Content-Language: en-US X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 109.74.203.128 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:232571 Archived-At: Hello, I'm implementing completion-at-point for an emacs mode. Unfortunately docstring of the relevant elisp functions are not always detailed and in some cases not complete. I would also really appreciate some documentation on how the framework can be used and how is it supposed to be used, even better if there would be some hints on how to keep it efficient. Does such documentation exist somewhere? Does anyone have any resource to recommend? One specific question I have: in some circumstances completion-at-point enters a mode in which it is called for each keystroke (I think this is completion-in-region-mode). How does this happen and why? I would like to avoid that my function to collect completion targets get called on each keystroke. Is there a way to do that? Another question: what is the most efficient way to collect completion targets in the current buffer? Is there an alternative from doing it at ache invocation of the completion-at-point hook? Thank you! Cheers, Dan