GNU bug report logs - #59833
29.0.60; json-ts-mode fontifies everything as string

Previous Next

Package: emacs;

Reported by: jostein <at> kjonigsen.net

Date: Mon, 5 Dec 2022 10:41:01 UTC

Severity: normal

Found in version 29.0.60

Done: Yuan Fu <casouri <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 59833 in the body.
You can then email your comments to 59833 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 10:41:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to jostein <at> kjonigsen.net:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Mon, 05 Dec 2022 10:41:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>
To: "bug-gnu-emacs <at> gnu.org" <bug-gnu-emacs <at> gnu.org>,
 Yuan Fu <casouri <at> gmail.com>, Theodor Thornhill <theo <at> thornhill.no>,
 Randy Taylor <dev <at> rjt.dev>
Subject: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 5 Dec 2022 11:40:33 +0100
[Message part 1 (text/plain, inline)]
Hey everyone.

When opening a JSON-file in a build from emacs git emacs-29 
release-branch, Emacs still defaults to json-mode.

Fontification in json-mode looks correct and proper.

When trying to insteas use json-ts-mode, literally everything is 
fontified as strings.

When I change the code to disable the string-fontification rule, this 
yields a buffer where everything is fontified using default-face. That 
is, no other fontification is taking place.

Have this mode really been tested? Should it be working? Or is there an 
error on my end?

Could someone else please give json-ts-mode a try?

--
Jostein


In GNU Emacs 29.0.60 (build 1, x86_64-pc-linux-gnu, GTK+ Version
 3.24.34, cairo version 1.16.0) of 2022-12-02 built on ThinkPad-T14s
Repository revision: 1e36ad9458e8deacfc85da573bb0ca0f270d4802
Repository branch: emacs-29
Windowing system distributor 'The X.Org Foundation', version 11.0.12201003
System Description: Ubuntu 22.10

Configured using:
 'configure --with-tree-sitter'

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

Important settings:
  value of $LC_MONETARY: nb_NO.UTF-8
  value of $LC_NUMERIC: nb_NO.UTF-8
  value of $LC_TIME: nb_NO.UTF-8
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: JSON

Minor modes in effect:
  global-git-commit-mode: t
  magit-auto-revert-mode: t
  lsp-diagnostics-mode: t
  lsp-headerline-breadcrumb-mode: t
  lsp-modeline-workspace-status-mode: t
  lsp-modeline-diagnostics-mode: t
  lsp-modeline-code-actions-mode: t
  electric-pair-mode: t
  lsp-completion-mode: t
  editorconfig-mode: t
  flycheck-mode: t
  which-function-mode: t
  nlinum-mode: t
  company-mode: t
  global-ede-mode: t
  dap-tooltip-mode: t
  dap-ui-many-windows-mode: t
  dap-ui-controls-mode: t
  dap-ui-mode: t
  treemacs-filewatch-mode: t
  treemacs-follow-mode: t
  treemacs-git-mode: t
  treemacs-fringe-indicator-mode: t
  dap-auto-configure-mode: t
  dap-mode: t
  global-undo-tree-mode: t
  undo-tree-mode: t
  doom-modeline-mode: t
  projectile-mode: t
  ido-yes-or-no-mode: t
  helm-mode: t
  helm-minibuffer-history-mode: t
  helm--remap-mouse-mode: t
  async-bytecomp-package-mode: t
  delete-selection-mode: t
  global-auto-revert-mode: t
  server-mode: t
  shell-dirtrack-mode: t
  global-hl-line-mode: t
  lsp-managed-mode: t
  lsp-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  tooltip-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
  blink-cursor-mode: t
  column-number-mode: t
  line-number-mode: t
  auto-fill-function: yas--auto-fill
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  hs-minor-mode: t

Load-path shadows:
/home/jostein/.emacs.d/elpa/transient-20221127.2242/transient hides 
/home/jostein/build/emacs/lisp/transient
/home/jostein/.emacs.d/elpa/eglot-20221020.1010/eglot hides 
/home/jostein/build/emacs/lisp/progmodes/eglot

