From d3abd436bfba3343cc8baf20054a92cacc62aa07 Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Thu, 15 Dec 2022 00:30:02 -0500 Subject: Automated commit --- 2022/talks/devel.md | 10 ++- 2022/talks/fanfare.md | 18 +++- 2022/talks/hyperorg.md | 11 ++- 2022/talks/indieweb.md | 5 ++ 2022/talks/localizing.md | 2 + 2022/talks/lspbridge.md | 1 - 2022/talks/sun-close.md | 221 +++++++++++++++++++++++++++++++---------------- 2022/talks/treesitter.md | 94 ++++++++++++++------ 2022/talks/workflows.md | 12 +++ 9 files changed, 259 insertions(+), 115 deletions(-) (limited to '2022/talks') diff --git a/2022/talks/devel.md b/2022/talks/devel.md index 250a8a95..817d87eb 100644 --- a/2022/talks/devel.md +++ b/2022/talks/devel.md @@ -41,14 +41,16 @@ Bio: John Wiegley is a past maintainer of Emacs and frequent contributor of Emac in pursuing that, where should we start? Should we explore moving it from core into an independent package? - A: -- Q: Thanks John! Thanks Eli! - - A: -- Q: XInput 2 support author here.  X has historically seen three +- Q: has any date been set for 29 release? + +Notes and other feedback: + +- XInput 2 support author here.  X has historically seen three input APIs: Core Input, legacy XInput, and XInput 2.  Emacs only ever used the first until Emacs 29, where it jumped straight to using the last.  So it's not quite an ``update'', but rather an entirely new feature.  Thanks for the great talk! - - A: +- Thanks John! Thanks Eli! ## Notes diff --git a/2022/talks/fanfare.md b/2022/talks/fanfare.md index 22c680a1..24e2ed4b 100644 --- a/2022/talks/fanfare.md +++ b/2022/talks/fanfare.md @@ -154,7 +154,23 @@ modes. - There is - was also suggested by a listener   - +- Q: what is a fanfare + - A: it's based on an American piece of music "Fanfare for the Common Man" by Aaron Copland + +## Other discussions from IRC +- this is a GREAT talk! +- yes, really nice! +- Every single point I'm like "yes! THIS" +- This is as true of life as it is of emacs. Life imitates art imitates emacs... +- Resonates with me from having used emacs for a 5+ years +- Great talk!! +- Can't argue with this great reminder that a messy perennially-evolving Emacs setup/config is the norm rather than the exception! +- understanding source control is such a high bar for lay folk though, makes me think emacs by default setup version control for config files +- Hmmm, *someone* could experiment with detecting what version control is available locally then using vc to automatically source control changes to our conf.. +- Also, over the last few years, some credit should go to Doom/Spacemacs for bringing new people into the fold that may otherwise not have given Emacs a second look with more the vanilla experience + - The more I think about it, the more having use-case packages with virtual machines makes a lot of sense. A sort of all in one package that can be used "out of the box" with an included guide. + - I like using starter packs with scratch init. It's a great way to know how far you can push emacs:) + - agree, I started with Spacemacs, then moved to Doom Emacs, and I just love it, I agree that starting from scratch was too much challange to start, but now I am not sure if I should try that path or is not actually worth it (considering that I understand much more about the editor and the programming language) [[!inline pages="internal(2022/info/fanfare-after)" raw="yes"]] diff --git a/2022/talks/hyperorg.md b/2022/talks/hyperorg.md index 80beb6ec..cbfcce8d 100644 --- a/2022/talks/hyperorg.md +++ b/2022/talks/hyperorg.md @@ -111,23 +111,22 @@ h. Hyperbole Expands Org Mode to an Emacs-wide Persistant Hyperbutton-Action Cap the tutorial videos (mentioned before) - Q: What is hyperorg? - A: probably a typo for hyperborg + - sachac: I had to come up with IDs for all the talks, that was just the one I made up for this one - Q:Do you have advice for people who'd like to try using Hyperbole with Org, but don't want to pollute Org files with inline Hyperbole links (e.g., with files that will be published)? (...Or is that inevitably the point of Hyperbole links?) - A: +- Q: How is the integration with org-roam? ## Other discussions from IRC - I like the use of the term "cognitive overhead" - I really need to spend more time digging into Hyperbole. So far I only use it to open urls in the browser :D - These hyperbole talks are making me want to try -- We know how it works and update the internals all the time, though there certainly is a lot of behavior/capability. - The issue I've got is that plain org-mode can deal with probably 50% of the use-cases of Hyperbole and the other 50% are not that important to me (yet). ... - Interesting idea: "Hyperbole golf" - somebody suggest something that should be accomplished. I'm doing it with my Org mode setup and the other person does it with Hyperbole. I'm sure that Hyperbole may be more elegant but so far, I didn't see anything that I can't do with my setup as well. -- I would love to see a table comparing how to do things with Org and with Hyperbole -- with examples -- <+publicvoit> along with eev, zk, org brain. There are a lot of these type of packages +- I would love to see a table comparing how to do things with Org and with Hyperbole with examples, with eev, zk, org brain. There are a lot of these type of packages - no problem. However, some things are non-standard org mode because they depend on my personal setup such as file links which I do use without path. - Notice how there is so little to Hyperbole buttons embedded in the buffer, so it doesn't break your flow when reading the text, e.g. if you just open the file without a structured viewer. - would it be easy to add a section to the table saying "to run these examples in Org you need to run this first?" @@ -141,13 +140,13 @@ h. Hyperbole Expands Org Mode to an Emacs-wide Persistant Hyperbutton-Action Cap - There is not enough time for all of these - Action Key = {M-RET}; Assist Key = {C-u M-RET} though you can bind them as you like. - for action key and action key assist a good idea would be use a mouse that has extra buttons for those -- hyperorg is a separate mode from hyperbole? - I just installed hyperbole and I think it just works. - Awesome demo, thanks! - Thanks rswgnu! Great exposition, I'm much further along on my way towards Hyperbole enlightenment that's for sure. - Awesome talk, definitely planning to try out Hyperbole -- How is the integration with org-roam? - Intense but too much information for just a Hyperbole newbie +- I will have to watch your talk 3 or 4 times...too much directly to the vein! + - A: Thanks. That was the idea, to expose people to new things rapidly just to encourage interest. Install Hyperbole and you can learn at your own pace. [[!inline pages="internal(2022/info/hyperorg-after)" raw="yes"]] diff --git a/2022/talks/indieweb.md b/2022/talks/indieweb.md index 8b0d1685..2472e93c 100644 --- a/2022/talks/indieweb.md +++ b/2022/talks/indieweb.md @@ -113,6 +113,11 @@ provably correct code. You can find him at: like webmentions. - A: No, I haven't (but I will soon!). +## Other discussions from IRC + +- I think perhaps you are doing too much inside of emacs. + - mohsen: Somethings are better done outside of emacs. I have built something similar at http://www.by-star.net/PLPC/180038 and also please see http://www.by-star.net + [[!inline pages="internal(2022/info/indieweb-after)" raw="yes"]] diff --git a/2022/talks/localizing.md b/2022/talks/localizing.md index 85ba0e1a..e19d4289 100644 --- a/2022/talks/localizing.md +++ b/2022/talks/localizing.md @@ -44,6 +44,8 @@ Even if it is a beginner’s patch (thoroughly reviewed by dev-experts), it show Elisp. - A: +Other feedback: +- Merci Jean-Christophe ! I really enjoyed your talk (and would very much like to help localise Emacs). [[!inline pages="internal(2022/info/localizing-after)" raw="yes"]] diff --git a/2022/talks/lspbridge.md b/2022/talks/lspbridge.md index afe3af88..40b444f6 100644 --- a/2022/talks/lspbridge.md +++ b/2022/talks/lspbridge.md @@ -109,7 +109,6 @@ Related design, please check - - An ansible repo for configuration management: - - - Lots of Emacs Lisp: - - - TRAMP for writing files and running commands on remote - computers - - OBS for streaming, Icecast for sharing the stream with - viewers - - VNC for letting hosts and streamers connect to the same - display for OBS streaming - - screen for naming shell commands and making them easier to - resume and kill - - BigBlueButton for video Q&A - - Mumble for speaking on the stream as well as for backstage - communications - - ERC for Internet Relay Chat within Emacs, The Lounge for - web-based IRC - - Ikiwiki for the wiki (editing through git commits) - - Etherpad for collaborative note-taking - - ffmpeg for reencoding videos to free (patent-unencumbered) - formats and compressing them - - Captioning (): - - OpenAI Whisper for computer-generated transcripts to be - reflowed and edited by captioning volunteers - - Some Emacs Lisp code to help with reflowing - (emacsconf-reflow, in - ) - - Aeneas () for - synchronizing reflowed text with the audio files - - subed.el () for editing - captions within Emacs (synchronizes with MPV) - - MPV for playing videos (config tips: - - ) -- Q: How do you have multiple font sizes, countdowns and clocks in - fundamental mode? - - A: - - : see emacsconf-stream-display-clock-and-countdown. You can - propertize a string with face attributes and then insert it. -- Q:  [what were the] participation rates (# of users) [this - year]? - - A:  High-water mark was around 350: 240 people on Gen and ~100 - on Dev.  It's not clear how these metrics compare to prior - years because we ran two streams in parallel this year. (i.e. a - given person could be watching both streams at the same time.) -- Q:  - - A: -- Q: A great problem is having too many talks that we have split into - 2 tracks. What about having multiple conferences a year? - - A: Want to help organize another one? =) -- Q: "emacsconf-org.el" to elpa/core? :) - - There's a repo, it's probably very idiosyncratic, happy to - chat with whoever's interested - sachac - - A: -- Q: My streaming improved immensely once I implemented the mpv - solution. I could have benefited from a short "how to" beforehand - for the command line tool.  - - A: ooh, good point, we'll recommend that more next time -- Q: Suggestion really-- a few setup videos that orient people to the - tools and conventions for participation. would be better. I think - y'all also need to load balance Leo-- turn him into an MC and - allow someone to field and queue up questions.  That way Leo would - not be in a hurry to get back to the next presentation. He could - hand off the mic to someone who could facilitate.  +## Questions +- Q: What did you use to make this?  + - All free/libre/open source tools: + - One private Org file with speaker/volunteer/talk info + - The talks were generally run using run-at-time, + org-after-todo-state-change-hook, and some TRAMP (by the + way, TRAMP does not like being run from timers at the + same time, so we shifted some talks =) ) + - A public Org file for processes: + + - An ansible repo for configuration management: + + - Lots of Emacs Lisp: + + - TRAMP for writing files and running commands on remote + computers + - OBS for streaming, Icecast for sharing the stream with + viewers + - VNC for letting hosts and streamers connect to the same + display for OBS streaming + - screen for naming shell commands and making them easier to + resume and kill + - BigBlueButton for video Q&A + - Mumble for speaking on the stream as well as for backstage + communications + - ERC for Internet Relay Chat within Emacs, The Lounge for + web-based IRC + - Ikiwiki for the wiki (editing through git commits) + - Etherpad for collaborative note-taking + - ffmpeg for reencoding videos to free (patent-unencumbered) + formats and compressing them + - Captioning (): + - OpenAI Whisper for computer-generated transcripts to be + reflowed and edited by captioning volunteers + - Some Emacs Lisp code to help with reflowing + (emacsconf-reflow, in + ) + - Aeneas () for + synchronizing reflowed text with the audio files + - subed.el () for editing + captions within Emacs (synchronizes with MPV) + - MPV for playing videos (config tips: + + ) +- Q: How do you have multiple font sizes, countdowns and clocks in + fundamental mode? + - A: + + : see emacsconf-stream-display-clock-and-countdown. You can + propertize a string with face attributes and then insert it. +- Q:  [what were the] participation rates (# of users) [this + year]? + - A:  High-water mark was around 350: 240 people on Gen and ~100 + on Dev.  It's not clear how these metrics compare to prior + years because we ran two streams in parallel this year. (i.e. a + given person could be watching both streams at the same time.) +- Q:  + - A: +- Q: A great problem is having too many talks that we have split into + 2 tracks. What about having multiple conferences a year? + - A: Want to help organize another one? =) +- Q: "emacsconf-org.el" to elpa/core? :) + - There's a repo, it's probably very idiosyncratic, happy to + chat with whoever's interested - sachac + - A: +- Q: My streaming improved immensely once I implemented the mpv + solution. I could have benefited from a short "how to" beforehand + for the command line tool.  + - A: ooh, good point, we'll recommend that more next time +- Q: Suggestion really-- a few setup videos that orient people to the + tools and conventions for participation. would be better. I think + y'all also need to load balance Leo-- turn him into an MC and + allow someone to field and queue up questions.  That way Leo would + not be in a hurry to get back to the next presentation. He could + hand off the mic to someone who could facilitate.  +- The number of users in the chat seem to have been around the 150 count. Is this typical-- less than normal participation? Higher participation? It would be a good data point from the organizers to note. +- are we going to get participation rates (# of users) in the closing remrks? +- quiliro: Would it be useful for next year's EmacsConf if I volunteered to set up crdt for creating pads directly from Emacs? +- Q: Is there an EmacsConf howto? + - Impressive event... I wish sachac or bandali would provide an EmacsConf howto! +- does the Emacs survey have geographic demographics on users? might use that to inform EmacsConf schedule + +## Discussion +- Keep up the great work for EmacsConf every year +- what a great weekend. been using emacs for 30+ years and still learned a boatload. +- it's so nice the community keeps things rolling forward. thanks y'all for the work of organizing all this! +- Definitely so much new stuff +- Got stuff to tinker with for a month or two +- thanks to all organizers and presenters. everything so well done! +- And besides the organizers, thanks to everyone who gave a talk this year!! +- pretty nice talks and emacsconf in general! Thanks a lot +- I think we can all say that we enjoyed a lot of the talks +- this conf already goaded me into trying out 29 (building on a mac, so far. Linux boxen are next) to try the core tree sitter stuff. I need to go back and watch talks I miss and follow up on notes I already have. Love all this content! +- thanks a lot organizers! emacs, emacs people, emacsconf - all are outstanding 8-) +- Great emacsconf, as always! Thank you all that have been involved making it happen! +- As a longtime Emacs user, it was great to stumble on this conference. Thanks +- bandali sachac zaeph & team : What a treat this yearly EmacsConf, many thanks to you for your outstanding work... once again! +- 07:25] <3 +- some notes on how we did it in the pad +- Meeting or rather seing yu all reinforces the belive in me that Emacs is the better computing thing. It can archive this! Thank you. +- I had to make some decisions on which track to listen to, but that comes with the territory, I suppose. The two traks worked great. +- Me too. It went very well! +- emacsconf.org -- It's a domain name! It's an org-mode file! It's a domain name and an org-mode file! +- Tracks + - Yeah, there were some points where I wanted to watch 2 talks at the same time as well + - But I really liked the 2 tracks + - But, I liked the fact that it gave more time for Q&As and we were more relaxed + - Last year was much more of a hurry + - This edition went extremely smoothly. + - I don't think that many people watched both talks at the same time. + - I'm not sure, I think people who watched dev would probably be interested in gen also. + - most people would find their preference and not jump-room +- Stack: + - //git.emacsconf.org looks to be interesting! + - Yes! Our wiki is git based (which I think is really cool) +- Timezones: + - I am in Europe and I personally like the time in which the talk is for me more than the American timezone + - I try to schedule all the talks based on speaker availability + - I wouldnt like waking up at 9 am in the weekend + - But I think its good both for Americans and Europeans + - for me it was great because I wake up 4 hours before start and go to sleep 1 hour after closing +- I think that previewing the talks would be great to be able to make more or better questions + - volunteer again next year! =) + - sure, sachac .... it has been a great experience...even better than giving a talk! more relaxed at least +- I loved sameer's talk even with the problems +- I loved that 95% of the talkes had captions. that is why i could follow up with the Sameer talk +- i was impressed about the feedback the organizers had before and during the event +- this organization was impressive +- thanks to you for being so active during the two days of conference! +- even being active in chat helps make the conference feel more alive +- wanting to experience more of the conference in Emacs + - I found it a bit hard to switch between Emacs, IRC, VLC and the Etherpad. Something like crdt.el would be great. + - Impressive techsetup and execution. Amazing that you did this with that much polish and utility. I think next thing would be an Emacs mode :P + - Seriously, an emacsconf-mode would be great. I browsed the website from eww, started vlc from eww, irced from Emacs. The only thing missing was this etherpad. + - and even my mpv was running inside Emacs....in EXWM + - I have top half taken by emacs split into a bunch of irc windows and the bottom split into two with etherpad on the left and the mpv on the right + - Yes Emacs collaboration is missing. But maybe next? I too had most in emacs. Beste. + - I absolutely agree. Actually, I was unconsciously expecting to access the conf from within Emacs, for some reason (well, to some extent, I did, by using empv for the videos and ement for the chat :) + - I had the schedule in Agenda. You could download a localized org schedule. + - Yes this could be more visible #feedback + - https://github.com/isamert/empv.el (a package which allows one to use mpv from within Emacs) + - Organizing and running, and attending, an online conference about Emacs, all in Emacs - take that VS Code +- jman, FlowyCoder, bandali : I did not see you.... were you in the back end? + - quiliro, i was a bit more present this year actually, but mainly on the dev track rather than gen + - bandali was hosting the dev track so on screen here and there and various voice overs;jman and FlowyCoder were indeed running different backstage things [[!inline pages="internal(2022/info/sun-close-after)" raw="yes"]] diff --git a/2022/talks/treesitter.md b/2022/talks/treesitter.md index c846f2a0..317cf3f5 100644 --- a/2022/talks/treesitter.md +++ b/2022/talks/treesitter.md @@ -46,33 +46,73 @@ This session will introduce them to things like (not final list): ## Questions and answers -- Q: What treesitter package is being used I think there is 3 - different ones - - A:  Most of what is demoed here is using - -- Q: Can the folds be treated as outlines as in outline-minor-mode - folds? - - A: I don't think the package ts-fold which I showcased works - with outline mode, but it should be simple enough to add - something like that - () -- Q: Is there any benefit to use tree-sitter for sexp-based languages? - +1 - - A: Being able to query for specific things like variables / - conditions might come in handy -- Q:Do you have to have an LSP set up in order to use tree-sitter? - - A:I still use eglot for lsp. While tree-sitter help with - highlighting, folding, nav etc . . tree-sitter can be more - thought of to be working on a single file. So when I need to do - project wide things like jump to defenition, find reference or - renames lsp comes in handy. -- Q: Is there any example configuration for the transition from - traditional major mode to new *-ts-major-mode? It seems that - configuration of major mode (xxx-mode-hook, yasnippet, etc) has to - been rewritten - - A: I am just starting to work with builtin tree-sitter, so - don't have much input here  unfortunately :( - +- Q: What treesitter package is being used I think there is 3 + different ones + - A:  Most of what is demoed here is using + +- Q: Can the folds be treated as outlines as in outline-minor-mode + folds? + - A: I don't think the package ts-fold which I showcased works + with outline mode, but it should be simple enough to add + something like that + () +- Q: Is there any benefit to use tree-sitter for sexp-based languages? + +1 + - A: Being able to query for specific things like variables / + conditions might come in handy +- Q:Do you have to have an LSP set up in order to use tree-sitter? + - A:I still use eglot for lsp. While tree-sitter help with + highlighting, folding, nav etc . . tree-sitter can be more + thought of to be working on a single file. So when I need to do + project wide things like jump to defenition, find reference or + renames lsp comes in handy. +- Q: Is there any example configuration for the transition from + traditional major mode to new *-ts-major-mode? It seems that + configuration of major mode (xxx-mode-hook, yasnippet, etc) has to + been rewritten + - A: I am just starting to work with builtin tree-sitter, so + don't have much input here  unfortunately :( +- Q: So, is there a tree-sitter language definition for elisp? + - A: I'm just starting to look into built-in tree sitter, but I feel like we should be able to do all of them. +- Q: awesome stuff. i always wonder when itll appear in my fingers. sure the lib is in 29 but i guess some glue is required? +- Q: thanks for the great talk. I have one question. Will tree sitter able to highlight syntax in sourceblocks of org files? + - A: there is nothing technically stopping one from enabling highlighting in config blocks. Since I don't use org, I've not really looked into how it currently is. +- Q: So Emacs 29 includes the original tree sitter C library by Max Brunsfeld or is it a custom rewrite? +- Q: what about the relationship between emacs-tree-sitter and treesitter in core emacs + - A: there are just two Emacs side implementaions for the tree-sitter lib . The first one is in Rust and the second in C within core + - A: I have not extensively tested out the builtin one, but both should be more or less the same. The builtin one is less mature as of now and has a slightly different api. + - A: Plus most plugins that work with tree-sitter will be working with elisp-tree-sitter only as of now + - I'm speaking of the the third party package. Perhaps it has been fixed. IIUC the issue is not the emacs package but rather tree-sitter itself. + - A: You might wanna open an issue at https://github.com/emacs-tree-sitter/tree-sitter-langs if you are having issues with tree-sitter highlighting +- Q: biggest difference between the treesitter functionality built into Emacs 29 and the emacs-tree-sitter github package? +- Q: Are there any sample configurations about *-ts-mode integrated with default major-mode? +- Q: Building Emacs 29 with native tree-sitter support seem challanging any useful tip. + - building emacs ... tips from Xah Lee +- Q: How much of what you showed can be done with the build-in tree-sitter? +- Q: How easy is it to hack the syntax definition? + - A: It is super easy once you learn a bit about tree-sitter. This is how the highlight queries looks like. Once we have this, the tree-sitter integration can take care of the rest. +- Q: So Emacs 29 includes the original tree sitter C library by Max Brunsfeld or is it a custom rewrite? + - both elisp-tree-sitter and tree-sitter in emacs core are emacs side wrappers on top of the tree-sitter lib from Max. +- Q: What was the name of the module used for doing AST queries on the current buffer? + - A: for viewing and querying the tree, they are commands built into `tree-sitter-debug-mode` and `tree-sitter-query-builder` + +## Other IRC discussions + +- thanks for the great talk meain! +- thank you for the talk +- Great talk. Can I use this with Python? Bash? +- Amazing stuff!!! I need that YAML thing! +- When I am writing lisp macros I'm always having problems with the highlighting. I'm seeing this can be achieve with tree-sitter, is there a more streamlined way of doing it with treesitter - with less code? +- thank you for tree-sitter talk, It's awesome +- Now I definitely need to try tree-sitter +- very inspiring talk, the future looks bright! +- Very well done talk. Thank you. +- I've actually added a lot of highlighting for rust mode on my editor, using tree sitter. It's very powerful once you get into it +- with the new *-ts-mode, seems that a lot of configurations of language specific major mode have to be rewritten + - A: yup, there are quite a few things that being rewritten a bit like indent, highlight etc. +- yup, previously I would just jump to top after reformatting code. These days I've been also trying https://github.com/radian-software/apheleia which has been pretty good at keeping the position by using some other methods +- I use your tree-sitter package for a long time, It works very stable. +- I use tree-sitter write plugin to replace paredit: https://github.com/manateelazycat/grammatical-edit [[!inline pages="internal(2022/info/treesitter-after)" raw="yes"]] diff --git a/2022/talks/workflows.md b/2022/talks/workflows.md index 3a015315..91926d51 100644 --- a/2022/talks/workflows.md +++ b/2022/talks/workflows.md @@ -38,6 +38,18 @@ but in actual day-to-day enterprise software development. well is a pretty big  - there is also +- Q: are arduino blocks included in org-mode? + - A: I did add `arduino-mode` I think thats the only thing I did so maybe its from there +- A: This is the bit that I'm particularly proud of btw - the ability to do dynamic scoping of variables that is driven by properties in the org outline +- Q: how did you insert the texts (not caption)? + - A: in kdenlive + +## Feedback + +- liked it a lot +- awesome talk gmauer` +- :) It was fun captioning it. + [[!inline pages="internal(2022/info/workflows-after)" raw="yes"]] [[!inline pages="internal(2022/info/workflows-nav)" raw="yes"]] -- cgit v1.2.3