all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Konstantin Kharlamov <Hi-Angel@yandex.ru>
Cc: 68579@debbugs.gnu.org
Subject: bug#68579: [PATCH v2] Support a local repo as URL in treesit-language-source-alist
Date: Sat, 27 Jan 2024 11:37:27 +0200	[thread overview]
Message-ID: <86sf2j86co.fsf@gnu.org> (raw)
In-Reply-To: <20240120115637.25253-1-Hi-Angel@yandex.ru> (message from Konstantin Kharlamov on Sat, 20 Jan 2024 14:56:29 +0300)

> From: Konstantin Kharlamov <Hi-Angel@yandex.ru>
> Date: Sat, 20 Jan 2024 14:56:29 +0300
> 
> Sometimes people may need to bisect to find specific revision in a
> grammar repo. In this case they'd want to point the URL to the local
> repo to avoid cloning it on every rebuild. So add support for full
> path in treesit-language-source-alist.
> 
> * lisp/treesit.el (treesit--install-language-grammar-1): Test if URL
> starts with / meaning that the URL is a local path.  Then if it is,
> avoid cloning the repo and removing the path on success.
> (treesit--git-clone-repo): Factor out the code for cloning to a separate
> function.
> (treesit--git-checkout-branch): A helper to checkout the revision for
> cases where we didn't clone the repo but want it to point the
> revision.
> ---

Thanks, but could you please send the patch as attachments created
with "git format-patch", and include only the stuff you think should
be in the patch and the commit log message?

Also, I have a few minor comments below.

> ++++
> +** 'treesit-install-language-grammar' can handle local directory as URL.
> +It is now possible to pass a directory of a local repository as URL
                                                                ^^^^^^
I think you mean "instead of a URL" there.

> +inside 'treesit-language-source-alist', so that calling
> +'treesit-install-language-grammar' would avoid cloning the repository.
> +It may be useful for example for the purposes of bisecting a
                   ^           ^
Commas missing there.

> --- a/lisp/treesit.el
> +++ b/lisp/treesit.el
> @@ -3410,14 +3410,16 @@ treesit-explore-mode
>  ;;; Install & build language grammar
>  
>  (defvar treesit-language-source-alist nil
> -  "Configuration for downloading and installing tree-sitter language grammars.
> +  "Configuration for downloading and installing tree-sitter language
> +grammars. The grammar can also be built from a local directory if
> +URL is an existing local path to the repo.

The first line of a doc string should be a single complete sentence
(because various apropos commands display only the first lines of doc
strings).

>  The value should be an alist where each element has the form
>  
>      (LANG . (URL REVISION SOURCE-DIR CC C++))
>  
>  Only LANG and URL are mandatory.  LANG is the language symbol.
> -URL is the Git repository URL for the grammar.
> +URL is the Git repository URL or directory name for the grammar.

Suggest to reword:

  URL is the URL of the grammar's Git repository or a directory where
  the repository has been cloned.

Thanks.





  reply	other threads:[~2024-01-27  9:37 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-19  8:08 bug#68579: [PATCH] Support a local repo as URL in treesit-language-source-alist Konstantin Kharlamov
2024-01-19  8:33 ` Eli Zaretskii
2024-01-19  8:57   ` Konstantin Kharlamov
2024-01-19 11:46     ` Eli Zaretskii
2024-01-19 14:33       ` Konstantin Kharlamov
2024-01-19 15:06         ` Eli Zaretskii
2024-01-19 16:06           ` Konstantin Kharlamov
2024-01-19 16:26             ` Eli Zaretskii
2024-01-20 12:00               ` bug#68579: [PATCH v2] " Konstantin Kharlamov
2024-01-20 12:04                 ` Konstantin Kharlamov
2024-01-20 11:56 ` Konstantin Kharlamov
2024-01-27  9:37   ` Eli Zaretskii [this message]
2024-01-27 18:53     ` Konstantin Kharlamov
2024-01-27 19:21       ` Eli Zaretskii
2024-02-01 10:06     ` 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

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=86sf2j86co.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=68579@debbugs.gnu.org \
    --cc=Hi-Angel@yandex.ru \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.