]> git.eshelyaron.com Git - emacs.git/commitdiff
Add basic support for hideshow in python-ts-mode (bug#60044)
authorYuan Fu <casouri@gmail.com>
Fri, 16 Dec 2022 01:16:28 +0000 (17:16 -0800)
committerYuan Fu <casouri@gmail.com>
Fri, 16 Dec 2022 01:16:28 +0000 (17:16 -0800)
* lisp/progmodes/python.el (python-base-mode): Add setup for
python-ts-mode.

lisp/progmodes/python.el

index ee05862550db36c04c004557a32d541749753403..a10359b384afd51f18c4561f724df769a3ed1088 100644 (file)
@@ -6564,19 +6564,21 @@ implementations: `python-mode' and `python-ts-mode'."
         (add-function :before-until (local 'eldoc-documentation-function)
                       #'python-eldoc-function))))
 
-  (add-to-list
-   'hs-special-modes-alist
-   `(python-mode
-     ,python-nav-beginning-of-block-regexp
-     ;; Use the empty string as end regexp so it doesn't default to
-     ;; "\\s)".  This way parens at end of defun are properly hidden.
-     ""
-     "#"
-     python-hideshow-forward-sexp-function
-     nil
-     python-nav-beginning-of-block
-     python-hideshow-find-next-block
-     python-info-looking-at-beginning-of-block))
+  ;; TODO: Use tree-sitter to figure out the block in `python-ts-mode'.
+  (dolist (mode '(python-mode python-ts-mode))
+    (add-to-list
+     'hs-special-modes-alist
+     `(,mode
+       ,python-nav-beginning-of-block-regexp
+       ;; Use the empty string as end regexp so it doesn't default to
+       ;; "\\s)".  This way parens at end of defun are properly hidden.
+       ""
+       "#"
+       python-hideshow-forward-sexp-function
+       nil
+       python-nav-beginning-of-block
+       python-hideshow-find-next-block
+       python-info-looking-at-beginning-of-block)))
 
   (setq-local outline-regexp (python-rx (* space) block-start))
   (setq-local outline-level