From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: =?UTF-8?Q?Bj=C3=B6rn?= Bidar via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Newsgroups: gmane.emacs.bugs Subject: bug#59249: 29.0.50; XDG Mailto Emacsclient Protocol Handler doesn't work with Firefox or subject Date: Sun, 13 Nov 2022 19:15:21 +0200 Message-ID: <87h6z2srme.fsf@thaodan.de> Reply-To: =?UTF-8?Q?Bj=C3=B6rn?= Bidar Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="38134"; mail-complaints-to="usenet@ciao.gmane.io" To: 59249@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Nov 13 18:16:23 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ouGal-0009hQ-Bc for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 13 Nov 2022 18:16:23 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ouGaT-0005wu-KD; Sun, 13 Nov 2022 12:16:05 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ouGaR-0005wU-5E for bug-gnu-emacs@gnu.org; Sun, 13 Nov 2022 12:16:03 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ouGaQ-0003gY-SS for bug-gnu-emacs@gnu.org; Sun, 13 Nov 2022 12:16:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ouGaQ-0003qY-Ar for bug-gnu-emacs@gnu.org; Sun, 13 Nov 2022 12:16:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: =?UTF-8?Q?Bj=C3=B6rn?= Bidar Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 13 Nov 2022 17:16:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 59249 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.166835973514739 (code B ref -1); Sun, 13 Nov 2022 17:16:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 13 Nov 2022 17:15:35 +0000 Original-Received: from localhost ([127.0.0.1]:52443 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ouGZx-0003pe-At for submit@debbugs.gnu.org; Sun, 13 Nov 2022 12:15:34 -0500 Original-Received: from lists.gnu.org ([209.51.188.17]:36366) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ouGZt-0003pV-WF for submit@debbugs.gnu.org; Sun, 13 Nov 2022 12:15:32 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ouGZt-0005tB-R3 for bug-gnu-emacs@gnu.org; Sun, 13 Nov 2022 12:15:29 -0500 Original-Received: from thaodan.de ([2a03:4000:4f:f15::1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ouGZp-0003Xp-MC for bug-gnu-emacs@gnu.org; Sun, 13 Nov 2022 12:15:29 -0500 Original-Received: from odin (dsl-trebng12-b04885-76.dhcp.inet.fi [176.72.133.76]) by thaodan.de (Postfix) with ESMTPSA id 9D0F5D08D42 for ; Sun, 13 Nov 2022 19:15:22 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=thaodan.de; s=mail; t=1668359722; bh=CFR5IjPRAm4mP9DYe4ajznFSLvuNV2xDvgvIVvNnaZ4=; h=From:To:Subject:Date; b=Mhg3C842B3f8X53/zvUTvqnjT8zJqCfQD++tGiDcBXWVGhW5+4DdWCzz7xlEdo7Sd mjf0/zSPzLmkr6zKYxei/GhhXpn7fDFPtGBr1GbrwNVbGNz1LpYPzQjVEH3QoCTAlP 2lI66lVnteo9cZG48iDM70VCo5GBwn5ISHC3yeo3Xf1eoUNvmcln5xKm2DkO4m45Nt jn3rNJ3tat01MRc/1aAXSoIeJ16FBDXTL0t0hNFzXBNIu3JQzrvdVsdqk+U4OpDpJO OXktm9ZwzvJjBJQWbx2EdklKYyf/cSXP9Qb0I7Dbr09zUBAmTdLuaIShGW4GPxBd3r +EBnzN6Y4DYpzosxe8CD6xUvPCLRNyg+hvDHgmkMsmqkyzxUM9sCXWyFb/IGwJBQlQ u5H0gJGtZlWCElN9+JVTCCYoP/fic8ZN9CU7TYNxDtWWzCQIO8xcWU4il14MgIXaIn 3oQiVukx1Tbbx0rwyqA8rBD7a9LSz0B5DEOYLxOIJ76Ep+rdwjgEbLlQsghvUL4cP8 mvT8z5kz6iQQdesskmQct+JdlxGrd0mSLubnsVK+ecCjTeQiz9tAEBMpOe7mpRXep5 fU41H52tTGk2sPlBlAlOTdnOvktZYfTYUPMqhEQAUyS9B011Yiq5yHMXOHsLaGhIze irB+2E+yV+kaYIAFcGm8uw8o= Received-SPF: pass client-ip=2a03:4000:4f:f15::1; envelope-from=bjorn.bidar@thaodan.de; helo=thaodan.de X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:247796 Archived-At: I noticed that the Emacsclient Mailto XDG Desktop file doesn't work with Firefox on any link. 1. Click a link mail:foobar@example.com 2. Watch the syslog/journal daemon 3. Therer will be a message that looks like this: plasmashell[47405]: /usr/bin/sh: mailto:bogus@example.com: File not found The protocol handler works fine using Chromium. In addition the mailto handler breaks with end of file during parsing when the mailto link contains field such as subject, appending -x to sh results in this: Nov 13 19:14:26 odin plasmashell[49092]: + bcc='fake@example.com")' Nov 13 19:14:26 odin plasmashell[49093]: + exec emacsclient --alternate-editor= --display=:0 --eval '(message-mailto "mailto:bogus@example.com?cc=bogus2@example.com' Nov 13 19:14:26 odin plasmashell[49093]: *ERROR*: End of file during parsing I'm reporting this together in one Bugs as the protocol handler seems quite fragile: 1. It uses sh -c which makes escaping any kind of variable a nightmare, any escaping done by the browser will break easy unless additonal protetion would be applied. 2. The DISPLAY variable passed to the client is passed in the same way I think it should be extract in other ways than using sh -c, either by using a full shell script wrapper or with lisp. This step would be redundant on Wayland and would be missleading in case Emacs runs as native Wayland client and the browser uses XWayland. I think any kind of wrapper that is fine using the plain %u argument would be best. Firefox 106.05, Chromium 107.0.5304.110. In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.34, cairo version 1.17.6) of 2022-10-16 built on 2461399 Repository revision: 0ff389c0c17b0b2938e79640e86b594344f20e55 Repository branch: master System Description: Arch Linux Configured using: 'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib --localstatedir=/var --mandir=/usr/share/man --with-gameuser=:games --with-modules --with-libotf --without-gconf --with-libsystemd --enable-link-time-optimization --with-native-compilation --with-xinput2 --with-pgtk --without-xaw3d --with-sound=alsa --without-gpm '--program-transform-name=s/\([ec]tags\)/\1.emacs/' 'CFLAGS=-march=x86-64 -mtune=native -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -flto=auto' 'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -flto=auto' 'CXXFLAGS=-march=x86-64 -mtune=native -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -flto=auto'' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS WEBP XIM GTK3 ZLIB Important settings: value of $LANG: en_GB.UTF-8 locale-coding-system: utf-8-unix Major mode: Org Minor modes in effect: global-atomic-chrome-edit-mode: t minions-mode: t back-button-mode: t recentf-mode: t savehist-mode: t treemacs-icons-dired-mode: t magit-wip-initial-backup-mode: t magit-wip-before-change-mode: t magit-wip-after-apply-mode: t magit-wip-after-save-mode: t magit-wip-mode: t global-git-commit-mode: t magit-auto-revert-mode: t global-auto-revert-mode: t treemacs-filewatch-mode: t treemacs-git-mode: t treemacs-fringe-indicator-mode: t org-edit-indirect-mode: t emms-playing-time-mode: t gnus-desktop-notify-mode: t doom-modeline-mode: t org-super-agenda-mode: t org-appear-mode: t org-modern-mode: t guess-language-mode: t ws-butler-mode: t selected-minor-mode: t flyspell-mode: t org-cdlatex-mode: t projectile-mode: t global-company-mode: t company-mode: t electric-pair-mode: t editorconfig-mode: t frames-only-mode: t marginalia-mode: t which-key-mode: t dired-async-mode: t helm-mode: t helm-minibuffer-history-mode: t global-so-long-mode: t change-cursor-mode: t mode-icons-mode: t global-emojify-mode: t emojify-mode: t shell-dirtrack-mode: t helm-autoresize-mode: t helm--remap-mouse-mode: t async-bytecomp-package-mode: t desktop-save-mode: t save-place-mode: t delete-selection-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 transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /home/bidar/.emacs.d/lib/w3m/w3m-autoloads hides /home/bidar/.emacs.d/lib/w3m/shimbun/w3m-autoloads /home/bidar/.emacs.d/lib/org/lisp/ox-koma-letter hides /home/bidar/.emacs.d/lib/lisp/ox-koma-letter /home/bidar/.emacs.d/lib/org-contrib/lisp/ox-groff hides /home/bidar/.emacs.d/lib/lisp/ox-groff /home/bidar/.emacs.d/lib/vim-modeline/vim-modeline hides /home/bidar/.emacs.d/lib/lisp/vim-modeline /home/bidar/.emacs.d/lib/lisp/htmlize hides /home/bidar/.emacs.d/lib/htmlize/htmlize /home/bidar/.emacs.d/lib/lisp/cursor-chg hides /home/bidar/.emacs.d/lib/cursor-chg/cursor-chg /home/bidar/.emacs.d/lib/cmake-mode/cmake-mode hides /usr/share/emacs/site-lisp/cmake-mode /home/bidar/.emacs.d/lib/pkgbuild-mode/pkgbuild-mode hides /usr/share/emacs/site-lisp/pkgbuild-mode /home/bidar/.emacs.d/lib/dash/dash hides /usr/share/emacs/site-lisp/dash/dash /home/bidar/.emacs.d/lib/dash/dash-functional hides /usr/share/emacs/site-lisp/dash/dash-functional /home/bidar/.emacs.d/lib/web-mode/web-mode hides /usr/share/emacs/site-lisp/web-mode/web-mode /home/bidar/.emacs.d/lib/transient/lisp/transient hides /usr/share/emacs/29.0.50/lisp/transient /home/bidar/.emacs.d/lib/org/lisp/ox hides /usr/share/emacs/29.0.50/lisp/org/ox /home/bidar/.emacs.d/lib/org/lisp/ox-texinfo hides /usr/share/emacs/29.0.50/lisp/org/ox-texinfo /home/bidar/.emacs.d/lib/org/lisp/ox-publish hides /usr/share/emacs/29.0.50/lisp/org/ox-publish /home/bidar/.emacs.d/lib/org/lisp/ox-org hides /usr/share/emacs/29.0.50/lisp/org/ox-org /home/bidar/.emacs.d/lib/org/lisp/ox-odt hides /usr/share/emacs/29.0.50/lisp/org/ox-odt /home/bidar/.emacs.d/lib/org/lisp/ox-md hides /usr/share/emacs/29.0.50/lisp/org/ox-md /home/bidar/.emacs.d/lib/org/lisp/ox-man hides /usr/share/emacs/29.0.50/lisp/org/ox-man /home/bidar/.emacs.d/lib/org/lisp/ox-latex hides /usr/share/emacs/29.0.50/lisp/org/ox-latex /home/bidar/.emacs.d/lib/org/lisp/ox-koma-letter hides /usr/share/emacs/29.0.50/lisp/org/ox-koma-letter /home/bidar/.emacs.d/lib/org/lisp/ox-icalendar hides /usr/share/emacs/29.0.50/lisp/org/ox-icalendar /home/bidar/.emacs.d/lib/org/lisp/ox-html hides /usr/share/emacs/29.0.50/lisp/org/ox-html /home/bidar/.emacs.d/lib/org/lisp/ox-beamer hides /usr/share/emacs/29.0.50/lisp/org/ox-beamer /home/bidar/.emacs.d/lib/org/lisp/ox-ascii hides /usr/share/emacs/29.0.50/lisp/org/ox-ascii /home/bidar/.emacs.d/lib/org/lisp/org hides /usr/share/emacs/29.0.50/lisp/org/org /home/bidar/.emacs.d/lib/org/lisp/org-version hides /usr/share/emacs/29.0.50/lisp/org/org-version /home/bidar/.emacs.d/lib/org/lisp/org-timer hides /usr/share/emacs/29.0.50/lisp/org/org-timer /home/bidar/.emacs.d/lib/org/lisp/org-tempo hides /usr/share/emacs/29.0.50/lisp/org/org-tempo /home/bidar/.emacs.d/lib/org/lisp/org-table hides /usr/share/emacs/29.0.50/lisp/org/org-table /home/bidar/.emacs.d/lib/org/lisp/org-src hides /usr/share/emacs/29.0.50/lisp/org/org-src /home/bidar/.emacs.d/lib/org/lisp/org-refile hides /usr/share/emacs/29.0.50/lisp/org/org-refile /home/bidar/.emacs.d/lib/org/lisp/org-protocol hides /usr/share/emacs/29.0.50/lisp/org/org-protocol /home/bidar/.emacs.d/lib/org/lisp/org-plot hides /usr/share/emacs/29.0.50/lisp/org/org-plot /home/bidar/.emacs.d/lib/org/lisp/org-pcomplete hides /usr/share/emacs/29.0.50/lisp/org/org-pcomplete /home/bidar/.emacs.d/lib/org/lisp/org-num hides /usr/share/emacs/29.0.50/lisp/org/org-num /home/bidar/.emacs.d/lib/org/lisp/org-mouse hides /usr/share/emacs/29.0.50/lisp/org/org-mouse /home/bidar/.emacs.d/lib/org/lisp/org-mobile hides /usr/share/emacs/29.0.50/lisp/org/org-mobile /home/bidar/.emacs.d/lib/org/lisp/org-macs hides /usr/share/emacs/29.0.50/lisp/org/org-macs /home/bidar/.emacs.d/lib/org/lisp/org-macro hides /usr/share/emacs/29.0.50/lisp/org/org-macro /home/bidar/.emacs.d/lib/org/lisp/org-loaddefs hides /usr/share/emacs/29.0.50/lisp/org/org-loaddefs /home/bidar/.emacs.d/lib/org/lisp/org-list hides /usr/share/emacs/29.0.50/lisp/org/org-list /home/bidar/.emacs.d/lib/org/lisp/org-lint hides /usr/share/emacs/29.0.50/lisp/org/org-lint /home/bidar/.emacs.d/lib/org/lisp/org-keys hides /usr/share/emacs/29.0.50/lisp/org/org-keys /home/bidar/.emacs.d/lib/org/lisp/org-inlinetask hides /usr/share/emacs/29.0.50/lisp/org/org-inlinetask /home/bidar/.emacs.d/lib/org/lisp/org-indent hides /usr/share/emacs/29.0.50/lisp/org/org-indent /home/bidar/.emacs.d/lib/org/lisp/org-id hides /usr/share/emacs/29.0.50/lisp/org/org-id /home/bidar/.emacs.d/lib/org/lisp/org-habit hides /usr/share/emacs/29.0.50/lisp/org/org-habit /home/bidar/.emacs.d/lib/org/lisp/org-goto hides /usr/share/emacs/29.0.50/lisp/org/org-goto /home/bidar/.emacs.d/lib/org/lisp/org-footnote hides /usr/share/emacs/29.0.50/lisp/org/org-footnote /home/bidar/.emacs.d/lib/org/lisp/org-feed hides /usr/share/emacs/29.0.50/lisp/org/org-feed /home/bidar/.emacs.d/lib/org/lisp/org-faces hides /usr/share/emacs/29.0.50/lisp/org/org-faces /home/bidar/.emacs.d/lib/org/lisp/org-entities hides /usr/share/emacs/29.0.50/lisp/org/org-entities /home/bidar/.emacs.d/lib/org/lisp/org-element hides /usr/share/emacs/29.0.50/lisp/org/org-element /home/bidar/.emacs.d/lib/org/lisp/org-duration hides /usr/share/emacs/29.0.50/lisp/org/org-duration /home/bidar/.emacs.d/lib/org/lisp/org-datetree hides /usr/share/emacs/29.0.50/lisp/org/org-datetree /home/bidar/.emacs.d/lib/org/lisp/org-ctags hides /usr/share/emacs/29.0.50/lisp/org/org-ctags /home/bidar/.emacs.d/lib/org/lisp/org-crypt hides /usr/share/emacs/29.0.50/lisp/org/org-crypt /home/bidar/.emacs.d/lib/org/lisp/org-compat hides /usr/share/emacs/29.0.50/lisp/org/org-compat /home/bidar/.emacs.d/lib/org/lisp/org-colview hides /usr/share/emacs/29.0.50/lisp/org/org-colview /home/bidar/.emacs.d/lib/org/lisp/org-clock hides /usr/share/emacs/29.0.50/lisp/org/org-clock /home/bidar/.emacs.d/lib/org/lisp/org-capture hides /usr/share/emacs/29.0.50/lisp/org/org-capture /home/bidar/.emacs.d/lib/org/lisp/org-attach hides /usr/share/emacs/29.0.50/lisp/org/org-attach /home/bidar/.emacs.d/lib/org/lisp/org-attach-git hides /usr/share/emacs/29.0.50/lisp/org/org-attach-git /home/bidar/.emacs.d/lib/org/lisp/org-archive hides /usr/share/emacs/29.0.50/lisp/org/org-archive /home/bidar/.emacs.d/lib/org/lisp/org-agenda hides /usr/share/emacs/29.0.50/lisp/org/org-agenda /home/bidar/.emacs.d/lib/org/lisp/ol hides /usr/share/emacs/29.0.50/lisp/org/ol /home/bidar/.emacs.d/lib/org/lisp/ol-w3m hides /usr/share/emacs/29.0.50/lisp/org/ol-w3m /home/bidar/.emacs.d/lib/org/lisp/ol-rmail hides /usr/share/emacs/29.0.50/lisp/org/ol-rmail /home/bidar/.emacs.d/lib/org/lisp/ol-mhe hides /usr/share/emacs/29.0.50/lisp/org/ol-mhe /home/bidar/.emacs.d/lib/org/lisp/ol-man hides /usr/share/emacs/29.0.50/lisp/org/ol-man /home/bidar/.emacs.d/lib/org/lisp/ol-irc hides /usr/share/emacs/29.0.50/lisp/org/ol-irc /home/bidar/.emacs.d/lib/org/lisp/ol-info hides /usr/share/emacs/29.0.50/lisp/org/ol-info /home/bidar/.emacs.d/lib/org/lisp/ol-gnus hides /usr/share/emacs/29.0.50/lisp/org/ol-gnus /home/bidar/.emacs.d/lib/org/lisp/ol-eww hides /usr/share/emacs/29.0.50/lisp/org/ol-eww /home/bidar/.emacs.d/lib/org/lisp/ol-eshell hides /usr/share/emacs/29.0.50/lisp/org/ol-eshell /home/bidar/.emacs.d/lib/org/lisp/ol-doi hides /usr/share/emacs/29.0.50/lisp/org/ol-doi /home/bidar/.emacs.d/lib/org/lisp/ol-docview hides /usr/share/emacs/29.0.50/lisp/org/ol-docview /home/bidar/.emacs.d/lib/org/lisp/ol-bibtex hides /usr/share/emacs/29.0.50/lisp/org/ol-bibtex /home/bidar/.emacs.d/lib/org/lisp/ol-bbdb hides /usr/share/emacs/29.0.50/lisp/org/ol-bbdb /home/bidar/.emacs.d/lib/org/lisp/oc hides /usr/share/emacs/29.0.50/lisp/org/oc /home/bidar/.emacs.d/lib/org/lisp/oc-natbib hides /usr/share/emacs/29.0.50/lisp/org/oc-natbib /home/bidar/.emacs.d/lib/org/lisp/oc-csl hides /usr/share/emacs/29.0.50/lisp/org/oc-csl /home/bidar/.emacs.d/lib/org/lisp/oc-biblatex hides /usr/share/emacs/29.0.50/lisp/org/oc-biblatex /home/bidar/.emacs.d/lib/org/lisp/oc-basic hides /usr/share/emacs/29.0.50/lisp/org/oc-basic /home/bidar/.emacs.d/lib/org/lisp/ob hides /usr/share/emacs/29.0.50/lisp/org/ob /home/bidar/.emacs.d/lib/org/lisp/ob-tangle hides /usr/share/emacs/29.0.50/lisp/org/ob-tangle /home/bidar/.emacs.d/lib/org/lisp/ob-table hides /usr/share/emacs/29.0.50/lisp/org/ob-table /home/bidar/.emacs.d/lib/org/lisp/ob-sqlite hides /usr/share/emacs/29.0.50/lisp/org/ob-sqlite /home/bidar/.emacs.d/lib/org/lisp/ob-sql hides /usr/share/emacs/29.0.50/lisp/org/ob-sql /home/bidar/.emacs.d/lib/org/lisp/ob-shell hides /usr/share/emacs/29.0.50/lisp/org/ob-shell /home/bidar/.emacs.d/lib/org/lisp/ob-sed hides /usr/share/emacs/29.0.50/lisp/org/ob-sed /home/bidar/.emacs.d/lib/org/lisp/ob-screen hides /usr/share/emacs/29.0.50/lisp/org/ob-screen /home/bidar/.emacs.d/lib/org/lisp/ob-scheme hides /usr/share/emacs/29.0.50/lisp/org/ob-scheme /home/bidar/.emacs.d/lib/org/lisp/ob-sass hides /usr/share/emacs/29.0.50/lisp/org/ob-sass /home/bidar/.emacs.d/lib/org/lisp/ob-ruby hides /usr/share/emacs/29.0.50/lisp/org/ob-ruby /home/bidar/.emacs.d/lib/org/lisp/ob-ref hides /usr/share/emacs/29.0.50/lisp/org/ob-ref /home/bidar/.emacs.d/lib/org/lisp/ob-python hides /usr/share/emacs/29.0.50/lisp/org/ob-python /home/bidar/.emacs.d/lib/org/lisp/ob-processing hides /usr/share/emacs/29.0.50/lisp/org/ob-processing /home/bidar/.emacs.d/lib/org/lisp/ob-plantuml hides /usr/share/emacs/29.0.50/lisp/org/ob-plantuml /home/bidar/.emacs.d/lib/org/lisp/ob-perl hides /usr/share/emacs/29.0.50/lisp/org/ob-perl /home/bidar/.emacs.d/lib/org/lisp/ob-org hides /usr/share/emacs/29.0.50/lisp/org/ob-org /home/bidar/.emacs.d/lib/org/lisp/ob-octave hides /usr/share/emacs/29.0.50/lisp/org/ob-octave /home/bidar/.emacs.d/lib/org/lisp/ob-ocaml hides /usr/share/emacs/29.0.50/lisp/org/ob-ocaml /home/bidar/.emacs.d/lib/org/lisp/ob-maxima hides /usr/share/emacs/29.0.50/lisp/org/ob-maxima /home/bidar/.emacs.d/lib/org/lisp/ob-matlab hides /usr/share/emacs/29.0.50/lisp/org/ob-matlab /home/bidar/.emacs.d/lib/org/lisp/ob-makefile hides /usr/share/emacs/29.0.50/lisp/org/ob-makefile /home/bidar/.emacs.d/lib/org/lisp/ob-lua hides /usr/share/emacs/29.0.50/lisp/org/ob-lua /home/bidar/.emacs.d/lib/org/lisp/ob-lob hides /usr/share/emacs/29.0.50/lisp/org/ob-lob /home/bidar/.emacs.d/lib/org/lisp/ob-lisp hides /usr/share/emacs/29.0.50/lisp/org/ob-lisp /home/bidar/.emacs.d/lib/org/lisp/ob-lilypond hides /usr/share/emacs/29.0.50/lisp/org/ob-lilypond /home/bidar/.emacs.d/lib/org/lisp/ob-latex hides /usr/share/emacs/29.0.50/lisp/org/ob-latex /home/bidar/.emacs.d/lib/org/lisp/ob-julia hides /usr/share/emacs/29.0.50/lisp/org/ob-julia /home/bidar/.emacs.d/lib/org/lisp/ob-js hides /usr/share/emacs/29.0.50/lisp/org/ob-js /home/bidar/.emacs.d/lib/org/lisp/ob-java hides /usr/share/emacs/29.0.50/lisp/org/ob-java /home/bidar/.emacs.d/lib/org/lisp/ob-haskell hides /usr/share/emacs/29.0.50/lisp/org/ob-haskell /home/bidar/.emacs.d/lib/org/lisp/ob-groovy hides /usr/share/emacs/29.0.50/lisp/org/ob-groovy /home/bidar/.emacs.d/lib/org/lisp/ob-gnuplot hides /usr/share/emacs/29.0.50/lisp/org/ob-gnuplot /home/bidar/.emacs.d/lib/org/lisp/ob-fortran hides /usr/share/emacs/29.0.50/lisp/org/ob-fortran /home/bidar/.emacs.d/lib/org/lisp/ob-forth hides /usr/share/emacs/29.0.50/lisp/org/ob-forth /home/bidar/.emacs.d/lib/org/lisp/ob-exp hides /usr/share/emacs/29.0.50/lisp/org/ob-exp /home/bidar/.emacs.d/lib/org/lisp/ob-eval hides /usr/share/emacs/29.0.50/lisp/org/ob-eval /home/bidar/.emacs.d/lib/org/lisp/ob-eshell hides /usr/share/emacs/29.0.50/lisp/org/ob-eshell /home/bidar/.emacs.d/lib/org/lisp/ob-emacs-lisp hides /usr/share/emacs/29.0.50/lisp/org/ob-emacs-lisp /home/bidar/.emacs.d/lib/org/lisp/ob-dot hides /usr/share/emacs/29.0.50/lisp/org/ob-dot /home/bidar/.emacs.d/lib/org/lisp/ob-ditaa hides /usr/share/emacs/29.0.50/lisp/org/ob-ditaa /home/bidar/.emacs.d/lib/org/lisp/ob-css hides /usr/share/emacs/29.0.50/lisp/org/ob-css /home/bidar/.emacs.d/lib/org/lisp/ob-core hides /usr/share/emacs/29.0.50/lisp/org/ob-core /home/bidar/.emacs.d/lib/org/lisp/ob-comint hides /usr/share/emacs/29.0.50/lisp/org/ob-comint /home/bidar/.emacs.d/lib/org/lisp/ob-clojure hides /usr/share/emacs/29.0.50/lisp/org/ob-clojure /home/bidar/.emacs.d/lib/org/lisp/ob-calc hides /usr/share/emacs/29.0.50/lisp/org/ob-calc /home/bidar/.emacs.d/lib/org/lisp/ob-awk hides /usr/share/emacs/29.0.50/lisp/org/ob-awk /home/bidar/.emacs.d/lib/org/lisp/ob-R hides /usr/share/emacs/29.0.50/lisp/org/ob-R /home/bidar/.emacs.d/lib/org/lisp/ob-C hides /usr/share/emacs/29.0.50/lisp/org/ob-C /home/bidar/.emacs.d/lib/flim/sasl hides /usr/share/emacs/29.0.50/lisp/net/sasl /home/bidar/.emacs.d/lib/let-alist/let-alist hides /usr/share/emacs/29.0.50/lisp/emacs-lisp/let-alist Features: (shadow emacsbug cl-print helm-ring smart-region multiple-cursors mc-separate-operations rectangular-region-mode mc-mark-pop mc-edit-lines mc-hide-unmatched-lines-mode mc-mark-more mc-cycle-cursors multiple-cursors-core rect expand-region yaml-mode-expansions subword-mode-expansions cperl-mode-expansions text-mode-expansions cc-mode-expansions the-org-mode-expansions python-el-fgallina-expansions er-basic-expansions expand-region-core expand-region-custom magit-extras gnus-search eieio-opt speedbar ezimage dframe canlock gnus-html flow-fill ace-window avy org-duration elfeed-link elfeed-show elfeed-search elfeed-csv elfeed elfeed-curl elfeed-log xml-query elfeed-db elfeed-lib orgit-forge orgit mailalias bbdb-pgp eudc-capf eudc eudc-vars bbdb-message gnus-alias w3m-form w3m-symbol w3m-bookmark w3m w3m-hist w3m-fb bookmark-w3m w3m-ems w3m-favicon w3m-image tab-line w3m-proc w3m-util sieve sieve-mode sieve-manage sasl sasl-anonymous sasl-login sasl-plain mule-util gnus-gravatar gravatar dns smiley gnus-cite qp mm-archive textsec uni-scripts idna-mapping ucs-normalize uni-confusable textsec-check gnus-async gnus-bcklg bbdb-gnus-aux gnus-ml nndraft nnmh nndoc gnus-topic utf-7 nnfolder time-stamp bbdb-gnus bbdb-mua nnnil gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-cache bug-auth netrc generic-x tabify cus-start help-fns char-fold misearch multi-isearch helm-x-files helm-for-files mail-extr two-column helm-descbinds dired-open image-file image-converter helm-external epa-file network-stream url-cache winner tramp-archive tramp-gvfs helm-command atomic-chrome websocket minions back-button smartrep recentf tree-widget savehist systemd company-shell vc-hg vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs log-view dired-collapse treemacs-icons-dired treemacs-all-the-icons treemacs-magit forge-list forge-commands forge-semi forge-bitbucket buck forge-gogs gogs forge-gitea gtea forge-gitlab glab forge-github ghub-graphql treepy gsexp ghub forge-notify forge-revnote forge-pullreq forge-issue forge-topic yaml forge-post markdown-mode forge-repo forge forge-core forge-db magit-bookmark magit-submodule magit-obsolete magit-popup 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 diff git-commit log-edit pcvs-util add-log magit-core magit-autorevert autorevert magit-margin magit-transient magit-process magit-mode transient treemacs treemacs-header-line treemacs-compatibility treemacs-mode treemacs-bookmarks treemacs-tags 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 org-edit-indirect edit-indirect cap-words superword subword gitconfig-mode rainbow-delimiters goto-addr ligature symbol-overlay hideshow vc bug-reference make-mode org-bug bug-search bug-comment-mode bug-backend-bz-rpc bug-list-mode bug-search-common bug-mode bug-format bug-rpc bug-debug bug-common-functions bug-persistent-data bug-custom emms-i18n emms-history emms-score emms-stream-info emms-metaplaylist-mode emms-bookmarks emms-cue emms-mode-line-icon emms-browser sort emms-volume emms-volume-sndioctl emms-volume-mixerctl emms-volume-pulse emms-volume-amixer emms-playlist-sort emms-last-played emms-player-mpd tq emms-playing-time emms-lyrics emms-url emms-player-simple emms-streams emms-show-all emms-tag-editor emms-tag-tracktag emms-info-mp3info emms-mark emms-mode-line emms-cache emms-playlist-mode emms-info-native bindat emms-info-libtag emms-info emms-later-do emms-source-playlist emms-source-file locate emms emms-compat gnus-icalendar org-capture smtpmail-async smtpmail gnus-msg gnus-desktop-notify doom-modeline doom-modeline-segments doom-modeline-env doom-modeline-core shrink-path gnus-demon nntp khardel yaml-mode lui-track company-emoji company-emoji-list helm-circe circe-notifications alert notifications circe-display-images circe-color-nicks circe lui-irc-colors irc lcs lui-logging lui-format lui tracking shorten circe-compat bbdb-vcard bbdb-com bbdb-vcard-vcard21 bbdb bbdb-site timezone org-caldav let-alist icalendar ox-extra ox-odt rng-loc rng-uri rng-parse rng-match rng-dt rng-util rng-pttrn nxml-parse nxml-ns nxml-enc xmltok nxml-util ox-koma-letter ox-latex ox-icalendar ox-html table ox-ascii ox-publish ox url-dav url-http url-auth url-gw nsm org-expiry ol-man org-super-agenda ts org-habit org-eldoc cdlatex reftex reftex-loaddefs reftex-vars org-appear org-modern guess-language ws-butler selected flyspell oc-basic org-element org-persist org-id avl-tree ol-eww eww url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig ol-docview doc-view jka-compr ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi cal-china lunar solar cal-dst cal-bahai cal-islam cal-hebrew holidays holiday-loaddefs vim-modeline company-yasnippet company-anaconda appt org-agenda org-refile org-clock org-protocol ob-sqlite ob-sql ob-shell ob-python ob-plantuml ob-org ob-octave ob-lua ob-js ob-gnuplot ob-dot ob-ditaa ob-clojure ob-C outshine outshine-org-cmds outorg smartparens-org smartparens-text smartparens org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-footnote org-src ob-comint org-pcomplete org-list 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 gnus-sum shr pixel-fill kinsoku url-file svg dom 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 puny rfc822 mml mml-sec epa epg rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader gnus-win gnus nnheader gnus-util mail-utils range mm-util mail-prsvr org-version org-compat org-macs noutline outline anaconda-mode pythonic python perl-completion woman man dabbrev cperl-mode facemenu helm-elisp helm-eval cl cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs ggtags ewoc flycheck-color-mode-line flycheck meson-mode bitbake-modes bitbake autoinsert conf-bitbake-mode conf-mode bitbake-ff find-file bitbake-mmm sh-script smie executable mmm-mode mmm-univ mmm-class mmm-region mmm-auto mmm-vars mmm-utils mmm-compat bitbake-functions bitbake-compat xterm-color magit-libgit libgit libegit2 magit-git magit-base which-func imenu edebug debug backtrace vc-git vc-dispatcher ido magit-section benchmark crm compat-27 diff-mode diary-lib diary-loaddefs cal-menu calendar cal-loaddefs midnight vlf-setup multi-vterm vterm face-remap term disp-table ehelp vterm-module term/xterm xterm projectile skeleton ibuf-macs ibuf-ext ibuffer ibuffer-loaddefs ispell company-oddmuse company-keywords company-etags etags fileloop generator xref project company-gtags company-dabbrev-code company-dabbrev company-files company-clang company-capf company-cmake company-semantic company-template company-bbdb company elec-pair editorconfig editorconfig-core editorconfig-core-handle editorconfig-fnmatch package url-handlers frames-only-mode marginalia which-key dired-ranger dired-avfs dired-rainbow dired-hacks-utils dired-async dired-du find-dired wdired helm-icons all-the-icons all-the-icons-faces data-material data-weathericons data-octicons data-fileicons data-faicons data-alltheicons treemacs-icons treemacs-themes treemacs-core-utils treemacs-macros treemacs-logging treemacs-customization pfuture inline hl-line f f-shortdoc shortdoc s helm-bookmark helm-net browse-url xml url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util mailcap helm-adaptive helm-info bookmark helm-mode helm-misc helm-files image-dired image-dired-tags image-dired-external image-dired-util xdg image-mode exif filenotify dired-x dired-aux dired dired-loaddefs ffap 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 wgrep-helm wgrep grep compile text-property-search helm-regexp format-spec helm-utils helm-help helm-types helm-config so-long cursor-chg mode-icons emojify apropos tar-mode arc-mode archive-mode ht dash color modus-vivendi-theme modus-themes helm-pass thingatpt password-store with-editor shell pcomplete comint ansi-osc ansi-color ring server helm helm-global-bindings helm-easymenu helm-core async-bytecomp helm-source helm-multi-match helm-lib async auth-source-pass url-parse url-vars auth-source password-cache printing ps-print ps-print-loaddefs lpr desktop frameset edmacro kmacro saveplace delsel no-littering epkg-melpa json map epkg-gelpa epkg-utils epkg-list epkg-desc wid-edit find-func epkg closql emacsql-sqlite advice emacsql emacsql-compiler compat-26 compat compat-macs comp comp-cstr warnings icons use-package use-package-ensure use-package-delight use-package-diminish use-package-bind-key bind-key easy-mmode use-package-core w3m-load rx bbdb-loaddefs cl-extra help-mode cl-seq borg derived eieio byte-opt eieio-core cl-macs gv subr-x pcase info bytecomp byte-compile cconv autoload loaddefs-gen generate-lisp-file radix-tree cl-loaddefs cl-lib lisp-mnt rmc iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win term/common-win pgtk-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 dynamic-setting system-font-setting font-render-setting cairo gtk pgtk lcms2 multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 3363266 3002036) (symbols 48 112218 83) (strings 32 617305 255593) (string-bytes 1 18320894) (vectors 16 184277) (vector-slots 8 6180337 576554) (floats 8 4771 5182) (intervals 56 97360 1931) (buffers 1000 150))