From: Tatsu Takamaro <tatsu.takamaro@gmail.com>
To: Drew Adams <drew.adams@oracle.com>,
"help-gnu-emacs@gnu.org" <help-gnu-emacs@gnu.org>
Subject: Re: [External] : Q1 - the keys' bindings to work more widely
Date: Tue, 17 Dec 2024 02:11:45 +0300 [thread overview]
Message-ID: <43a99cfc-fb6a-6751-7eda-48bb322e6fb1@gmail.com> (raw)
In-Reply-To: <DS7PR10MB5232C0DC8D269777D27D92CFF33A2@DS7PR10MB5232.namprd10.prod.outlook.com>
>>See also the Emacs manual (`C-h r'), node `CUA Bindings'.
As I told: "Don't offer a CUA mode, I know about it, but it doesn't meet
my needs."
I've read conventions, but did not find any answer to my questions. The
only thing that may be close to it is about "Sequences consisting
ofC-cfollowed by...", but it is irrelevant because 1) My "C-c" is not
followed by anything, 2) I don't make any plugin for other users, I just
try to set Emacs _for myself_. All the World uses Ctrl + c for copy, so
the whole world would not sag under one program.
Anyway, my question here is why the key bindings in my minor mode don't
work. Is there some syntax mistake? Lets' for example change them to others:
(define-minor-mode ttkeys-mode "Normal key bindings"
:init-value 1 :lighter " TT" :global 1
:keymap
'(
("a" . #'kill-ring-save)
)
)
Well, this variant doesn't work either. I get the message: "Wrong type
argument: commandp, #'kill-ring-save"
вс, 15.12.2024 5:15, Drew Adams пишет:
>> I would like to have my keys (my bindings)
>> working more widely so that I could trust them more. But for now some of
>> them don't work. E. g. in a Help buffer C-c doesn't work as a copy
>> action (though it works globally as I set). And this is not surprising.
>> I understand that major modes have priority over the global one. What is
>> the best idea to make my keys more reliable? One way is to change all
>> the major and minor modes, but it's a big load of work and code. Another
>> way is to create my own minor mode key bindings and make it be turned on
>> by default, and I managed to find how it should be done ("init-value"
>> and "global" should be non-nil, in the "define-minor-mode" call). So I
>> hope I'm somewhere close to the solution. Here is my function call with
>> an example of C-c rebinding:
>>
>> (define-minor-mode ttkeys-mode "My key bindings"
>> :init-value 1 :lighter " TT" :global 1
>> :keymap
>> '(
>> ("C-c" . #'kill-ring-save)
>> ("C-a" . #'mark-whole-buffer)
>> )
>> )
>>
>> The TT mode is being shown normally, I can switch in on and off, but the
>> C-c and C-a don't work as I told them to. I tried to vary signs like #
>> and ', but no result. What am I doing wrong?
>>
>> And, maybe there is some other advice that you could give to make my
>> keys more reliable (make them work everywhere in Emacs)? Don't offer a
>> CUA mode, I know about it, but it doesn't meet my needs.
> See node `Key Binding Conventions' in the Elisp manual:
>
> https://www.gnu.org/software/emacs/manual/html_node/elisp/Key-Binding-Conventions.html
>
> That's `C-h i m elisp RET', then `g key binding conventions RET'.
>
> See also the Emacs manual (`C-h r'), node `CUA Bindings'.
>
next prev parent reply other threads:[~2024-12-16 23:11 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-14 23:46 Q1 - the keys' bindings to work more widely Tatsu Takamaro
2024-12-15 2:15 ` [External] : " Drew Adams
2024-12-16 23:11 ` Tatsu Takamaro [this message]
2024-12-16 23:55 ` Drew Adams via Users list for the GNU Emacs text editor
2024-12-17 0:05 ` Drew Adams
2024-12-17 0:16 ` Tatsu Takamaro
2024-12-17 2:17 ` Drew Adams
2024-12-17 5:41 ` Tatsu Takamaro
2024-12-17 6:28 ` Yuri Khan
2024-12-17 5:42 ` Tatsu Takamaro
2024-12-15 10:05 ` Alain.Cochard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=43a99cfc-fb6a-6751-7eda-48bb322e6fb1@gmail.com \
--to=tatsu.takamaro@gmail.com \
--cc=drew.adams@oracle.com \
--cc=help-gnu-emacs@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).