l i n u x - u s e r s - g r o u p - o f - d a v i s
Next Meeting:
July 7: Social gathering
Next Installfest:
Latest News:
Jun. 14: June LUGOD meeting cancelled
Page last updated:
2003 Jul 15 19:31

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
Re: [vox-tech] emacs delete key-binding
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vox-tech] emacs delete key-binding

Micah J. Cowan wrote:
On Mon, Jul 14, 2003 at 12:34:46PM -0700, Jonathan Stickel wrote:

The default setup of emacs for Red Hat causes the "backspace" key to delete backward 1 character, the "delete" key to delete forward 1 character, and "C-w" to kill a high-lighted region.

I would like to have the "delete" key assigned to kill a highlighted region in addition to deleting 1 character forward. This is common behavior of most gui text editors and word processors.
Is there a correct way to do this? I am new to elisp (obviously).

(global-set-key [delete] (lambda () (interactive) (if mark-active
(kill-region (point) (mark)) (delete-char))))

might work: but I don't think that the region is always hilited:  this
might call kill-region sometimes when you don't want it to. I
frequently use emacs in console-mode, where I don't see any hiliting
during a marked region, so I wouldn't prefer such a binding.

Thanks for your suggestion, although it didn't quite work. It killed the region fine, but I got this error with no region selected:

wrong number of arguments: #<subr delete-char>, 0

After a little research I tried:

(global-set-key [delete] (lambda () (interactive) (if mark-active (kill-region (point) (mark)) (delete-char (point-min)))))

This seems to do exactly what I want.:-) BTW, I also have my .emacs:

;; Visual feedback on selections
(setq-default transient-mark-mode t)

I think this prevents the mark from being set unless there is a selection visually high-lighted.


vox-tech mailing list

LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
EDGE Tech Corp.
For donating some give-aways for our meetings.