this post was submitted on 26 Oct 2023
2 points (100.0% liked)

Emacs

313 readers
3 users here now

A community for the timeless and infinitely powerful editor. Want to see what Emacs is capable of?!

Get Emacs

Rules

  1. Posts should be emacs related
  2. Be kind please
  3. Yes, we already know: Google results for "emacs" and "vi" link to each other. We good.

Emacs Resources

Emacs Tutorials

Useful Emacs configuration files and distributions

Quick pain-saver tip

founded 1 year ago
MODERATORS
 

Hey there.

I'm a fan of Emacs, like you folks.

I use Emacs org every day, mainly for my teaching class. Furthermore, I learn Emacs for three years ago.

But I struggle to achieve my learning of Elisp. For example, taping lisp and elisp code with evil/lispy is a true nightmare (I use Prelude with few modes, btw), not to mention when I type code block within org.

I knew the learning curve is hard. But I didn't expect that much frustration to learn it. The documentation is austere. So few examples are given. There is too little blogs or books about Emacs, specifically about org and babel.

To illustrate my point, let's take the «*this*» kind-of macro in babel, that I found TODAY by CHANCE in this page : https://orgmode.org/manual/Results-of-Evaluation.html.

It's a game changer for a lot of my code, and would deserve a whole page to illustrate it. But no, it's given in a «niche» example.

Don't be mistaken, I found Babel/Org/Emacs wonderful, but what a pain in the ass to learn it !

For such an old and wise piece of software, I can't understand why we don't have a smooth learning experience with Emacs. A lot of people could benefit Org/Emacs, without the big hinder of the «lack» of documentation (mostly examples).

Am I the only one to experience this ?

you are viewing a single comment's thread
view the rest of the comments
[–] Psionikus@alien.top 1 points 1 year ago

These days, prompting chat GPT is the way to go for generating small examples and asking about things with little background.

M-x elisp-index-search. The Elisp manual is not bad, almost pretty good. There's some examples in shortdocs, but I think shortdocs use case is dead because of generative AI's and will only get more dead.

Sometimes we write Elisp examples: https://github.com/positron-solutions/transient-showcase I have to update that because transient got some upgrades.

Use ielm and eval-last-sexp as well as eval-region.

Install the helpful package for useful commands like helpful-symbol.

I think once I got familiar with all of the various flavors of let binding and mapc and mapcar, even if what I was doing didn't seem like mind-blowing code, it also is pretty straightforward to read and write.

Now it should be pretty easy. You just need this configuration to avoid mispelling lambdas:

(defun pmx-greek-lambda ()
  (font-lock-add-keywords
   nil
   `(("\\"
      (0 (progn (compose-region (match-beginning 0) (match-end 0)
                                ,(make-char 'greek-iso8859-7 107))
                nil))))))

(add-hook 'emacs-lisp-mode-hook 'pmx-greek-lambda)
(add-hook 'inferior-emacs-lisp-mode-hook 'pmx-greek-lambda)