This can be achieved with two packages:
Overall, smart-mode-line is more powerful than powerline
(pardon the pun), in the sense that it offers more features to control
the mode-line's behaviour and more customizability in the appearance.
The Readme has a great
list of features,
but in short it offers width-control, string ...
This can be achieved with a package called "powerline". There are several variants available, including at least one you can install through package.el.
Personally, I use this one. Here's a screenshot from the package's README:
You can configure the color by setting the face of the mode-line:
(set-face-attribute 'mode-line nil
As other people have mentioned, powerline is the package that formats the modeline that way. Most emacs themes however, don't define colours for powerline (which is not great). One theme that does is the colourful (and comprehensive) moe-theme. It even has a mode that changes colour in the evening to be easier on the eyes. It looks like this:
My arrows in ...
To get the time mode, just add (display-time-mode 1) to your ~/.spacemacs configuration.
To get date and time, do this instead
;;display time in powerline
(shell-command-to-string "echo -n $(date +%k:%M--%m-%d)")
(add-to-list 'spacemacs-mode-line-right 'date-time-segment)
I use spaceline.
Basically it's built on top of powerline and let you build your mode-line by adding several segments one after the other (in both left and right sections).
For instance, the following segment: (major-mode :face highlight-face) will insert the current major mode and apply a special face to it. This face highlight-face changes following ...
The mode-line is a feature implemented in the C code with lots of ad-hoc special code deep in the redisplay and window-handling code for it. This code does not support "one mode-line per frame" at all.
So if you want to get a single mode-line shared among various windows, your best bet will be something like:
Set mode-line-format to nil so that windows ...
Your code calls battery-status-function for every mode line update. This function inherently slow, because it has to invoke external programs to obtain battery information. Since Emacs is single-threaded, each invocation freezes Emacs until the function returns. As the mode line is updated frequently, by almost every command, and often multiple times per ...
The short answer is that powerline and delight are not directly compatible; but I've made a change to delight (new version 1.04) to make such integration possible in general, and I've added a delight-powerline library which builds on top of that to handle powerline specifically.
Original answer follows...
Well I tried your config. My first comment is that ...
What worked for me was the following.
(shell-command-to-string "echo -n $(date '+%a %d %b %I:%M%p')"))
I had to put that code in user-config section of .spacemacs.
The best place to start is with
This will open a buffer which shows the names for all currently defined faces and show their current setting. If you click on one of the face names, it will open up a customiz-face buffer where you can change the face settings. Save the changes and they will be written to the custom section of your ...
After intense research on Emacs modeline and workgroups2 code, I finally figured it out!
Turns out that the expression wg-mode-line-string can be used to construct a segment for telephone-line like
It is now integrated in my dotfiles.
This works for me:
(let ((which-func '(which-func-mode ("" which-func-format " "))))
(setq-default mode-line-format (remove which-func mode-line-format))
(setq-default mode-line-misc-info (remove which-func mode-line-misc-info))
(setq-default header-line-format which-func))
It removes which-func from the mode-line, and place it in the header.
Okay, I can not believe I made this mistake.
There is a -face in the names, which (being new to emacs) I thought is necessary, but apparently it is part of the name (I must have misinterpreted some docs).
Removing them solved the problem.
Define a separate face, e.g., my-remote-buf, that you use to show remote buffers.
Set mode-line-buffer-identification to use that face when the buffer is remote:
(list (propertize (car mode-line-buffer-identification)
I don't know if this is applicable to this specific case, but for powerline/spaceline users, even though (setq ns-use-srgb-colorspace nil) fixes the colors, it does this by applying the bad colors to all Emacs GUI, so you don't notice the effect anymore.
A better solution is to use (setq powerline-image-apple-rgb t) so the image generation uses the sRGB ...
You have to create an el-get recipe. You can create a directory to save your custom recipes and tell el-get about it:
(add-to-list 'el-get-recipe-path "~/.emacs.d/el-get-recipes")
Then create the recipe for your repo:
:description "My powerline themes fork"
Have you tried C-x C-b (list-buffers)? That gives you a list of buffers in another window. It will remain visible, depending on what keys you use to access the listed buffers. ? in that window tells you what keys are available:
Buffer Menu mode defined in ‘buff-menu.el’:
Major mode for Buffer Menu buffers.
The Buffer Menu is invoked by the commands C-x C-b,
Haroongan produces some nice Emacs builds for Windows, both 32 and 64-bit. His builds tend to have as many features available as possible (XPM being one of them).
For example, his Vim builds for Windows include support for all the most recent versions of Lua, Python 2/3, and Ruby, something that's not easy to find.
deleting it from the package list using d, x
Normally, it should have worked nice. What about reinstall the powerline package by first deleting it in elpa folder and restart emacs?
Also, isn't there a byte compiled file loaded somewhere? You will probably need to recompile it after removing powerline.
I've just found this github issue. Not really the ...