CPU, RAM, and load monitor for use with tmux
Go to file
Matt McCormick 1bfda9484a Detect old option specification fail informatively.
Print the information message to std::cout so it gets printed on the tmux
status line so users of 2.X know how to update their configuration.
2015-01-19 23:02:04 -05:00
bsd use inline function for unit conversion instead of macros 2015-01-18 20:02:46 +01:00
linux use inline function for unit conversion instead of macros 2015-01-18 20:02:46 +01:00
osx use inline function for unit conversion instead of macros 2015-01-18 20:02:46 +01:00
.gitignore added cmake generated config.h file to gitignore 2015-01-18 17:24:17 +01:00
.travis.yml Do not run ctest in Travis. 2013-06-14 01:56:46 +00:00
AUTHORS Fix authors name spelling. 2015-01-19 21:59:13 -05:00
CMakeLists.txt Detect old option specification fail informatively. 2015-01-19 23:02:04 -05:00
CONTRIBUTING Fix trailing whitespace. 2015-01-19 22:14:36 -05:00
conversions.h use inline function for unit conversion instead of macros 2015-01-18 20:02:46 +01:00
generate-luts.py Improve foreground contrast with colors. 2013-07-15 23:20:35 +00:00
graph.cc code syntax style, vim modelines, license 2015-01-18 14:36:59 +01:00
graph.h code syntax style, vim modelines, license 2015-01-18 14:36:59 +01:00
LICENSE Add Apache-2.0 license. 2012-11-25 17:20:31 +00:00
luts.h Improve foreground contrast with colors. 2013-07-15 23:20:35 +00:00
README.rst added myself (l0ner) to contributors list 2015-01-18 14:30:38 +01:00
tmux-mem-cpu-load.cc Detect old option specification fail informatively. 2015-01-19 23:02:04 -05:00
version.h.in rename config.h back to version.h since it contains only version after last commit 2015-01-18 20:04:28 +01:00

====================================================
               tmux-mem-cpu-load
====================================================
----------------------------------------------------
CPU, RAM memory, and load monitor for use with tmux_
----------------------------------------------------

.. image:: https://travis-ci.org/thewtex/tmux-mem-cpu-load.svg
  :target: https://travis-ci.org/thewtex/tmux-mem-cpu-load

Description
===========

A simple, lightweight program provided for system monitoring in the *status*
line of **tmux**.

The memory monitor displays the used and available memory.

The CPU usage monitor outputs a percent CPU usage over all processors. It also
displays a textual bar graph of the current percent usage.

The system load average is also displayed.

Example output::

  2885/7987MB [|||||     ]  51.2% 2.11 2.35 2.44

   ^    ^          ^         ^     ^    ^    ^
   |    |          |         |     |    |    |
   1    2          3         4     5    6    7

1. Currently used memory.
2. Available memory.
3. CPU usage bar graph.
4. CPU usage percentage.
5. Load average for the past minute.
6. Load average for the past 5 minutes.
7. Load average for the past 15 minutes.

For `terminals with 256 color support`_, graded colors can be displayed by
passing the **--colors** flag.


Installation
============

Dependencies
------------

Currently, Linux and Mac OSX are supported.

Building
~~~~~~~~

* >= CMake_ -2.6
* C++ compiler with C++11 support (e.g. gcc/g++ >= 4.6)

Download
--------

There are links to the source code at the `project homepage`_.

Build
-----

::

  cd <source dir>
  cmake .
  make

Install
-------

::

  su -
  make install
  logout


Configuring tmux_
=================

Edit ``$HOME/.tmux.conf`` to display the program's output in *status-left* or
*status-right*.  For example::

  set -g status-interval 2
  set -g status-left "#S #[fg=green,bg=black]#(tmux-mem-cpu-load --colors 2)#[default]"

Note that the first argument to `tmux-mem-cpu-load` should be the same number
of seconds that *status-interval* is set at.

An optional second argument is the number of bars in the bar graph, which
defaults to 10.  This can, for instance, be set to the number of cores in a
multi-core system.


Author
======

Matt McCormick (thewtex) <matt@mmmccormick.com>

Contributions from:

* Justin Crawford <justinc@pci-online.net>
* krieiter <krieiter@gmail.com>
* Mark Palmeri <mlp6@duke.edu>
* `Pawel 'l0ner' Soltys`_ <pwslts@gmail.com>


.. _tmux: http://tmux.sourceforge.net/
.. _CMake: http://www.cmake.org
.. _`project homepage`: http://github.com/thewtex/tmux-mem-cpu-load
.. _`terminals with 256 color support`: http://misc.flogisoft.com/bash/tip_colors_and_formatting#terminals_compatibility
.. _`Pawel 'l0ner' Soltys` : http://l0ner.github.io/