Subject: bug#16763: 24.3.50; electric-indent annoyance: C-j doesn't indent

From: raman <[email-masked]>
Date: Sat, 15 Feb 2014 08:07:34 -0800

This has been bothering me for a while when writing lisp code --
started happening roughly a few months ago.

I always hit C-j for newline, and a couple of months ago, this
stopped indenting -- by default C-j runs
 control j  runs the command electric-indent-just-newline
when electric-indent-mode is on.

The documentation for electric-mode indicates that indentation
will be invoked when you type any of the chars in
electric-indent-chars  -- and that variable is set to a list
containing ?\n which is  ascii 10; yet, C-j invokes a command
that explicitly only inserts a newline? (feeling very confused )

In GNU Emacs 24.3.50.2 (i686-pc-linux-gnu, GTK+ Version 2.16.1)
 of 2014-02-01 on labrador
Repository revision: %N
System Description:	Ubuntu 9.04

Configured using:
 `configure --prefix=/usr/local'

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

Major mode: Emacs-Lisp

Minor modes in effect:
  recentf-mode: t
  csv-field-index-mode: t
  gpm-mouse-mode: t
  global-semantic-idle-summary-mode: t
  global-semanticdb-minor-mode: t
  semantic-mode: t
  savehist-mode: t
  ido-everywhere: t
  display-time-mode: t
  auto-insert-mode: t
  jabber-activity-mode: t
  jabber-mode-line-mode: t
  erc-list-mode: t
  erc-menu-mode: t
  erc-autojoin-mode: t
  erc-ring-mode: t
  erc-networks-mode: t
  erc-pcomplete-mode: t
  erc-track-mode: t
  erc-match-mode: t
  erc-button-mode: t
  erc-fill-mode: t
  erc-stamp-mode: t
  erc-netsplit-mode: t
  erc-irccontrols-mode: t
  erc-noncommands-mode: t
  erc-move-to-prompt-mode: t
  erc-readonly-mode: t
  dynamic-completion-mode: t
  dired-omit-mode: t
  desktop-save-mode: t
  shell-dirtrack-mode: t
  global-voice-lock-mode: t
  voice-lock-mode: t
  tooltip-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
  auto-fill-function: do-auto-fill
  transient-mark-mode: t

Recent input:
C-x C-s C-h c C-j C-e M C-x C-s ESC [ [ D C-x @ h s 
c d RET c d SPC e m TAB l i TAB e m TAB RET s v n SPC 
c i SPC - m SPC " " ; SPC m a k e RET C-h V e l e c 
TAB i n d TAB RET C-h f e l e c t r i TAB i n d TAB 
m TAB RET ESC m ESC [ [ D C-h G e l e c t r i TAB SPC 
i TAB DEL TAB ESC DEL ESC DEL C-g C-h ESC f e l e c 
t r i TAB i n d TAB m TAB RET ESC < C-e m C-x h C-s 
d e f c u s ESC < C-h ESC v e l e c t r i TAB i n d 
TAB m TAB RET ESC m C-e m C-n C-n C-n C-n C-n C-n C-n 
ESC m C-p C-n C-n C-h c C-j C-h v e l e c t r i c SPC 
i n d TAB c h TAB RET ESC m C-n C-n C-n C-n ESC C-e 
ESC C-j e l e c t r i TAB i n d TAB c h TAB ESC DEL 
C-g C-e h C-h ESC v e l e c t r i TAB i n d TAB c h 
TAB RET ESC m C-e e ESC [ D ESC [ D ESC [ D ESC [ C 
ESC [ C C-x C-e C-e a C-n C-h ESC k C-j ESC m C-n C-n 
C-x m ESC [ [ D n ESC x r e p o r t SPC e m a TAB b 
TAB RET

Recent messages:
uncompressing electric.el.gz...done
Note: file is write protected
Marked buffer containing 393 lines
 control j  runs the command electric-indent-just-newline

Quit 
10 (#o12, #xa, ?\C-j)
Composing a message
Save `mail to _' as draft in folder `postponed'? (y or n)  n
`mail to _ on ""' is gone forever!

Load-path shadows:
/home/raman/.emacs.d/elpa/company-20131101.302/.dir-locals hides /home/raman/.emacs.d/elpa/js2-mode-20131119.116/.dir-locals
/home/raman/.emacs.d/elpa/company-20131101.302/.dir-locals hides /home/raman/.emacs.d/elpa/kill-ring-search-20110605.1744/.dir-locals
/home/raman/.emacs.d/elpa/google-this-20131031.1015/noflet hides /home/raman/.emacs.d/elpa/noflet-20130901.1722/noflet
/home/raman/emacs/lisp/site-lisp/gm/g-utils hides /home/raman/emacs/lisp/emacspeak/lisp/g-client/g-utils
/home/raman/emacs/lisp/site-lisp/vm/lisp/tapestry hides /home/raman/emacs/lisp/emacspeak/lisp/tapestry
/home/raman/.emacs.d/elpa/apt-utils-20130824.1200/apt-utils hides /home/raman/emacs/lisp/site-lisp/apt-utils
/home/raman/.emacs.d/elpa/fold-dwim-20120926.1236/fold-dwim hides /home/raman/emacs/lisp/site-lisp/fold-dwim
/home/raman/.emacs.d/elpa/xml-rpc-20130423.1656/xml-rpc hides /home/raman/emacs/lisp/site-lisp/xml-rpc
/home/raman/emacs/lisp/emacspeak/lisp/tetris hides /usr/local/share/emacs/24.3.50/lisp/play/tetris
/home/raman/.emacs.d/elpa/company-20131101.302/.dir-locals hides /usr/local/share/emacs/24.3.50/lisp/gnus/.dir-locals
/home/raman/.emacs.d/elpa/emms-20131016.1232/tq hides /usr/local/share/emacs/24.3.50/lisp/emacs-lisp/tq
/home/raman/.emacs.d/elpa/tabulated-list-20120406.2251/tabulated-list hides /usr/local/share/emacs/24.3.50/lisp/emacs-lisp/tabulated-list

Features:
(shadow emacsbug eieio-opt emacspeak-speedbar speedbar sb-image
dframe pulse semantic/analyze semantic/sort semantic/scope
semantic/analyze/fcn finder-inf org-rmail org-mhe org-irc
org-info org-gnus org-docview org-bibtex emacspeak-bibtex bibtex
org-bbdb org-w3m org-capture etags tramp-cache gm-nnir canlock
vm-save vm-mark jabber-rtt goto-addr emacspeak-tapestry gnus-dup
rect gnus-bcklg qp debug dabbrev emacspeak-bbc w3-style
jabber-bookmarks emacspeak-proced proced recentf tree-widget
gnus-cite gnus-async gnus-ml url-queue emacspeak-eww eww mm-url
shr misearch multi-isearch ffap nndraft nnmh gnus-agent gnus-srvr
gnus-score score-mode nnvirtual gnus-msg nnfolder utf-7
gnus-cache vc-rcs gnus-prepare emacspeak-supercite supercite regi
ediff-ptch ediff-merg emacspeak-ediff ediff-wind ediff-diff
ediff-mult ediff-help ediff-init ediff-util ediff epa-file
emacspeak-flyspell flyspell emacspeak-ispell ispell vm-digest
vm-reply pcmpl-unix vm-virtual emacspeak-hide vm-sort vm-delete
tapestry vm-rfaddons vm-menu vm-window vm-toolbar vm-mouse
vm-page vm-minibuf emacspeak-vm vm w3-imenu emacspeak-imenu imenu
w3-speak-table w3-structure w3-hot mm-archive url-file url-dired
w3-toolbar w3-speak w3-forms w3-emacs w3-props network-stream
url-http url-gw url-cache url-auth emacspeak-url-template
csv-mode amixer emacspeak-wizards emacspeak-eterm term ehelp
emacspeak-texinfo texinfo emacspeak-table-ui emacspeak-table
emacspeak-find-dired find-dired eldoc lisp-mnt t-mouse cal-china
lunar cal-bahai cal-islam cal-hebrew holidays hol-loaddefs gcal
g-app g-auth mule-util cal-move server emms-info-libtag
emms-bookmarks emms-lastfm-client emms-cue emms-mode-line-icon
emms-browser sort emms-playlist-sort emms-last-played
emms-player-xine emms-player-mpd tq emms-playing-time emms-lyrics
emms-url emms-streams emms-tag-editor emms-mark emms-mode-line
emms-cache emms-info-ogginfo emms-info-mp3info emms-info later-do
emms-playlist-mode emms-player-vlc emms-player-mplayer
emms-player-simple emms-source-playlist emms-source-file
emms-setup emacspeak-emms emms emms-compat emacspeak-reftex
reftex reftex-vars Save-visited-files-autoloads emacspeak-auctex
tex-site bm-autoloads charmap cljdoc-autoloads
clojure-project-mode-autoloads clojurescript-mode-autoloads
closure-lint-mode-autoloads closure-template-html-mode-autoloads
color-theme-autoloads control-lock-autoloads cppcheck-autoloads
crontab-mode-autoloads dired-isearch-autoloads dizzee-autoloads
doc-mode-autoloads dotassoc-autoloads durendal-autoloads
echo-pick-autoloads eimp-autoloads elisp-cache-autoloads
enwc-autoloads epoch-view-autoloads eshell-info-autoloads
find-file-in-project-autoloads find-file-in-repository-autoloads
fold-dwim-autoloads gnomenm-autoloads gopher-autoloads
heap-autoloads http-twiddle-autoloads iflipb-autoloads
inflections-autoloads ioccur-autoloads js-comint-autoloads
key-chord-autoloads kill-ring-search-autoloads letcheck-autoloads
logito-autoloads macro-math-autoloads magnet-autoloads
markchars-autoloads marmalade-autoloads furl-autoloads
maxframe-autoloads memory-usage-autoloads minimap-autoloads
mustache-mode-autoloads my-packages-autoloads nav-autoloads
oauth-autoloads otp-autoloads emacspeak-info info
project-autoloads project-mode-autoloads levenshtein-autoloads
protobuf-mode-autoloads pylint-autoloads pysmell-autoloads
python-mode-autoloads quarter-plane-autoloads queue-autoloads
register-list-autoloads scratch-autoloads session-autoloads
shadchen-autoloads shell-here-autoloads edmacro emacspeak-kmacro
kmacro slime-repl-autoloads slime-autoloads
ssh-config-mode-autoloads tabkey2-autoloads
tabula-rasa-mode-autoloads texdrive-autoloads
thumb-through-autoloads tidy-autoloads unbound-autoloads
watch-buffer-autoloads wget-autoloads workspaces-autoloads
wtf-autoloads xml-gen-autoloads package emacs-startup
semantic/idle semantic/format ezimage semantic/tag-ls
semantic/find semantic/ctxt semantic/db-mode semantic/db
eieio-base saveplace midnight emacspeak-cedet semantic/util-modes
semantic/util semantic semantic/tag semantic/lex semantic/fw
mode-local cedet savehist emacspeak-ido ido time autoinsert
emacspeak-gm gm tramp tramp-compat tramp-loaddefs trampver
emacspeak-twittering twittering-mode epa epg ssl emacspeak-jabber
jabber jabber-libnotify jabber-awesome jabber-osd jabber-wmii
jabber-xmessage jabber-festival jabber-sawfish jabber-ratpoison
jabber-tmux jabber-screen jabber-socks5 jabber-ft-server
jabber-si-server jabber-ft-client jabber-ft-common
jabber-si-client jabber-si-common jabber-feature-neg
jabber-truncate jabber-time jabber-autoaway jabber-vcard-avatars
jabber-chatstates jabber-events jabber-vcard jabber-avatar
jabber-activity jabber-watch jabber-modeline jabber-ahc-presence
jabber-ahc jabber-version jabber-ourversion
jabber-muc-nick-completion hippie-exp jabber-browse jabber-search
jabber-register jabber-roster jabber-private jabber-presence
jabber-muc jabber-muc-nick-coloring hexrgb jabber-widget
jabber-disco jabber-chat jabber-history jabber-chatbuffer
jabber-alert jabber-iq jabber-core jabber-console
emacspeak-sgml-mode sgml-mode ewoc jabber-keymap jabber-sasl sasl
sasl-anonymous sasl-login sasl-plain fsm jabber-logon jabber-conn
srv dns starttls gnutls jabber-xml jabber-menu jabber-util
jabber-autoloads erc-list erc-menu erc-join erc-ring erc-networks
erc-pcomplete erc-track erc-match erc-button erc-fill erc-stamp
erc-netsplit emacspeak-erc erc-goodies erc erc-backend erc-compat
pp emacspeak-org org org-macro org-footnote org-pcomplete
org-list org-faces org-entities emacspeak-outline foldout
noutline outline easy-mmode org-version ob-emacs-lisp ob
ob-tangle org-src ob-ref ob-lob ob-table ob-keys ob-exp ob-comint
ob-core ob-eval org-compat org-macs org-loaddefs
emacspeak-find-func find-func emacspeak-calendar appt diary-lib
diary-loaddefs solar cal-dst cal-menu calendar cal-loaddefs
emacspeak-tcl tcl emacspeak-folding folding emacspeak-w3m
w3m-form emacspeak-m-player w3m doc-view jka-compr image-mode
w3m-hist w3m-fb bookmark-w3m w3m-ems w3m-ccl ccl w3m-favicon
w3m-image w3m-proc w3m-util w3-prepare w3 w3-menu w3-emulate
w3-auto w3-parse w3-fast-parse emacspeak-w3 emacspeak-google
html2text gmaps emacspeak-we emacspeak-xslt w3-display w3-mouse
w3-imap url-handlers w3-widget w3-vars w3-keymap w3-cus css font
disp-table devices ange-ftp w3-cfg w3-compat emacspeak-sigbegone
sigbegone emacspeak-custom cus-edit cus-start smtpmail sendmail
gnus-demon nntp nnir nnimap parse-time tls utf7 netrc
emacspeak-gnus gnus-art mm-uu mml2015 epg-config mm-view
mml-smime smime dig gnus-sum nnoo gnus-group gnus-undo nnmail
mail-source gnus-start gnus-spec gnus-int gnus-range
emacspeak-message message format-spec mml mml-sec mm-decode
mm-bodies mm-encode gmm-utils mailheader gnus-win gnus gnus-ems
nnheader mail-utils emacspeak-mspools mspools bbdb-vm vm-mime
vm-folder vm-summary vm-motion vm-undo vm-misc bbdb-snarf
mail-extr rfc822 bbdb-hooks mail-parse rfc2231 rfc2047 rfc2045
ietf-drums bbdb-autoloads bbdb-com mailabbrev emacspeak-bbdb bbdb
timezone vm-pine vm-macro vm-message vm-autoloads vm-vars
vm-version my-functions completion dired-aux dired-x
emacspeak-dired emacspeak-desktop desktop frameset dired
emacspeak-aumix emacspeak-forms forms-mode forms emacspeak-setup
emacspeak-dbus nm dbus xml emacspeak-webspace emacspeak-webutils
browse-url url url-proxy url-privacy url-expand url-methods
url-history url-cookie url-domsuf url-util url-parse auth-source
eieio eieio-core gnus-util mm-util mail-prsvr password-cache
url-vars mailcap gweb gfeeds g-utils json emacspeak-alsaplayer
emacspeak-amark derived emacspeak-advice shell pcomplete comint
ring emacspeak-ansi-color ansi-color emacspeak-replace
emacspeak-redefine emacspeak-personality emacspeak
emacspeak-widget warnings wid-edit emacspeak-facemenu
emacspeak-fix-interactive emacspeak-buff-menu g-cus-load cus-load
emacspeak-preamble emacspeak-keymap emacspeak-speak time-date
emacspeak-pronounce thingatpt dtk-speak flite-voices dtk-interp
voice-setup emacspeak-sounds dectalk-voices espeak-voices
mac-voices multispeech-voices outloud-voices dtk-unicode byte-opt
bytecomp byte-compile cconv descr-text help-mode easymenu
dtk-css-speech acss-structure emacspeak-load-path advice help-fns
vc-git vc-dispatcher vc-svn cl-macs gv cl cl-loaddefs cl-lib
tooltip electric uniquify ediff-hook vc-hooks lisp-float-type
mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list newcomment lisp-mode prog-mode register page
menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core frame cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese hebrew greek romanian slovak czech european ethiopic
indian cyrillic chinese case-table epa-hook jka-cmpr-hook help
simple abbrev minibuffer 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
make-network-process dbusbind inotify dynamic-setting
system-font-setting font-render-setting move-toolbar gtk
x-toolkit x multi-tty emacs)