Package: emacs;
Reported by: Mads Kyed <mads <at> kyed.de>
Date: Mon, 13 May 2024 05:04:01 UTC
Severity: normal
Found in version 29.3
Done: Eli Zaretskii <eliz <at> gnu.org>
To reply to this bug, email your comments to 70908 AT debbugs.gnu.org.
There is no need to reopen the bug first.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#70908
; Package emacs
.
(Mon, 13 May 2024 05:04:01 GMT) Full text and rfc822 format available.Mads Kyed <mads <at> kyed.de>
:bug-gnu-emacs <at> gnu.org
.
(Mon, 13 May 2024 05:04:01 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Mads Kyed <mads <at> kyed.de> To: bug-gnu-emacs <at> gnu.org Subject: 29.3; Indentation breaks in csharp-mode Date: Sun, 12 May 2024 19:13:35 +0200
Hi, In csharp-mode the indentation breaks if the keyword "new" is used somewhere in a file. For example: class A { List<int> a = new List<int>(); } Placing the cursor after ; and pressing Return twice, it becomes apparent that the indentation no longer works. If the "new" keyword is removed, indentation works again. It seems there is some new logic (introduced in version 29.3) in the function "csharp-guess-basic-syntax" that is responsible for the behaviour above. Best regards, Mads Kyed In GNU Emacs 29.3 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.38, cairo version 1.18.0) of 2024-05-11 built on localhost Windowing system distributor 'The X.Org Foundation', version 11.0.12101009 System Description: Gentoo Linux Configured using: 'configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --datarootdir=/usr/share --disable-silent-rules --docdir=/usr/share/doc/emacs-29.3-r2 --htmldir=/usr/share/doc/emacs-29.3-r2/html --libdir=/usr/lib64 --program-suffix=-emacs-29 --includedir=/usr/include/emacs-29 --infodir=/usr/share/info/emacs-29 --localstatedir=/var --enable-locallisppath=/etc/emacs:/usr/share/emacs/site-lisp --without-compress-install --without-hesiod --without-pop --with-file-notification=inotify --with-pdumper --enable-acl --with-dbus --without-modules --without-gameuser --with-libgmp --with-gpm --without-native-compilation --with-json --without-kerberos --without-kerberos5 --with-lcms2 --with-xml2 --without-mailutils --without-selinux --without-sqlite3 --with-gnutls --without-libsystemd --with-threads --without-tree-sitter --without-wide-int --with-sound=alsa --with-zlib --with-x --without-pgtk --without-ns --without-gconf --without-gsettings --without-toolkit-scroll-bars --with-xpm --with-xft --with-cairo --without-harfbuzz --without-libotf --without-m17n-flt --with-x-toolkit=gtk3 --without-xwidgets --with-gif --with-jpeg --with-png --with-rsvg --with-tiff --without-webp --without-imagemagick --with-dumping=pdumper 'CFLAGS=-march=native -O2 -pipe' 'LDFLAGS=-Wl,-O1 -Wl,--as-needed'' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM JPEG JSON LCMS2 LIBXML2 NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB Important settings: value of $LC_MONETARY: de_DE.UTF-8 value of $LC_NUMERIC: de_DE.UTF-8 value of $LC_TIME: de_DE.UTF-8 value of $LANG: en_US.utf8 locale-coding-system: utf-8-unix Major mode: ELisp/d Minor modes in effect: repeat-mode: t cua-mode: t display-time-mode: t minions-mode: t yas-global-mode: t yas-minor-mode: t global-git-commit-mode: t magit-auto-revert-mode: t server-mode: t global-flycheck-mode: t flycheck-mode: t pdf-occur-global-minor-mode: t TeX-PDF-mode: t TeX-source-correlate-mode: t delete-selection-mode: t windmove-mode: t ido-everywhere: t shell-dirtrack-mode: t override-global-mode: t tooltip-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t line-number-mode: t global-visual-line-mode: t visual-line-mode: t indent-tabs-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /home/kyed/.emacs.d/elpa/auctex-14.0.4/auctex hides /usr/share/emacs/site-lisp/auctex/auctex /home/kyed/.emacs.d/elpa/auctex-14.0.4/context-nl hides /usr/share/emacs/site-lisp/auctex/context-nl /home/kyed/.emacs.d/elpa/auctex-14.0.4/tex-ispell hides /usr/share/emacs/site-lisp/auctex/tex-ispell /home/kyed/.emacs.d/elpa/auctex-14.0.4/tex-info hides /usr/share/emacs/site-lisp/auctex/tex-info /home/kyed/.emacs.d/elpa/auctex-14.0.4/preview hides /usr/share/emacs/site-lisp/auctex/preview /home/kyed/.emacs.d/elpa/auctex-14.0.4/toolbar-x hides /usr/share/emacs/site-lisp/auctex/toolbar-x /home/kyed/.emacs.d/elpa/auctex-14.0.4/tex-style hides /usr/share/emacs/site-lisp/auctex/tex-style /home/kyed/.emacs.d/elpa/auctex-14.0.4/tex hides /usr/share/emacs/site-lisp/auctex/tex /home/kyed/.emacs.d/elpa/auctex-14.0.4/tex-fold hides /usr/share/emacs/site-lisp/auctex/tex-fold /home/kyed/.emacs.d/elpa/auctex-14.0.4/plain-tex hides /usr/share/emacs/site-lisp/auctex/plain-tex /home/kyed/.emacs.d/elpa/auctex-14.0.4/bib-cite hides /usr/share/emacs/site-lisp/auctex/bib-cite /home/kyed/.emacs.d/elpa/auctex-14.0.4/tex-font hides /usr/share/emacs/site-lisp/auctex/tex-font /home/kyed/.emacs.d/elpa/auctex-14.0.4/context hides /usr/share/emacs/site-lisp/auctex/context /home/kyed/.emacs.d/elpa/auctex-14.0.4/tex-site hides /usr/share/emacs/site-lisp/auctex/tex-site /home/kyed/.emacs.d/elpa/auctex-14.0.4/multi-prompt hides /usr/share/emacs/site-lisp/auctex/multi-prompt /home/kyed/.emacs.d/elpa/auctex-14.0.4/tex-mik hides /usr/share/emacs/site-lisp/auctex/tex-mik /home/kyed/.emacs.d/elpa/auctex-14.0.4/texmathp hides /usr/share/emacs/site-lisp/auctex/texmathp /home/kyed/.emacs.d/elpa/auctex-14.0.4/latex-flymake hides /usr/share/emacs/site-lisp/auctex/latex-flymake /home/kyed/.emacs.d/elpa/auctex-14.0.4/tex-jp hides /usr/share/emacs/site-lisp/auctex/tex-jp /home/kyed/.emacs.d/elpa/auctex-14.0.4/context-en hides /usr/share/emacs/site-lisp/auctex/context-en /home/kyed/.emacs.d/elpa/auctex-14.0.4/font-latex hides /usr/share/emacs/site-lisp/auctex/font-latex /home/kyed/.emacs.d/elpa/auctex-14.0.4/latex hides /usr/share/emacs/site-lisp/auctex/latex /home/kyed/.emacs.d/elpa/auctex-14.0.4/tex-bar hides /usr/share/emacs/site-lisp/auctex/tex-bar /home/kyed/.emacs.d/elpa/jsonrpc-1.0.25/jsonrpc hides /usr/share/emacs/29.3/lisp/jsonrpc /home/kyed/.emacs.d/elpa/transient-20240509.1849/transient hides /usr/share/emacs/29.3/lisp/transient /home/kyed/.emacs.d/elpa/eglot-1.17/eglot hides /usr/share/emacs/29.3/lisp/progmodes/eglot /home/kyed/.emacs.d/elpa/eldoc-1.15.0/eldoc hides /usr/share/emacs/29.3/lisp/emacs-lisp/eldoc Features: (display-line-numbers vc-dispatcher vc-svn shortdoc cl-print help-fns radix-tree shadow sort mail-extr emacsbug leuven-theme repeat cua-base time minions yasnippet 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 which-func magit-diff smerge-mode git-commit log-edit message sendmail yank-media rfc822 mml mml-sec epa gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log magit-core magit-autorevert autorevert magit-margin magit-transient magit-process with-editor server magit-mode transient magit-git magit-base magit-section cursor-sensor lsp-ui lsp-ui-flycheck lsp-ui-doc goto-addr lsp-ui-imenu lsp-ui-peek lsp-ui-sideline flycheck lsp-ui-util face-remap dap-netcore dom dap-mode dap-tasks dap-launch lsp-docker yaml posframe dap-overlays lsp-mode lsp-protocol tree-widget spinner network-stream nsm markdown-mode color lv inline ht epg rfc6068 epg-config eglot-fsharp gnutls puny eglot external-completion jsonrpc diff ert ewoc debug backtrace fsharp-mode inf-fsharp-mode fsharp-mode-util fsharp-mode-structure smie conda pythonic tramp tramp-loaddefs trampver tramp-integration tramp-compat parse-time pdf-occur tablist tablist-filter semantic/wisent/comp semantic/wisent semantic/wisent/wisent semantic/util-modes semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local find-func cedet pdf-isearch pdf-misc imenu pdf-tools pdf-view bookmark pdf-cache pdf-info tq pdf-util format-spec pdf-macs auto-complete-auctex latex latex-flymake flymake-proc flymake warnings tex-ispell tex-style auto-complete popup tex dbus xml crm texmathp intellij-theme projectile lisp-mnt ibuf-ext ibuffer ibuffer-loaddefs replace-from-region session zenburn-theme synosaurus thingatpt browse-kill-ring delsel biblio biblio-download biblio-dissemin biblio-ieee biblio-hal biblio-dblp biblio-crossref biblio-arxiv biblio-doi biblio-core let-alist url-queue url-file hl-line bibtex iso8601 time-date pcsv edmacro kmacro outline-magic noutline outline windsize windmove elpy advice elpy-rpc pyvenv eshell esh-cmd esh-ext esh-opt esh-proc esh-io esh-arg esh-module esh-groups esh-util elpy-shell elpy-profile elpy-django elpy-refactor diff-mode python compat treesit ido hideshow grep compile text-property-search files-x etags fileloop generator xref project cus-edit pp cus-load icons autumn-light-theme color-theme-sanityinc-solarized hide-mode-line w3m doc-view filenotify jka-compr image-mode exif timezone w3m-hist bookmark-w3m w3m-ems wid-edit w3m-favicon w3m-image w3m-fb tab-line w3m-proc w3m-util f dash s multishell savehist shell pcomplete comint ansi-osc ansi-color ring exec-path-from-shell cl-extra help-mode use-package use-package-ensure use-package-delight use-package-diminish use-package-bind-key bind-key use-package-core dired-x dired dired-loaddefs finder-inf easy-mmode derived rx site-gentoo preview-latex auctex-autoloads tex-site auto-complete-auctex-autoloads auto-complete-autoloads autumn-light-theme-autoloads biblio-autoloads biblio-core-autoloads browse-kill-ring-autoloads color-theme-modern-autoloads color-theme-sanityinc-solarized-autoloads conda-autoloads dap-mode-autoloads bui-autoloads dired-narrow-autoloads dired-hacks-utils-autoloads eglot-fsharp-autoloads eglot-autoloads elpy-autoloads company-autoloads exec-path-from-shell-autoloads flycheck-autoloads fsharp-mode-autoloads hide-mode-line-autoloads highlight-indentation-autoloads intellij-theme-autoloads jsonrpc-autoloads lsp-docker-autoloads lsp-treemacs-autoloads lsp-ui-autoloads lsp-mode-autoloads eldoc-autoloads magit-autoloads pcase git-commit-autoloads magit-section-autoloads markdown-mode-autoloads maxima-autoloads minions-autoloads mood-line-autoloads multishell-autoloads outline-magic-autoloads pcsv-autoloads pdf-tools-autoloads popup-autoloads projectile-autoloads pythonic-autoloads f-autoloads pyvenv-autoloads replace-from-region-autoloads session-autoloads solarized-theme-autoloads spinner-autoloads synosaurus-autoloads tablist-autoloads test-simple-autoloads transient-autoloads treemacs-autoloads cfrs-autoloads posframe-autoloads ht-autoloads hydra-autoloads lv-autoloads pfuture-autoloads ace-window-autoloads avy-autoloads s-autoloads dash-autoloads w3m-load w3m-autoloads windsize-autoloads with-editor-autoloads info compat-autoloads yaml-autoloads yasnippet-autoloads zenburn-theme-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 font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty make-network-process emacs) Memory information: ((conses 16 484104 74188) (symbols 48 45670 42) (strings 32 161879 9055) (string-bytes 1 4751692) (vectors 16 95645) (vector-slots 8 1700648 224762) (floats 8 507 150) (intervals 56 1477 134) (buffers 976 20)) -- Mads Kyed Email: mads <at> kyed.de
Eli Zaretskii <eliz <at> gnu.org>
:Mads Kyed <mads <at> kyed.de>
:Message #10 received at 70908-done <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Mads Kyed <mads <at> kyed.de> Cc: 70908-done <at> debbugs.gnu.org Subject: Re: bug#70908: 29.3; Indentation breaks in csharp-mode Date: Mon, 13 May 2024 09:01:09 +0300
> Date: Sun, 12 May 2024 19:13:35 +0200 > From: Mads Kyed <mads <at> kyed.de> > > Hi, > > In csharp-mode the indentation breaks if the keyword "new" is > used somewhere in a file. For example: > > class A > { > List<int> a = new List<int>(); > } > > Placing the cursor after ; and pressing Return twice, it becomes > apparent that the indentation no longer works. If the "new" keyword is > removed, indentation works again. > > It seems there is some new logic (introduced in version 29.3) in the > function > "csharp-guess-basic-syntax" that is responsible for the behaviour > above. Thanks. I can reproduce this in Emacs 29.3, but not on the current emacs-29 branch or the master branch (which will become Emacs 30). So I assume this was already fixed, and I'm therefore closing this bug.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.