emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SUMMARY] #11 [[bbb:OrgMeetup]] on Wed, Sep 11, 19:00 UTC+3


From: Ihor Radchenko
Subject: [SUMMARY] #11 [[bbb:OrgMeetup]] on Wed, Sep 11, 19:00 UTC+3
Date: Sun, 06 Oct 2024 10:28:37 +0000

This writeup took quite a while, but I managed to finish within one
month, before the next meetup :)

(My RAM failed and corrupted HD multiple times, including the notes.org;
very annoying)

Anyway, back to the last meetup notes.

- The latest Sacha's News: 
https://sachachua.com/blog/2024/09/2024-09-09-emacs-news/

- Kathink asked about diary-style timestamp in Org (to define arbitrary 
repeating rules)
  Example: =<%%(diary-float t 0 1)>=
  - See https://orgmode.org/manual/Timestamps.html (Diary-style expression 
entries)
    - In the nutshell, diary-style timestamps are making use of Emacs'
      built-in =diary-lib= library to define programmed repeater intervals
    - See 
https://www.gnu.org/software/emacs/manual/html_node/emacs/Special-Diary-Entries.html
    - In addition, Org mode provides extra pre-defined common repeater rules:
      ~org-calendar-holiday~, ~org-anniversary~, ~org-cyclic~,
      ~org-block~, ~org-date~, and ~org-class~
      - ~org-anniversary~, ~org-cyclic~, ~org-block~, and ~org-date~
        are simply replacements to ~diary-*~ versions that avoid
        common confusion with =diary-lib= where the order of arguments
        may be month/day/year, day/month/year, or year/month/day
        depending on ~calendar-date-style~ - the Emacs defaults are
        using American month/day/year notation, while Org mode forces
        ISO year/month/day
        - Wondering if it tells something about Org mode developers :)
      - ~org-calendar-holiday~ is to schedule something each holiday
      - ~org-class~ is handy to schedule something every week, except
        vacation weeks (that's why "class")
    - More generally, any Elisp expression can go into timestamp
      expression. It can use =date= variable to access today's date
      ("today" is selected date in agenda; may not be literally today)
      - See the source code of the functions I listed for examples of
        how to write such sexps.
      - An easy example of custom Elisp is simply combining several
        diary functions, like
        : <%%(and (not (org-calendar-holiday)) (diary-float t 2 1))>
        First Tuesday every month (~(diary-float ...)~), except calendar
        holidays.
    - We also recently (in Org 9.7) added an option to put time of the
      day or a time range into diary sexp style timestamps:
      : <%%(diary-float t 4 2) 22:00-23:00>
      : <%%(diary-float t 4 2) 10:30>
    - One missing feature for diary timestamps is that they are not
      properly recognized as repeaters (using diary sexp timestamps in
      repeated tasks does not automatically trigger TODO->DONE->TODO
      switch)
      - Would be nice to add such support
      - The main problem is that we need some way to tell Org mode
        that a given diary timestamp should start further in future
        upon re-activating repeating tasks.
        - With normal timestamps, we can do
          : * TODO Repeated task
          : SCHEDULED: <2024-09-03 Tue .+1d>
          then, after marking it done, it becomes
          : * TODO Repeated task
          : SCHEDULED: <2024-09-04 Wed .+1d>
        - For diary timestamps, it is a bit more tricky, and we may need 
something like
          : * TODO Repeated task
          : SCHEDULED: <%%(diary-float t 0 1)>
          ...
          : * TODO Repeated task
          : SCHEDULED: <%%(and <date after last repeat> (diary-float t 0 1))>

- There was a question about using table formulas in the output of dynamic 
blocks capturing column view
  https://orgmode.org/manual/Capturing-column-view.html
  - In theory, Org mode should automatically update the formulas upon 
refreshing the columns
    #+begin_src org
      ,* Foo
      ,,#+begin: columnview :id local :format "%ITEM"
      | ITEM |     |
      |------+-----|
      | Foo  | Foo |
      | Bar  | Bar |
      | Baz  | Baz |
      ,,#+TBLFM: $2=$1
      ,,#+end:

      ,** Bar
      ,** Baz
    #+end_src
  - However, there is a problem. If the formula tries to assign a
    value to a cell (but not column) that does not exist in the as captured
    table, the column view code will err
    #+begin_src org
      ,#+begin: columnview :id local :format "%ITEM"
      |ITEM|
      |-|
      |Foo|
      |Bar|
      |Baz|
      ,#+TBLFM: @>$2=@1$1
      ,#+end:
    #+end_src
  - This is a missing feature where Org's table formulas create extra
    columns, but never create individual cells. The workaround could
    be to add the extra column into the table via a "dummy" format specifier:
    #+begin_src org
      ,#+begin: columnview :id local :format "%ITEM %DUMMY"
      | ITEM | DUMMY |
      |------+-------|
      | Foo  |       |
      | Bar  |       |
      | Baz  | ITEM  |
      ,#+TBLFM: @>$2=@1$1
      ,#+end:
    #+end_src

- karthink went slightly off-topic and asked about the ongoing effort
  to rewrite Emacs's garbage collector, so it becomes non-blocking
  (less Emacs hangs): scratch/igc branch in Emacs git repo
  - https://mail.gnu.org/archive/html/emacs-devel/2024-04/msg00322.html
  - https://old.reddit.com/r/emacs/comments/1cblokb/a_new_gc_method_mps_is_wip/

  - Compiling that branch is not fully straightforward as it relies
    upon third-party library that implements incremental garbage
    collector: https://github.com/Ravenbrook/mps
  - Further, the MPS may not "just" compile without errors
    - When using the new GCC versions, there are extra warnings that
      are configured to stop compilation by default
    - In order to compile MPS with modern versions of GCC one can
      suppress treating warnings as errors:
      #+begin_src diff
        modified   code/gc.gmk
        @@ -18,7 +18,6 @@ CFLAGSCOMPILER := \
         -Waggregate-return \
         -Wall \
         -Wcast-qual \
        --Werror \
         -Wextra \
         -Winline \
         -Wmissing-prototypes \
      #+end_src
      - Just remove ~-Werror~ flag from =code/gc.gmk=
      - or use the patch (same as the above from 
https://yhetil.org/emacs-devel/87o74zevf9.fsf@protonmail.com/)
    - Then, =make && make install=
    - ... and compile Emacs pointing to the install MPS version (for me, it is 
=/opt/mps=)
      : ./configure --with-mps=debug --with-native-compilation CFLAGS='-g3 
-I/opt/mps/include -L/opt/mps/lib'
      : make bootstrap
    - Do note that the current state of sratch/igc is early testing
      - ... which means that the goal is to handle Emacs crashes
      - The performance is not yet representative
        - GC itself is no longer blocking, but some memory allocation
          operations can be slower for now

- kathink asked about updating org-contrib library
  - org-contrib is a set of contributed packages that we *do not* actively 
maintain
  - We are looking for volunteers to take individual packages out of
    org-contrib and maintain them
  - See https://orgmode.org/worg/org-orphanage.html and the README in
    https://git.sr.ht/~bzg/org-contrib/
  - A number of package have already found new maintainers
    - https://github.com/sp1ff/ob-coq
    - https://github.com/hurrja/ob-asymptote
    - https://repo.or.cz/ob-spice.git
    - https://repo.or.cz/org-contacts.git
    - ... and more listed in 
https://git.sr.ht/~bzg/org-contrib/commit/c6aef31ccfc7c4418c3b51e98f7c3bd8e255f5e6

- karhink asked me to show a demo of WIP Org feature (written by Bruno 
Barbier): org-pending
  - Context: 
https://list.orgmode.org/orgmode/65e9f49b.df0a0220.11103.1c10@mx.google.com/
  - Repository: 
https://framagit.org/brubar/org-mode-mirror/-/tree/bba-pending-contents?ref_type=heads
  - org-pending is a library that will (in future) be used to
    implement asynchronous editing and asynchronous babel evaluation
  - the main idea of the library is to "lock" some parts of the buffer
    while the contents is being calculated ("pending")
    - In other words, org-pending (1) marks regions read-only
      (2) highlights them for the user (3) removes the highlight and
      replaces the text once it is available (e.g. downloaded from
      internet, evaluated, etc.)
      - The highlights are interactive: you can click on them to see
        the status, logs, etc.
      - If the calculation fails (say, src block errs), the region is
        unlocked and marked visually to indicate that there is a
        problem; the logs will also be available
  - The library is not specific to Org mode. It is deliberately written
    without dependencies on Org internal libraries and can be used separately
  - Check out top commentary =lisp/org-pending.el= to see all the details
    - The top commentary also contains a code that can be used as a
      demo to "feel" how things work

- karthink further asked about how I keep track of Org mode bug
  reports, feature request, and other things
  - Org mode does not use debbugs (unlike Emacs)
  - Instead, we simply use mailing list
    - See https://orgmode.org/worg/org-contribute.html
  - In addition, we have a lightweight (although currently broken)
    tracker that scans the mailing list to generate a list of open issues
    https://sr.ht/~bzg/woof/
  - Why? https://sr.ht/~bzg/woof/#we-dont-want-no-issue-tracker
  - We do not have advanced features like automatic cross-referencing
    between issues/commits/etc that are available in GitHub
    - They could be possible with Woof! if we decide that such things are 
necessary
  - To link to issues from commits we simply link to
    orgmode.org/list/<message-id> as a reliable cross-reference
    or to savannah for linking a commit (also reliable)
  - For me personally, working with <message-id> is also easy because I am 
using notmuch and can access messages by id locally
  - I even have a setup to automatically open orgmode.org/list/<message-id> 
style URLs locally in notmuch. See 
https://github.com/yantar92/emacs-config/blob/master/config.org#browse-mailing-list-archive-urls-using-my-local-notmuch-archives
  - I also store actionable emails as TODO tasks in Org mode
    - Then, I have some helper functions to automatically generate
      URLs to these emails using org-ql search across my headings 
(=yant/helm-org-ql-insert-url=)
      
https://github.com/yantar92/emacs-config/blob/master/config.org#helm-org-ql

- Anttv_Laptop_without_sound asked to showcase org-capture with templates
  - The manual: https://orgmode.org/manual/Capture-templates.html
  - I showcased my setup, although it is fairly advanced; simpler approaches 
are possible
    - I use https://github.com/ag91/ya-org-capture to combine capture
      templates and yasnippet templates together
    - With yasnippet, I am able to tab across multiple fields after
      the normal capture template is populated by Org mode
    - See 
https://github.com/yantar92/emacs-config/blob/master/config.org#capture-templates
  - There are many resources about Org capture available on the internet
    Here are some bookmarks of mine:
    - Icons in the template selection dialogue 
https://tecosaur.github.io/emacs-config/config.html#capture
    - Alternative template syntax: https://github.com/progfolio/doct
    - Capturing health data: https://emacsconf.org/2022/talks/health/
    - Capturing from Jami: https://hoowl.se/org-jami-bot.html
    - Interactive capture from outside Emacs: 
https://macowners.club/posts/org-capture-from-everywhere-macos/
      - I use something similar for Linux; it is just a question of global WM 
binding
    - Jeremy Friesen's setup 
https://takeonrules.com/2022/09/06/org-mode-capture-templates-and-time-tracking/
    - Capturing from qutebrowser: https://github.com/yantar92/org-capture-ref
    - WORG tutorials: 
https://orgmode.org/worg/org-tutorials/index.html#org72e8a95

- Kepa asked whether org-edna (*very* advanced task dependencies
  https://www.nongnu.org/org-edna-el/) should be merged upstream
  - Probably not
    1. It does its job well as a package
    2. There is no clear need to integrate it tightly with built-in Org mode 
libraries

- Kepa asked about the calendar I use (like calfw)
  - I used calfw in the past, but it did not stick
  - Most of the time, I just use agenda (weekly/monthly)
    - The key point to use agenda as calendar is *not cluttering agenda*
    - Only the actually scheduled or very important task go to monthly view
      - For example, I generally exclude habits and "someday" reminders from 
those views
  - Sometimes, simply M-x calendar
  - Probably, my needs are not advanced enough :)

- Kepa asked about the time format I use for this meetup schedules:
  : Time & Date: <2024-09-11 Wed 19:00-21:00 @+03,Europe/Istanbul>
  - The format is not yet implemented, but planned in the future timezone 
support
  - But we more or less agreed on the markup for timestamps with time zone
    https://list.orgmode.org/87tu063ox2.fsf@localhost/
    
https://list.orgmode.org/orgmode/CAL9aZkusXaNVCu7+nO-ic8SHhwVdOiXYtDyF=Gz7h+NoLaOZXQ@mail.gmail.com/
  - I plan to work on this in the future, after my current year-long
    big task of refactoring Org mode library dependencies
  - But that might still take another year or two with my current
    situation with free time
    - So... as usual... patches welcome ;)

- I asked the meetup participants about the preferred place to move
  from emacs.ch Mastodon instance (which is going to be closed soon)
  https://emacs.ch/@emacs/113087752901949391
  - Suggestions
    - Fosstodon
    - mastodon.social
    - asdf
  - At the end, I went with Fosstodon
    - It is by invite only, but I got an invite from a fellow Org user already
    - Also, (after I moved), Fosstodon provided invitation for all the emacs.ch 
users
      - See https://emacs.ch/@emacs/113154442552982659

- Kepa asked whether I am using the new search string support in id:
  links to link to exact points in text
  - Relevant NEWS entries are in https://orgmode.org/Changes.html (search for 
"id:")
  - I usually just store links to headings, not specific places in text
  - Sometimes, I also store links to =#+name:='d entries; then the new
    functionality gets handy
  - Also, although I rarely use the feature, if you select region when
    creating a link, the region text will be automatically used as
    search string
    - This functionality is actually disabled by default
    - You need to customize
      ~org-link-search-must-match-exact-headline~ to allow linking to
      non-headings

- Kepa asked how I "consume" pdf files
  - I usually have a heading for each book/article/web page I am reading
  - Then, I use org-attach
    (https://orgmode.org/manual/Attachments.html) to attach the
    pdfs/local copies of web pages (via https://github.com/Y2Z/monolith or
    https://github.com/yt-dlp/yt-dlp/) to the heading
  - I read pdfs in Emacs using https://github.com/vedang/pdf-tools and
    watch videos using mpv
  - I take notes under the relevant heading, not inside the pdf itself
    - Sometimes, I actually do mark things inside pdf (pdf-tools
      provides annotation editing support), but only to mark factual errors
    - I usually do not link to specific pages, except for very large books
      - ... but I read articles most of the time where page links are not very 
useful
  - My typical workflow is using two Emacs frames - one with pdf and
    one with notes
  - I also have a capture template for very quick notes to currently
    clocked task (which is the pdf heading, when I am reading it)
    - 
https://github.com/yantar92/emacs-config/blob/master/config.org#a-quick-note-to-currently-clocked-task
  - ... and a template for a /related/ idea
    - such template links back to current context (book/article/web page)
      https://github.com/yantar92/emacs-config/blob/master/config.org#note

- Kepa asked about managing screenshots in Org mode. In particular,
  about where the screenshot files are stored
  - My typical workflow usually involves
    1. selecting screenshot area with https://flameshot.org/
    2. C-c (copy to clipboard)
    3. M-x yank-media to attach the screenshot to current heading (so,
       it is stored in ~org-attach-directory~)
  - Sometimes, I also save the screenshots to my ~/Downloads (mostly
    to share them with others). The name usually does not matter -
    flameshot gives some, but the context is usually given alongside
    the Org heading where I later attach the screenshot file
  - I regularly go through ~/Downloads (it is a daily "habit" style task in my 
agenda)
    and cleanup/save the files I don't want/want to keep.

- visuwesh asked about how I group files into categories in dired
  - I use dired-filter, which is a part of https://github.com/Fuco1/dired-hacks
  - https://github.com/yantar92/emacs-config/blob/master/config.org#group-files

- visuwesh asked about my personal meta-functions package
  - The package allows making a command act differently depending on
    the current major mode and/or current point location
  - For example, I have a command ~meta-down-element~ bound to =J= (in
    boon-command-mode)
    This command is defined contextually, calling appropriate
    major-mode-specific command depending on the context
    : (meta-down-element "Move down one element." forward-paragraph) ; default
    : (meta-defun meta-down-element :mode magit-status-mode 
magit-section-forward) ; magit-section
    : (meta-defun meta-down-element :mode dired-mode 
dired-filter-group-forward-drawer) ; dired
    : (meta-defun meta-down-element :mode Info-mode Info-forward-node)
    : (meta-defun meta-down-element :mode ledger-mode 
ledger-navigate-next-xact-or-directive)
    : (meta-defun meta-down-element :mode pdf-view-mode pdf-view-next-page)
    : (meta-defun meta-down-element :mode calendar-mode calendar-forward-year)
    : (meta-defun meta-down-element :mode notmuch-tree-mode 
notmuch-tree-next-message)
    : (meta-defun meta-down-element :mode notmuch-show-mode 
(notmuch-show-next-message))
    :       (meta-defun meta-down-element
    :        :mode org-mode
    :        :cond org-at-heading-p
    :        :cond (not (buffer-narrowed-p))
    :        (outline-get-next-sibling)) ; complex; when at Org heading in 
unnarrowed buffer, move to next sibling
    : ; simiar for when buffer is narrowed - move narrowing to next sibling
    : ; similar when at src block - move to next block and unfold it
  - Or another example is ~meta-down~ the is like C-n, but, for
    example, when at Org heading, skips the properties drawer and
    planning lines
  - visuwesh commented that "i guess it is the logical conclusion of org's 
M-<cursor> commands"


:comments:
[17:41] Welcome to <b>[[bbb:OrgMeetup]]</b>!<br /><br />For help on using 
BigBlueButton see these (short) <a href="https://www.bigbluebutton.org/html5"; 
target="_blank"><u>tutorial videos</u></a>.<br /><br />To join the audio bridge 
click the phone button.  Use a headset to avoid causing background noise for 
others.<br /><br />This server is running <a 
href="https://docs.bigbluebutton.org/"; target="_blank"><u>BigBlueButton</u></a>.
[17:52] Ihor Radchenko : The latest Emacs News: 
https://sachachua.com/blog/2024/09/2024-09-09-emacs-news/
[17:52] Ihor Radchenko : We are starting in about 5 minutes
[17:54] Juha Autero : I'll switch to laptop
[17:57] Juha Autero : Back again
[17:58] Ihor Radchenko : :)
[18:10] karthink : 1. Question about timestamps: Isn't =<%%(diary-float t 0 
1)>= supposed to create a recurring (monthly) timestamp?  I had to add a " 
.+1M" at the end to get it to repeat in the agenda.
[18:20] Ihor Radchenko : #+tblfm: @>>>$3=vsum(@<$2..@>$2)
[18:21] Ihor Radchenko : #+tblfm: @>$3=vsum(@<<<$2..@>$2)
[18:29] karthink : It's diary-float t 0 1
[18:29] karthink : That t is supposed to make it repeat on the first SUnday of 
every month
[18:30] karthink : Oh
[18:30] karthink : I must have done something wrong
[18:30] karthink : Thanks for checking
[18:32] karthink : This is a long shot, but has anyone managed to get the 
scratch/igc branch of Emacs to build on NixOS?
[18:33] visuwesh : AFAIk, you have to patch MPS to actually compile it
[18:33] Ihor Radchenko : 
https://old.reddit.com/r/emacs/comments/1cblokb/a_new_gc_method_mps_is_wip/
[18:34] Ihor Radchenko : https://github.com/Ravenbrook/mps
[18:34] karthink : Sorry for the off-topic question, didn't mean to start a 
discussion -- was just hoping someone here might have done it already.
[18:35] Ihor Radchenko : Unstaged changes (1)
modified   code/gc.gmk
@@ -18,7 +18,6 @@ CFLAGSCOMPILER := \
 -Waggregate-return \
 -Wall \
 -Wcast-qual \
