htop - an interactive process viewer
Go to file
David Hunt 5e602f18d5 Rename String to StringUtils.
Fixes building on case-insensitive filesystems where String.h gets confused with <string.h>.

From d734dacea0a10d0465dad4e95b3421511e7da112 Mon Sep 17 00:00:00 2001
From: David Hunt <dhunt@iolanthe.attlocal.net>
Date: Sat, 11 Jul 2015 20:56:31 -0500
Subject: [PATCH 1/8] Rename String to StringUtils
2015-08-19 13:45:20 -03:00
freebsd Cast FreeBSDProcess_new to Process_New 2015-06-07 17:31:05 +08:00
linux Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
scripts Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
unsupported Add files to unsupported platform. 2015-03-16 03:16:18 -03:00
.gitignore remove autoconf files, generate by autogen.sh 2015-07-15 09:30:38 +02:00
AUTHORS Initial import. 2006-03-04 18:16:49 +00:00
Action.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
Action.h handle clicks on panel header line 2015-03-24 23:12:43 -03:00
Affinity.c Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
Affinity.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
AffinityPanel.c Avoid future confusions with how default values are set. 2015-08-12 17:29:32 -03:00
AffinityPanel.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
AvailableColumnsPanel.c Do not trust isalpha(c) for values > 255. 2015-03-23 18:14:35 -03:00
AvailableColumnsPanel.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
AvailableMetersPanel.c Simplify constructors. 2015-03-23 19:24:34 -03:00
AvailableMetersPanel.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
BatteryMeter.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
BatteryMeter.h Move platform-dependent parts of Linux battery meter. 2014-11-27 21:04:57 -02:00
COPYING Resolve license incompatibility issues, 2010-02-24 21:13:45 +00:00
CPUMeter.c Add longer descriptions to available meters. 2015-02-03 22:31:44 +01:00
CPUMeter.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
CRT.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
CRT.h Visual tweaks: change color when following, add Broken Gray theme. 2015-04-09 15:17:20 -03:00
CategoriesPanel.c handle clicks on panel header line 2015-03-24 23:12:43 -03:00
CategoriesPanel.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
ChangeLog Update changelog. 2014-05-03 18:09:31 -03:00
CheckItem.c Avoid future confusions with how default values are set. 2015-08-12 17:29:32 -03:00
CheckItem.h Avoid future confusions with how default values are set. 2015-08-12 17:29:32 -03:00
ClockMeter.c Use reentrant version to silence warnings. 2014-04-21 18:59:30 -03:00
ClockMeter.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
ColorsPanel.c Avoid future confusions with how default values are set. 2015-08-12 17:29:32 -03:00
ColorsPanel.h Make the implementation of color schemes declarative. 2015-02-03 22:30:05 +01:00
ColumnsPanel.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
ColumnsPanel.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
DisplayOptionsPanel.c Avoid future confusions with how default values are set. 2015-08-12 17:29:32 -03:00
DisplayOptionsPanel.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
FunctionBar.c Simplify constructors. 2015-03-23 19:24:34 -03:00
FunctionBar.h Simplify constructors. 2015-03-23 19:24:34 -03:00
Hashtable.c Fix order of calloc arguments. 2014-01-16 18:51:16 -02:00
Hashtable.h major header cleanup 2011-12-26 21:35:57 +00:00
Header.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
Header.h Fix saving of header states, motion in Setup screen. 2015-03-16 23:01:21 -03:00
HostnameMeter.c BUGFIX: Fix crash when adding meters and toggling detailed CPU time. 2014-01-16 01:40:47 -02:00
HostnameMeter.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
INSTALL Initial import. 2006-03-04 18:16:49 +00:00
IncSet.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
IncSet.h incremental search and filter reintegrated! 2015-03-23 17:04:53 -03:00
ListItem.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
ListItem.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
LoadAverageMeter.c Add longer descriptions to available meters. 2015-02-03 22:31:44 +01:00
LoadAverageMeter.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
MainPanel.c update bar when clicking header. 2015-04-09 16:02:14 -03:00
MainPanel.h incremental search and filter reintegrated! 2015-03-23 17:04:53 -03:00
Makefile.am Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
MemoryMeter.c Changed MemoryMeter and SwapMeter to use short memory sizes 2015-06-09 00:08:06 +01:00
MemoryMeter.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
Meter.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
Meter.h Fix saving of header states, motion in Setup screen. 2015-03-16 23:01:21 -03:00
MetersPanel.c ignore enter, delete and space on empty panel 2015-06-15 11:09:32 +02:00
MetersPanel.h Complete cursor-based movement of headers. 2015-02-03 22:32:07 +01:00
NEWS cleanup old stuff 2011-11-21 02:58:34 +00:00
Object.c Compare with long, for 64-bit systems 2014-04-25 19:41:23 -03:00
Object.h Compare with long, for 64-bit systems 2014-04-25 19:41:23 -03:00
OpenFilesScreen.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
OpenFilesScreen.h Move FunctionBar inside Panel 2015-03-23 15:26:56 -03:00
Panel.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
Panel.h Visual tweaks: change color when following, add Broken Gray theme. 2015-04-09 15:17:20 -03:00
Process.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
Process.h added missing defines for android 2015-05-20 04:30:11 +02:00
ProcessList.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
ProcessList.h Fixes to use platform-specific compare routines. 2015-04-09 15:40:46 -03:00
README a nicer look 2014-04-05 19:56:35 -03:00
README.md Add README.md for Github 2014-02-03 09:11:39 -02:00
RichString.c Do not trust isalpha(c) for values > 255. 2015-03-23 18:14:35 -03:00
RichString.h Refactored key handlers. 2014-11-19 23:17:52 -02:00
ScreenManager.c handle clicks on panel header line 2015-03-24 23:12:43 -03:00
ScreenManager.h Move FunctionBar inside Panel 2015-03-23 15:26:56 -03:00
Settings.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
Settings.h Merge pull request #148 from nckx/display-basename 2015-08-12 17:16:50 -03:00
SignalsPanel.c Simplify constructors. 2015-03-23 19:24:34 -03:00
SignalsPanel.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
StringUtils.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
StringUtils.h Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
SwapMeter.c Changed MemoryMeter and SwapMeter to use short memory sizes 2015-06-09 00:08:06 +01:00
SwapMeter.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
TESTPLAN Fix failing stuff. 2015-04-09 15:56:43 -03:00
TasksMeter.c Major advances in FreeBSD port. 2015-03-16 23:02:03 -03:00
TasksMeter.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
TraceScreen.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
TraceScreen.h Move FunctionBar inside Panel 2015-03-23 15:26:56 -03:00
UptimeMeter.c Make UptimeMeter cross-platform again. 2014-11-27 19:41:14 -02:00
UptimeMeter.h Move UptimeMeter back into cross-platform code. 2014-11-27 19:34:47 -02:00
UsersTable.c major header cleanup 2011-12-26 21:35:57 +00:00
UsersTable.h major header cleanup 2011-12-26 21:35:57 +00:00
Vector.c This assert is no longer valid. 2015-04-08 21:27:36 -03:00
Vector.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
autogen.sh This seems necessary. 2010-11-24 18:43:02 +00:00
configure.ac Enable OOM support unconditionally on Linux. 2015-04-09 15:41:21 -03:00
htop.1.in Add shortcut key 'p' to toggle full program paths. 2015-08-07 14:20:14 +02:00
htop.c remove duplicate code 2015-07-16 08:17:12 +02:00
htop.desktop Add translations for desktop file. 2015-08-12 18:05:46 -03:00
htop.h Tempus fugit. 2015-03-21 16:52:54 -03:00
htop.png Updated icon! 2014-04-09 14:47:58 -03:00
test_spec.lua 84.9% test coverage in the wip branch! 2015-04-08 21:27:52 -03:00

