From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id +C3FKJ+Gu19qfQAA0tVLHw (envelope-from ) for ; Mon, 23 Nov 2020 09:53:35 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id +JuhJJ+Gu19DdwAAbx9fmQ (envelope-from ) for ; Mon, 23 Nov 2020 09:53:35 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id CB6539404E7 for ; Mon, 23 Nov 2020 09:53:34 +0000 (UTC) Received: from localhost ([::1]:51388 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kh8XN-000538-RL for larch@yhetil.org; Mon, 23 Nov 2020 04:53:33 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:59354) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kh8Ww-00051x-2E for emacs-orgmode@gnu.org; Mon, 23 Nov 2020 04:53:06 -0500 Received: from mail-ej1-x62c.google.com ([2a00:1450:4864:20::62c]:43141) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kh8Ws-0003XR-C1 for emacs-orgmode@gnu.org; Mon, 23 Nov 2020 04:53:05 -0500 Received: by mail-ej1-x62c.google.com with SMTP id k27so22340255ejs.10 for ; Mon, 23 Nov 2020 01:53:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zzamboni-org.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=aTYyWNAaLKhaFHGXhalbCrh7F1W5Fdj41OkpxyjpbPc=; b=Viw5+il7abJoFr88xgGa9n3z6iJC5A5/7E/LEl1RfYZeBMHr/DeHjYgHGZSUHfZ+ua uC1S3cHSD65Etgs+FGt0UQtCp/whY0gBCdmDL8upw3lg9R9ju+8FdVSlvgqq5biJjLnx E42ducnKvEUaAy0Nu+QXL7LU057HPuPCIxgs0F56AZyzLVkxcksINn63GsRXzJhqjxN5 eOEjLvxJ/7O4ocOHus+0WtpTG5IDv2ejKD27JPd1at/4NV8E0asYJu7z5MEcEy9oxGB5 /T0Zb03hbOeDCUVMNvOrHn2EPlfWO82eRYDFU2P4x01TnZCHZREmR3nlFzVUvZoFdE+N 0Mbw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=aTYyWNAaLKhaFHGXhalbCrh7F1W5Fdj41OkpxyjpbPc=; b=mOetA/95UCf/AfWywVLOTOLVqsploYHuczptYqOyf/2rMpJweG+Av1jOebcd4uSzrx Afw2/wPAWahQJrQbAsFLwVXxrMPKzvwagouBfk0pr7C4G/rLTIbzDlxZ6DYkvQ9SNULd RT0r2Li6sukRuN4KLdwhfLzmXbh3FzIosigzvM1n5J+/tnw3tYqJ6eKOpLIPq36EnZZB 0v8ZPcqpGQDozZ6YwoJbfBM6c2ofnljlm5PSoMvm4eXpZGYJoJz7TgvmwOHoha6ucQkH GhNfQ1VAlNDXdH2BqzA+IxvaXonUr+peFn6mnUPK6xgoyC/7ep+dilmnkiWBEV3eWqkw 4RlQ== X-Gm-Message-State: AOAM533r43OOTTvhKjw2thKcmZuzdBzkXF1lh0e7c9BbkkxrbaBljvDZ lUW3XYo1kxcG6N0Ooy8d+ZTVxVOOnRMX9pLFbTvrKupS7u+9oCRg X-Google-Smtp-Source: ABdhPJxXFXmDx8JCZtHgkYA4YPjum8qUfnbI7VMFrA4ruGrHaEf3LCNpofMM8dOiUwEg/mQSlIyX7TnEcUREEg1xvDY= X-Received: by 2002:a17:906:fcc4:: with SMTP id qx4mr12054554ejb.5.1606125180036; Mon, 23 Nov 2020 01:53:00 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Diego Zamboni Date: Mon, 23 Nov 2020 10:52:48 +0100 Message-ID: Subject: Re: Bring up a screen giving option to open a series of orgmode files To: Gerardo Moro Content-Type: multipart/related; boundary="000000000000d29a6a05b4c32843" Received-SPF: none client-ip=2a00:1450:4864:20::62c; envelope-from=diego@zzamboni.org; helo=mail-ej1-x62c.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_IMAGE_ONLY_32=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: emacs-orgmode Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Scanner: ns3122888.ip-94-23-21.eu Authentication-Results: aspmx1.migadu.com; dkim=fail (body hash did not verify) header.d=zzamboni-org.20150623.gappssmtp.com header.s=20150623 header.b=Viw5+il7; dmarc=none; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Spam-Score: -0.01 X-TUID: jx5l0rMko3FQ --000000000000d29a6a05b4c32843 Content-Type: multipart/alternative; boundary="000000000000d29a6705b4c32842" --000000000000d29a6705b4c32842 Content-Type: text/plain; charset="UTF-8" Hi Gerardo, Apart from what others have suggested, what you can do if you have a fixed list of files you want to quickly access, you could manually define keybindings for them. I have four main files where I capture things, so I define a submenu that allows me to access them quickly: (note: I got this idea originally from Sacha Chua's https://sachachua.com/blog/2015/02/learn-take-notes-efficiently-org-mode/) First, I define a helper function to define keybindings that open files. Note that this requires lexical binding to be enabled, so that the =lambda= creates a closure, otherwise the keybindings don't work. #+begin_src emacs-lisp (defun zz/add-file-keybinding (key file &optional desc) (let ((key key) (file file) (desc desc)) (map! :desc (or desc file) key (lambda () (interactive) (find-file file))))) #+end_src (note #2: the map! macro is Doom Emacs-specific, should be replaced with `bind-key` or equivalent if you are not using Doom) Now I define keybindings to access my commonly-used org files. #+begin_src emacs-lisp (zz/add-file-keybinding "C-c z w" "~/Work/work.org.gpg" "work.org") (zz/add-file-keybinding "C-c z i" "~/org/ideas.org" "ideas.org") (zz/add-file-keybinding "C-c z p" "~/org/projects.org" "projects.org") (zz/add-file-keybinding "C-c z d" "~/org/diary.org" "diary.org") #+end_src This results in a submenu bound to "C-c z" which looks like this, and which allows me to quickly open my files: [image: image.png] --Diego On Sun, Nov 22, 2020 at 11:01 AM Gerardo Moro wrote: > Basically that :) > I'm looking for some setup that allows me to open a menu with a list of > files and shortcut access keys to open them. > > Probably somebody has done this before. > > Thank you, > GM > --000000000000d29a6705b4c32842 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Gerardo,

Apart from what others have= suggested, what you can do if you have a fixed list of files you want to q= uickly access, you could manually define keybindings for them. I have four = main files where I capture things, so I define a submenu that allows me to = access them quickly:

(note: I got this idea origin= ally from Sacha Chua's=C2=A0https://sachachua.com/blog/2015/= 02/learn-take-notes-efficiently-org-mode/)

Fir= st, I define a helper function to define keybindings that open files. Note = that this requires lexical binding to be enabled, so that =C2=A0the =3Dlamb= da=3D creates a closure, otherwise the keybindings don't work.

#= +begin_src emacs-lisp
(defun zz/add-file-keybinding (key file &optio= nal desc)
=C2=A0 (let ((key key)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (file fi= le)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (desc desc))
=C2=A0 =C2=A0 (map! :des= c (or desc file)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 key
=C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 (lambda () (interactive) (find-file file)))))
#+en= d_src

(note #2: the map! macro is Doom Emacs-specific, should be rep= laced with `bind-key` or equivalent if you are not using Doom)
Now I define keybindings to access my commonly-used org files.

#+b= egin_src emacs-lisp
(zz/add-file-keybinding "C-c z w" "~/= Work/work.org.gpg" "work.org"= ;)
(zz/add-file-keybinding "C-c z i" "~/org/ideas.org" "idea= s.org")
(zz/add-file-keybinding "C-c z p" "~/org= /projects.org" "projects.org")
(zz/add-file-keybinding "= ;C-c z d" "~/org/diary.org"= "diary.org")
#+end_src

This results in a submenu bound to "C-c z"= ; which looks like this, and which allows me to quickly open my files:

3D"image.png"

--Diego


On Sun, Nov 22, 2020 at 11:01 AM Gerardo Moro <gerardomoro37@gmail.com> wrote:<= br>
Basically that :)
I'm looking for some setup that allows me to= open a menu with a list of files and shortcut access keys to open them.

Probably somebody has done this before.
Thank you,=C2=A0
GM
--000000000000d29a6705b4c32842-- --000000000000d29a6a05b4c32843 Content-Type: image/png; name="image.png" Content-Disposition: inline; filename="image.png" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: ii_khudbo5h0 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 --000000000000d29a6a05b4c32843--