GitHub - casouri/lunarymacs: Space is too complicated, mars is not simple, I cho...

 3 years ago
source link: https://github.com/casouri/lunarymacs
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.



https://img.shields.io/github/license/mashape/apistatus.svg?style=flat-square https://img.shields.io/travis/casouri/lunarymacs/master.svg?style=flat-square


This is a stripped down framework modeling after doom-emacs. It’s extremely basic, but working for me.

Warning: There is no seatbelt.

  • code is easy to understand (since I don’t really know too much elisp)
  • not opinionated: (basically) no default settings set in core. everything is up to you. So you can follow the latest update in core while keeping your own config safe.
  • minimum core files

In summary:

This project is a good starting point of your own config! You can:

  1. Use my configuration (opinionated) and add your own config (submit PR to casouri/lunarymacs-stars if you think yours is good!)
  2. OR Only use the core as a framework and manage your own configurations with a separate repo.
  3. OR Just read the core and wiki as a reference and build your own config from scratch.

More screenshot



Quick start

Lunarymacs is separated into core and config. core is this repo, and config is my personal configurations (stars/modules) in a separate repo.

You can clone only this repo and write your own stars, or clone both and modify my config.

backup you .emacs.d first!

# clonw core
git clone https://github.com/casouri/lunarymacs.git ~/.emacs.d
cd ~/.emacs.d
# clone my config
git clone https://github.com/casouri/lunarymacs-stars.git star
# my init.el is under star/ while init.example.el is under .emacs.d/
# don't cp my init.el unless you use Emacs 26+ on macOS 10.13+

# angel star(emacs layout) and evil star (vim layout) might
# not be compatible. Chose the one you like.
cp init.example.el init.el

# to update lunarymacs
git pull --rebase

# or
make update-moon # it's the same

After installation

What to do now?

Give lunarymacs a try.

And if you use my config (casouri/lunary-stars) note:

As for August 2018 I have moved to emacs layout and the main leader key is C-SPC for angel star (my default), SPC for evil star. For angel star I added some binding to C-x and other first level bindings like C-'= for jump-char and =C-= for expand-region. Because C-SPC is used for leader key, set-mark-command is binded to C-v.

The best way to get the config is to read it, it’s easy to understand. There are README in each star but they are usually outdated (sorry).

Note: I am constantly changing my config and I have shifted to emacs layout since Aug 2018, so evil bindings will fall short on compatibility.

Why separate repo

After sharing my config/framework for some time, I realized that trying to make the config fit everybody is naive and unessessary.

It seems to me that most people (1/1, so actually 100%) like to fork and modify default stars to their taste, instead of adding config in private stars. That makess merging upstream a bit more messy.

“Working tree clean” is super important, as well as keeping update to date in core. So I decide to seperate luanrymacs core and my personal (default) configs. Then you can be in sync with core easily and manage your config in another repo (maybe a fork of default configs, but you don’t ever need to merge upstream of that).

Thank you

Thanks to all the contributors of spacemacs and doom-emacs. I copyied a lot of code from them.

Thanks to everyone in emacs-china.org, you answered many questions of mine.

And of course a big thank-you to all the package contributors and emacs contributors. I can’t enjoy such a great editor without your effort.

Emacs community is the best! ?❤️ (just rhetorical, not comparing :P)


I don’t know what is lunary.

I know it says lunarymacs but homepage is moon emacs, it’s for visual effect. (Now it’s changd to actual moon!)

Stay fresh!

About Joyk

Aggregate valuable and interesting links.
Joyk means Joy of geeK