astoff1B
When possible, I think it’s much better to edit the code locally and synchronize it periodically with the remote. This doesn’t need to be clunky, and is an extension of the fact that you need to periodically synchronize buffer contents with their file a.k.a. save them.
Personally I don’t think use-package is all that useful. Without it, you need to know what should to go inside a with-eval-after-load
block (basically, define-key
) and what doesn’t. But then again, with use-package
I guess you need to decide what is a :config
and what is a :init
or whatever.
The :ensure
keyword is very useful. There should be an equivalent function in package.el but that’s missing AFAIK.
If the zsh situation is similar to bash (as it seems to be, from the link you posted), then then problem is that zsh provides completions through readline commands only.
This makes it hard to access them from Emacs. The bash-completion package mentioned in the blog post does that, but it’s a tricky solution, and not super robust in my experience…
When it comes to personal configuration, I see no good reason not to use lambdas in this case. I also use them a lot when binding keys to simple commands which I don’t want to name.
Also: option 1.