In this chat, Bastien tells stories about getting started in Emacs, reading his mail/news/blogs in Gnus, and hacking his life with Org. =) Enjoy!
Want just the audio? You can get MP3s or OGG from archive.org.
Reading these posts, you can probably tell that I really, really like the Emacs text editor.
On this page:
I thought I’d draw some of the things that people often ask me about or that would help people learn Emacs (and enjoy it). You can click on the image for a larger version that you can scroll through or download. It should print all right on 8.5×11″ paper (landscape) if you want to keep it around as a reminder. Might even work at 11×17″. =)
Feel free to share, reuse, or modify this under the Creative Commons Attribution Licence. Enjoy!
Possibly counterintuitive point: It’s good to learn at least the basics of Vim. Despite the perception of a “Emacs vs. Vi” holy war (one of the classic battles in computer science), it makes sense to know both editors especially if you work with people who use Vi a lot. Know enough Vi to find your way around, and then learn how to customize Emacs to fit you to a tee. That way, you’ll avoid the pressure of not being able to work well with your team or your infrastructure, and you’ll have the space to explore Emacs. =) Emacs is totally awesome.
Need help with Emacs? Feel free to leave a comment or get in touch with me. I’m often in the #emacs channel on irc.freenode.net , and I also occasionally schedule time to help people one-on-one. Also, the Emacs community (mailing lists, newsgroups, IRC channel) can be wonderful, so definitely reach out to them too. =)
Meta discussion: How can I make this even better? What else would you like me to draw a guide for? I’d love to hear your thoughts! Also, thanks to dash, nicferrier, fledermaus, ijp, hypnocat, Fuco, macrobat, taylanub, axrfnu, Sebboh, thorkill, jave_, jrm, and the rest of #emacs for suggestions and feedback!
It turns out to be lots of fun to talk to other people about Emacs. You pick up all sorts of tips and interesting ideas that way.
One of the reasons why I do these chats is to help people get a sense of other people using Emacs. Now that I know John Wiegley sounds like when he’s excitedly talking about Emacs, it’s so much more fun reading his code. =) I’d love it if you told me a little bit about your story. Sharing how you got started with Emacs (what helped, what needs work) might give us ideas on how to make it easier for people to start. What was your “aha!” moment? What are the things you love, and what would you like to see improved? Walk me through your config, highlighting any quirky things you’ve done to make Emacs fit the way you work.
In addition to your story, you probably have lots of little tips that could save people time or make their Emacs lives better. No time to blog or screencast? Show us your favourite tricks in a chat, and I’ll take care of putting it up on the Net. It’s a quick way to get things out of your brain and onto the Internet. =)
If you have Emacs configuration or Lisp questions, ask away. I might be able to help, or someone listening might know the answer. We can spend some time digging into code or bouncing around ideas. I’m happy to help for free. If you come away with something incredibly useful, you can buy me a virtual mug of hot chocolate through PayPal or make a donation towards an awesome Emacs thing like EmacsWiki.org. =) It’s all cool.
I’d love to record and share our conversation so that more people can learn from it. If there are parts that you’d like blurred or not have recorded, or if you prefer to not have the conversation recorded at all, please tell me and I’ll be happy to accommodate that.
Want to talk about Emacs? Get in touch with me at email@example.com!
You can do pretty much everything in Emacs, so why not give presentations too? Org-mode is an extensible outliner and Swiss Army knife for the Emacs text editor. Because it’s a great way to organize information, people have written a number of packages for presenting information from Org.
Here are some options for preparing and giving presentations using Org-mode, along with some guidance on what to use when. It may be a good idea to browse through the examples and create a small test presentation using the systems that catch your eye. If you choose your system before drafting your presentation, that can save you a lot of time, since the approaches differ in terms of the code you’ll need to add to your Org file.
Do you need to distribute your presentation to non-Emacs users, or do you want to minimize the risk of getting your Emacs configuration confused? You can export your presentation to a number of formats.
Export to Beamer (LaTeX) and generate a PDF: Use this if you need to distribute your presentation as a PDF. You will need to install LaTeX, which could be a bit heavy-weight. Beamer is a slide package for LaTeX, and Org can export an outline to LaTeX code. Check out Writing Beamer presentations in Org-mode for sample screenshots and a tutorial.
Export to HTML and use S5: Light-weight browser-based slideshows are becoming more popular. They can be distributed as ZIPs or .tar.gz, or uploaded to web servers. See the section in the Org tutorials for Non-Beamer Presentations: S5. Here are some sample presentations.
Presenting within Emacs allows you to edit your presentation, execute code, or do all sorts of other interesting things. And it doesn’t have to be plain text – Org allows you to include inline images. (Microsoft Windows users may need to install additional libraries – see StackOverflow for tips.)
There are several ways to present from Org-mode. They tend to differ on:
so you can choose the one you feel the most comfortable with.
Org-present is simple and defines very few keyboard shortcuts: left for previous slide, right for next slide, C-c C-= or C-c C– to adjust text size, and C-q to quit. This makes it easy to edit your presentation as you go along. You’ll need to edit your ~/.emacs file to include some code. See the documentation in org-present.el for details.
EPresent is a bit more complex. It supports converting LaTeX into images, so you can embed pretty equations. The epresent keybindings include “n” for next and “p” for previous, so don’t use this if you’re planning to edit your presentation on the fly.
Org-presie takes a different approach by showing the outline instead of focusing on just one slide. When you press SPC, the previous headline’s content is hidden, and the next one’s content is expanded. It’s good for always giving people a sense of where they are in your presentation.
And then sometimes you may want to write your own. For my presentation at Emacs Conference 2013, I wanted to be able to:
You can find my code at https://gist.github.com/sachac/5278905
Emacs and Org-mode are wonderfully customizable, so you can probably build something that works just the way you want to work. Enjoy!
Here are the Emacs Conference 2013 videos! http://j.mp/emacs2013videos
Unfortunately, our keynote wasn’t livestreamed, but I managed to record the audio so that you can hear what John Wiegley and I sound like.
I haven’t uploaded the Meta-eX performance because it’s a music performance. (Sam Aaron, do you want me to go ahead and post it?)
I cleaned them up a little and packaged them as a PDF for your viewing convenience:
Here they are individually, too! Click on an image to view the full-sized version, and feel free to share them under the Creative Commons Attribution Licence. Enjoy!
John Wiegley and I had lots of fun brainstorming ways to help move Emacs forward, particularly as I’m carving out more of my time to focus on Emacs. Here’s what we talked about:
A rough outline of things to flesh out into articles/chapters:
Learning Emacs development:
Ideas for visualizations:
Emacs performance: elp, memory-use-counts, garbage collection, algorithms, cookbook, core work
Imagining awesomeness in 5 years: Responsive editor that’s easy to set up; SEO so that people can find useful resources; context/goal-specific documentation; regular virtual show&tell
Imagining nonawesomeness: Weak async; marginal/niche; people moving away to other editors because of growing gaps; performance issues; unmaintained code; developer burnout
EmacsConf: mailing list for next year, venue?
Here’s what I’m looking forward to devoting some of my time to:
Write and draw
Lots of possibilities!