(let ((treesit-extra-load-path (list grammar-dir))
(treesit-language-source-alist treesit-admin--builtin-language-sources)
(treesit--install-language-grammar-full-clone t)
+ (treesit--install-language-grammar-blobless t)
(version-alist nil)
(invalid-feature-list nil)
(valid-modes nil)
(defvar treesit--install-language-grammar-full-clone nil
"If non-nil, do a full clone when cloning git repos.")
+(defvar treesit--install-language-grammar-blobless nil
+ "If non-nil, create a blobless clone when cloning git repos.")
+
;;;###autoload
(defun treesit-install-language-grammar (lang &optional out-dir)
"Build and install the tree-sitter language grammar library for LANG.
(let ((args (list "git" nil t nil "clone" url "--quiet")))
(when (not treesit--install-language-grammar-full-clone)
(setq args (append args (list "--depth" "1"))))
+ (when treesit--install-language-grammar-blobless
+ (setq args (append args (list "--filter=blob:none"))))
(when revision
(setq args (append args (list "-b" revision))))
(setq args (append args (list workdir)))