Features:
(shadow sort emacsbug help-fns radix-tree json-ts-mode dired-aux
ede/dired mule-util vc-hg vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs
log-view json-mode json-snatcher yaml-mode magit-patch goto-addr
git-rebase magit-extras flyspell ispell magit-submodule magit-obsolete
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 smerge-mode git-commit
log-edit message sendmail yank-media rfc822 mml mml-sec epa mm-decode
mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums
mailabbrev gmm-utils mailheader pcvs-util magit-core magit-autorevert
magit-margin magit-transient magit-process with-editor magit-mode
transient magit-git magit-base magit-section crm compat-27 compat-26
executable tabify misearch multi-isearch semantic/lex-spp ede/emacs
semantic/db semantic/find semantic/util-modes semantic/util semantic
semantic/tag semantic/lex semantic/fw mode-local bug-reference
helm-command helm-elisp helm-eval helm-info typescript-ts-mode js
mail-extr lsp-diagnostics lsp-headerline lsp-icons lsp-modeline view
vc-git diff-mode vc-dir vc vc-dispatcher disp-table elec-pair
csharp-mode treesit cc-langs cc-mode cc-fonts cc-guess cc-menus cc-cmds
cc-styles cc-align cc-engine cc-vars cc-defs winner ffap tramp-archive
tramp-gvfs tramp-cache warnings time-stamp zeroconf dbus face-remap
add-log lsp-zig lsp-steep lsp-svelte lsp-sqls lsp-ruby-syntax-tree
lsp-yaml lsp-xml lsp-vimscript lsp-vhdl lsp-volar lsp-vetur lsp-html
lsp-verilog lsp-vala lsp-v lsp-typeprof lsp-ttcn3 lsp-toml lsp-terraform
lsp-tex lsp-sorbet lsp-solargraph lsp-rust lsp-rf lsp-remark lsp-racket
lsp-r lsp-purescript lsp-pylsp lsp-pyls lsp-php lsp-pls
lsp-perlnavigator lsp-perl lsp-openscad lsp-ocaml lsp-magik lsp-nix
lsp-nim lsp-nginx lsp-mint lsp-marksman lsp-markdown lsp-lua lsp-kotlin
lsp-json lsp-javascript lsp-idris lsp-haxe lsp-groovy lsp-hack
lsp-graphql lsp-gleam lsp-go lsp-completion lsp-gdscript lsp-fsharp
lsp-fortran lsp-eslint lsp-erlang lsp-emmet lsp-elixir lsp-elm
lsp-dockerfile lsp-dhall lsp-d lsp-css lsp-csharp gnutls lsp-crystal
lsp-cmake lsp-clojure lsp-semantic-tokens lsp-clangd lsp-beancount
lsp-bash lsp-astro lsp-ansible lsp-angular lsp-ada lsp-actionscript
ido-completing-read+ memoize minibuf-eldef elisp-slime-nav paredit
editorconfig editorconfig-core editorconfig-core-handle
editorconfig-fnmatch flycheck highlight-symbol which-func edebug debug
backtrace nlinum linum company-oddmuse company-keywords company-etags
etags fileloop generator company-gtags company-dabbrev-code
company-dabbrev company-files company-clang company-capf company-cmake
company-semantic company-template company-bbdb company-web-html
company-web company-css web-completion-data company hideshow eww
url-queue shr pixel-fill kinsoku url-file svg mm-url gnus nnheader
gnus-util mail-utils range mm-util mail-prsvr ede/speedbar ede/files ede
ede/detect ede/base ede/auto ede/source eieio-base eieio-speedbar
speedbar ezimage eieio-custom cedet dap-mouse dap-ui lsp-treemacs
lsp-treemacs-generic lsp-treemacs-themes treemacs-treelib treemacs
treemacs-header-line treemacs-compatibility treemacs-mode
treemacs-interface treemacs-persistence treemacs-filewatch-mode
treemacs-follow-mode treemacs-rendering treemacs-annotations
treemacs-async treemacs-workspaces treemacs-dom treemacs-visuals
treemacs-fringe-indicator treemacs-scope pulse treemacs-faces
treemacs-icons treemacs-themes treemacs-core-utils pfuture
treemacs-logging treemacs-customization treemacs-macros gdb-mi bindat
gud derived dframe bui bui-list bui-info bui-entry bui-core bui-history
bui-button bui-utils lsp-lens dap-gdb-lldb dap-netcore dap-node
dap-utils dom xml dap-pwsh lsp-pwsh dap-python dap-mode dap-tasks
dap-launch lsp-docker yaml posframe dap-overlays undo-tree diff queue
doom-modeline doom-modeline-segments doom-modeline-env
doom-modeline-core all-the-icons all-the-icons-faces data-material
data-weathericons data-octicons data-fileicons data-faicons
data-alltheicons shrink-path compat compat-macs projectile lisp-mnt grep
ibuf-ext ibuffer ibuffer-loaddefs helm-imenu ob-plantuml org ob
ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src ob-comint
org-pcomplete org-list org-footnote org-faces org-entities 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 ido-yes-or-no ido helm-mode helm-misc helm-files
image-dired image-dired-tags image-dired-external image-dired-util xdg
image-mode dired dired-loaddefs exif tramp tramp-loaddefs trampver
tramp-integration cus-edit pp cus-load files-x tramp-compat parse-time
iso8601 time-date ls-lisp helm-buffers helm-occur helm-tags helm-locate
helm-grep helm-regexp format-spec helm-utils helm-help helm-types helm
helm-global-bindings helm-easymenu edmacro kmacro helm-core easy-mmode
async-bytecomp helm-source helm-multi-match helm-lib async helm-config
delsel cl-extra autorevert server powershell advice shell pcomplete
hl-line lsp-mode lsp-protocol yasnippet help-mode xref project
tree-widget wid-edit spinner pcase network-stream puny nsm markdown-mode
color thingatpt noutline outline icons lv inline imenu ht filenotify f
f-shortdoc shortdoc s ewoc epg rfc6068 epg-config dash dracula-theme
compile-eslint compile text-property-search comint ansi-osc ansi-color
ring cl finder-inf git-timemachine-autoloads rx
helm-projectile-autoloads expand-region-autoloads
all-the-icons-autoloads dracula-theme-autoloads eglot-autoloads
multiple-cursors-autoloads tree-sitter-langs-autoloads
projectile-autoloads nlinum-autoloads doom-modeline-autoloads
rust-mode-autoloads editorconfig-autoloads helm-autoloads
helm-core-autoloads async-autoloads assess-autoloads m-buffer-autoloads
cargo-autoloads package-lint-autoloads flycheck-autoloads
company-autoloads magit-autoloads magit-section-autoloads
web-mode-autoloads paredit-autoloads helpful-autoloads
elisp-refs-autoloads js2-mode-autoloads yaml-mode-autoloads
powershell-autoloads dap-mode-autoloads lsp-docker-autoloads
yaml-autoloads lsp-treemacs-autoloads treemacs-autoloads
posframe-autoloads hydra-autoloads pfuture-autoloads
ace-window-autoloads avy-autoloads lsp-mode-autoloads
markdown-mode-autoloads ht-autoloads git-commit-autoloads
with-editor-autoloads transient-autoloads compat-autoloads
pcache-autoloads f-autoloads popup-autoloads s-autoloads info
dash-autoloads macrostep-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 emacs)

Memory information:
((conses 16 893822 107292)
 (symbols 48 58306 34)
 (strings 32 224415 12766)
 (string-bytes 1 7012327)
 (vectors 16 134309)
 (vector-slots 8 2366207 177230)
 (floats 8 1129 896)
 (intervals 56 32198 3519)
 (buffers 992 63))

-- 
Vennlig hilsen
*Jostein Kjønigsen*

jostein <at> kjonigsen.net 🍵 jostein <at> gmail.com
https://jostein.kjønigsen.no <https://jostein.kjønigsen.no>
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 11:25:02 GMT) Full text and rfc822 format available.

Message #8 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Theodor Thornhill <theo <at> thornhill.no>
To: 59833 <at> debbugs.gnu.org
Cc: Randy Taylor <dev <at> rjt.dev>, Yuan Fu <casouri <at> gmail.com>,
 jostein <at> kjonigsen.net
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 12:24:05 +0100
Jostein Kjønigsen <jostein <at> secure.kjonigsen.net> writes:

> Hey everyone.
>
> When opening a JSON-file in a build from emacs git emacs-29 
> release-branch, Emacs still defaults to json-mode.
>
> Fontification in json-mode looks correct and proper.
>
> When trying to insteas use json-ts-mode, literally everything is 
> fontified as strings.
>
> When I change the code to disable the string-fontification rule, this 
> yields a buffer where everything is fontified using default-face. That 
> is, no other fontification is taking place.
>
> Have this mode really been tested? Should it be working? Or is there an 
> error on my end?
>
> Could someone else please give json-ts-mode a try?
>

Yeah, you are correct.  It seems we've had a regression in this commit,
0ed313642227afdeccf48057eea458edca9d2962.

I believe this is the offending commit - what do you think, Randy?

Specifically the lhs should be fontified differently than the rhs, so
not everything is a string.

Do you want to do that, Randy, or should I?

Theo





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 11:36:02 GMT) Full text and rfc822 format available.

Message #11 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Theodor Thornhill <theo <at> thornhill.no>
To: 59833 <at> debbugs.gnu.org
Cc: Randy Taylor <dev <at> rjt.dev>, Yuan Fu <casouri <at> gmail.com>,
 jostein <at> kjonigsen.net
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 12:35:08 +0100
[Message part 1 (text/plain, inline)]
Theodor Thornhill <theo <at> thornhill.no> writes:

> Jostein Kjønigsen <jostein <at> secure.kjonigsen.net> writes:
>
>> Hey everyone.
>>
>> When opening a JSON-file in a build from emacs git emacs-29 
>> release-branch, Emacs still defaults to json-mode.
>>
>> Fontification in json-mode looks correct and proper.
>>
>> When trying to insteas use json-ts-mode, literally everything is 
>> fontified as strings.
>>
>> When I change the code to disable the string-fontification rule, this 
>> yields a buffer where everything is fontified using default-face. That 
>> is, no other fontification is taking place.
>>
>> Have this mode really been tested? Should it be working? Or is there an 
>> error on my end?
>>
>> Could someone else please give json-ts-mode a try?
>>
>
> Yeah, you are correct.  It seems we've had a regression in this commit,
> 0ed313642227afdeccf48057eea458edca9d2962.
>
> I believe this is the offending commit - what do you think, Randy?
>
> Specifically the lhs should be fontified differently than the rhs, so
> not everything is a string.
>
> Do you want to do that, Randy, or should I?
>
> Theo

Can you test this patch, Jostein?

Theo

[0001-Add-back-in-font-locking-for-pair-in-json-ts-mode.patch (text/x-diff, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 11:54:02 GMT) Full text and rfc822 format available.

Message #14 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>
To: Theodor Thornhill <theo <at> thornhill.no>, 59833 <at> debbugs.gnu.org
Cc: Randy Taylor <dev <at> rjt.dev>, Yuan Fu <casouri <at> gmail.com>,
 jostein <at> kjonigsen.net
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 5 Dec 2022 12:53:01 +0100
Yeah. That works for me.

I tried making a similar patch, but I guess I was trying to overspecify, 
rather than just shortcutting the selection. Nice job!

--
Jostein


jostein <at> kjonigsen.net 🍵 jostein <at> gmail.com
https://jostein.kjønigsen.no <https://jostein.kjønigsen.no>
On 05.12.2022 12:35, Theodor Thornhill wrote:
> Theodor Thornhill <theo <at> thornhill.no> writes:
>
>> Jostein Kjønigsen <jostein <at> secure.kjonigsen.net> writes:
>>
>>> Hey everyone.
>>>
>>> When opening a JSON-file in a build from emacs git emacs-29
>>> release-branch, Emacs still defaults to json-mode.
>>>
>>> Fontification in json-mode looks correct and proper.
>>>
>>> When trying to insteas use json-ts-mode, literally everything is
>>> fontified as strings.
>>>
>>> When I change the code to disable the string-fontification rule, this
>>> yields a buffer where everything is fontified using default-face. That
>>> is, no other fontification is taking place.
>>>
>>> Have this mode really been tested? Should it be working? Or is there an
>>> error on my end?
>>>
>>> Could someone else please give json-ts-mode a try?
>>>
>> Yeah, you are correct.  It seems we've had a regression in this commit,
>> 0ed313642227afdeccf48057eea458edca9d2962.
>>
>> I believe this is the offending commit - what do you think, Randy?
>>
>> Specifically the lhs should be fontified differently than the rhs, so
>> not everything is a string.
>>
>> Do you want to do that, Randy, or should I?
>>
>> Theo
> Can you test this patch, Jostein?
>
> Theo
>




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 12:07:02 GMT) Full text and rfc822 format available.

Message #17 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Theodor Thornhill <theo <at> thornhill.no>
To: Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>,
 59833 <at> debbugs.gnu.org
Cc: Randy Taylor <dev <at> rjt.dev>, Yuan Fu <casouri <at> gmail.com>,
 jostein <at> kjonigsen.net, Eli Zaretskii <eliz <at> gnu.org>
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 13:06:53 +0100
Jostein Kjønigsen <jostein <at> secure.kjonigsen.net> writes:

> Yeah. That works for me.
>
> I tried making a similar patch, but I guess I was trying to overspecify, 
> rather than just shortcutting the selection. Nice job!
>

Great!

Yuan, Eli - can one of you apply for me? :-)

Theo




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 13:53:02 GMT) Full text and rfc822 format available.

