unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#67394: 29.1.90; python-ts-mode triple quoted string fill bug
@ 2023-11-23  5:24 Michael Kleehammer
  2023-11-23  7:00 ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Michael Kleehammer @ 2023-11-23  5:24 UTC (permalink / raw)
  To: 67394

Filling a paragraph in a Python triple quoted string does not work in
python-ts-mode.  It does work in python-mode.  To reproduce, enter the
following into the scratch buffer and try to word wrap the triple quoted
string using M-q in python-mode and python-ts-mode.  It word wraps in
python-mode but not the tree-sitter version.

def test():
    """l
    abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc
    """
    pass

The core issue is in python-syntax-context in the 'triple-quoted-string
branch of the pcase, python.el:534 in the emacs 29 branch.  The code is
the same in master.

    ('triple-quoted-string (and (eq t (nth 3 ppss)) (nth 8 ppss)))

In python-mode (nth 3 ppss) is t, but in python-ts-mode it is 34, which
is a quote character.  I'm pretty new to the tree-sitter code so I
cannot suggest a fix.


In GNU Emacs 29.1.90 (build 1, x86_64-pc-linux-gnu, GTK+ Version
 3.24.33, cairo version 1.16.0) of 2023-11-09 built on pop-os
Repository revision: fe000236cf278a469adbf27e2184f823f7e12587
Repository branch: emacs-29
Windowing system distributor 'The X.Org Foundation', version 11.0.12101004
System Description: Pop!_OS 22.04 LTS

Configured using:
 'configure --with-tree-sitter --without-compress-install --with-json
 --without-mailutils --with-native-compilation 'CFLAGS=-O2
 -march=native''

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES
NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3
THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XINPUT2
XPM GTK3 ZLIB

Important settings:
  value of $LC_MONETARY: en_US.UTF-8
  value of $LC_NUMERIC: en_US.UTF-8
  value of $LC_TIME: en_US.UTF-8
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Python

Minor modes in effect:
  pyvenv-mode: t
  global-git-commit-mode: t
  magit-auto-revert-mode: t
  auto-revert-mode: t
  binky-mode: t
  rainbow-delimiters-mode: t
  display-line-numbers-mode: t
  which-function-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  color-identifiers-mode: t
  winum-mode: t
  flyspell-mode: t
  shell-dirtrack-mode: t
  hl-prog-extra-global-mode: t
  hl-prog-extra-mode: t
  server-mode: t
  midnight-mode: t
  global-corfu-mode: t
  corfu-mode: t
  winner-mode: t
  flimenu-global-mode: t
  flimenu-mode: t
  projectile-mode: t
  beacon-mode: t
  marginalia-mode: t
  vertico-prescient-mode: t
  vertico-mode: t
  prescient-persist-mode: t
  ws-butler-global-mode: t
  ws-butler-mode: t
  tab-jump-out-global-mode: t
  tab-jump-out-mode: t
  pcre-mode: t
  whole-line-or-region-global-mode: t
  whole-line-or-region-local-mode: t
  global-ligature-mode: t
  ligature-mode: t
  simple-modeline-mode: t
  recentf-mode: t
  save-place-mode: t
  savehist-mode: t
  electric-pair-mode: t
  spacious-padding-mode: t
  mark-yank-global-mode: t
  mark-yank-mode: t
  which-key-mode: t
  override-global-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  line-number-mode: t
  auto-fill-function: #[128 \304\300\301#\207 [yas--auto-fill python-do-auto-fill :around nil apply] 5 advice]
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
/home/mkleehammer/.emacs.d/elpa/modus-themes-20231118.616/theme-loaddefs hides /usr/local/share/emacs/29.1.90/lisp/theme-loaddefs
/home/mkleehammer/.emacs.d/elpa/transient-20231121.1154/transient hides /usr/local/share/emacs/29.1.90/lisp/transient
/home/mkleehammer/.emacs.d/elpa/use-package-20230426.2324/use-package hides /usr/local/share/emacs/29.1.90/lisp/use-package/use-package
/home/mkleehammer/.emacs.d/elpa/use-package-20230426.2324/use-package-bind-key hides /usr/local/share/emacs/29.1.90/lisp/use-package/use-package-bind-key
/home/mkleehammer/.emacs.d/elpa/use-package-20230426.2324/use-package-jump hides /usr/local/share/emacs/29.1.90/lisp/use-package/use-package-jump
/home/mkleehammer/.emacs.d/elpa/use-package-20230426.2324/use-package-diminish hides /usr/local/share/emacs/29.1.90/lisp/use-package/use-package-diminish
/home/mkleehammer/.emacs.d/elpa/use-package-20230426.2324/use-package-ensure hides /usr/local/share/emacs/29.1.90/lisp/use-package/use-package-ensure
/home/mkleehammer/.emacs.d/elpa/use-package-20230426.2324/use-package-lint hides /usr/local/share/emacs/29.1.90/lisp/use-package/use-package-lint
/home/mkleehammer/.emacs.d/elpa/use-package-20230426.2324/use-package-core hides /usr/local/share/emacs/29.1.90/lisp/use-package/use-package-core
/home/mkleehammer/.emacs.d/elpa/use-package-20230426.2324/use-package-delight hides /usr/local/share/emacs/29.1.90/lisp/use-package/use-package-delight
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-id hides /usr/local/share/emacs/29.1.90/lisp/org/org-id
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-doi hides /usr/local/share/emacs/29.1.90/lisp/org/ol-doi
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-scheme hides /usr/local/share/emacs/29.1.90/lisp/org/ob-scheme
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-faces hides /usr/local/share/emacs/29.1.90/lisp/org/org-faces
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-shell hides /usr/local/share/emacs/29.1.90/lisp/org/ob-shell
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox-org hides /usr/local/share/emacs/29.1.90/lisp/org/ox-org
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-lisp hides /usr/local/share/emacs/29.1.90/lisp/org/ob-lisp
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-num hides /usr/local/share/emacs/29.1.90/lisp/org/org-num
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox-man hides /usr/local/share/emacs/29.1.90/lisp/org/ox-man
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-inlinetask hides /usr/local/share/emacs/29.1.90/lisp/org/org-inlinetask
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-cycle hides /usr/local/share/emacs/29.1.90/lisp/org/org-cycle
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-C hides /usr/local/share/emacs/29.1.90/lisp/org/ob-C
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-keys hides /usr/local/share/emacs/29.1.90/lisp/org/org-keys
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-info hides /usr/local/share/emacs/29.1.90/lisp/org/ol-info
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-pcomplete hides /usr/local/share/emacs/29.1.90/lisp/org/org-pcomplete
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-groovy hides /usr/local/share/emacs/29.1.90/lisp/org/ob-groovy
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol hides /usr/local/share/emacs/29.1.90/lisp/org/ol
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-timer hides /usr/local/share/emacs/29.1.90/lisp/org/org-timer
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-footnote hides /usr/local/share/emacs/29.1.90/lisp/org/org-footnote
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-plantuml hides /usr/local/share/emacs/29.1.90/lisp/org/ob-plantuml
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-clock hides /usr/local/share/emacs/29.1.90/lisp/org/org-clock
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-bbdb hides /usr/local/share/emacs/29.1.90/lisp/org/ol-bbdb
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-tempo hides /usr/local/share/emacs/29.1.90/lisp/org/org-tempo
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-macs hides /usr/local/share/emacs/29.1.90/lisp/org/org-macs
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-man hides /usr/local/share/emacs/29.1.90/lisp/org/ol-man
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-colview hides /usr/local/share/emacs/29.1.90/lisp/org/org-colview
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox-md hides /usr/local/share/emacs/29.1.90/lisp/org/ox-md
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/oc-basic hides /usr/local/share/emacs/29.1.90/lisp/org/oc-basic
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-forth hides /usr/local/share/emacs/29.1.90/lisp/org/ob-forth
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-java hides /usr/local/share/emacs/29.1.90/lisp/org/ob-java
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-sass hides /usr/local/share/emacs/29.1.90/lisp/org/ob-sass
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-goto hides /usr/local/share/emacs/29.1.90/lisp/org/org-goto
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/oc hides /usr/local/share/emacs/29.1.90/lisp/org/oc
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-sql hides /usr/local/share/emacs/29.1.90/lisp/org/ob-sql
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-protocol hides /usr/local/share/emacs/29.1.90/lisp/org/org-protocol
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-dot hides /usr/local/share/emacs/29.1.90/lisp/org/ob-dot
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/oc-csl hides /usr/local/share/emacs/29.1.90/lisp/org/oc-csl
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/oc-bibtex hides /usr/local/share/emacs/29.1.90/lisp/org/oc-bibtex
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-python hides /usr/local/share/emacs/29.1.90/lisp/org/ob-python
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-ref hides /usr/local/share/emacs/29.1.90/lisp/org/ob-ref
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-R hides /usr/local/share/emacs/29.1.90/lisp/org/ob-R
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-haskell hides /usr/local/share/emacs/29.1.90/lisp/org/ob-haskell
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-octave hides /usr/local/share/emacs/29.1.90/lisp/org/ob-octave
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-latex hides /usr/local/share/emacs/29.1.90/lisp/org/ob-latex
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-eww hides /usr/local/share/emacs/29.1.90/lisp/org/ol-eww
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-ocaml hides /usr/local/share/emacs/29.1.90/lisp/org/ob-ocaml
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org hides /usr/local/share/emacs/29.1.90/lisp/org/org
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-exp hides /usr/local/share/emacs/29.1.90/lisp/org/ob-exp
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox-latex hides /usr/local/share/emacs/29.1.90/lisp/org/ox-latex
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-rmail hides /usr/local/share/emacs/29.1.90/lisp/org/ol-rmail
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-core hides /usr/local/share/emacs/29.1.90/lisp/org/ob-core
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-bibtex hides /usr/local/share/emacs/29.1.90/lisp/org/ol-bibtex
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-fold hides /usr/local/share/emacs/29.1.90/lisp/org/org-fold
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-lob hides /usr/local/share/emacs/29.1.90/lisp/org/ob-lob
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-version hides /usr/local/share/emacs/29.1.90/lisp/org/org-version
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox hides /usr/local/share/emacs/29.1.90/lisp/org/ox
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-js hides /usr/local/share/emacs/29.1.90/lisp/org/ob-js
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox-texinfo hides /usr/local/share/emacs/29.1.90/lisp/org/ox-texinfo
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox-icalendar hides /usr/local/share/emacs/29.1.90/lisp/org/ox-icalendar
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-eval hides /usr/local/share/emacs/29.1.90/lisp/org/ob-eval
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-attach hides /usr/local/share/emacs/29.1.90/lisp/org/org-attach
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-refile hides /usr/local/share/emacs/29.1.90/lisp/org/org-refile
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-duration hides /usr/local/share/emacs/29.1.90/lisp/org/org-duration
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-datetree hides /usr/local/share/emacs/29.1.90/lisp/org/org-datetree
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-gnuplot hides /usr/local/share/emacs/29.1.90/lisp/org/ob-gnuplot
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-fortran hides /usr/local/share/emacs/29.1.90/lisp/org/ob-fortran
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox-beamer hides /usr/local/share/emacs/29.1.90/lisp/org/ox-beamer
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox-koma-letter hides /usr/local/share/emacs/29.1.90/lisp/org/ox-koma-letter
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-src hides /usr/local/share/emacs/29.1.90/lisp/org/org-src
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-capture hides /usr/local/share/emacs/29.1.90/lisp/org/org-capture
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-habit hides /usr/local/share/emacs/29.1.90/lisp/org/org-habit
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob hides /usr/local/share/emacs/29.1.90/lisp/org/ob
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-list hides /usr/local/share/emacs/29.1.90/lisp/org/org-list
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-org hides /usr/local/share/emacs/29.1.90/lisp/org/ob-org
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-awk hides /usr/local/share/emacs/29.1.90/lisp/org/ob-awk
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/oc-natbib hides /usr/local/share/emacs/29.1.90/lisp/org/oc-natbib
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-tangle hides /usr/local/share/emacs/29.1.90/lisp/org/ob-tangle
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-persist hides /usr/local/share/emacs/29.1.90/lisp/org/org-persist
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-eshell hides /usr/local/share/emacs/29.1.90/lisp/org/ob-eshell
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-gnus hides /usr/local/share/emacs/29.1.90/lisp/org/ol-gnus
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-irc hides /usr/local/share/emacs/29.1.90/lisp/org/ol-irc
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-comint hides /usr/local/share/emacs/29.1.90/lisp/org/ob-comint
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-mouse hides /usr/local/share/emacs/29.1.90/lisp/org/org-mouse
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-ruby hides /usr/local/share/emacs/29.1.90/lisp/org/ob-ruby
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-feed hides /usr/local/share/emacs/29.1.90/lisp/org/org-feed
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-entities hides /usr/local/share/emacs/29.1.90/lisp/org/org-entities
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-attach-git hides /usr/local/share/emacs/29.1.90/lisp/org/org-attach-git
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox-publish hides /usr/local/share/emacs/29.1.90/lisp/org/ox-publish
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-indent hides /usr/local/share/emacs/29.1.90/lisp/org/org-indent
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-perl hides /usr/local/share/emacs/29.1.90/lisp/org/ob-perl
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-clojure hides /usr/local/share/emacs/29.1.90/lisp/org/ob-clojure
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/oc-biblatex hides /usr/local/share/emacs/29.1.90/lisp/org/oc-biblatex
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-macro hides /usr/local/share/emacs/29.1.90/lisp/org/org-macro
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-w3m hides /usr/local/share/emacs/29.1.90/lisp/org/ol-w3m
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox-odt hides /usr/local/share/emacs/29.1.90/lisp/org/ox-odt
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-loaddefs hides /usr/local/share/emacs/29.1.90/lisp/org/org-loaddefs
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-emacs-lisp hides /usr/local/share/emacs/29.1.90/lisp/org/ob-emacs-lisp
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-archive hides /usr/local/share/emacs/29.1.90/lisp/org/org-archive
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-ctags hides /usr/local/share/emacs/29.1.90/lisp/org/org-ctags
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-makefile hides /usr/local/share/emacs/29.1.90/lisp/org/ob-makefile
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-processing hides /usr/local/share/emacs/29.1.90/lisp/org/ob-processing
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-eshell hides /usr/local/share/emacs/29.1.90/lisp/org/ol-eshell
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-lint hides /usr/local/share/emacs/29.1.90/lisp/org/org-lint
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-matlab hides /usr/local/share/emacs/29.1.90/lisp/org/ob-matlab
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-mhe hides /usr/local/share/emacs/29.1.90/lisp/org/ol-mhe
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-plot hides /usr/local/share/emacs/29.1.90/lisp/org/org-plot
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-lua hides /usr/local/share/emacs/29.1.90/lisp/org/ob-lua
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-table hides /usr/local/share/emacs/29.1.90/lisp/org/org-table
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-sqlite hides /usr/local/share/emacs/29.1.90/lisp/org/ob-sqlite
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-lilypond hides /usr/local/share/emacs/29.1.90/lisp/org/ob-lilypond
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-fold-core hides /usr/local/share/emacs/29.1.90/lisp/org/org-fold-core
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox-html hides /usr/local/share/emacs/29.1.90/lisp/org/ox-html
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-ditaa hides /usr/local/share/emacs/29.1.90/lisp/org/ob-ditaa
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-table hides /usr/local/share/emacs/29.1.90/lisp/org/ob-table
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ox-ascii hides /usr/local/share/emacs/29.1.90/lisp/org/ox-ascii
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-mobile hides /usr/local/share/emacs/29.1.90/lisp/org/org-mobile
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-screen hides /usr/local/share/emacs/29.1.90/lisp/org/ob-screen
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ol-docview hides /usr/local/share/emacs/29.1.90/lisp/org/ol-docview
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-calc hides /usr/local/share/emacs/29.1.90/lisp/org/ob-calc
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-element hides /usr/local/share/emacs/29.1.90/lisp/org/org-element
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-agenda hides /usr/local/share/emacs/29.1.90/lisp/org/org-agenda
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-css hides /usr/local/share/emacs/29.1.90/lisp/org/ob-css
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-compat hides /usr/local/share/emacs/29.1.90/lisp/org/org-compat
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-julia hides /usr/local/share/emacs/29.1.90/lisp/org/ob-julia
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-sed hides /usr/local/share/emacs/29.1.90/lisp/org/ob-sed
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/ob-maxima hides /usr/local/share/emacs/29.1.90/lisp/org/ob-maxima
/home/mkleehammer/.emacs.d/elpa/org-9.6.12/org-crypt hides /usr/local/share/emacs/29.1.90/lisp/org/org-crypt

Features:
(shadow sort mail-extr emacsbug hl-prog-extra-preset-python-mode
descr-text magit-ediff git-messenger shortdoc cl-print evil-matchit-html
evil-matchit-javascript evil-matchit-python evil-matchit-indent
evil-matchit-simple evil-matchit-prog evil-matchit evil-matchit-sdk
semantic/lex semantic/fw mode-local region-tools goto-chg
transpose-frame yaml-ts-mode macros tabify cus-start iedit iedit-lib
cal-move poporg textsec uni-scripts idna-mapping ucs-normalize
uni-confusable textsec-check network-stream url-http url-gw nsm
url-cache url-auth web-mode disp-table devdocs-browser rect misc
dired-aux dired-x auto-virtualenv pyvenv eshell esh-cmd esh-ext esh-opt
esh-proc esh-io esh-arg esh-module esh-groups esh-util combobulate
combobulate-json combobulate-yaml combobulate-css combobulate-js-ts
combobulate-python combobulate-html combobulate-query scheme
combobulate-ui combobulate-display let-alist combobulate-ztree
combobulate-contrib combobulate-envelope combobulate-manipulation python
combobulate-navigation combobulate-misc combobulate-interface
combobulate-rules combobulate-settings tempo consult-register goto-addr
surround executable dabbrev bug-reference magit-extras face-remap
magit-bookmark magit-submodule magit-blame magit-stash magit-reflog
magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote
magit-commit magit-sequence magit-notes magit-worktree magit-tag
magit-merge magit-branch magit-reset magit-files magit-refs magit-status
magit magit-repos magit-apply magit-wip magit-log magit-diff git-commit
log-edit pcvs-util magit-core magit-autorevert autorevert magit-margin
magit-transient magit-process with-editor magit-mode transient magit-git
magit-base magit-section cursor-sensor crm org-autolist oc-basic ol-eww
ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect ol-docview doc-view
filenotify image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m ol-doi
org-link-doi binky pulse misearch multi-isearch jka-compr elisp-demos
helpful cc-langs trace edebug debug backtrace info-look f f-shortdoc
help-fns radix-tree elisp-refs consult-imenu consult add-log
rainbow-delimiters display-line-numbers which-func yasnippet
color-identifiers-mode mule-util bookmark avy winum flyspell ispell
fortune tmr systemd tramp tramp-loaddefs trampver tramp-integration
files-x tramp-compat shell proced time hl-prog-extra server org-contacts
org-capture gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig
gnus-sum gnus-group gnus-undo gnus-start gnus-dbus dbus gnus-cloud
nnimap nnmail mail-source utf7 nnoo parse-time iso8601 gnus-spec
gnus-int gnus-range message sendmail yank-media rfc822 mml mml-sec epa
derived epg rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse
rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader
gnus-win midnight corfu smerge-mode diff-mode diff hydra lv winner ediff
ediff-merg ediff-mult ediff-wind ediff-diff ediff-help ediff-init
ediff-util dumb-jump popup xref wdired dired dired-loaddefs rainbow-mode
css-mode smie sgml-mode facemenu eww url-queue shr pixel-fill kinsoku
url-file svg xml dom puny mm-url gnus nnheader gnus-util mail-utils
range mm-util mail-prsvr js c-ts-common treesit flimenu imenu cc-mode
cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars
cc-defs flycheck markdown-toc dash s markdown-mode edit-indirect color
ob-sql-mode sql view org-drill org-agenda org-appear org-element
org-persist xdg org-id org-refile avl-tree generator ob-dot org ob
ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src ob-comint
org-pcomplete pcomplete org-list org-footnote org-faces org-entities
time-date noutline outline ob-emacs-lisp ob-core ob-eval org-cycle
org-table ol org-fold org-fold-core org-keys oc org-loaddefs find-func
cal-menu calendar cal-loaddefs org-version org-compat org-macs
format-spec persist finder-inf git-modes gitignore-mode gitconfig-mode
conf-mode gitattributes-mode comp comp-cstr warnings projectile project
lisp-mnt grep ibuf-ext ibuffer ibuffer-loaddefs thingatpt beacon
marginalia vertico-prescient vertico compat prescient char-fold
ws-butler compile text-property-search comint ansi-osc ansi-color
tab-jump-out pcre2el rxt ring advice re-builder whole-line-or-region
ligature simple-modeline simple-modeline-segments simple-modeline-core
modus-vivendi-theme modus-themes recentf tree-widget cus-edit pp
cus-load icons wid-edit vc vc-dispatcher saveplace savehist elec-pair
spacious-padding mark-yank which-key use-package-diminish diminish
use-package-ensure edmacro kmacro use-package-bind-key bind-key
easy-mmode cl-extra help-mode use-package-core
auto-highlight-symbol-autoloads auto-virtualenv-autoloads
beacon-autoloads binky-autoloads color-identifiers-mode-autoloads
commify-autoloads consult-autoloads corfu-autoloads
default-text-scale-autoloads devdocs-browser-autoloads
diminish-autoloads dumb-jump-autoloads eat-autoloads
edit-indirect-autoloads elisp-demos-autoloads evil-matchit-autoloads
expand-region-autoloads fd-dired-autoloads fix-word-autoloads fix-word
flimenu-autoloads flycheck-autoloads flyspell-correct-autoloads
git-messenger-autoloads git-modes-autoloads git-timemachine-autoloads
goto-chg-autoloads helpful-autoloads elisp-refs-autoloads f-autoloads
hl-prog-extra-autoloads iedit-autoloads json-mode-autoloads
json-snatcher-autoloads ligature-autoloads literate-calc-mode-autoloads
magit-autoloads pcase git-commit-autoloads magit-section-autoloads
marginalia-autoloads mark-yank-autoloads markdown-toc-autoloads
markdown-mode-autoloads modus-themes-autoloads ob-sql-mode-autoloads
ol-notmuch-autoloads notmuch-autoloads org-appear-autoloads
org-autolist-autoloads org-contacts-autoloads org-drill-autoloads
org-autoloads package-lint-autoloads pcre2el-autoloads persist-autoloads
pip-requirements-autoloads pkg-info-autoloads epl-autoloads
poporg-autoloads popup-autoloads projectile-autoloads pyvenv-autoloads
rainbow-delimiters-autoloads rainbow-mode-autoloads realgud-autoloads
realgud-recursive-autoloads loc-changes-autoloads
load-relative-autoloads rg-autoloads simple-modeline-autoloads
spacious-padding-autoloads surround-autoloads systemd-autoloads rx
tab-jump-out-autoloads test-simple-autoloads third-time-autoloads
tmr-autoloads transient-autoloads transpose-frame-autoloads
treemacs-autoloads cfrs-autoloads posframe-autoloads ht-autoloads
hydra-autoloads lv-autoloads pfuture-autoloads ace-window-autoloads
avy-autoloads s-autoloads use-package-chords-autoloads
bind-chord-autoloads key-chord-autoloads use-package-autoloads
uuidgen-autoloads vertico-prescient-autoloads vertico-autoloads
prescient-autoloads web-mode-autoloads wgrep-autoloads
which-key-autoloads whole-line-or-region-autoloads winum-autoloads
dash-autoloads with-editor-autoloads info compat-autoloads
ws-butler-autoloads yaml-mode-autoloads yasnippet-autoloads package
browse-url url url-proxy url-privacy url-expand url-methods url-history
url-cookie generate-lisp-file url-domsuf url-util mailcap url-handlers
url-parse auth-source cl-seq eieio eieio-core cl-macs password-cache
json subr-x map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs
cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify
ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode lisp-mode prog-mode register
page tab-bar menu-bar rfn-eshadow isearch easymenu timer select
scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors
frame minibuffer nadvice seq simple cl-generic indonesian philippine
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure
cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp
files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget keymap hashtable-print-readable backquote
threads dbusbind inotify lcms2 dynamic-setting system-font-setting
font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty
make-network-process native-compile emacs)

Memory information:
((conses 16 1967230 220936)
 (symbols 48 73006 19)
 (strings 32 701186 8962)
 (string-bytes 1 25771724)
 (vectors 16 143946)
 (vector-slots 8 3640381 349726)
 (floats 8 1371 2500)
 (intervals 56 56204 8129)
 (buffers 984 79))






^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#67394: 29.1.90; python-ts-mode triple quoted string fill bug
  2023-11-23  5:24 bug#67394: 29.1.90; python-ts-mode triple quoted string fill bug Michael Kleehammer
@ 2023-11-23  7:00 ` Eli Zaretskii
  2023-11-29 20:51   ` Michael Kleehammer
  0 siblings, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2023-11-23  7:00 UTC (permalink / raw)
  To: Michael Kleehammer; +Cc: 67394

> From: Michael Kleehammer <michael@kleehammer.com>
> Date: Wed, 22 Nov 2023 23:24:19 -0600
> 
> Filling a paragraph in a Python triple quoted string does not work in
> python-ts-mode.  It does work in python-mode.  To reproduce, enter the
> following into the scratch buffer and try to word wrap the triple quoted
> string using M-q in python-mode and python-ts-mode.  It word wraps in
> python-mode but not the tree-sitter version.
> 
> def test():
>     """l
>     abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc abc
>     """
>     pass
> 
> The core issue is in python-syntax-context in the 'triple-quoted-string
> branch of the pcase, python.el:534 in the emacs 29 branch.  The code is
> the same in master.
> 
>     ('triple-quoted-string (and (eq t (nth 3 ppss)) (nth 8 ppss)))
> 
> In python-mode (nth 3 ppss) is t, but in python-ts-mode it is 34, which
> is a quote character.  I'm pretty new to the tree-sitter code so I
> cannot suggest a fix.

Is this the same as bug#67262?  If so, does the change suggested there
fix this issue as well?

Thanks.





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#67394: 29.1.90; python-ts-mode triple quoted string fill bug
  2023-11-23  7:00 ` Eli Zaretskii
@ 2023-11-29 20:51   ` Michael Kleehammer
  2023-11-30  6:26     ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Michael Kleehammer @ 2023-11-29 20:51 UTC (permalink / raw)
  To: 67394

Eli Zaretskii <eliz@gnu.org> writes:

> Is this the same as bug#67262?  If so, does the change suggested there
> fix this issue as well?

You are absolutely right Eli.  I forgot to see if it was already
reported - I've apparently forgotten my mailing list manners.

It's not exactly clear to me how to close a bug I opened as a duplicate.
Am I supposed to use this:

  https://debbugs.gnu.org/server-control.html

Or is that for Emacs developers?  Is there a intro document somewhere or
is it something Emacs developers will do based on this?

Thanks.





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#67394: 29.1.90; python-ts-mode triple quoted string fill bug
  2023-11-29 20:51   ` Michael Kleehammer
@ 2023-11-30  6:26     ` Eli Zaretskii
  0 siblings, 0 replies; 4+ messages in thread
From: Eli Zaretskii @ 2023-11-30  6:26 UTC (permalink / raw)
  To: Michael Kleehammer; +Cc: 67394

merge 67394 67262
thanks

> From: Michael Kleehammer <michael@kleehammer.com>
> Date: Wed, 29 Nov 2023 14:51:30 -0600
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > Is this the same as bug#67262?  If so, does the change suggested there
> > fix this issue as well?
> 
> You are absolutely right Eli.  I forgot to see if it was already
> reported - I've apparently forgotten my mailing list manners.

Thanks for checking.

> It's not exactly clear to me how to close a bug I opened as a duplicate.

We don't close them, we merge them.  But don't worry about that, I've
done that already, see above.

> Am I supposed to use this:
> 
>   https://debbugs.gnu.org/server-control.html
> 
> Or is that for Emacs developers?  Is there a intro document somewhere or
> is it something Emacs developers will do based on this?

See admin/notes/bugtracker in the source tree.  Anyone can do this
stuff, not just the Emacs maintainers.





^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-11-30  6:26 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-23  5:24 bug#67394: 29.1.90; python-ts-mode triple quoted string fill bug Michael Kleehammer
2023-11-23  7:00 ` Eli Zaretskii
2023-11-29 20:51   ` Michael Kleehammer
2023-11-30  6:26     ` Eli Zaretskii

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).