From: "João Távora" <joaotavora@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: pedz@easesoftware.com, emacs-devel@gnu.org
Subject: Re: Tree-sitter introduction documentation
Date: Fri, 16 Dec 2022 15:48:03 +0000 [thread overview]
Message-ID: <CALDnm50=DAd048SkEuC6Q0J4WiRLnCO8yoYqbmWJXVqf+JjAdw@mail.gmail.com> (raw)
In-Reply-To: <83bko3jr3o.fsf@gnu.org>
[-- Attachment #1: Type: text/plain, Size: 1554 bytes --]
On Fri, Dec 16, 2022 at 3:38 PM Eli Zaretskii <eliz@gnu.org> wrote:
> > From: João Távora <joaotavora@gmail.com>
> > Date: Fri, 16 Dec 2022 15:24:59 +0000
> > Cc: Perry Smith <pedz@easesoftware.com>, emacs-devel@gnu.org
> >
> > I agree this is a problem, especially the language specific parser
> > bits. Yesterday I tried out tree sitter Emacs on my Arch system.
> > Finding the tree-sitter system lib was easy enough, but finding the C++
> > definition object wasn't so easy. Eventually I made it, but it needed
> > compilation from source and a NodeJS toolchain that I didn't know
> > I needed for that.
>
> No, you don't need a NodeJS toolchain to compile a grammar. You only
> need to compile the C/C++ source files that are part of the grammar,
> and then link them into a shared library. I use a simple Makefile to
> build all of them, as the structure of the files and the way to
> compile and link them are identical and boilerplate. And I definitely
> don't have NodeJS installed here.
>
I used:
https://aur.archlinux.org/packages/tree-sitter-cpp-git
which builds with the makepkg tool, and am pretty sure
it used NodeJS somewhere down the line. The language
definition it seems to use is https://github.com/tree-sitter/tree-sitter-cpp
which also contains a log of JS stuff.
Is that where you get your C++ grammar from? Or am I
looking at an alternate outlet for slightly different grammar?
If so where do you get your grammars from and can we
bundle some version of them with Emacs?
João
[-- Attachment #2: Type: text/html, Size: 2396 bytes --]
next prev parent reply other threads:[~2022-12-16 15:48 UTC|newest]
Thread overview: 138+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-16 14:47 Tree-sitter introduction documentation Perry Smith
2022-12-16 15:06 ` Eli Zaretskii
2022-12-16 15:24 ` João Távora
2022-12-16 15:36 ` Perry Smith
2022-12-16 15:43 ` João Távora
2022-12-16 17:56 ` Philip Kaludercic
2022-12-16 15:38 ` Eli Zaretskii
2022-12-16 15:48 ` João Távora [this message]
2022-12-16 15:53 ` Perry Smith
2022-12-16 16:02 ` João Távora
2022-12-18 9:59 ` Eli Zaretskii
2022-12-18 14:07 ` Perry Smith
2022-12-18 17:18 ` Eli Zaretskii
2022-12-16 16:34 ` Eli Zaretskii
2022-12-17 0:03 ` Tim Cross
2022-12-17 8:42 ` Eli Zaretskii
2022-12-17 10:40 ` João Távora
2022-12-17 11:00 ` Eli Zaretskii
2022-12-18 0:40 ` Tim Cross
2022-12-16 16:01 ` Manuel Giraud
2022-12-16 16:40 ` Eli Zaretskii
2022-12-16 16:47 ` Perry Smith
2022-12-16 17:21 ` Eli Zaretskii
2022-12-16 15:53 ` Manuel Giraud
2022-12-16 15:56 ` João Távora
2022-12-16 16:39 ` Eli Zaretskii
2022-12-16 17:15 ` Manuel Giraud
2022-12-16 17:23 ` Eli Zaretskii
2022-12-16 20:22 ` Ken Brown
2022-12-17 4:06 ` Tim Cross
2022-12-17 15:42 ` Stefan Monnier
2022-12-17 17:41 ` T.V Raman
2022-12-26 22:42 ` Dmitry Gutov
2022-12-27 12:11 ` Eli Zaretskii
2022-12-27 12:43 ` Dmitry Gutov
2022-12-27 13:38 ` Eli Zaretskii
2022-12-27 14:11 ` Dmitry Gutov
2022-12-27 14:32 ` Eli Zaretskii
2022-12-27 16:36 ` Stefan Monnier
2022-12-27 16:44 ` Philip Kaludercic
2022-12-27 17:16 ` Eli Zaretskii
2022-12-27 17:20 ` Philip Kaludercic
2022-12-27 18:06 ` Eli Zaretskii
2022-12-27 17:33 ` Stefan Monnier
2022-12-30 11:06 ` Yuan Fu
2022-12-30 11:25 ` Philip Kaludercic
2022-12-30 11:54 ` tomas
2022-12-30 11:59 ` Philip Kaludercic
2022-12-30 12:27 ` tomas
2022-12-30 12:45 ` Philip Kaludercic
2022-12-30 14:26 ` Dmitry Gutov
2022-12-30 23:33 ` Yuan Fu
2022-12-30 15:31 ` Eli Zaretskii
2022-12-30 15:54 ` Philip Kaludercic
2022-12-30 16:17 ` Eli Zaretskii
2022-12-31 0:06 ` Yuan Fu
2022-12-31 0:12 ` Philip Kaludercic
2023-01-01 1:18 ` Yuan Fu
2023-01-02 19:10 ` [SPAM UNSURE] " Stephen Leake
2022-12-31 0:03 ` Yuan Fu
2022-12-31 0:25 ` Stefan Monnier
2023-01-01 1:16 ` Yuan Fu
2023-01-01 6:39 ` Eli Zaretskii
2023-01-02 0:31 ` Yuan Fu
2023-01-02 0:40 ` Stefan Monnier
2023-01-03 6:58 ` Yuan Fu
2023-01-02 3:34 ` Eli Zaretskii
2022-12-31 9:24 ` Eli Zaretskii
2022-12-31 22:14 ` Yuan Fu
2023-01-01 1:12 ` Yuan Fu
2022-12-31 0:44 ` Gregory Heytings
2023-01-03 4:08 ` Richard Stallman
2023-01-03 12:14 ` Eli Zaretskii
2023-01-01 3:03 ` Richard Stallman
2023-01-01 6:54 ` Eli Zaretskii
2023-01-01 19:14 ` Gregory Heytings
2023-01-01 20:11 ` Eli Zaretskii
2023-01-03 4:06 ` Richard Stallman
2023-01-03 12:06 ` Eli Zaretskii
2022-12-27 17:10 ` Eli Zaretskii
2022-12-27 17:31 ` Stefan Monnier
2022-12-27 18:08 ` Eli Zaretskii
2022-12-27 18:44 ` Stefan Monnier
2022-12-27 20:06 ` Philip Kaludercic
2022-12-27 21:13 ` Stefan Monnier
2022-12-28 2:52 ` Yuan Fu
2022-12-28 13:10 ` Gregory Heytings
2022-12-28 13:38 ` Lynn Winebarger
2022-12-28 14:41 ` Danny Freeman
2022-12-29 11:14 ` Philip Kaludercic
2022-12-29 15:27 ` Gregory Heytings
2022-12-29 15:40 ` Lynn Winebarger
2022-12-29 21:50 ` [SPAM UNSURE] " Stephen Leake
2022-12-29 22:37 ` Lynn Winebarger
2022-12-30 14:10 ` Lynn Winebarger
2022-12-30 16:25 ` Targeting libtreesitter from wisent and other parser generators for emacs Lynn Winebarger
2022-12-31 8:25 ` Eli Zaretskii
2022-12-31 13:07 ` Lynn Winebarger
2022-12-29 15:45 ` Tree-sitter introduction documentation Philip Kaludercic
2022-12-29 17:00 ` Gregory Heytings
2022-12-29 17:12 ` Philip Kaludercic
2022-12-29 17:31 ` Gregory Heytings
2022-12-29 18:12 ` Philip Kaludercic
2022-12-29 18:28 ` Eli Zaretskii
2022-12-29 18:44 ` Stefan Monnier
2022-12-29 19:34 ` Eli Zaretskii
2022-12-29 19:48 ` Stefan Monnier
2022-12-29 19:59 ` Eli Zaretskii
2022-12-29 18:32 ` Stefan Monnier
2022-12-29 16:32 ` Eli Zaretskii
2022-12-29 16:53 ` Philip Kaludercic
2022-12-29 16:59 ` Eli Zaretskii
2022-12-29 17:01 ` Philip Kaludercic
2022-12-29 17:03 ` Stefan Monnier
2022-12-29 17:12 ` Gregory Heytings
2022-12-29 17:13 ` Philip Kaludercic
2022-12-29 17:04 ` Gregory Heytings
2022-12-30 1:01 ` Gregory Heytings
2022-12-30 11:00 ` Philip Kaludercic
2022-12-30 12:07 ` Gregory Heytings
2022-12-30 13:10 ` Philip Kaludercic
2022-12-30 15:23 ` Gregory Heytings
2022-12-28 12:56 ` Gregory Heytings
2022-12-28 14:41 ` Stefan Monnier
2022-12-27 19:53 ` Dmitry Gutov
2023-01-01 3:03 ` Richard Stallman
2022-12-27 13:51 ` tomas
2022-12-27 15:58 ` Stefan Monnier
2022-12-16 17:23 ` Perry Smith
2022-12-16 17:31 ` Eli Zaretskii
2022-12-16 19:08 ` Perry Smith
2022-12-16 19:37 ` Eli Zaretskii
2022-12-16 20:05 ` Perry Smith
-- strict thread matches above, loose matches on Subject: below --
2022-12-17 4:50 Payas Relekar
2022-12-18 6:32 Pedro Andres Aranda Gutierrez
2022-12-18 8:07 ` Eli Zaretskii
2022-12-18 10:39 ` Pedro Andres Aranda Gutierrez
2022-12-18 11:44 ` Eli Zaretskii
2022-12-31 6:59 Pedro Andres Aranda Gutierrez
2022-12-31 7:47 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CALDnm50=DAd048SkEuC6Q0J4WiRLnCO8yoYqbmWJXVqf+JjAdw@mail.gmail.com' \
--to=joaotavora@gmail.com \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=pedz@easesoftware.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).