Message #20 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Randy Taylor <dev <at> rjt.dev>
To: Theodor Thornhill <theo <at> thornhill.no>
Cc: Yuan Fu <casouri <at> gmail.com>, 59833 <at> debbugs.gnu.org, jostein <at> kjonigsen.net
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 13:52:07 +0000
On Monday, December 5th, 2022 at 06:24, Theodor Thornhill <theo <at> thornhill.no> wrote:
> 
> 
> Jostein Kjønigsen jostein <at> secure.kjonigsen.net writes:
> 
> > Hey everyone.
> > 
> > When opening a JSON-file in a build from emacs git emacs-29
> > release-branch, Emacs still defaults to json-mode.
> > 
> > Fontification in json-mode looks correct and proper.
> > 
> > When trying to insteas use json-ts-mode, literally everything is
> > fontified as strings.
> > 
> > When I change the code to disable the string-fontification rule, this
> > yields a buffer where everything is fontified using default-face. That
> > is, no other fontification is taking place.
> > 
> > Have this mode really been tested? Should it be working? Or is there an
> > error on my end?
> > 
> > Could someone else please give json-ts-mode a try?
> 
> 
> Yeah, you are correct. It seems we've had a regression in this commit,
> 0ed313642227afdeccf48057eea458edca9d2962.
> 
> I believe this is the offending commit - what do you think, Randy?
> 
> Specifically the lhs should be fontified differently than the rhs, so
> not everything is a string.
> 
> Do you want to do that, Randy, or should I?
> 
> Theo

Can someone show me an example JSON file that shows this problem? Everything looks the same for me in json-mode and json-ts-mode, except for the json-ts-mode extras (even with Theo's patch) both with my own Emacs config and emacs -Q. I must be doing something very silly.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 13:59:01 GMT) Full text and rfc822 format available.

Message #23 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Randy Taylor <dev <at> rjt.dev>
To: Theodor Thornhill <theo <at> thornhill.no>
Cc: Yuan Fu <casouri <at> gmail.com>, 59833 <at> debbugs.gnu.org, jostein <at> kjonigsen.net
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 13:58:33 +0000
On Monday, December 5th, 2022 at 08:52, Randy Taylor <dev <at> rjt.dev> wrote:
> 
> On Monday, December 5th, 2022 at 06:24, Theodor Thornhill theo <at> thornhill.no wrote:
> 
> > Jostein Kjønigsen jostein <at> secure.kjonigsen.net writes:
> > 
> > > Hey everyone.
> > > 
> > > When opening a JSON-file in a build from emacs git emacs-29
> > > release-branch, Emacs still defaults to json-mode.
> > > 
> > > Fontification in json-mode looks correct and proper.
> > > 
> > > When trying to insteas use json-ts-mode, literally everything is
> > > fontified as strings.
> > > 
> > > When I change the code to disable the string-fontification rule, this
> > > yields a buffer where everything is fontified using default-face. That
> > > is, no other fontification is taking place.
> > > 
> > > Have this mode really been tested? Should it be working? Or is there an
> > > error on my end?
> > > 
> > > Could someone else please give json-ts-mode a try?
> > 
> > Yeah, you are correct. It seems we've had a regression in this commit,
> > 0ed313642227afdeccf48057eea458edca9d2962.
> > 
> > I believe this is the offending commit - what do you think, Randy?
> > 
> > Specifically the lhs should be fontified differently than the rhs, so
> > not everything is a string.
> > 
> > Do you want to do that, Randy, or should I?
> > 
> > Theo
> 
> 
> Can someone show me an example JSON file that shows this problem? Everything looks the same for me in json-mode and json-ts-mode, except for the json-ts-mode extras (even with Theo's patch) both with my own Emacs config and emacs -Q. I must be doing something very silly.

Scratch that, I got Theo's patch working, needed to rebuild. Looks good to me (although it would be nice to keep treesit-font-lock-feature-list alphabetized Theo ;)).

json-mode still fontifies pretty much everything as a string though (at least for me).




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 14:13:02 GMT) Full text and rfc822 format available.

Message #26 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Theodor Thornhill <theo <at> thornhill.no>
To: Randy Taylor <dev <at> rjt.dev>
Cc: Yuan Fu <casouri <at> gmail.com>, 59833 <at> debbugs.gnu.org, jostein <at> kjonigsen.net
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 15:12:46 +0100
[Message part 1 (text/plain, inline)]
Randy Taylor <dev <at> rjt.dev> writes:

> On Monday, December 5th, 2022 at 08:52, Randy Taylor <dev <at> rjt.dev> wrote:
>> 
>> On Monday, December 5th, 2022 at 06:24, Theodor Thornhill theo <at> thornhill.no wrote:
>> 
>> > Jostein Kjønigsen jostein <at> secure.kjonigsen.net writes:
>> > 
>> > > Hey everyone.
>> > > 
>> > > When opening a JSON-file in a build from emacs git emacs-29
>> > > release-branch, Emacs still defaults to json-mode.
>> > > 
>> > > Fontification in json-mode looks correct and proper.
>> > > 
>> > > When trying to insteas use json-ts-mode, literally everything is
>> > > fontified as strings.
>> > > 
>> > > When I change the code to disable the string-fontification rule, this
>> > > yields a buffer where everything is fontified using default-face. That
>> > > is, no other fontification is taking place.
>> > > 
>> > > Have this mode really been tested? Should it be working? Or is there an
>> > > error on my end?
>> > > 
>> > > Could someone else please give json-ts-mode a try?
>> > 
>> > Yeah, you are correct. It seems we've had a regression in this commit,
>> > 0ed313642227afdeccf48057eea458edca9d2962.
>> > 
>> > I believe this is the offending commit - what do you think, Randy?
>> > 
>> > Specifically the lhs should be fontified differently than the rhs, so
>> > not everything is a string.
>> > 
>> > Do you want to do that, Randy, or should I?
>> > 
>> > Theo
>> 
>> 
>> Can someone show me an example JSON file that shows this problem? Everything looks the same for me in json-mode and json-ts-mode, except for the json-ts-mode extras (even with Theo's patch) both with my own Emacs config and emacs -Q. I must be doing something very silly.
>
> Scratch that, I got Theo's patch working, needed to rebuild.

No need to rebuild. Just C-M-x the defvar and revert buffer.

> Looks good to me (although it would be nice to keep treesit-font-lock-feature-list alphabetized Theo ;)).
>

See new patch!

> json-mode still fontifies pretty much everything as a string though (at least for me).

Not for me. I get number-face, bracket-face, constant-face,
warning-face.  Don't you?

Will you commit this, Yuan?

Theo

[0001-Add-back-in-font-locking-for-pair-in-json-ts-mode.patch (text/x-diff, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 14:43:02 GMT) Full text and rfc822 format available.

Message #29 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Randy Taylor <dev <at> rjt.dev>
To: Theodor Thornhill <theo <at> thornhill.no>
Cc: Yuan Fu <casouri <at> gmail.com>, 59833 <at> debbugs.gnu.org, jostein <at> kjonigsen.net
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 14:42:37 +0000
On Monday, December 5th, 2022 at 09:12, Theodor Thornhill <theo <at> thornhill.no> wrote:
> 
> 
> Randy Taylor dev <at> rjt.dev writes:
> 
> > On Monday, December 5th, 2022 at 08:52, Randy Taylor dev <at> rjt.dev wrote:
> > 
> > > On Monday, December 5th, 2022 at 06:24, Theodor Thornhill theo <at> thornhill.no wrote:
> > > 
> > > > Jostein Kjønigsen jostein <at> secure.kjonigsen.net writes:
> > > > 
> > > > > Hey everyone.
> > > > > 
> > > > > When opening a JSON-file in a build from emacs git emacs-29
> > > > > release-branch, Emacs still defaults to json-mode.
> > > > > 
> > > > > Fontification in json-mode looks correct and proper.
> > > > > 
> > > > > When trying to insteas use json-ts-mode, literally everything is
> > > > > fontified as strings.
> > > > > 
> > > > > When I change the code to disable the string-fontification rule, this
> > > > > yields a buffer where everything is fontified using default-face. That
> > > > > is, no other fontification is taking place.
> > > > > 
> > > > > Have this mode really been tested? Should it be working? Or is there an
> > > > > error on my end?
> > > > > 
> > > > > Could someone else please give json-ts-mode a try?
> > > > 
> > > > Yeah, you are correct. It seems we've had a regression in this commit,
> > > > 0ed313642227afdeccf48057eea458edca9d2962.
> > > > 
> > > > I believe this is the offending commit - what do you think, Randy?
> > > > 
> > > > Specifically the lhs should be fontified differently than the rhs, so
> > > > not everything is a string.
> > > > 
> > > > Do you want to do that, Randy, or should I?
> > > > 
> > > > Theo
> > > 
> > > Can someone show me an example JSON file that shows this problem? Everything looks the same for me in json-mode and json-ts-mode, except for the json-ts-mode extras (even with Theo's patch) both with my own Emacs config and emacs -Q. I must be doing something very silly.
> > 
> > Scratch that, I got Theo's patch working, needed to rebuild.
> 
> 
> No need to rebuild. Just C-M-x the defvar and revert buffer.

I was even restarting and it wasn't picking up the changes for some reason.

> 
> > Looks good to me (although it would be nice to keep treesit-font-lock-feature-list alphabetized Theo ;)).
> 
> 
> See new patch!

Thanks, I meant just the treesit-font-lock-feature-list variable :) (so moving pair before string).

Having the font-lock settings alphabetized too is great, but I remember running into some highlighting issues depending on the order of things.
For example, since error is above number, the number face will not be highlighted as error when an error occurs.

Try:
{
  "test": 2
}

and remove the colon. Before your patch, the entire line is red. After, only "test" is red.

So in general, I think we should stick all :overrides at the bottom of that list (with error being the ultimate one), and keep everything above and below alphabetized, but separately, which is how I organized json-ts-mode.

> 
> > json-mode still fontifies pretty much everything as a string though (at least for me).
> 
> 
> Not for me. I get number-face, bracket-face, constant-face,
> warning-face. Don't you?

Are you guys talking about the json-mode package? Jostein mentioned "Emacs still defaults to json-mode", but when I open a JSON file I get js-json-mode, which is what I assumed he meant. js-json-mode is what I was trying to match in json-ts-mode.

> 
> Will you commit this, Yuan?
> 
> Theo




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 14:53:02 GMT) Full text and rfc822 format available.