--Werror \
 -Wextra \
 -Winline \
 -Wmissing-prototypes \
[18:36] Ihor Radchenko : ./configure --with-mps=debug --with-native-compilation 
CFLAGS='-g3 -I/opt/mps/include -L/opt/mps/lib'
[18:36] Ihor Radchenko : for emacs
[18:37] karthink : Can confirm =<%%(diary-float ...)>= works correctly, not 
sure what went wrong last time.
[18:38] visuwesh : ahh the same patch was also given by Pip: 
https://yhetil.org/emacs-devel/87o74zevf9.fsf@protonmail.com/
[18:39] karthink : Question: Are any of the org-contrib libraries getting 
frequent updates?
[18:39] karthink : Okay
[18:41] karthink : Ihor, if no one has any questions, could you give us a demo 
of org-pending in action? (the WIP feature)
[18:41] Ihor Radchenko : https://git.sr.ht/~bzg/org-contrib is barely maintained
[18:42] Ihor Radchenko : but many libraries have moved to their new homes
[18:42] Ihor Radchenko : https://github.com/sp1ff/ob-coq
[18:42] Ihor Radchenko : https://github.com/hurrja/ob-asymptote
[18:42] Ihor Radchenko : https://repo.or.cz/ob-spice.git
[18:42] Ihor Radchenko : 
https://git.sr.ht/~bzg/org-contrib/commit/c6aef31ccfc7c4418c3b51e98f7c3bd8e255f5e6
[18:42] Ihor Radchenko : https://repo.or.cz/org-contacts.git
[18:45] karthink : So org-pending is not specific to Org?
[18:45] karthink : Seems like a useful feature for Emacs in general
[18:47] karthink : That's excellent
[18:47] karthink : Thanks for the demo
[18:50] karthink : Question about tracking issues:  Since you use notmuch and 
not gnus, what is your system for tracking Emacs/Org bugs that someone mentions 
in emails?  Do you use debbugs from Emacs, in the browser, or something else?
[18:52] visuwesh : Maybe what you instead of gnus-read-empheral-emacs-bug-group?
[18:52] visuwesh : think bugs.gnu.org but in gnus
[18:52] karthink : Let me give an example.  In github's web-based workflow, 
there are automatically created links from PR to issues, other repositories 
etc.  I was wondering if you have a cross-referencing system like that in Emacs
[18:53] visuwesh : so i was off mark :)
[18:53] karthink : (the links on github are created automatically whenever 
someone mentions an issue, like #123)
[19:02] visuwesh : I see that bug-reference.el has 
bug-reference-setup-from-mail-alist but it expliitly mentions that gnus and 
rmail are the only supported MUAs currently...
[19:02] karthink : Yes, gnus appears to have many tools for doing these things
[19:02] Anttv_Laptop_without_sound : Hi/ Could You show how Org-capture works 
with templates?
[19:02] Anttv_Laptop_without_sound : yes
[19:06] Anttv_Laptop_without_sound : I experimenting with denote and dynamic 
org blocks to create documents
[19:07] karthink : Going back to the discussion about notmuch links -- I 
noticed you use a LINK property.  Could you explain how you use this property? 
(Instead of just adding the link in the body of the entry)
[19:07] Ihor Radchenko : 10.1.3 Capture templates in the manual
[19:08] Ihor Radchenko : 
https://takeonrules.com/2022/09/06/org-mode-capture-templates-and-time-tracking/
[19:08] Ihor Radchenko : https://github.com/progfolio/doct
[19:08] Ihor Radchenko : simplify writing capture templates
[19:08] Ihor Radchenko : https://github.com/ag91/ya-org-capture
[19:10] Ihor Radchenko : https://github.com/nobiot/org-transclusion/
[19:11] Anttv_Laptop_without_sound : org add links to new documents to tables 

it is like self-made document managemet :)
[19:11] Anttv_Laptop_without_sound : yes, like dashboard
[19:15] karthink : I see
[19:16] Kepa : Are you on windows os?
[19:17] Kepa : thanks!
Do you think org-edna  could do into org?
[19:18] Kepa : Yes , as org-depend is kind of abandoned... ok, I understand
[19:19] Kepa : What calendar do you use? Do you use month calendar?
[19:19] Kepa : like calf calendar?
[19:20] Kepa : So you get a "month vision" just from the agenda, interesting
[19:23] Kepa : The time format you shared in the mail list, was: Time & Date: 
<2024-09-11 Wed 19:00-21:00 @+03,Europe/Istanbul>
[19:23] Anttv_Laptop_without_sound : I'm using Emacs not so long, like the 
concept of TUI OS with Text Editor :) (joking)
[19:23] Kepa : Is it already implemented?
[19:23] Kepa : ;D
[19:23] Ihor Radchenko : 
https://orgmode.org/list/CAL9aZkusXaNVCu7+nO-ic8SHhwVdOiXYtDyF=Gz7h+NoLaOZXQ@mail.gmail.com
[19:23] karthink : Timezone support in Org time stamps would be great
[19:24] Kepa : Long discussion about it, Karthink, not sure if there was a 
common point at the end
[19:25] karthink : Question about url-handler-alist, or whatever it was you 
used to open mailing list links in notmuch instead of the browser: is there 
some way to fall back to opening with the browser if the mail is not found in 
the notmuch database for some reason?
[19:27] karthink : Cool, thank you.  Could you share this function?
[19:27] Ihor Radchenko : 
https://github.com/yantar92/emacs-config/blob/master/config.org#browse-mailing-list-archive-urls-using-my-local-notmuch-archives
[19:29] Ilya Chernyshov : fosstodon
[19:30] oylenshpeegul : I am on mastodon.social
[19:32] Kepa : How do you link text? Do you use new id search functionality to 
link to exact points in a text?
[19:35] Kepa : If you mark text, the search is added automatically
[19:36] Kepa : Thanks, I thought you had it automatized :-)
[19:36] Ihor Radchenko : org-link-search-must-match-exact-headline
[19:37] Kepa : How do you "consume" pdf files?

