From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Tree-sitter api Date: Tue, 29 Mar 2022 19:40:38 +0300 Message-ID: <83lews90ft.fsf@gnu.org> References: <9C5A86D6-0E7D-4DDF-B211-278EF9AC7E01@gmail.com> <87a6gq5mxl.fsf@gmail.com> <877dbu5mgj.fsf@gmail.com> <0BB906F7-BD3A-41CC-9783-19AA16934497@gmail.com> <83pmplq9f3.fsf@gnu.org> <5B304D80-2969-4F59-9A90-412D0A284912@gmail.com> <83ilvbpsvl.fsf@gnu.org> <4A6F417A-EF74-40B6-9517-6C0947AB87A6@gmail.com> <83wnjmiork.fsf@gnu.org> <6D1CD758-2C6F-4843-9739-F2A5D5591648@gmail.com> <67183EAB-5D98-4211-B71B-4618D6266A15@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="3587"; mail-complaints-to="usenet@ciao.gmane.io" Cc: ubolonton@gmail.com, yoavm448@gmail.com, emacs-devel@gnu.org To: Yuan Fu , Lars Ingebrigtsen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Mar 29 18:42:02 2022 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nZEut-0000a7-9j for ged-emacs-devel@m.gmane-mx.org; Tue, 29 Mar 2022 18:41:59 +0200 Original-Received: from localhost ([::1]:56684 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nZEus-0004d0-0k for ged-emacs-devel@m.gmane-mx.org; Tue, 29 Mar 2022 12:41:58 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:41814) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nZEtd-0003qN-GQ for emacs-devel@gnu.org; Tue, 29 Mar 2022 12:40:41 -0400 Original-Received: from [2001:470:142:3::e] (port=41502 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nZEtb-0003u8-At; Tue, 29 Mar 2022 12:40:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=eCPxlD6Y0jfkPtsqQUxlOfWpIMmM1hbT2VgXPfH+5Rc=; b=ms5gBdJeW07EL7bBGLjS xiO7CvfZpx2keGcF8+amVXiHNmXIpuI8lDmoowihgZeS8wVb5oAAyglfzIwXKCW0KRaMoVsIYGSjo 3thjUz64ogHpsDwu/yHivWvUdhpk1BO4v2fq43YCCtzuC+D68gM+AwL/6J7CCpuQ6+VcFgjgdBwdc 8JFpOFBpAfXA9WLyJvxE5X1rxGzPf67oKqQdqoALfoRn36u5ynLRz5harhJQn6jvspT77+PW6PlXt 7b1ilI881RwmQ7h9CBqXEA5dWEti4zn0z+WjtlrIqbh/+WbJtYknZDYaVVGS3lI2u7cKZmLlZr+7m KZeULORmIv1LcQ==; Original-Received: from [87.69.77.57] (port=2967 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nZEtV-0004dQ-HF; Tue, 29 Mar 2022 12:40:35 -0400 In-Reply-To: <67183EAB-5D98-4211-B71B-4618D6266A15@gmail.com> (message from Yuan Fu on Sat, 12 Mar 2022 22:25:11 -0800) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:287563 Archived-At: > From: Yuan Fu > Date: Sat, 12 Mar 2022 22:25:11 -0800 > Cc: Yoav Marco , > Clément Pit-Claudel , > Emacs developers , > John Yates , > Stefan Monnier , > Philipp , > Stephen Leake , > Theodor Thornhill , > ubolonton@gmail.com > > > It has been quite a while. I added some fixes to the patch and added full changeling. Anyone would like to have a look at it? > > > > Thanks, > > Yuan > > Forgot to attach the patch, here it is: Thanks. I skimmed this, and it looks in sufficiently good shape. Do you consider this feature-complete enough to make one more step towards merging it? If so, I'd like first to have this on a feature branch in our repository, so that people could build it and try it. Then we could land it on master after some time. One thing that we should consider right now is the name-space. You used tree-sitter-* names for all the symbols, and I'm asking whether we don't want something shorter, like ts-*. This is a decision we must make now, because once we start using the code, there will be no way back. Lars, WDYT? One other thing that I don't think I have a clear idea about is the deployment. Do we expect end-users (or downstream package maintainers) to download and install the language definition libraries they need? If so, I think we should have our own load-path for these libraries; relying on the standard LD_LIBRARY_PATH etc. is not good enough (although we should support that as well). I envision that at least in some cases users will not want to have these libraries in the public places, or maybe even won't have the requisite access rights to do so. We should provide Emacs-style alternatives, like some subdirectory of ~/.emacs.d/ and/or under ${prefix}/lib/ (similar to *.eln files).