Package: emacs;
Reported by: Jostein Kjønigsen <jostein <at> secure.kjonigsen.net>
Date: Sat, 25 Jan 2025 10:40:01 UTC
Severity: normal
Tags: patch
Done: Yuan Fu <casouri <at> gmail.com>
Bug is archived. No further changes may be made.
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 Cc: Yuan Fu <casouri <at> gmail.com> Subject: [Patch] 31.0.50; typescrip-ts-mode: Does not correctly fontify known operators and keywords Date: Sat, 25 Jan 2025 11:39:09 +0100
[Message part 1 (text/plain, inline)]
Hey everyone. Typescript supports the null-coalescing operator ?? just like many other languages. Currently it is fontified using the default face. Typescript also has the "undefined" keyword which is also fontified using the default face. Attached is a patch which fixes these issues.  In GNU Emacs 31.0.50 (build 5, aarch64-apple-darwin24.0.0, NS appkit-2566.00 Version 15.0.1 (Build 24A348)) of 2024-12-11 built on SOK67R3KWV97 Repository revision: a9bc12318121acb513a5735f641602001510a932 Repository branch: master Windowing system distributor 'Apple', version 10.3.2566 System Description: macOS 15.0.1 Configured using: 'configure --with-tree-sitter --with-native-compilation --with-json --with-imagemagick PKG_CONFIG_PATH=:/usr/local/lib/pkgconfig:/opt/local/lib/pkgconfig' Configured features: ACL GLIB GNUTLS IMAGEMAGICK LCMS2 LIBXML2 MODULES NATIVE_COMP NOTIFY KQUEUE NS PDUMPER PNG RSVG SQLITE3 THREADS TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM ZLIB Important settings: value of $LC_ALL: en_US.UTF-8 value of $LC_CTYPE: UTF-8 value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: ELisp/l Minor modes in effect: global-git-commit-mode: t magit-auto-revert-mode: t bug-reference-prog-mode: t elisp-slime-nav-mode: t highlight-symbol-mode: t flycheck-mode: t editorconfig-mode: t company-mode: t indent-bars-mode: t which-function-mode: t helm-mode: t helm-minibuffer-history-mode: t async-bytecomp-package-mode: t delete-selection-mode: t global-auto-revert-mode: t paredit-mode: t yas-global-mode: t yas-minor-mode: t global-nlinum-mode: t nlinum-mode: t ido-yes-or-no-mode: t override-global-mode: t server-mode: t global-hl-line-mode: t pixel-scroll-precision-mode: t doom-modeline-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 minibuffer-regexp-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t hs-minor-mode: t Load-path shadows: /Users/josteink/.emacs.d/elpa/transient-20240421.1327/transient hides /Users/josteink/build/emacs/lisp/transient /Users/josteink/.emacs.d/elpa/editorconfig-20240318.2049/editorconfig hides /Users/josteink/build/emacs/lisp/editorconfig /Users/josteink/.emacs.d/elpa/editorconfig-20240318.2049/editorconfig-conf-mode hides /Users/josteink/build/emacs/lisp/editorconfig-conf-mode /Users/josteink/.emacs.d/elpa/editorconfig-20240318.2049/editorconfig-core hides /Users/josteink/build/emacs/lisp/editorconfig-core /Users/josteink/.emacs.d/elpa/editorconfig-20240318.2049/editorconfig-core-handle hides /Users/josteink/build/emacs/lisp/editorconfig-core-handle /Users/josteink/.emacs.d/elpa/editorconfig-20240318.2049/editorconfig-fnmatch hides /Users/josteink/build/emacs/lisp/editorconfig-fnmatch Features: (shadow sort mail-extr emacsbug goto-addr git-rebase magit-extras tramp-cache time-stamp tramp-sh shortdoc help-fns radix-tree helm-command helm-elisp helm-eval edebug helm-info markdown-mode elec-pair 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 smerge-mode git-commit log-edit pcvs-util magit-core magit-autorevert magit-margin magit-transient magit-process with-editor magit-mode transient magit-git magit-base magit-section cursor-sensor crm csharp-mode c-ts-common cc-langs cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs misearch multi-isearch bug-reference vc-git vc-dispatcher winner tramp-archive tramp-gvfs add-log pulse ido-completing-read+ memoize minibuf-eldef org-duration diary-lib diary-loaddefs cal-iso oc-basic ol-eww ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime dig gnus-sum gnus-group gnus-undo gnus-start gnus-dbus dbus gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range message sendmail yank-media rfc822 mml mml-sec epa derived epg rfc6068 mm-decode mm-bodies mm-encode mailabbrev gmm-utils mailheader gnus-win ol-docview doc-view jka-compr ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi org-agenda org-element org-persist org-id org-element-ast inline avl-tree org-refile elisp-slime-nav highlight-symbol flycheck editorconfig editorconfig-core editorconfig-core-handle editorconfig-fnmatch company-oddmuse company-keywords company-etags etags fileloop company-gtags company-dabbrev-code company-dabbrev company-files company-clang company-capf company-cmake company-semantic company-template company-bbdb company indent-bars-ts indent-bars face-remap color eglot external-completion jsonrpc flymake diff ert ewoc debug backtrace which-func hideshow disp-table cus-edit pp cus-start cus-load eww vtable url-queue shr pixel-fill kinsoku url-file svg xml dom mm-url gnus nnheader gnus-util mail-utils range wid-edit helm-imenu helm-mode helm-misc helm-files image-dired image-dired-tags image-dired-external image-dired-util image-mode dired dired-loaddefs exif tramp trampver tramp-integration files-x tramp-message tramp-compat xdg shell parse-time iso8601 tramp-loaddefs helm-buffers helm-occur helm-tags helm-locate helm-grep helm-regexp helm-utils helm-help helm-types helm helm-global-bindings helm-easymenu helm-core async-bytecomp helm-source helm-multi-match helm-lib async imenu ob-plantuml delsel autorevert filenotify org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src sh-script smie executable 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 thingatpt find-func cal-menu calendar cal-loaddefs org-version org-compat org-macs yasnippet paredit gnutls network-stream url-cache url-http url-auth mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr url-gw nsm puny epg-config nlinum linum ido-yes-or-no advice ido use-package-bind-key bind-key xref server hl-line pixel-scroll cua-base compile-eslint compile text-property-search all-the-icons all-the-icons-faces data-material data-weathericons data-octicons data-fileicons data-faicons data-alltheicons doom-modeline doom-modeline-segments doom-modeline-env doom-modeline-core shrink-path f s dash nerd-icons nerd-icons-faces nerd-icons-data nerd-icons-data-mdicon nerd-icons-data-flicon nerd-icons-data-codicon nerd-icons-data-devicon nerd-icons-data-sucicon nerd-icons-data-wicon nerd-icons-data-faicon nerd-icons-data-powerline nerd-icons-data-octicon nerd-icons-data-pomicon nerd-icons-data-ipsicon dracula-theme use-package-ensure use-package-core all-the-icons-autoloads bitwarden-autoloads bmx-mode-autoloads cargo-autoloads cmake-mode-autoloads format-spec edmacro kmacro combobulate-display combobulate-ztree combobulate-envelope combobulate-manipulation python project compat comint ansi-osc ring ansi-color combobulate-procedure combobulate-navigation combobulate-misc combobulate-setup tempo combobulate-interface combobulate-settings diff-mode track-changes easy-mmode treesit generator combobulate-rules company-autoloads copilot-mode-autoloads crontab-mode-autoloads csv-mode-autoloads bui-autoloads dockerfile-mode-autoloads doom-modeline-autoloads dracula-theme-autoloads editorconfig-autoloads elisp-slime-nav-autoloads expand-region-autoloads flycheck-autoloads helm-autoloads helm-core-autoloads async-autoloads highlight-symbol-autoloads ido-yes-or-no-autoloads ido-completing-read+-autoloads comp comp-cstr cl-extra help-mode warnings comp-run comp-common rx indent-bars-autoloads finder-inf lsp-treemacs-autoloads lsp-mode-autoloads magit-autoloads pcase git-commit-autoloads magit-section-autoloads markdown-mode-autoloads memoize-autoloads multiple-cursors-autoloads nerd-icons-autoloads nlinum-autoloads paredit-autoloads pkg-info-autoloads epl-autoloads popup-autoloads powershell-autoloads quelpa-use-package-autoloads quelpa-autoloads shrink-path-autoloads f-autoloads spinner-autoloads swift-mode-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 undo-tree-autoloads queue-autoloads wfnames-autoloads info with-editor-autoloads wsd-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 icons 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/ns-win ns-win ucs-normalize mule-util term/common-win 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 kqueue cocoa ns lcms2 multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 1070864 275416) (symbols 48 56434 4) (strings 32 305701 14281) (string-bytes 1 8652641) (vectors 16 105342) (vector-slots 8 2031248 187347) (floats 8 1339 1738) (intervals 56 11304 5793) (buffers 992 54)) — Kind Regards Jostein Kjønigsen
[Message part 2 (text/html, inline)]
[0001-lisp-progmodes-typescript-ts-mode.el-Improve-fontifi.patch (application/octet-stream, attachment)]
[Message part 4 (text/html, inline)]
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.