I usually yank them into org to studying
[19:39] Kepa : So, you adapt your eyes to the given size
[19:39] Kepa : good
[19:39] karthink : Do you "link" from the notes Org file to pdf positions like 
org-noter does?
[19:41] Kepa : How do you organize your screenshots files?
[19:42] Kepa : I mean the files
[19:42] Kepa : the path for them
[19:42] visuwesh : is the "[documents]" thingy in the dired buffer from 
dired-hacks?
[19:43] Kepa : For example, I have just one folder for every attachment.  OK!
[19:43] Kepa : interesting
[19:43] visuwesh : yes
[19:44] visuwesh : ok, thanks
[19:44] Ihor Radchenko : https://github.com/Fuco1/dired-hacks - dired-filter 
for grouping files in dired
[19:46] visuwesh : can you perhaps talk abit about your meta-functions package? 
 I've looked at it before and it looks very powerful but I cannot exactly wrap 
my head around it
[19:46] karthink : Thanks for all the tips Ihor.  As usual I learn a lot from 
watching how you use Emacs
[19:48] karthink : Does this work via `run-hook-with-args-until-success` or a 
big `cond` block?
[19:49] visuwesh : ahhh okayy, thanks for the explanation
[19:49] visuwesh : i guess it is the logical conclusion of org's M-<cursor> 
commands
[19:50] visuwesh : nice, thanks for the demo
[19:51] Kepa : Thanks, Ihor :-)
[19:51] oylenshpeegul : Thanks!
[19:52] karthink : Thank you
[19:52] visuwesh : Thank you Ihor once again!
:end:

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]