shombando / EmacsVanillaChocolateSwirl

Minimal config for Emacs to flatten the learning curve for transitioning users
Apache License 2.0
12 stars 4 forks source link

Use Package :ensure t #4

Closed seshaljain closed 4 years ago

seshaljain commented 4 years ago

If use-package-always-ensure is set to t at the use-package config, do we need :ensure t declarations with every use-package call?

shombando commented 4 years ago

@seshaljain I'm not sure it is necessary if the config is tangled properly. ButI think it might be a good idea to keep in, in case someone is using this as a reference and chooses to copy a snippet. What do you think?

systemhalted commented 4 years ago

I fixed it in https://github.com/shombando/EmacsVanillaChocolateSwirl/pull/5. I kept it when defining mode-line but explained what it means and we are going to omit it in later configurations.

shombando commented 4 years ago

@systemhalted that's what I'm wondering if it is wise to omit it later... Since a user could just be using snippets at random and not taking the entire config. I think it might be better for each piece to be standalone unless keeping ensure: t is a performance hit or bad practice. Thoughts?

systemhalted commented 4 years ago

@shombando I think, we should educate on how things work in the Emacs world. That is why I am trying to describe details of what each code block is doing. Let's not spoon feed the snippets, but provide a way for them to learn.

Or, we can remove the (setq use-package-always-ensure t) and add :ensure t on each use-package block that needs to have it.

shombando commented 4 years ago

I like the idea of removing setq and having ensure in all the places where it's needed. That makes more sense, good idea! Edit: @systemhalted

shombando commented 4 years ago

@seshaljain if you sure with the conclusion, I'll close this issue. Good discussion.

seshaljain commented 4 years ago

I second removing the setq and explicitly setting :ensure t. We can state that setting use-package-always-ensure t at the beginning is "good practice", but since this is a take-as-you-go setup, :ensure t declarations will be better for the new user.