README.md

htop

by Hisham Muhammad hisham@gobolinux.org

May, 2004 - January, 2014

Note

Alert Mac users, click here! The htop version you are using is a 5-year old fork -- help bring htop 1.x to the Mac!

Introduction

This is htop, an interactive process viewer. It requires ncurses. It is tested with Linux 2.6, but is also reported to work (and was originally developed) with the 2.4 series.

Note that, while, htop is Linux specific -- it is based on the Linux /proc filesystem -- it is also reported to work with FreeBSD systems featuring a Linux-compatible /proc. This is, however, unsupported. Contact the packager for your system when reporting problems on platforms other than Linux.

This software has evolved considerably during the last years, and is reasonably complete, but there is still room for improvement. Read the TODO file to see what's known to be missing.

Comparison between 'htop' and 'top'

  • In 'htop' you can scroll the list vertically and horizontally to see all processes and full command lines.
  • In 'top' you are subject to a delay for each unassigned key you press (especially annoying when multi-key escape sequences are triggered by accident).
  • 'htop' starts faster ('top' seems to collect data for a while before displaying anything).
  • In 'htop' you don't need to type the process number to kill a process, in 'top' you do.
  • In 'htop' you don't need to type the process number or the priority value to renice a process, in 'top' you do.
  • In 'htop' you can kill multiple processes at once.
  • 'top' is older, hence, more tested.

Compilation instructions

This program is distributed as a standard autotools-based package. See the INSTALL file for detailed instructions, but you are probably used to the common ./configure/make/make install routine.

When fetching the code from the development repository, you need to run the ./autogen.sh script, which in turn requires autotools to be installed.

See the manual page (man htop) or the on-line help ('F1' or 'h' inside htop) for a list of supported key commands.

if not all keys work check your curses configuration.