-
-
Notifications
You must be signed in to change notification settings - Fork 17
Home
Important
A lot of the information below is also relevant for my other mode-line packages.
Sometimes I link to this page, when a user is having problems with one of those other packages. If you followed such a link, then please ignore the parts that are not relevant to the package in question.
In most cases using this package is as easy as:
(use-package minions
:config (minions-mode 1))
mode-line-format
is one of those variables that should not be modified using Custom.
See https://github.com/tarsius/minions/issues/33.
"Mode line related packages" can be roughly divided into two groups:
- Packages that make modest changes to the mode line, adding or replacing one or very few elements.
- Packages that take full control of the mode line, replacing pretty much everything.
Minions (like the other mode line related packages that I have written) falls into the first category and it should work well with most other packages that also fall into the same category, but it might not be compatible with packages in the second category.
I have written several packages that fall into the first category because none of the packages in the second satisfied me and bending them to my wishes would have been harder than to just implement the features that I actually want. It should be obvious by now that my interest in hacking around the limitations imposed by such packages is limited.
- Moody is compatible.
- Keycast is compatible.
- Mode-line-debug is compatible.
minions-mode
works by replacing mode-line-modes
anywhere in the
global value of mode-line-format
with minions-mode-line-modes
.
mode-line-modes
does not have to be a top-level element, it is also
found if it is located deeper in the tree.
It does however have to appear literally in the value of that
variable. If it is a member of variable foobar
and the symbol
foobar
appears in mode-line-format
, then that is not good enough.
Enabling minions-mode
line succeeds if you do it before you enable
any other mode line package, but that won't do much good if some other
packages later completely replaces the value of mode-line-format
.
Generally speaking, to use Minions and such a package together, you
have to first enable the other package and after that you have to
manually inject minions-mode-line-modes
into mode-line-format
,
while also removing whatever that package previously replaced
mode-line-modes
with.
I have been using this package before I wrote Moody and Minions and I kept using all three packages together for a while. I have since stopped using Smart-mode-line, but not before opening a few issues:
- Make "rich-minority" dependency optional
- Incompatibilities with moody
- Fallback to uniquified buffer name for paths not covered by sml/replacer-regexp-list
It is not compatible out of the box.
For powerline-default-theme
, the following minimal setup appears to work for the display:
(defpowerline powerline-major-mode "")
(defpowerline powerline-process "")
(defpowerline powerline-minor-modes minions-mode-line-modes)
For powerline-center-theme
, the same setup almost works, some loose delimiters remain here and there.
For powerline-vim-theme
, the same setup works, but one might want to tweak the delimiters used by minions
.
This setup does not work with powerline-center-evil-theme
, it results in an empty mode line.
For the sake of being exhaustive, powerline-nano-theme
works out of the box because it does not feature the modes.
For better support, please manipulate mode-line-format
as described above.
Alternatively you can also create a copy of powerline-default-theme
(or one of the other "themes") and then edit and call that. Once you
have done that, please post it here to save others the work.
It is not compatible out of the box.
Please manipulate mode-line-format
as described above.
Alternatively you can also create a copy of spaceline-spacemacs-theme
(or one of the other "themes") and then edit and call that. Once you
have done that, please post it here to save others the work.
- More info at https://github.com/TheBB/spaceline/issues/193
A minions
segment is provided, but it appears that that is broken.
- More info at https://github.com/tarsius/minions/pull/32
It is compatible out of the box.