Message #32 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>
To: Randy Taylor <dev <at> rjt.dev>, Theodor Thornhill <theo <at> thornhill.no>
Cc: Yuan Fu <casouri <at> gmail.com>, 59833 <at> debbugs.gnu.org, jostein <at> kjonigsen.net
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 5 Dec 2022 15:52:17 +0100
On 05.12.2022 15:42, Randy Taylor wrote:
>
> Thanks, I meant just the treesit-font-lock-feature-list variable :) (so moving pair before string).
>
> Having the font-lock settings alphabetized too is great, but I remember running into some highlighting issues depending on the order of things.
> For example, since error is above number, the number face will not be highlighted as error when an error occurs.
>
> Try:
> {
>    "test": 2
> }
>
> and remove the colon. Before your patch, the entire line is red. After, only "test" is red.
>
> So in general, I think we should stick all :overrides at the bottom of that list (with error being the ultimate one), and keep everything above and below alphabetized, but separately, which is how I organized json-ts-mode.
Good observation. Agreed.
>
> Are you guys talking about the json-mode package? Jostein mentioned "Emacs still defaults to json-mode", but when I open a JSON file I get js-json-mode, which is what I assumed he meant. js-json-mode is what I was trying to match in json-ts-mode.

I've never heard of js-json-mode until today. I always use json-mode 
(which AFAIK) is still the default for json-files, unless overridden in 
your own .emacs setup.

I can see that in Emacs git right now, json-ts-mode behaves closely to 
js-json-mode. I honestly expected it to match the Emacs-default 
json-mode though, and found the current highlighting ... somewhat 
unexpected.

IMO, yes the keys are technically speaking strings, but the are 
predominantly and semantically keys, and IMO should be highlighted as 
such. Just like json-mode does.

I realise this is somewhat subjective and preferential, but as far as my 
preference goes, I clearly prefer json-mode over js-json-mode, and as 
such also prefer the current patch-sets for json-ts-mode which Theo has 
submitted.

(On my part we can avoid side-tracking related to why there are multiple 
json-modes, unless has a deep need to contextualize these changes 
related to those ;) )

--
Jostein




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 15:01:02 GMT) Full text and rfc822 format available.

Message #35 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: jostein <at> kjonigsen.net
Cc: dev <at> rjt.dev, casouri <at> gmail.com, 59833 <at> debbugs.gnu.org, theo <at> thornhill.no,
 jostein <at> kjonigsen.net
Subject: Re: bug#59833: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 17:00:14 +0200
> Cc: Yuan Fu <casouri <at> gmail.com>, 59833 <at> debbugs.gnu.org, jostein <at> kjonigsen.net
> Date: Mon, 5 Dec 2022 15:52:17 +0100
> From: Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>
> 
> I've never heard of js-json-mode until today. I always use json-mode 
> (which AFAIK) is still the default for json-files, unless overridden in 
> your own .emacs setup.

Not in Emacs 29.  I see the following in files.el, as part of
auto-mode-alist:

     ("\\.json\\'" . js-json-mode)




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 15:02:03 GMT) Full text and rfc822 format available.

Message #38 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Randy Taylor <dev <at> rjt.dev>
To: jostein <at> kjonigsen.net
Cc: Yuan Fu <casouri <at> gmail.com>, 59833 <at> debbugs.gnu.org,
 Theodor Thornhill <theo <at> thornhill.no>
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 15:01:27 +0000
On Monday, December 5th, 2022 at 09:52, Jostein Kjønigsen <jostein <at> secure.kjonigsen.net> wrote:


> 
> 
> On 05.12.2022 15:42, Randy Taylor wrote:
> 
> > Thanks, I meant just the treesit-font-lock-feature-list variable :) (so moving pair before string).
> > 
> > Having the font-lock settings alphabetized too is great, but I remember running into some highlighting issues depending on the order of things.
> > For example, since error is above number, the number face will not be highlighted as error when an error occurs.
> > 
> > Try:
> > {
> > "test": 2
> > }
> > 
> > and remove the colon. Before your patch, the entire line is red. After, only "test" is red.
> > 
> > So in general, I think we should stick all :overrides at the bottom of that list (with error being the ultimate one), and keep everything above and below alphabetized, but separately, which is how I organized json-ts-mode.
> 
> Good observation. Agreed.
> 
> > Are you guys talking about the json-mode package? Jostein mentioned "Emacs still defaults to json-mode", but when I open a JSON file I get js-json-mode, which is what I assumed he meant. js-json-mode is what I was trying to match in json-ts-mode.
> 
> 
> I've never heard of js-json-mode until today. I always use json-mode
> (which AFAIK) is still the default for json-files, unless overridden in
> your own .emacs setup.
> 
> I can see that in Emacs git right now, json-ts-mode behaves closely to
> js-json-mode. I honestly expected it to match the Emacs-default
> json-mode though, and found the current highlighting ... somewhat
> unexpected.
> 
> IMO, yes the keys are technically speaking strings, but the are
> predominantly and semantically keys, and IMO should be highlighted as
> such. Just like json-mode does.
> 
> I realise this is somewhat subjective and preferential, but as far as my
> preference goes, I clearly prefer json-mode over js-json-mode, and as
> such also prefer the current patch-sets for json-ts-mode which Theo has
> submitted.
> 
> (On my part we can avoid side-tracking related to why there are multiple
> json-modes, unless has a deep need to contextualize these changes
> related to those ;) )
> 
> --
> Jostein

You say "Emacs-default json-mode" but I don't see that anywhere. If you run emacs -Q and visit a JSON file, you get js-json-mode, which is the Emacs-default JSON mode, unless I'm missing something.

Regardless, I think your proposal (and Theo's patch) is great, and a definite improvement. I can't believe I've tolerated everything in JSON files as a string face for so long ;).




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 15:04:02 GMT) Full text and rfc822 format available.

Message #41 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Theodor Thornhill <theo <at> thornhill.no>
To: Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>, Randy
 Taylor <dev <at> rjt.dev>
Cc: Yuan Fu <casouri <at> gmail.com>, 59833 <at> debbugs.gnu.org, jostein <at> kjonigsen.net
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 16:03:43 +0100
[Message part 1 (text/plain, inline)]
Jostein Kjønigsen <jostein <at> secure.kjonigsen.net> writes:

> On 05.12.2022 15:42, Randy Taylor wrote:
>>
>> Thanks, I meant just the treesit-font-lock-feature-list variable :) (so moving pair before string).
>>
>> Having the font-lock settings alphabetized too is great, but I remember running into some highlighting issues depending on the order of things.
>> For example, since error is above number, the number face will not be highlighted as error when an error occurs.
>>
>> Try:
>> {
>>    "test": 2
>> }
>>
>> and remove the colon. Before your patch, the entire line is red. After, only "test" is red.
>>
>> So in general, I think we should stick all :overrides at the bottom
>> of that list (with error being the ultimate one), and keep everything
>> above and below alphabetized, but separately, which is how I
>> organized json-ts-mode.
> Good observation. Agreed.

Yes ok ok ;-)

>>
>> Are you guys talking about the json-mode package? Jostein mentioned
>> "Emacs still defaults to json-mode", but when I open a JSON file I
>> get js-json-mode, which is what I assumed he meant. js-json-mode is
>> what I was trying to match in json-ts-mode.
>
> I've never heard of js-json-mode until today. I always use json-mode 
> (which AFAIK) is still the default for json-files, unless overridden in 
> your own .emacs setup.
>
> I can see that in Emacs git right now, json-ts-mode behaves closely to 
> js-json-mode. I honestly expected it to match the Emacs-default 
> json-mode though, and found the current highlighting ... somewhat 
> unexpected.
>
> IMO, yes the keys are technically speaking strings, but the are 
> predominantly and semantically keys, and IMO should be highlighted as 
> such. Just like json-mode does.
>
> I realise this is somewhat subjective and preferential, but as far as my 
> preference goes, I clearly prefer json-mode over js-json-mode, and as 
> such also prefer the current patch-sets for json-ts-mode which Theo has 
> submitted.
>
> (On my part we can avoid side-tracking related to why there are multiple 
> json-modes, unless has a deep need to contextualize these changes 
> related to those ;) )
>

Yeah js-json-mode is a lot simpler, and is imo too simple. The json-mode
is not infact default in emacs, but there are two, one in melpa and one
in elpa, IIRC.

Anyway, last patch for now - are you both satisfied with this one?

Theo

[0001-Add-back-in-font-locking-for-pair-in-json-ts-mode.patch (text/x-diff, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 15:36:02 GMT) Full text and rfc822 format available.

Message #44 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Randy Taylor <dev <at> rjt.dev>
To: Theodor Thornhill <theo <at> thornhill.no>
Cc: jostein <at> kjonigsen.net, Yuan Fu <casouri <at> gmail.com>, 59833 <at> debbugs.gnu.org,
 Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 15:35:12 +0000
On Monday, December 5th, 2022 at 10:03, Theodor Thornhill <theo <at> thornhill.no> wrote: 
>
> Yeah js-json-mode is a lot simpler, and is imo too simple. The json-mode
> is not infact default in emacs, but there are two, one in melpa and one
> in elpa, IIRC.
> 
> Anyway, last patch for now - are you both satisfied with this one?
> 
> Theo

It's perfect! Sorry for all the trouble :D.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 15:39:02 GMT) Full text and rfc822 format available.

Message #47 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Theodor Thornhill <theo <at> thornhill.no>
To: Randy Taylor <dev <at> rjt.dev>
Cc: jostein <at> kjonigsen.net, Yuan Fu <casouri <at> gmail.com>, 59833 <at> debbugs.gnu.org,
 Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>
Subject: Re: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 16:37:41 +0100

On 5 December 2022 16:35:12 CET, Randy Taylor <dev <at> rjt.dev> wrote:
>On Monday, December 5th, 2022 at 10:03, Theodor Thornhill <theo <at> thornhill.no> wrote: 
>>
>> Yeah js-json-mode is a lot simpler, and is imo too simple. The json-mode
>> is not infact default in emacs, but there are two, one in melpa and one
>> in elpa, IIRC.
>> 
>> Anyway, last patch for now - are you both satisfied with this one?
>> 
>> Theo
>
>It's perfect! Sorry for all the trouble :D.

No problem :)

Yuan, will you commit this one?

Theo 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 19:59:01 GMT) Full text and rfc822 format available.

Message #50 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Yuan Fu <casouri <at> gmail.com>
To: Theodor Thornhill <theo <at> thornhill.no>
Cc: Randy Taylor <dev <at> rjt.dev>, 59833 <at> debbugs.gnu.org, jostein <at> kjonigsen.net,
 Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>
Subject: Re: bug#59833: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 5 Dec 2022 11:57:55 -0800

> On Dec 5, 2022, at 7:37 AM, Theodor Thornhill via Bug reports for GNU Emacs, the Swiss army knife of text editors <bug-gnu-emacs <at> gnu.org> wrote:
> 
> 
> 
> On 5 December 2022 16:35:12 CET, Randy Taylor <dev <at> rjt.dev> wrote:
>> On Monday, December 5th, 2022 at 10:03, Theodor Thornhill <theo <at> thornhill.no> wrote: 
>>> 
>>> Yeah js-json-mode is a lot simpler, and is imo too simple. The json-mode
>>> is not infact default in emacs, but there are two, one in melpa and one
>>> in elpa, IIRC.
>>> 
>>> Anyway, last patch for now - are you both satisfied with this one?
>>> 
>>> Theo
>> 
>> It's perfect! Sorry for all the trouble :D.
> 
> No problem :)
> 
> Yuan, will you commit this one?

Yeah. IIUC :override t is not necessary for pair, right? If so, I’ll apply the patch and remove the :override, is that OK?

Yuan



Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 20:16:01 GMT) Full text and rfc822 format available.

Message #53 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Theodor Thornhill <theo <at> thornhill.no>
To: Yuan Fu <casouri <at> gmail.com>
Cc: Randy Taylor <dev <at> rjt.dev>, 59833 <at> debbugs.gnu.org, jostein <at> kjonigsen.net,
 Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>
Subject: Re: bug#59833: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 21:14:04 +0100

On 5 December 2022 20:57:55 CET, Yuan Fu <casouri <at> gmail.com> wrote:
>
>
>> On Dec 5, 2022, at 7:37 AM, Theodor Thornhill via Bug reports for GNU Emacs, the Swiss army knife of text editors <bug-gnu-emacs <at> gnu.org> wrote:
>> 
>> 
>> 
>> On 5 December 2022 16:35:12 CET, Randy Taylor <dev <at> rjt.dev> wrote:
>>> On Monday, December 5th, 2022 at 10:03, Theodor Thornhill <theo <at> thornhill.no> wrote: 
>>>> 
>>>> Yeah js-json-mode is a lot simpler, and is imo too simple. The json-mode
>>>> is not infact default in emacs, but there are two, one in melpa and one
>>>> in elpa, IIRC.
>>>> 
>>>> Anyway, last patch for now - are you both satisfied with this one?
>>>> 
>>>> Theo
>>> 
>>> It's perfect! Sorry for all the trouble :D.
>> 
>> No problem :)
>> 
>> Yuan, will you commit this one?
>
>Yeah. IIUC :override t is not necessary for pair, right? If so, I’ll apply the patch and remove the :override, is that OK?
>
>Yuan

Please test it first, but sure! We want it to not be string face at least :)

Theo




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 20:20:01 GMT) Full text and rfc822 format available.

Message #56 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Randy Taylor <dev <at> rjt.dev>
To: Theodor Thornhill <theo <at> thornhill.no>
Cc: Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>,
 Yuan Fu <casouri <at> gmail.com>, 59833 <at> debbugs.gnu.org, jostein <at> kjonigsen.net
Subject: Re: bug#59833: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 20:19:00 +0000
On Monday, December 5th, 2022 at 15:14, Theodor Thornhill <theo <at> thornhill.no> wrote:
> 
> 
> On 5 December 2022 20:57:55 CET, Yuan Fu casouri <at> gmail.com wrote:
> 
> > > On Dec 5, 2022, at 7:37 AM, Theodor Thornhill via Bug reports for GNU Emacs, the Swiss army knife of text editors bug-gnu-emacs <at> gnu.org wrote:
> > > 
> > > On 5 December 2022 16:35:12 CET, Randy Taylor dev <at> rjt.dev wrote:
> > > 
> > > > On Monday, December 5th, 2022 at 10:03, Theodor Thornhill theo <at> thornhill.no wrote:
> > > > 
> > > > > Yeah js-json-mode is a lot simpler, and is imo too simple. The json-mode
> > > > > is not infact default in emacs, but there are two, one in melpa and one
> > > > > in elpa, IIRC.
> > > > > 
> > > > > Anyway, last patch for now - are you both satisfied with this one?
> > > > > 
> > > > > Theo
> > > > 
> > > > It's perfect! Sorry for all the trouble :D.
> > > 
> > > No problem :)
> > > 
> > > Yuan, will you commit this one?
> > 
> > Yeah. IIUC :override t is not necessary for pair, right? If so, I’ll apply the patch and remove the :override, is that OK?
> > 
> > Yuan
> 
> 
> Please test it first, but sure! We want it to not be string face at least :)
> 
> Theo

