Subject: save-excursion not saving point
From: Jyothis V <[email-masked]>
To: [email-masked]
Date: Sat, 8 Dec 2012 11:50:13 +0530
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

I wrote the following version of transpose-chars which is supposed to
always transform the last two chars without moving the point.
(defun gosmacs-tranpose-chars (n)
  (interactive "p")
  (save-excursion
    (forward-char (- n))
    (transpose-chars 1)))

The trouble is, even though I have used save-excursion, the point does
move 2 characters backwards when n=1! For other values of n, this seems to
be working fine.

Regards,
Jyothis V

In GNU Emacs 24.2.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.6.2)
 of 2012-11-18 on eric
Windowing system distributor `The X.Org Foundation', version 11.0.11300000
Configured using:
 `configure '--prefix=/usr' '--sysconfdir=/etc' '--libexecdir=/usr/lib'
 '--localstatedir=/var' '--with-x-toolkit=gtk3' '--with-xft'
 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector
 --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2'
 'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro''

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: en_US.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Lisp Interaction

Minor modes in effect:
  diff-auto-refine-mode: t
  global-auto-complete-mode: t
  auto-complete-mode: t
  icomplete-mode: t
  ido-everywhere: t
  shell-dirtrack-mode: t
  which-function-mode: t
  cua-mode: t
  display-time-mode: t
  electric-pair-mode: t
  show-paren-mode: t
  tooltip-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
  line-number-mode: t
  transient-mark-mode: t