Subject: 24.0.50; viper mode regression from June 27

From: Jim Meyering <[email-masked]>
Date: Fri, 02 Jul 2010 11:23:14 +0200

Hello,

Starting with this commit[*],
http://repo.or.cz/w/emacs.git/commitdiff/43d0feabe7ed65a509022
when I use viper mode and use the "C" command, emacs now
leaves the cursor positioned one character too far to the left.
I think it's that commit because I ran git bisect using
the test described below.

E.g., if the 1-character-wide rectangular cursor is on the "x" of the
line below, I'm in viper's "command mode" and I type "C", normally it
would remove the "x" and everything to the right and leave me in insert
mode with a vertical-bar-cursor right after the ".".  Now, however,
it leaves me with the cursor *before* the ".".

1.xthings_to_remove

[*] Here's the log from the offending commit:
commit 43d0feabe7ed65a50902278088a4dd73421ead1c
Author: Chong Yidong <[email-masked]>
Date:   Sun Jun 27 21:01:11 2010 -0400

    * bindings.el (global-map): Bind delete and DEL, the former to
    delete-forward-char.

    * mouse.el (mouse-region-delete-keys): Deleted.
    (mouse-show-mark): Simplify.

    * simple.el (delete-active-region): New option.
    (delete-backward-char): Implement in Lisp.
    (delete-forward-char): New command.

    * src/cmds.c (Fdelete_backward_char): Move into Lisp.

In GNU Emacs 24.0.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.20.1)
 of 2010-07-02 on vm.meyering.net
Windowing system distributor `Fedora Project', version 11.0.10800000
configured using `configure  '--disable-nls' '--prefix=/p/p/emacs-2010-07-02.08h23''

Important settings:
  value of $LC_ALL: C
  value of $LC_COLLATE: C
  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: @im=none
  locale-coding-system: nil
  default enable-multibyte-characters: t

Major mode: Text

Minor modes in effect:
  shell-dirtrack-mode: t
  flyspell-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

Recent input:
<escape> x r e p o r t - b u g <tab> <return>

Recent messages:
Starting new Ispell process [default] ...
Loading vc-hooks...done
Loading desktop...done
No desktop file.
Loading ~/emacs/startup...done [3 times]
Ispell process killed
Starting new Ispell process [default] ...
(New file)
Ispell process killed
Starting new Ispell process [default] ...

Load-path shadows:
/home/j/emacs/startup hides /p/p/emacs-2010-07-02.08h23/share/emacs/24.0.50/lisp/startup
/home/j/emacs/ruby-mode hides /p/p/emacs-2010-07-02.08h23/share/emacs/24.0.50/lisp/progmodes/ruby-mode
/home/j/emacs/nnir hides /p/p/emacs-2010-07-02.08h23/share/emacs/24.0.50/lisp/gnus/nnir

Features:
(shadow sort mail-extr message sendmail rfc822 mml easymenu mml-sec
mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045
ietf-drums mailabbrev mail-utils gmm-utils mailheader warnings emacsbug
package tramp-imap assoc tramp-gw tramp-gvfs zeroconf url-util url-parse
url-vars mm-util mail-prsvr dbus xml tramp-fish tramp-smb tramp-cache
tramp-ftp tramp-cmds tramp auth-source gnus-util shell password-cache
format-spec tramp-compat trampver uniquify idutils thingatpt compile
comint viper regexp-opt flyspell ispell viper-ex viper-macs viper-mous
viper-cmd viper-keym ring viper-util viper-init advice help-fns
advice-preload ido which-func imenu desktop cus-start cus-load tooltip
ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd
fontset image fringe lisp-mode register page menu-bar rfn-eshadow timer
select scroll-bar mldrag 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 loaddefs button minibuffer faces
cus-face files text-properties overlay md5 base64 format env code-pages
mule custom widget hashtable-print-readable backquote
make-network-process dbusbind dynamic-setting font-render-setting gtk
x-toolkit x multi-tty emacs)