From: Emanuel Berg via Users list for the GNU Emacs text editor <help-gnu-emacs@gnu.org>
To: help-gnu-emacs@gnu.org
Subject: Re: Bind two commands to one key to toggle between them for the same local keymap.
Date: Fri, 22 Oct 2021 11:32:45 +0200 [thread overview]
Message-ID: <87a6j1pfpe.fsf@zoho.eu> (raw)
In-Reply-To: CAGP6PO+TuGuTENOWkoiNinbmfH4YSu7A+k=FUtdnEoGjH-xWWA@mail.gmail.com
Hongyi Zhao wrote:
>>>>>> ("<tab>" . (lamda () (if (company-search-mode)
>>>>>> #'company-search-abort
>>>>>> #'company-search-candidates)))
>>>>>>
>>>>>> What's the problem?
>>>>>
>>>>> Several :)
>>>>
>>> > I'm at the end of my rope
>>>
>>> Without knowing the situation ...
>>>
>>> (require 'company)
>>>
>>> (defun company-search-hz ()
>>> (interactive)
>>> (if (eq major-mode 'company-search-mode)
>>> (company-search-abort)
>>> (company-search-candidates) ))
>>>
>>> (define-key company-mode-map "\t" #'company-search-hz)
>>
>> Thank you for your idea. `company-search-mode' is a minor mode, and
>> according to the notes here [1], I changed your function to the
>> following:
>>
>> (defun hz-company-search ()
>> (interactive)
>> (if (bound-and-true-p company-search-mode)
>> (company-search-abort)
>> (company-search-candidates)))
>>
>> (define-key company-mode-map "\t" #'hz-company-search)
>>
>> Based on my testing, it doesn't work as expected.
>
> I mean, it works differently from the behavior given by the
> following use-packatge configuration:
>
> (use-package company
> :bind
> (:map company-active-map
> ("<tab>" . company-search-candidates)
> ("<f1>" . company-search-abort)
>
> :map company-search-map
> ("<tab>" . company-search-candidates)
> ("<f1>" . company-search-abort))
>
> With the above configuration, "<tab>" and "<f1>" will call
> the corresponding interactive Lisp closure correctly, but
> I have to use two different keys.
company-active-map ... that's yet another one!
Use 'C-h k' to see what happens ...
--
underground experts united
https://dataswamp.org/~incal
next prev parent reply other threads:[~2021-10-22 9:32 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-22 5:42 Bind two commands to one key to toggle between them for the same local keymap Hongyi Zhao
2021-10-22 6:17 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-22 7:34 ` Hongyi Zhao
2021-10-22 7:39 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-22 7:57 ` Hongyi Zhao
2021-10-22 8:33 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-22 9:15 ` Hongyi Zhao
2021-10-22 9:25 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-22 9:46 ` Hongyi Zhao
2021-10-22 9:52 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-22 10:02 ` Hongyi Zhao
2021-10-22 11:04 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-22 11:22 ` Hongyi Zhao
2021-10-22 11:30 ` Hongyi Zhao
2021-10-23 18:01 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-24 0:32 ` Hongyi Zhao
2021-10-24 1:17 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-24 2:32 ` Hongyi Zhao
2021-10-24 5:39 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-24 9:03 ` Michael Heerdegen
2021-10-25 14:52 ` Hongyi Zhao
2021-10-25 15:10 ` Michael Heerdegen
2021-10-25 17:51 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-26 1:44 ` Hongyi Zhao
2021-10-25 17:54 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-26 1:49 ` Hongyi Zhao
2021-10-22 9:55 ` Hongyi Zhao
2021-10-22 9:26 ` Hongyi Zhao
2021-10-22 9:32 ` Emanuel Berg via Users list for the GNU Emacs text editor [this message]
2021-10-22 9:40 ` Hongyi Zhao
2021-10-22 9:48 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-22 10:04 ` Hongyi Zhao
2021-10-22 17:37 ` [External] : " Drew Adams
2021-10-23 1:45 ` Hongyi Zhao
2021-10-23 8:18 ` Michael Heerdegen
2021-10-23 8:48 ` Hongyi Zhao
2021-10-23 9:20 ` Michael Heerdegen
2021-10-23 11:58 ` Hongyi Zhao
2021-10-23 12:07 ` Michael Heerdegen
2021-10-23 12:24 ` Hongyi Zhao
2021-10-23 12:50 ` Michael Heerdegen
2021-10-23 13:17 ` Hongyi Zhao
2021-10-23 21:56 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-10-23 8:57 ` Kevin Vigouroux via Users list for the GNU Emacs text editor
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=87a6j1pfpe.fsf@zoho.eu \
--to=help-gnu-emacs@gnu.org \
--cc=moasenwood@zoho.eu \
/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).