It's necessary, since string comes first and pair needs to override it (just tested).




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 20:23:01 GMT) Full text and rfc822 format available.

Message #59 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Yuan Fu <casouri <at> gmail.com>
To: Randy Taylor <dev <at> rjt.dev>
Cc: jostein <at> kjonigsen.net, 59833 <at> debbugs.gnu.org,
 Theodor Thornhill <theo <at> thornhill.no>, 59833-done <at> debbugs.gnu.org,
 Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>
Subject: Re: bug#59833: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 5 Dec 2022 12:22:09 -0800

> On Dec 5, 2022, at 12:19 PM, Randy Taylor <dev <at> rjt.dev> wrote:
> 
> On Monday, December 5th, 2022 at 15:14, Theodor Thornhill <theo <at> thornhill.no> wrote:
>> 
>> 
>> On 5 December 2022 20:57:55 CET, Yuan Fu casouri <at> gmail.com wrote:
>> 
>>>> On Dec 5, 2022, at 7:37 AM, Theodor Thornhill via Bug reports for GNU Emacs, the Swiss army knife of text editors bug-gnu-emacs <at> gnu.org wrote:
>>>> 
>>>> On 5 December 2022 16:35:12 CET, Randy Taylor dev <at> rjt.dev wrote:
>>>> 
>>>>> On Monday, December 5th, 2022 at 10:03, Theodor Thornhill theo <at> thornhill.no wrote:
>>>>> 
>>>>>> Yeah js-json-mode is a lot simpler, and is imo too simple. The json-mode
>>>>>> is not infact default in emacs, but there are two, one in melpa and one
>>>>>> in elpa, IIRC.
>>>>>> 
>>>>>> Anyway, last patch for now - are you both satisfied with this one?
>>>>>> 
>>>>>> Theo
>>>>> 
>>>>> It's perfect! Sorry for all the trouble :D.
>>>> 
>>>> No problem :)
>>>> 
>>>> Yuan, will you commit this one?
>>> 
>>> Yeah. IIUC :override t is not necessary for pair, right? If so, I’ll apply the patch and remove the :override, is that OK?
>>> 
>>> Yuan
>> 
>> 
>> Please test it first, but sure! We want it to not be string face at least :)
>> 
>> Theo
> 
> It's necessary, since string comes first and pair needs to override it (just tested).

Ah, yes, of course, sorry for my ignorance. Applied!

Yuan



Reply sent to Yuan Fu <casouri <at> gmail.com>:
You have taken responsibility. (Mon, 05 Dec 2022 20:23:02 GMT) Full text and rfc822 format available.

Notification sent to jostein <at> kjonigsen.net:
bug acknowledged by developer. (Mon, 05 Dec 2022 20:23:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 20:40:02 GMT) Full text and rfc822 format available.

Message #67 received at 59833 <at> debbugs.gnu.org (full text, mbox):

From: Theodor Thornhill <theo <at> thornhill.no>
To: Yuan Fu <casouri <at> gmail.com>, Randy Taylor <dev <at> rjt.dev>
Cc: Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>,
 59833 <at> debbugs.gnu.org, jostein <at> kjonigsen.net, 59833-done <at> debbugs.gnu.org
Subject: Re: bug#59833: 29.0.60; json-ts-mode fontifies everything as string
Date: Mon, 05 Dec 2022 21:38:14 +0100

On 5 December 2022 21:22:09 CET, Yuan Fu <casouri <at> gmail.com> wrote:
>
>
>> On Dec 5, 2022, at 12:19 PM, Randy Taylor <dev <at> rjt.dev> wrote:
>> 
>> On Monday, December 5th, 2022 at 15:14, Theodor Thornhill <theo <at> thornhill.no> wrote:
>>> 
>>> 
>>> On 5 December 2022 20:57:55 CET, Yuan Fu casouri <at> gmail.com wrote:
>>> 
>>>>> On Dec 5, 2022, at 7:37 AM, Theodor Thornhill via Bug reports for GNU Emacs, the Swiss army knife of text editors bug-gnu-emacs <at> gnu.org wrote:
>>>>> 
>>>>> On 5 December 2022 16:35:12 CET, Randy Taylor dev <at> rjt.dev wrote:
>>>>> 
>>>>>> On Monday, December 5th, 2022 at 10:03, Theodor Thornhill theo <at> thornhill.no wrote:
>>>>>> 
>>>>>>> Yeah js-json-mode is a lot simpler, and is imo too simple. The json-mode
>>>>>>> is not infact default in emacs, but there are two, one in melpa and one
>>>>>>> in elpa, IIRC.
>>>>>>> 
>>>>>>> Anyway, last patch for now - are you both satisfied with this one?
>>>>>>> 
>>>>>>> Theo
>>>>>> 
>>>>>> It's perfect! Sorry for all the trouble :D.
>>>>> 
>>>>> No problem :)
>>>>> 
>>>>> Yuan, will you commit this one?
>>>> 
>>>> Yeah. IIUC :override t is not necessary for pair, right? If so, I’ll apply the patch and remove the :override, is that OK?
>>>> 
>>>> Yuan
>>> 
>>> 
>>> Please test it first, but sure! We want it to not be string face at least :)
>>> 
>>> Theo
>> 
>> It's necessary, since string comes first and pair needs to override it (just tested).
>
>Ah, yes, of course, sorry for my ignorance. Applied!
>
>Yuan

Great news, thanks!




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#59833; Package emacs. (Mon, 05 Dec 2022 20:40:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 03 Jan 2023 12:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 226 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.