From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Reitter Newsgroups: gmane.emacs.devel Subject: Patch: Respect CUA enter behavior in org-mode and `enriched-mode'. Date: Wed, 24 Jul 2013 18:07:15 -0400 Message-ID: <24647C07-04EF-4701-9EB4-1E4D8020AF2D@gmail.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\)) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1374703638 4521 80.91.229.3 (24 Jul 2013 22:07:18 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 24 Jul 2013 22:07:18 +0000 (UTC) To: "emacs-devel@gnu.org developers" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jul 25 00:07:19 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1V27DL-0000Al-BX for ged-emacs-devel@m.gmane.org; Thu, 25 Jul 2013 00:07:19 +0200 Original-Received: from localhost ([::1]:36784 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V27DK-0000Yn-Pw for ged-emacs-devel@m.gmane.org; Wed, 24 Jul 2013 18:07:18 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:41833) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V27DI-0000YU-0A for emacs-devel@gnu.org; Wed, 24 Jul 2013 18:07:16 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V27DF-00041T-OZ for emacs-devel@gnu.org; Wed, 24 Jul 2013 18:07:15 -0400 Original-Received: from mail-qe0-x22b.google.com ([2607:f8b0:400d:c02::22b]:57244) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V27DF-000419-LS for emacs-devel@gnu.org; Wed, 24 Jul 2013 18:07:13 -0400 Original-Received: by mail-qe0-f43.google.com with SMTP id q19so5650185qeb.2 for ; Wed, 24 Jul 2013 15:07:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:content-type:content-transfer-encoding:subject:message-id:date :to:mime-version:x-mailer; bh=PhuRbTb8/l6NGGH4R0I3rQkaIU9P8bt0gPHKos8C77w=; b=UAU/3xw+zxDZL62qtrfkeeVGmg0Y/ZTpL1dF40G+tIyYFhf2enQng/qTKGETZ7U+XU UWpsMKNen52+/uI4auMIr8UNbjOWMFpGPzJM5k/l9KmOf5QtS4OGObL//cm6Qb/RDuAJ hLWuZjH+oV5lGouxedu4bMCBDEZeTOgtf/0ltX/VwoCIP7D2CqBdkrGVhqar9L1XhkqN UbdN+xBS3wn7kpnj7ad8O94ZOi9Lx/TPgDVAkwtPA5X35CTM+0H7pbwOwmn+DW4o4Dqb boNdP0Mbv4z5cNB7UF9D99FqwPyvEsKx2zoFwv7ggLL2s/qrX+u7u5ZfvAQyoEHKaDoZ 7M3w== X-Received: by 10.224.98.135 with SMTP id q7mr17550206qan.49.1374703632822; Wed, 24 Jul 2013 15:07:12 -0700 (PDT) Original-Received: from client-75-102-97-254.mobility-up.psu.edu (client-75-102-97-254.mobility-up.psu.edu. [75.102.97.254]) by mx.google.com with ESMTPSA id pg6sm51547344qeb.5.2013.07.24.15.07.12 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 24 Jul 2013 15:07:12 -0700 (PDT) X-Mailer: Apple Mail (2.1508) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:400d:c02::22b X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:162119 Archived-At: In `enriched-mode' and `org-mode', the `enter' key behaves = inconsistently when there is an active region and CUA is on. In CUA mode and default configuration, I expect buffer-changing inputs = to replace the region. Enter typically does that, except in some modes. = =20 The patch below addresses that. I see no good, cost-effective way to = deal with this in a more general way. The `cua-replace-region' calls the original command, so it should = preserve mode-specific functionality. commit eed580949ab7b33d2c9cba288629c4605fde9c13 Author: David Reitter Date: Wed Jul 24 17:58:05 2013 -0400 cua--region-keymap: remap additional enter key function as to = respect `overwrite-mode' remap `org-return' (used by `org-mode) and `reindent-then-newline-and-indent' (used by `enriched-mode') to = facilitate replacing the region in `cua-mode' (see also `override-mode'). diff --git a/lisp/emulation/cua-base.el b/lisp/emulation/cua-base.el index 6de278f..2500274 100644 --- a/lisp/emulation/cua-base.el +++ b/lisp/emulation/cua-base.el @@ -1463,6 +1463,8 @@ If ARG is the atom `-', scroll upward by nearly = full screen." (define-key cua--region-keymap [remap insert-register] = 'cua-replace-region) (define-key cua--region-keymap [remap newline-and-indent] = 'cua-replace-region) (define-key cua--region-keymap [remap newline] = 'cua-replace-region) + (define-key cua--region-keymap [remap = reindent-then-newline-and-indent] 'cua-replace-region) + (define-key cua--region-keymap [remap org-return] = 'cua-replace-region) (define-key cua--region-keymap [remap open-line] = 'cua-replace-region) ;; delete current region (define-key cua--region-keymap [remap delete-backward-char] = 'cua-delete-region)