Xorns is a configuration framework for GNU Emacs. It was initially intended to be used by Merchise members who wanted to take it to the next level by using Emacs.
-
Select a target folder (you can use
~/.emacs.d
or~/.config/emacs
):TARGET_FOLDER=~/.emacs.d
-
Backup any files you have in your
$TARGET_FOLDER
.[ -d $TARGET_FOLDER ] && mv $TARGET_FOLDER ${TARGET_FOLDER}.bak
-
Clone the repository:
git clone --depth 1 https://github.com/merchise/xorns.git $TARGET_FOLDER
-
Xorns is now ready to run, but it is advisable to first create a user configuration folder:
CONFIG_HOME=${XDG_CONFIG_HOME:~/.config} mkdir $CONFIG_HOME/xorns
Inside this folder there must be at least two files:
user-config.el
: Xorns local user configuration file. There is a template to create this file (templates/user-config
). Copy it, and rename it touser-config.el
, and customize the user experience according to your preferences.custom.el
: File used for storing standard Emacs customization information. See the Emacs variablecustom-file
for more information.
Check the [Xorns User Manual][docs/xorns.org].
-
Emacs 28.1+ (recommended: 29.1+ with native compilation enabled)
-
Git: If you need to be told this, this package is not for you. ;)
-
The fonts you will customize.
Recommendations:
- Source Code Pro
- RobotoMono Nerd Font, part of Nerd Fonts, project that patches developer targeted fonts with a high number of icons.
You can also use fallback fonts to ensure that certain Unicode symbols appear correctly (If you don't do this you may have problems with certain types of
mode-line
):- For example: Nanum Gothic
You can search fonts on:
Maybe you can install some fonts using your OS package manager.
There could be packages using all-the-icons and nerd-icons. If any of those are installed, please execute
all-the-icons-install-fonts
andnerd-icons-install-fonts
helper functions. -
Several commands use operating system programs. In the XS module you can see how to configure these options. For example:
- When the module containing the
vterm
configuration is compiled to native code, although this configuration is optional, it is installed from ELPA and thevterm-module
package is compiled. Sometimes I needed to manually install the ELPA =vterm= package to avoid some errors when compiling the modules. Seebacklog
file for more information.
This package is currently experimental, but the plan is that in the future it can be used by anyone. From now on, any contribution and suggestion will be welcome.
To make xorns
, the most important references that we have used are: