Next: Text Display, Previous: Selective Display, Up: Display [Contents][Index]

### 14.18 Optional Mode Line Features

The buffer percentage pos indicates the percentage of the buffer above the top of the window. You can additionally display the size of the buffer by typing `M-x size-indication-mode` to turn on Size Indication mode. The size will be displayed immediately following the buffer percentage like this:

    pos of size

Here size is the human readable representation of the number of characters in the buffer, which means that ‘`k`’ for 10^3, ‘`M`’ for 10^6, ‘`G`’ for 10^9, etc., are used to abbreviate.

The current line number of point appears in the mode line when Line Number mode is enabled. Use the command `M-x line-number-mode` to turn this mode on and off; normally it is on. The line number appears after the buffer percentage pos, with the letter ‘`L`’ to indicate what it is.

Similarly, you can display the current column number by turning on Column number mode with `M-x column-number-mode`. The column number is indicated by the letter ‘`C`’. However, when both of these modes are enabled, the line and column numbers are displayed in parentheses, the line number first, rather than with ‘`L`’ and ‘`C`’. For example: ‘`(561,2)`’. See Minor Modes, for more information about minor modes and about how to use these commands.

If you have narrowed the buffer (see Narrowing), the displayed line number is relative to the accessible portion of the buffer. Thus, it isn’t suitable as an argument to `goto-line`. (Use `what-line` command to see the line number relative to the whole file.)

If the buffer is very large (larger than the value of `line-number-display-limit`), Emacs won’t compute the line number, because that would be too slow; therefore, the line number won’t appear on the mode-line. To remove this limit, set `line-number-display-limit` to `nil`.

Line-number computation can also be slow if the lines in the buffer are too long. For this reason, Emacs doesn’t display line numbers if the average width, in characters, of lines near point is larger than the value of `line-number-display-limit-width`. The default value is 200 characters.

Emacs can optionally display the time and system load in all mode lines. To enable this feature, type `M-x display-time` or customize the option `display-time-mode`. The information added to the mode line looks like this:

    hh:mmpm l.ll

Here hh and mm are the hour and minute, followed always by ‘`am`’ or ‘`pm`’. l.ll is the average number, collected for the last few minutes, of processes in the whole system that were either running or ready to run (i.e., were waiting for an available processor). (Some fields may be missing if your operating system cannot support them.) If you prefer time display in 24-hour format, set the variable `display-time-24hr-format` to `t`.

The word ‘`Mail`’ appears after the load level if there is mail for you that you have not read yet. On graphical displays, you can use an icon instead of ‘`Mail`’ by customizing `display-time-use-mail-icon`; this may save some space on the mode line. You can customize `display-time-mail-face` to make the mail indicator prominent. Use `display-time-mail-file` to specify the mail file to check, or set `display-time-mail-directory` to specify the directory to check for incoming mail (any nonempty regular file in the directory is considered to be newly arrived mail).

When running Emacs on a laptop computer, you can display the battery charge on the mode-line, by using the command `display-battery-mode` or customizing the variable `display-battery-mode`. The variable `battery-mode-line-format` determines the way the battery charge is displayed; the exact mode-line message depends on the operating system, and it usually shows the current battery charge as a percentage of the total charge.

On graphical displays, the mode line is drawn as a 3D box. If you don’t like this effect, you can disable it by customizing the `mode-line` face and setting its `box` attribute to `nil`. See Face Customization.

By default, the mode line of nonselected windows is displayed in a different face, called `mode-line-inactive`. Only the selected window is displayed in the `mode-line` face. This helps show which window is selected. When the minibuffer is selected, since it has no mode line, the window from which you activated the minibuffer has its mode line displayed using `mode-line`; as a result, ordinary entry to the minibuffer does not change any mode lines.

You can disable use of `mode-line-inactive` by setting variable `mode-line-in-non-selected-windows` to `nil`; then all mode lines are displayed in the `mode-line` face.

You can customize the mode line display for each of the end-of-line formats by setting each of the variables `eol-mnemonic-unix`, `eol-mnemonic-dos`, `eol-mnemonic-mac`, and `eol-mnemonic-undecided` to the strings you prefer.

Next: Text Display, Previous: Selective Display, Up: Display [Contents][Index]