!7 sclass Process { S processID, name, commandLine; long residentSize; static LS _fieldOrder = ll('processID, 'name, 'commandLine, 'residentSize); } module ProcessList > DynObjectTable { start { doEvery(1.0, 10.0, r actualUpdate); itemToMap = func(Process p) -> Map { humanizeKeys(applyFunctionToMapValue('residentSize, 'str_toM, objectToMap(p))) }; } afterVisualize { addRowSorter_desc(table, 3); rowSorter_setComparators(table, 3, alphaNumComparator()); } void actualUpdate enter { setData(map(timed(func -> L { oshi_listProcesses() }), func(OSProcess p) -> Process { nu(Process, processID := str(p.getProcessID()), name := p.getName(), commandLine := p.getCommandLine(), residentSize := p.getResidentSetSize()) })); } }