Subject: bug#38406: closed (Re: bug#38406: 27.0.50; post-self-insert-hook does not hold its contract in cc-mode derived modes)

From: [email-masked] (GNU bug Tracking System)
Date: Sun, 08 Dec 2019 04:04:02 +0000

Your bug report

#38406: 27.0.50; post-self-insert-hook does not hold its contract in cc-mode derived modes

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
38406: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38406
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#38406: 27.0.50; post-self-insert-hook does not hold its contract in cc-mode derived modes
From: Alan Mackenzie <[email-masked]>
To: Eli Zaretskii <[email-masked]>
Cc: [email-masked], [email-masked]
Date: Sat, 7 Dec 2019 19:03:02 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello, Eli.

On Sat, Dec 07, 2019 at 15:27:46 +0200, Eli Zaretskii wrote:
> > Date: Sat, 7 Dec 2019 11:40:45 +0000
> > Cc: [email-masked], [email-masked]
> > From: Alan Mackenzie <[email-masked]>

> > So, that would leave just electric-pair-post-self-insert-function to be
> > filtered out of the hook.

> Thank you, I agree.  So please go ahead and push your changes with
> those modifications.

DONE.  I am closing the bug with this post.

-- 
Alan Mackenzie (Nuremberg, Germany).

Subject: 27.0.50; post-self-insert-hook does not hold its contract in cc-mode derived modes
From: yyoncho <[email-masked]>
To: [email-masked]
Date: Wed, 27 Nov 2019 22:00:26 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

As per post-self-insert-hook documentation.

