* [BLOG] #13 [[bbb:OrgMeetup]] on Wed, Nov 13, 19:00 UTC+3
2024-10-27 7:06 #13 [[bbb:OrgMeetup]] on Wed, Nov 13, 19:00 UTC+3 Ihor Radchenko
@ 2024-12-09 18:41 ` Ihor Radchenko
0 siblings, 0 replies; 2+ messages in thread
From: Ihor Radchenko @ 2024-12-09 18:41 UTC (permalink / raw)
To: emacs-orgmode
[-- Attachment #1: Type: text/plain, Size: 25481 bytes --]
Note: Our usual BBB server was down, so this meetup was done via
jitsi. ... and because Jitsi does not save chat history when
reconnecting, I lost part of the chat. So, some parts of the
discussion might be missing as I had to recover some things from pure
memory without clues from the chat.
Another note: I added some images to the discussion this time to
illustrate some of the discussion points. The images are attachment:
links, also attached to this email.
- As usual, we started from https://sachachua.com/blog/2024/11/2024-11-11-emacs-news/
- Amy Grinn asked about contributing to Org mode
- Apart from the mailing list, the new bugs and important
discussions can be tracked at https://tracker.orgmode.org/
- I invite everyone to help with new items there (note that old
items are not always cleared, even when the bug is fixed; this
issue will hopefully be resolved in not too distant future)
- Amy Grinn actually submitted a patch for new custom babel header
argument in the past
https://list.orgmode.org/orgmode/s31cys8xz4w.fsf@gmail.com/
- The patch was nearing merging, but there was unresolved issue on
how to parse the argument values
- I prefer to keep things as consistent as possible across the
header arguments and use =org-babel-read= conventions
- The tricky part about the patch is that the argument value
consist of two parts: custom (1) open (2) close syntax for
noweb. So, we need extra parsing on top of =org-babel-read=
- In the patch discussion we were focused on reading two values
from one argument, but a simple alternative could be
1. Using two header arguments =:noweb-start= and =:noweb-end=
2. Using a placeholder + a single string: =:noweb-wrap "# <<%s>>"=
- [2024-12-08 Sun] See my reply in the thread
- Someone asked about my setup where I have some todo keywords,
bullets, and tags replaced with descriptive UTF symbols
[[attachment:org-appearance.png]]
- I use pretty-symbols-mode to visually replace keywords with symbols
See https://github.com/yantar92/emacs-config/blob/master/config.org#items
- There is also built-in prettify-symbols-mode, but it does not
allow replacing regexp groups in a match
- Another question was about structure of my Org notes
- For topical notes, I always have an outline structure that has
1. Notes with my written notes
2. Bookmarks \ references with bookmarks (and my notes to them)
I've read and want to keep for future reference
3. "No deadline" where I usually store bookmarks to read in the
future
- I get this structure using my capture templates (this one is
called "area")
https://github.com/yantar92/emacs-config/blob/master/config.org#area-of-interest
- "No deadline" is a kind of my "someday" list, accumulating ideas
and links for future. In the most active areas of interest it
tends to grow indefinitely
- In https://sachachua.com/blog/2024/11/excerpts-from-a-conversation-with-john-wiegley-johnw-and-adam-porter-alphapapa-about-personal-information-management/
alphapapa and John Wiegley discussed, among other things, the
problem with someday task management
- I use "No deadline" lists, but with a twist
- Tasks in No deadline list are not equal
- I mark some tasks/links as more interesting and then use
https://github.com/yantar92/org-autosort to sort them in a way
that more interesting someday tasks stay on top
[[attachment:someday-list.png]]
- This way, I do not have to go through hundreds of tasks every
time to find what may be interesting to do next. I can always
see the more interesting/important tasks on top.
- jordan asked about examples of usage of dynamics blocks
(I do not recall fully now, but I think the more precise question
was about querying headings via
dynamic blocks)
- I myself do not actually use them very often
- The closest I use is clock tables, but that's slightly different
- zororg suggested that https://github.com/protesilaos/denote makes
use of dynamic blocks heavily
- There is also org-ql:
https://github.com/alphapapa/org-ql/?tab=readme-ov-file#dynamic-block
- Apart from dynamic blocks, Org provides a number of ways to query
for headings
- Sparse trees https://orgmode.org/manual/Sparse-Trees.html
- zororg: Laso, org-ql-sparse-tree (it uses org-ql query syntax
unlike built-in sparse trees that use less flexible MATCH syntax)
- Agendas. Despite the name, Org agenda can search using arbitrary
criteria, not just by time
https://orgmode.org/manual/Matching-tags-and-properties.html
- Agenda matches can even be collected to an Org file via C-x
C-w (org-agenda-write)
- The entry text can be shown via org-agenda-entry-text-mode (E)
- I think someone asked about the timestamp format I use to announce the meetups:
=<2024-11-13 Wed 19:00-21:00 @+03,Europe/Istanbul>=
- This is the syntax we decided upon for future support of time zones in timestamps
- Here is more detailed syntax description:
https://list.orgmode.org/orgmode/87tu063ox2.fsf@localhost/
- That thread is long, but this exact link explains the syntax we
mostly agreed upon (some details are to be worked out when we
start working on actual patch)
- Jordan asked why not to keep timestamps in UTC in Org internally
and then translate locally as needed
- The answer is simple: we do not actually need to worry too much
how to *store* timestamps - Elisp has API for time that includes
time zones
- The main question of the linked discussion was more about (1)
syntax for time zones - users 100% do not want to be forced to
write every timestamp in UTC; (2) potential UI; (3) various edge
cases that may interact with Org features (time zones are
infamous for edge cases);
- we even discussed relativistic shift and time zones on
different planets, albeit not very seriously
https://list.orgmode.org/orgmode/87bkmluxnq.fsf@localhost/
- Sacha Chua shared her approach to generate a bunch of Org files
for different timezones (that's for now, while Org does not
support time zones)
- I believe that https://emacslife.com/calendar/ has the details
- She also has some helper commands to convert time between
timezones interactively (from and to)
- [2024-12-09 Mon] Although I cannot find anything relevant at
https://sachachua.com/dotemacs/index.html. Still an
interesting read ;)
- Jordan asked how to find a marker/buffer/line number given an org
link with search option. He does not want to actually follow link
(open the buffer, move point, etc); just get the location the link
points to
- There are no specialized function apart from function that actual
does the jumping (follow function that is potentially customized)
- You can simply use "jump" command wrapped into ~save-excursion~
and maybe ~save-current-buffer~
#+begin_src emacs-lisp
(save-current-buffer
(save-excursion
(org-link-open-from-string "file:~/Org/notes.org::100")
(org-current-line)))
#+end_src
- Although it might be tricky when a new frame is created or when
an external app is called
- My demo failed spectacularly because file links in my config
are followed very awkwardly, calling xdg-open along the way
- zororg asked to share how to search and find org bug reports
- We have https://tracker.orgmode.org/bugs
- You can even follow RSS for bugs, if you want to:
https://tracker.orgmode.org/bugs.rss
- Or import in Org format:
https://tracker.orgmode.org/bugs.org
- Note that tracker.orgmode.org does not currently close all the
fixed reports. I hope that it will be fixed in not too distant
future. Looking for new bug reports should work though.
- There is also an option to subscribe to the mailing list, of course
https://orgmode.org/worg/org-mailing-list.html
- This is what I do myself (obviously), saving the actionable or
useful emails to my Org todo list, via capture templates
and https://github.com/yantar92/org-capture-ref
- karthink asked about \lambda symbol in my mode line
[[attachment:lambda-in-modeline.png]]
- It is just flycheck
#+begin_src emacs-lisp
(setq flycheck-mode-line-prefix "λ✓")
#+end_src
- zororg asked if I am version control my notes.org (a 20+Mb file)
- Yup. The git repo is 1Gb+ at this point. And it is after I
regularly compress it (git maintenance run)
- me and kickingvegas discussed his recent feature proposal to provide
context menu to copy table cell/range references and additional
bindings to insert table references in Org table formula editor by
simply clicking on table cells with mouse
https://list.orgmode.org/orgmode/87zfmzqezp.fsf@localhost/
http://yummymelon.com/devnull/referencing-org-table-cells-with-text-regions.html
- he had questions about my idea to use overlays to apply a
temporary custom keymap while table editor is active
https://www.gnu.org/software/emacs/manual/html_node/elisp/Overlay-Properties.html
- although we started from discussion on the difference between
overlays and text properties
- text properties are tied to specific chars in buffer
- overlays, in contrast, are defined by marker boundaries
- if any text is inserted between the markers, the overlay will
act on it
- overlays are can also be stored, and, more importantly,
managed via Elisp overlay objects as a whole. It makes life
easier in many situations
- Some users commented that they do not use tables much
- although I know other Org users who use Org mode explicitly
because of tables ;)
- many people, many opinions
- user (it is a nickname) complained that Org tables are not ideal
- karthink followed up with a more specific complain on wide tables
with large width (beyond window width)
- this is indeed not ideal, although one can define column widths
(or even alignment) and then "fold" the columns according to
that width
https://orgmode.org/manual/Column-Width-and-Alignment.html
- One day, we could integrate and extend this feature with
org-cycle (TAB)
- for example, I had an idea to fold not only column widths, but
also fold everything between first last column and/or row, as
in ipython pandas
- visuwesh also complained about subtle bugs with table formulas
when one adds/deletes columns
- normally, cell references in formulas are automatically updated,
but apparently visuvesh observed when it is not done right
- it would be nice if the problem is reported as a bug with
reproducer
- Jeff Trull asked whether the idea of "list tables" from ox-odt can
be adopted more widely
: #+attr_odt :list-table t
: - Row 1
: - 1.1
: - 1.2
: - 1.3
: - Row 2
: - 2.1
: - 2.2
: - 2.3
:
: will be exported as though it were an Org table like the one show
: below.
:
: | Row 1 | 1.1 | 1.2 | 1.3 |
: | Row 2 | 2.1 | 2.2 | 2.3 |
- (Note that it is undocumented feature)
- I doubt that it is a good idea to adopt these list tables as general feature
- One of they fundamental feature of Org tables is that they look simple visually
- When presented as a list (idea similar to ASCII doctor
multi-line table cell syntax), it becomes very difficult to work
with such a table.
- For example, guessing "cell reference" there would become a nightmare
- Maybe as an export feature specifically (not just in ox-odt),
but ideally we want proper multiline cell syntax instead of such
workarounds
https://list.orgmode.org/orgmode/877d0ia7vd.fsf@mat.ucm.es/
- the trick is to find such a syntax, so that it does not
compromise the table simplicity. I would welcome ideas to be
shared in the linked thread
- Amy Grinn shared a bug with odt export when coding system of the org
file is non-standard ('utf-8-with-signature-unix')
- we debugged this problem for a while during the meetup and almost
arrived to the solution (the idea of the fix was right)
- ox-odt hard-codes setting UTF-8 as encoding for ODT markup
- several places in ox-odt force-set buffer coding system to 'utf-8
- all that was left is making sure that we write *all* the ODT
components using 'utf-8
- I later implemented the proper solution after the bug was reported
properly to the mailing list
https://list.orgmode.org/orgmode/87ed3fvu7p.fsf@pop-os.mail-host-address-is-not-set/
- Jeff Trull commented that ODT is sometimes rendered differently in LibreOffice vs. MS Word
- It is a known problem with MS Work where it does not follow ODT spec
- https://github.com/kjambunathan/org-mode-ox-odt/issues/153 may
have some workaround ideas
- We continued about exporting to various proprietary formats, like docx or keynote
- ox-odt handled docx export by exporting to odt and then converting
odt to docx via LibreOffice
- Another alternative is pandoc and https://github.com/emacsorphanage/ox-pandoc/
- ox-pandoc, unlike pure pandoc, can manage src block evaluation
and other kinds of Org-specific pre-processing that pandoc
cannot do directly
- Jeff Trull also reminded about ox-keynote he has been working on
- Then, we moved on discussing how to collaborate using org in
corporate setting
- For example, there is https://demo.hedgedoc.org/ for markdown,
where people can collaborate via browser (most people do not mind
browser; no so mach when asked to install Emacs :sad_face:)
- kickingvegas commented that Org is still good in corporate setup
for authoring and running meetings. But only when there is a
single person, not when collaborative editing is required
- <...>
- and https://github.com/titaniumbones/ox-slack
- because obviously, every proprietary messenger should also
invent the markup
- Someone asked if Teams uses Markdown, but nobody knows. Some
things seem to work
:chat:
<part of the chat was lost due to disconnect (Jitsi...)>
##+begin_info_from_memory
Sacha News: ...
Amy: discussion on custom noweb wrap; parsing noweb
tracker.orgmode - how to find bugs
Org symbols for tags/bullets, use frequently used to understand meaning
Bookmarks\references and capture templates
SOMEDAY lists and sorting them
link to alphapapa/John Wiegley discussion
##+end_info_from_memory
zororg:@jordan denote packages makes use to dynamic blocks very well [16:42]
zororg:ah okay it works. That also is fine [16:43]
zororg:maybe it was org-ql-sparse-tree that folded those heading as well [16:44]
zororg:I check in detail more. Thanks for taking time to point it out! [16:47]
Ihor Radchenko:org-fold-show-context-detail [16:47]
Ihor Radchenko:should work for Org sparse trees [16:47]
Ihor Radchenko:2. can save agenda views to org files with C-x C-w [16:49]
Ihor Radchenko:3. org-agenda-entry-text-mode 😮👍[16:49]
zororg:Wow. So much! I'm already spending half of day time on emacs [16:50]
Ihor Radchenko:(org-encode-time 6 30 23 31 3 2022 nil nil "Europe/Madrid") [16:55]
Jordan:how would timezones in org work? Why not just keep it as UTC only and translate locally on the fly, but always keep it as UTC [16:57]
Jordan:True sorry [16:58]
Sacha Chua:The way I do it with EmacsConf org schedules is I keep everything in my local time, and then I generate lots of copies with times in different timezones [16:58]
Jordan:Well then only support the "Foo/Bar" notation then I guess [16:58]
Jordan:That one is easier to use [16:58]
Jordan:Europe/Madrid for example [16:58]
Sacha Chua:Also I have some convenience functions that prompt for a time and timezone and then do the conversion for me 😃 [16:59]
Sacha Chua:Both from and to [17:00]
Sacha Chua:Your talk might be a good opportunity to recruit people to look at various things that can be worked on 😃 [17:02]
Jordan:hey here's a question: org links can go to a file and find a line from the search-option in the link. What if I don't want it to leave point there graphically but return the line number of the matched (if any) line? [17:02]
Ihor Radchenko: https://list.orgmode.org/orgmode/CAL9aZkusXaNVCu7+nO-ic8SHhwVdOiXYtDyF=Gz7h+NoLaOZXQ@mail.gmail.com/ [17:02]
Ihor Radchenko:very, very long discussion on time zone support [17:03]
Ihor Radchenko:(eventually agreed upon) [17:03]
zororg:on that note, can you please share on how to search and find org bug reports?
I mean on particular issue we would like to get involved. [17:04]
zororg:
As of now, I'm following orgmode list via gmane.
If you can show us better tips, tricks and workflow
18:05
karthink
karthink says:Tangent: Is that lambda symbol in your mode-line provided by flycheck/flymake?
18:05
Jordan
Jordan says:line-number-at-pos (point)
18:06
Jordan says:i think
18:06
visuwesh
visuwesh says:I am not sure if this is updated anymore but you can take a look at this
https://tracker.orgmode.org/
18:07
visuwesh says:zororg: otherwise, you can take a look at threads with "[BUG]" in the mailing list (
list.orgmode.org
)
18:07
Ihor Radchenko
me says:(save-excursion
(org-link-open-from-string "file😕tmp/test.org:😕Top surf/")
(org-current-line))
18:08
me says:```
(save-excursion
(org-link-open-from-string "file😕tmp/test.org:😕Top surf/")
(org-current-line))
```
18:08
zororg
zororg says:visuwesh: yes, thats right.
18:08
karthink
karthink says:can you show us one of these tasks as captured in Org mode
18:12
zororg
zororg says:Nice. Thank you.
I will be exploring more on note taking lol
18:12
zororg says:btw do you version control this
notes.org
?
18:12
zororg says:Now that I notice again, the file has half a million lines.
My one big journal file has only 11k lines
18:14
karthink
karthink says:Thanks
18:17
Ihor Radchenko
me says:
https://github.com/yantar92/org-capture-ref
18:18
karthink
karthink says:The lambda symbol in your mode-line, is it from flymake/flycheck?
18:20
kickingvegas
kickingvegas says:hello!
18:20
zororg
zororg says:congrats on getting casual into single package!
18:21
kickingvegas
kickingvegas says:@zororg thanks!
18:22
EM
elisp maniac
elisp maniac says:@kinkingvegas you could also apply 'display property to a text for example to display an IMAGE instead of the text
18:27
Jordan
Jordan says:i personally find org tables as spreadsheets annoying
18:31
karthink
karthink says:I don't use Org tables as spreadsheets because I find it too complicated
18:31
Jordan
Jordan says:id rather use google sheets, but recently an open source spreadsheet engine was published on hackernews
18:31
Jordan says:so id probably use that now
18:31
me says:
https://list.orgmode.org/orgmode/87zfmzqezp.fsf@localhost/
18:31
kickingvegas
kickingvegas says:reference to my post on Org table references
http://yummymelon.com/devnull/referencing-org-table-cells-with-text-regions.html
18:32
EM
elisp maniac
elisp maniac says:@yantar92 we cannot hear you
18:32
user
user says:we can hear
18:32
visuwesh
visuwesh says:It is always welcome to have an easier to insert table cell references. it is a bit finnicky to use C-c } since it seems to be a global setting or somesuch?
18:33
user
user says:I wish org tables worked better as spreadsheets. If they were easier to use and more flexible, I'd probably use them more.
18:33
karthink
karthink says:Additionally, Org tables become unwieldy even as tables once they're wider than the window, or if they have many rows, or if variable widths are involved. So I limit my use of Org tables.
18:34
visuwesh
visuwesh says:It is a bit helpful that the table cell reference is highlighted when you're in the *Edit Formulas* buffer
18:34
visuwesh says:Yes, I wish there was a way to "resize" column sizes. Once I had a table with 12 or so columns and it got really annoying to navigate (also writing #+PLOTS: got unwieldy too since C-c } isn't exacrly reliable when you're adding and deleting columns)
18:36
JT
Jeff Trull
Jeff Trull says:Anyone familiar with the "list tables" of ox-odt? I recently encountered them and was wondering if they are worth making more official
18:39
user
user says:Ignore the comment about "more flexible". It's mostly (entirely?) about ease of use. Being able to refer to columns via symbolic references and referencing in formulas is not the easiest. It's possible, simply not easy.
18:39
visuwesh
visuwesh says:Yea, I have to second guess the column number always when writing the formulas which gets tiring quickly
18:40
JT
Jeff Trull
Jeff Trull says:It's a new format idea that allows multi-line rows IIRC
18:40
Jeff Trull says:
https://kjambunathan.github.io/org-mode-ox-odt/List-Tables-in-ODT-export.html
18:40
Jeff Trull says:yes
18:41
Jeff Trull says:yes probably hard to edit also
18:42
K
kickingvegas
kickingvegas says:Jeff, on the notion of multiline cells, perhaps having a cell content reference as an enhancement?
18:43
JT
Jeff Trull
Jeff Trull says:I missed the earlier discussion
18:43
me says:
https://list.orgmode.org/orgmode/878rkyarvm.fsf@localhost/
👍
18:44
me says:earlier discussion on multiline cells in Org tables
18:44
Amy Grinn
Amy Grinn says:I have a bug with org odt export with coding system 'utf-8-with-signature-unix'
18:44
Amy Grinn says:It's entirely unrelated, but I did want to discuss it
18:45
karthink
karthink says:There's a typo
18:52
karthink says:-unit -> -unix
18:53
me says:(coding-system-for-write 'utf-8)
(save-buffer-coding-system 'utf-8)
18:58
me says:org-odt-export-to-odt
18:58
karthink
karthink says:I have to leave, thanks for the meetup
19:00
visuwesh
visuwesh says:I think the let binding-clause was updated for the asyncexport?
19:03
JT
Jeff Trull
Jeff Trull says:Speaking of ODT, does anyone here use it with MS Word? I am finding some interesting differences in behavior vs. LibreOffice
19:05
zororg
zororg says:docx will be same?
19:06
visuwesh
visuwesh says:Jeff: Maybe try out Jambunathan's fork of ox-odt as you might have better luck with MS Word
19:07
JT
Jeff Trull
Jeff Trull says:visuwesh that is the one with the problem 😃
19:07
visuwesh
visuwesh says:Ahh
19:07
JT
Jeff Trull
Jeff Trull says:but the author only uses LO
19:07
visuwesh
visuwesh says:That's what I remember too
19:07
JT
Jeff Trull
Jeff Trull says:OK thanks! I'm still on my personal journey to make it possible to use org in a corporate environment cleanly
19:08
zororg
zororg says:there is org-odt-preferred-output-format
It can covert to docx ?
19:09
JT
Jeff Trull
Jeff Trull says:There are places that have e.g. presentation templates they want you to use and IMO it's just pixels there should be a way 😃
19:09
Jeff Trull says:Thus ox-keynote
19:09
me says:ox-pandoc
19:10
JT
Jeff Trull
Jeff Trull says:That's a great tip thank you
19:10
me says:
https://demo.hedgedoc.org/
😮
19:13
K
kickingvegas
kickingvegas says:I've found Org in corporate to be great for authoring; also for running meetings; that said much more problematic when using actual Org syntax for direct exchange
19:14
zororg
zororg says:Thanks alot for answering all my doubts yantar!
Learnt alot, and added more todos in my notes
19:14
zororg says:My head is about to burst.
Org mode is growing as my Second brain lol
19:14
zororg says:Bye everyone, thanks for the meeting!
19:15
K
kickingvegas
kickingvegas says:ox-slack
😮
19:15
kickingvegas says:it needs to be freshened but I use it all the time to write slack formatted messages
19:15
JT
Jeff Trull
Jeff Trull says:Does it work for Teams 😉
19:16
K
kickingvegas
kickingvegas says:@jeff does teams use markdown?
19:16
JT
Jeff Trull
Jeff Trull says:You know I haven't gotten that far into it but a lot of the markdown stuff works when I type it. Can I paste a bunch, that's the question
19:17
K
kickingvegas
kickingvegas says:also slack format is not markdown; it's it's own thing
19:17
JT
Jeff Trull
Jeff Trull says:Of COURSE it is
19:17
Jeff Trull says:We couldn't have this kind of thing standardized
19:17
Jeff Trull says:This is a great meetup and I'm sorry I always have to arrive an hour late
19:18
visuwesh
visuwesh says:Thank you Ihor and everyone for the meetup. I have to sign off now
19:18
K
kickingvegas
kickingvegas says:thanks Ihor!
19:18
avatar
oylenshpeegul
oylenshpeegul says:Thanks, Ihor! Thanks, all!
19:18
JT
Jeff Trull
Jeff Trull says:Thanks for organizing Ihor
19:18
EM
elisp maniac
elisp maniac says:okay
19:19
elisp maniac says:thank you
19:19
JT
Jeff Trull
Jeff Trull says:👏
:end:
[-- Attachment #2: org-appearance.png --]
[-- Type: image/png, Size: 87098 bytes --]
[-- Attachment #3: someday-list.png --]
[-- Type: image/png, Size: 374108 bytes --]
[-- Attachment #4: lambda-in-modeline.png --]
[-- Type: image/png, Size: 7791 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread