Subject: bug#12692: 24.1; thing-at-point in temp buffer

From: Jerome Truong <[email-masked]>
Date: Sat, 20 Oct 2012 13:24:29 -0500

Why does the following return the whole string "this.is.an.example":

(thing-at-point 'symbol)this.is.an.example
                        ^
                        |
                eval at point here

but using a temp buffer only returns "this":

(let ((type 'symbol)
      (string "this.is.an.example"))
  (with-temp-buffer
    (insert string)
    (goto-char 1)
    (let ((thing (thing-at-point type)))
      (message "%s" thing))))

I.e., the first word delimited by '.' as a delimiter (which i guess is the norm
for symbols).

In GNU Emacs 24.1.1 (x86_64-apple-darwin11.3.0, NS apple-appkit-1138.32)
 of 2012-07-15 on Jeromes-MacBook-Pro.local
Windowing system distributor `Apple', version 10.3.1138
Configured using:
 `configure '--prefix=/usr/local/Cellar/emacs/24.1' '--without-dbus'
 '--enable-locallisppath=/usr/local/share/emacs/site-lisp'
 '--infodir=/usr/local/Cellar/emacs/24.1/share/info/emacs' '--with-ns'
 '--disable-ns-self-contained' 'CC=/usr/bin/clang' 'CFLAGS=-Os -w -pipe
 -march=native -Qunused-arguments -mmacosx-version-min=10.7'
 'LDFLAGS=-L/usr/local/lib' 'CPPFLAGS=-isystem /usr/local/include''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default enable-multibyte-characters: t

Major mode: Emacs-Lisp

Minor modes in effect:
  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-track-minor-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
  shell-dirtrack-mode: t
  paredit-mode: t
  yas/global-mode: t
  yas/minor-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
C-S-n C-S-n C-n C-n C-n C-x o C-p M-b M-d a m e - <backspace> 
<backspace> <backspace> <backspace> s a m e - s y n 
t a x C-n C-n C-n C-n C-n C-n C-e C-x C-e C-p C-p C-p 
C-p C-p C-p M-b M-b C-, b C-S-n C-S-n C-S-n C-S-n C-S-n 
C-S-n C-S-n C-n C-n C-x o M-d M-d r e a d - f r o m 
- w h o l e - s t r i n g C-n C-n C-n C-n C-n C-n C-x 
C-e C-p C-p C-p C-p C-p C-, b C-S-n C-S-n C-S-n C-S-n 
C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p 
C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p 
C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p 
C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p 
C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p 
C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p 
C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p 
C-S-p C-S-p C-S-p C-p C-p C-p C-p C-p C-p C-S-p C-S-p 
C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p 
C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p C-S-p 
C-S-p C-S-p C-S-p C-x o M-b M-b M-b M-d M-d M-d C-d 
C-n C-n C-n C-n C-n C-e C-x C-e C-p C-p C-p C-p C-p 
C-p M-b M-b M-b M-d M-d M-d M-d s y m b o l C-n C-n 
C-n C-n C-n C-n C-e C-x C-e C-p C-p C-p C-p C-p M-b 
M-b M-d M-d M-d t h i s . i s . a n . e x a m p l e 
C-n C-n C-n C-n C-n C-x C-e C-, b C-x o C-, n C-x b 
# <return> C-, p C-, b M-x r e p <tab> o r <tab> <
return>

Recent messages:
"third"
nil
"nil"
nil
"nil"
ext
"ext"
this
"this"
Making completion list...

Load-path shadows:
/Users/jerometruong/.emacs.d/elpa/json-1.2/json hides /usr/local/Cellar/emacs/24.1/share/emacs/24.1/lisp/json
/Users/jerometruong/.emacs.d/elpa/magit-20120805/.dir-locals hides /usr/local/Cellar/emacs/24.1/share/emacs/24.1/lisp/gnus/.dir-locals

Features:
(tutorial cus-edit cus-start cus-load rfc2104 mailalias smtpmail shadow
sort mail-extr emacsbug message rfc822 mml mml-sec mm-decode mm-bodies
mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail
rfc2047 rfc2045 ietf-drums mail-utils vc-git jka-compr debug apropos
network-stream starttls tls erc-menu erc-join erc-ring erc-networks
erc-pcomplete erc-track erc-match erc-button wid-edit erc-fill erc-stamp
erc-netsplit erc-goodies erc erc-backend erc-compat mule-util rect
ind-util php-mode etags cc-langs speedbar sb-image ezimage dframe
help-mode view sgml-mode dired-aux windmove vc-dispatcher vc-svn js json
imenu newcomment cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles
cc-align cc-engine cc-vars cc-defs tramp-sh pcmpl-unix sql ibuf-ext
ibuffer dired multi-isearch tramp-cache tramp tramp-compat auth-source
gnus-util mm-util mail-prsvr password-cache shell tramp-loaddefs org-wl
org-w3m org-vm org-rmail org-mhe org-mew org-irc org-jsinfo org-infojs
org-html org-exp ob-exp org-exp-blocks find-func org-agenda org-info
org-gnus org-docview org-bibtex bibtex org-bbdb org ob-emacs-lisp
ob-tangle ob-ref ob-lob ob-table org-footnote org-src ob-comint ob-keys
ob ob-eval org-pcomplete pcomplete org-list org-faces org-compat
org-entities org-macs noutline outline format-spec cal-menu calendar
cal-loaddefs paredit ido warnings slime-fancy slime-fontifying-fu
slime-package-fu slime-references slime-scratch slime-presentations
slime-fuzzy slime-fancy-inspector slime-c-p-c slime-editing-commands
slime-autodoc slime-parse slime-repl slime derived easy-mmode pp comint
regexp-opt ansi-color ring hyperspec thingatpt browse-url org-install
bbdb-loaddefs sms ack-and-a-half-autoloads apache-mode-autoloads
bbdb2erc-autoloads dsvn-autoloads full-ack-autoloads ghc-autoloads
ghci-completion-autoloads github-theme-autoloads haskell-mode-autoloads
jabber-autoloads magit-gh-pulls-autoloads gh-autoloads eieio byte-opt
bytecomp byte-compile cconv macroexp logito-autoloads magithub-autoloads
json-autoloads markdown-mode-autoloads org-magit-autoloads
magit-autoloads pcache-autoloads finder-inf php+-mode-autoloads
php-extras-autoloads info php-mode-autoloads python-mode-autoloads
ruby-tools-autoloads rvm-autoloads yasnippet-bundle-autoloads
yasnippet-bundle dropdown-list advice help-fns advice-preload yasnippet
edmacro kmacro easymenu assoc cl package tabulated-list time-date
tooltip ediff-hook vc-hooks lisp-float-type mwheel ns-win tool-bar dnd
fontset image fringe lisp-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 loaddefs button faces cus-face files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote make-network-process ns
multi-tty emacs)