> Hook run at the end of `self-insert-command'.
> This is run after inserting the character.

This does not hold by default in cc-mode due to the following mapped by
default functions:

> (define-key c-mode-base-map "#"         'c-electric-pound)
> (define-key c-mode-base-map "{"         'c-electric-brace)
> (define-key c-mode-base-map "}"         'c-electric-brace)
> (define-key c-mode-base-map "/"         'c-electric-slash)
> (define-key c-mode-base-map "*"         'c-electric-star)
> (define-key c-mode-base-map ";"         'c-electric-semi&comma)
> (define-key c-mode-base-map ","         'c-electric-semi&comma)
> (define-key c-mode-base-map ":"         'c-electric-colon)
> (define-key c-mode-base-map "("         'c-electric-paren)
> (define-key c-mode-base-map ")"         'c-electric-paren)

All of these functions (or at least majority) contain the following lines:

> (let (post-self-insert-hook) ; Disable random functionality.
>      (self-insert-command (prefix-numeric-value arg)))

Possible fixes:

1. Do not bind the functions by default.
2. Rewrite them so they do not inhibit post-self-insert-hook functions.

In GNU Emacs 27.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.1)
 of 2019-11-23 built on kyoncho-H87-D3H
Repository revision: 8934762bb37273e6606097de92dcc2556456acd2
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12001000
System Description: Linux Mint 19.1

Configured using:
 'configure --with-modules --with-json'

Configured features:
XPM JPEG TIFF GIF PNG SOUND DBUS GSETTINGS GLIB NOTIFY INOTIFY GNUTLS
LIBXML2 FREETYPE HARFBUZZ XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM
MODULES THREADS JSON PDUMPER GMP

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

Major mode: Emacs-Lisp

Minor modes in effect:
  helm-spacemacs-help-mode: t
  global-magit-file-mode: t
  global-evil-surround-mode: t
  evil-surround-mode: t
  helm-descbinds-mode: t
  helm-mode: t
  helm-flx-mode: t
  dap-tooltip-mode: t
  dap-ui-mode: t
  gdb-many-windows: t
  dap-mode: t
  gradle-mode: t
  global-git-gutter+-mode: t
  global-git-commit-mode: t
  async-bytecomp-package-mode: t
  pupo-mode: t
  purpose-mode: t
  evil-escape-mode: t
  projectile-mode: t
  recentf-mode: t
  company-mode: t
  auto-compile-mode: t
  elisp-slime-nav-mode: t
  eval-sexp-fu-flash-mode: t
  goto-address-prog-mode: t
  bug-reference-prog-mode: t
  auto-highlight-symbol-mode: t
  flycheck-pos-tip-mode: t
  global-flycheck-mode: t
  highlight-numbers-mode: t
  highlight-parentheses-mode: t
  rainbow-delimiters-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  evil-cleverparens-mode: t
  show-smartparens-global-mode: t
  show-smartparens-mode: t
  smartparens-mode: t
  persistent-scratch-autosave-mode: t
  winner-mode: t
  global-spacemacs-whitespace-cleanup-mode: t
  spacemacs-whitespace-cleanup-mode: t
  winum-mode: t
  global-vi-tilde-fringe-mode: t
  save-place-mode: t
  savehist-mode: t
  persp-mode: t
  global-hl-todo-mode: t
  hl-todo-mode: t
  global-fasd-mode: t
  eyebrowse-mode: t
  evil-mc-mode: t
  global-anzu-mode: t
  anzu-mode: t
  editorconfig-mode: t
  doom-modeline-mode: t
  clean-aindent-mode: t
  hybrid-mode: t
  which-key-mode: t
  override-global-mode: t
  global-undo-tree-mode: t
  undo-tree-mode: t
  shell-dirtrack-mode: t
  evil-mode: t
  evil-local-mode: t
  spacemacs-leader-override-mode: t
  global-spacemacs-leader-override-mode: t
  global-hl-line-mode: t
  xterm-mouse-mode: t
  global-auto-revert-mode: t
  ido-vertical-mode: t
  global-page-break-lines-mode: t
  page-break-lines-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  hs-minor-mode: t

Load-path shadows:
/home/kyoncho/.emacs.d/elpa/27.0/develop/ht-20190924.704/ht hides
/home/kyoncho/.emacs.d/core/libs/ht
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-exp
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-exp
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-footnote
hides /usr/local/share/emacs/27.0.50/lisp/org/org-footnote
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-scheme
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-scheme
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-entities
hides /usr/local/share/emacs/27.0.50/lisp/org/org-entities
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-clojure
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-clojure
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ox-odt
hides /usr/local/share/emacs/27.0.50/lisp/org/ox-odt
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-ledger
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-ledger
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ox-man
hides /usr/local/share/emacs/27.0.50/lisp/org/ox-man
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-duration
hides /usr/local/share/emacs/27.0.50/lisp/org/org-duration
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-core
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-core
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-css
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-css
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ox-org
hides /usr/local/share/emacs/27.0.50/lisp/org/ox-org
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-sass
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-sass
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-maxima
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-maxima
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-matlab
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-matlab
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-ebnf
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-ebnf
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-ocaml
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-ocaml
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ox-ascii
hides /usr/local/share/emacs/27.0.50/lisp/org/ox-ascii
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-lilypond
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-lilypond
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ox-md
hides /usr/local/share/emacs/27.0.50/lisp/org/ox-md
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-timer
hides /usr/local/share/emacs/27.0.50/lisp/org/org-timer
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-calc
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-calc
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-macro
hides /usr/local/share/emacs/27.0.50/lisp/org/org-macro
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-attach
hides /usr/local/share/emacs/27.0.50/lisp/org/org-attach
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-plantuml
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-plantuml
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-element
hides /usr/local/share/emacs/27.0.50/lisp/org/org-element
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-eww
hides /usr/local/share/emacs/27.0.50/lisp/org/org-eww
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-crypt
hides /usr/local/share/emacs/27.0.50/lisp/org/org-crypt
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-forth
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-forth
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-clock
hides /usr/local/share/emacs/27.0.50/lisp/org/org-clock
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-colview
hides /usr/local/share/emacs/27.0.50/lisp/org/org-colview
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-w3m
hides /usr/local/share/emacs/27.0.50/lisp/org/org-w3m
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-src
hides /usr/local/share/emacs/27.0.50/lisp/org/org-src
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-vala
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-vala
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-stan
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-stan
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-gnus
hides /usr/local/share/emacs/27.0.50/lisp/org/org-gnus
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-fortran
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-fortran
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-lob
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-lob
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-processing
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-processing
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-mobile
hides /usr/local/share/emacs/27.0.50/lisp/org/org-mobile
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-groovy
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-groovy
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-habit
hides /usr/local/share/emacs/27.0.50/lisp/org/org-habit
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-shen
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-shen
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-lua
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-lua
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-ruby
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-ruby
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-info
hides /usr/local/share/emacs/27.0.50/lisp/org/org-info
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-mouse
hides /usr/local/share/emacs/27.0.50/lisp/org/org-mouse
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-archive
hides /usr/local/share/emacs/27.0.50/lisp/org/org-archive
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-rmail
hides /usr/local/share/emacs/27.0.50/lisp/org/org-rmail
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-comint
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-comint
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-io
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-io
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-hledger
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-hledger
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-id
hides /usr/local/share/emacs/27.0.50/lisp/org/org-id
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-octave
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-octave
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-ref
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-ref
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-table
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-table
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ox-beamer
hides /usr/local/share/emacs/27.0.50/lisp/org/ox-beamer
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-picolisp
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-picolisp
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-agenda
hides /usr/local/share/emacs/27.0.50/lisp/org/org-agenda
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-python
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-python
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-makefile
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-makefile
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ox-texinfo
hides /usr/local/share/emacs/27.0.50/lisp/org/ox-texinfo
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-gnuplot
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-gnuplot
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-lint
hides /usr/local/share/emacs/27.0.50/lisp/org/org-lint
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ox-publish
hides /usr/local/share/emacs/27.0.50/lisp/org/ox-publish
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-version
hides /usr/local/share/emacs/27.0.50/lisp/org/org-version
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-perl
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-perl
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-eshell
hides /usr/local/share/emacs/27.0.50/lisp/org/org-eshell
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-tangle
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-tangle
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-ctags
hides /usr/local/share/emacs/27.0.50/lisp/org/org-ctags
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-eval
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-eval
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ox-latex
hides /usr/local/share/emacs/27.0.50/lisp/org/ox-latex
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-keys
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-keys
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-java
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-java
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-macs
hides /usr/local/share/emacs/27.0.50/lisp/org/org-macs
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-awk
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-awk
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-abc
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-abc
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-asymptote
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-asymptote
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-org
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-org
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-js
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-js
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-plot
hides /usr/local/share/emacs/27.0.50/lisp/org/org-plot
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-indent
hides /usr/local/share/emacs/27.0.50/lisp/org/org-indent
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-table
hides /usr/local/share/emacs/27.0.50/lisp/org/org-table
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-sql
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-sql
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-screen
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-screen
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-dot
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-dot
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-coq
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-coq
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-pcomplete
hides /usr/local/share/emacs/27.0.50/lisp/org/org-pcomplete
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-mscgen
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-mscgen
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-irc
hides /usr/local/share/emacs/27.0.50/lisp/org/org-irc
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-latex
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-latex
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ox hides
/usr/local/share/emacs/27.0.50/lisp/org/ox
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-capture
hides /usr/local/share/emacs/27.0.50/lisp/org/org-capture
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org
hides /usr/local/share/emacs/27.0.50/lisp/org/org
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-feed
hides /usr/local/share/emacs/27.0.50/lisp/org/org-feed
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-shell
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-shell
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-protocol
hides /usr/local/share/emacs/27.0.50/lisp/org/org-protocol
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-R
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-R
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-ditaa
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-ditaa
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ox-icalendar
hides /usr/local/share/emacs/27.0.50/lisp/org/ox-icalendar
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-sed
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-sed
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-lisp
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-lisp
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-datetree
hides /usr/local/share/emacs/27.0.50/lisp/org/org-datetree
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-install
hides /usr/local/share/emacs/27.0.50/lisp/org/org-install
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-loaddefs
hides /usr/local/share/emacs/27.0.50/lisp/org/org-loaddefs
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-sqlite
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-sqlite
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-bibtex
hides /usr/local/share/emacs/27.0.50/lisp/org/org-bibtex
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-J
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-J
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-inlinetask
hides /usr/local/share/emacs/27.0.50/lisp/org/org-inlinetask
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-mhe
hides /usr/local/share/emacs/27.0.50/lisp/org/org-mhe
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-emacs-lisp
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-emacs-lisp
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-faces
hides /usr/local/share/emacs/27.0.50/lisp/org/org-faces
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-docview
hides /usr/local/share/emacs/27.0.50/lisp/org/org-docview
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ox-html
hides /usr/local/share/emacs/27.0.50/lisp/org/ox-html
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob hides
/usr/local/share/emacs/27.0.50/lisp/org/ob
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-list
hides /usr/local/share/emacs/27.0.50/lisp/org/org-list
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-haskell
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-haskell
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-bbdb
hides /usr/local/share/emacs/27.0.50/lisp/org/org-bbdb
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/ob-C
hides /usr/local/share/emacs/27.0.50/lisp/org/ob-C
/home/kyoncho/.emacs.d/elpa/27.0/develop/org-plus-contrib-20191111/org-compat
hides /usr/local/share/emacs/27.0.50/lisp/org/org-compat

Features:
(shadow sort mail-extr emacsbug sendmail helm-c-yasnippet
evil-indent-plus hippie-exp org-eldoc evil-org org-table ob-groovy ob-js
ob-python ob-java ob-C ob-scala ensime-expand-region expand-region-core
expand-region-custom ensime ensime-mode ensime-sbt sbt-mode
sbt-mode-rgrep sbt-mode-comint sbt-mode-buffer sbt-mode-project
sbt-mode-vars ensime-http ensime-ui ensime-semantic-highlight ensime-doc
ensime-search ensime-helm ensime-undo ensime-startup ensime-refactor
ensime-popup ensime-eldoc ensime-notes ensime-company ensime-editor
ensime-ivy ensime-model ivy delsel colir ivy-overlay popup ensime-debug
ensime-stacktrace ensime-inf ensime-overlay ensime-completion-util
ensime-config ensime-util ensime-client ensime-vars smartparens-scala
scala-mode scala-mode-prettify-symbols scala-mode-imenu scala-mode-map
scala-mode-fontlock scala-mode-indent scala-mode-paragraph
scala-mode-syntax scala-mode-lib arc-mode archive-mode ensime-macros
ob-shell ob-clojure org-bullets org-download toc-org image-file org-eww
org-rmail org-mhe org-irc org-info org-gnus nnir gnus-sum shr svg dom
gnus-group gnus-undo gnus-start gnus-cloud nnimap nnmail mail-source
utf7 netrc nnoo gnus-spec gnus-int gnus-range gnus-win gnus nnheader
org-docview doc-view image-mode exif org-bibtex bibtex org-bbdb org-w3m
smartparens-org orgit org-element avl-tree org ob ob-tangle ob-ref
ob-lob ob-table ob-exp org-macro org-footnote org-src ob-comint ob-keys
org-pcomplete org-list org-faces org-entities org-version ob-emacs-lisp
ob-core ob-eval org-compat org-macs org-loaddefs cal-menu calendar
cal-loaddefs helm-projectile eieio-opt mwim pulse cursor-sensor
company-go go-mode find-file helm-ag dired-aux drupal-mode
drupal/emacs-drush drupal/flycheck drupal/phpcs drupal/ispell
drupal/etags drupal/eldoc sql php-mode speedbar sb-image ezimage dframe
cc-langs php-face php php-project diff-hl-dired diff-hl vc-dir dired-x
gravatar url-cache misearch multi-isearch semantic/find helm-semantic
helm-imenu semantic/util-modes semantic/util semantic semantic/tag
semantic/lex semantic/fw mode-local cedet jka-compr ffap helm-swoop
vc-mtn vc-hg mule-util magit-extras fill-column-indicator
helm-spacemacs-help helm-command helm-elisp helm-eval edebug backtrace
magit-gitflow evil-magit git-rebase 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 gnutls forge-notify
forge-revnote forge-pullreq forge-issue forge-topic forge-post
forge-repo forge forge-core forge-db closql emacsql-sqlite emacsql
emacsql-compiler 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 which-func magit-diff
diminish smerge-mode magit-core magit-autorevert magit-margin
magit-transient magit-process magit-mode transient flx helm-x-files
helm-for-files helm-bookmark helm-adaptive helm-info bookmark pp
helm-external helm-net evil-surround whitespace tabify helm-fasd
helm-descbinds helm-mode helm-files helm-buffers helm-occur helm-tags
helm-locate helm-grep helm-regexp helm-utils helm-help helm-types
helm-flx helm helm-source helm-multi-match helm-lib vc-git diff-mode
vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs vc vc-dispatcher dap-java
dap-mouse dap-ui gdb-mi gud bui bui-list bui-info bui-entry bui-core
bui-history bui-button bui-utils tree-mode dap-mode dap-overlays lsp-ui
lsp-ui-doc lsp-ui-imenu lsp-ui-peek lsp-ui-sideline view company-lsp
flycheck-rust lsp-ui-flycheck lsp-clients lsp-pwsh lsp-terraform
lsp-yaml lsp-vhdl lsp-haxe lsp-erlang lsp-fsharp lsp-metals lsp-elm
lsp-dart lsp-clojure lsp-go lsp-xml lsp-css lsp-intelephense lsp-vetur
lsp-html lsp-solargraph lsp-rust lsp-pyls lsp-java request lsp lsp-mode
ewoc smartparens-markdown markdown-mode color spinner network-stream
inline em-glob esh-util dash-functional bindat flymake-proc flymake
gradle-mode maven-test-mode company-c-headers cc-mode cc-fonts cc-guess
cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs
editorconfig-core editorconfig-core-handle editorconfig-fnmatch
git-gutter-fringe+ fringe-helper git-gutter+ git-commit with-editor
async-bytecomp async server magit-git magit-section magit-utils crm
log-edit message rfc822 mml mml-sec epa gnus-util rmail rmail-loaddefs
text-property-search mailabbrev mail-utils gmm-utils mailheader
pcvs-util add-log face-remap spacemacs-purpose-popwin window-purpose-x
imenu-list dired dired-loaddefs window-purpose window-purpose-fixes
window-purpose-prefix-overload window-purpose-switch
window-purpose-layout window-purpose-core window-purpose-configuration
window-purpose-utils evil-escape projectile grep ibuf-ext ibuffer
ibuffer-loaddefs tramp-sh docker-tramp tramp-cache tramp tramp-loaddefs
trampver tramp-integration files-x tramp-compat parse-time iso8601
time-date ls-lisp recentf tree-widget evil-better-visual-line
company-files company-keywords company-etags company-gtags
company-dabbrev-code company-dabbrev company-semantic company-template
company-capf php-extras company overseer pkg-info url-http url url-proxy
url-privacy url-expand url-methods url-history mailcap url-auth
url-cookie url-domsuf url-util url-gw nsm rmc puny epl compile
auto-compile packed elisp-slime-nav etags fileloop generator xref
project flycheck-package package-lint let-alist imenu finder
cider-eval-sexp-fu eval-sexp-fu goto-addr bug-reference
auto-highlight-symbol evil-lisp-state flycheck-pos-tip pos-tip flycheck
find-func highlight-numbers parent-mode highlight-parentheses hideshow
rainbow-delimiters yasnippet-snippets clojure-snippets yasnippet
evil-cleverparens evil-cleverparens-text-objects evil-cleverparens-util
smartparens-config smartparens-text smartparens paredit
persistent-scratch winner xterm-color spacemacs-whitespace-cleanup
ws-butler winum vi-tilde-fringe symbol-overlay string-inflection
saveplace savehist popwin persp-mode noflet cl-indent hl-todo fasd
eyebrowse evil-unimpaired evil-textobj-line evil-mc
evil-mc-command-execute evil-mc-command-record evil-mc-cursor-make
evil-mc-region evil-mc-cursor-state evil-mc-undo evil-mc-vars
evil-mc-known-commands evil-mc-common evil-anzu anzu editorconfig
noutline outline doom-modeline doom-modeline-segments doom-modeline-env
doom-modeline-core shrink-path f s dash all-the-icons
all-the-icons-faces data-material data-weathericons data-octicons
data-fileicons data-faicons data-alltheicons memoize clean-aindent-mode
clang-format xml helm-easymenu gh-common marshal drupal/pcomplete
hybrid-mode evil-evilified-state which-key use-package
use-package-ensure use-package-delight use-package-diminish
use-package-bind-key bind-key use-package-core hydra lv cus-edit
cus-start cus-load evil evil-keybindings evil-integration undo-tree diff
evil-maps evil-commands reveal flyspell ispell evil-jumps
evil-command-window evil-types evil-search evil-ex shell pcomplete
comint ansi-color evil-macros evil-repeat evil-states evil-core
evil-common windmove thingatpt rect evil-digraphs evil-vars ring
bind-map quelpa mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047
rfc2045 mm-util ietf-drums mail-prsvr lisp-mnt help-fns radix-tree
hl-line xt-mouse autorevert filenotify cl-extra disp-table wid-edit
spacemacs-dark-theme spacemacs-common format-spec info finder-inf
ido-vertical-mode ido core-spacemacs core-use-package-ext
core-transient-state core-micro-state core-toggle core-keybindings
core-fonts-support core-themes-support core-display-init core-jump
core-release-management core-custom-settings core-configuration-layer
eieio-compat core-progress-bar core-spacemacs-buffer core-funcs ht cl
help-mode warnings package browse-url url-handlers url-parse auth-source
cl-seq password-cache json map url-vars seq eieio byte-opt bytecomp
byte-compile cconv eieio-core eieio-loaddefs epg epg-config
core-command-line pcase core-debug edmacro kmacro derived cl-macs gv
profiler easymenu cl-loaddefs cl-lib core-hooks page-break-lines
easy-mmode core-env load-env-vars rx core-dotspacemacs advice
core-emacs-backports subr-x core-dumper tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type 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 elisp-mode lisp-mode
prog-mode register page tab-bar menu-bar rfn-eshadow isearch timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame minibuffer cl-generic 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 charscript charprop case-table epa-hook
jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote threads dbusbind inotify dynamic-setting system-font-setting
font-render-setting move-toolbar gtk x-toolkit x multi-tty
make-network-process emacs)

Memory information:
((conses 16 1748405 1637619)
 (symbols 48 124025 14)
 (strings 32 353167 161247)
 (string-bytes 1 11869694)
 (vectors 16 146728)
 (vector-slots 8 3379598 989814)
 (floats 8 1585 12951)
 (intervals 56 79951 27733)
 (buffers 1000 123))