Merge branch 'argparse'

pull/122/head
aristocratos 2020-09-12 14:52:11 +02:00
commit a99a57c733
1 changed files with 15 additions and 24 deletions

View File

@ -19,6 +19,7 @@
import os, sys, threading, signal, re, subprocess, logging, logging.handlers import os, sys, threading, signal, re, subprocess, logging, logging.handlers
import urllib.request import urllib.request
import argparse
from time import time, sleep, strftime, localtime from time import time, sleep, strftime, localtime
from datetime import timedelta from datetime import timedelta
from _thread import interrupt_main from _thread import interrupt_main
@ -59,38 +60,28 @@ if errors:
VERSION: str = "1.0.29" VERSION: str = "1.0.29"
#? Argument parser -------------------------------------------------------------------------------> #? Argument parser ------------------------------------------------------------------------------->
if len(sys.argv) > 1: args= argparse.ArgumentParser()
for arg in sys.argv[1:]: args.add_argument("-f" , "--full" ,action="store_true" ,help ="Start in full mode showing all boxes [default]")
if not arg in ["-m", "--mini", "-v", "--version", "-h", "--help", "--debug", "-f", "-p", "-s", "--full", "--proc", "--stat"]: args.add_argument("-p" , "--proc" ,action="store_true" ,help ="Start in minimal mode without memory and net boxes")
print(f'Unrecognized argument: {arg}\n' args.add_argument("-s" , "--stat" ,action="store_true" ,help ="Start in minimal mode without process box")
f'Use argument -h or --help for help') args.add_argument("-v" , "--version" ,action="store_true" ,help ="Show version info and exit")
raise SystemExit(1) args.add_argument("-D" , "--debug" ,action="store_true" ,help ="Start with loglevel set to DEBUG overriding value set in config")
stdargs = args.parse_args()
if "-h" in sys.argv or "--help" in sys.argv: if stdargs.version :
print(f'USAGE: {sys.argv[0]} [argument]\n\n'
f'Arguments:\n'
f' -f, --full Start in full mode showing all boxes [default]\n'
f' -p, --proc Start in minimal mode without memory and net boxes\n'
f' -s, --stat Start in minimal mode without process box\n'
f' -v, --version Show version info and exit\n'
f' -h, --help Show this help message and exit\n'
f' --debug Start with loglevel set to DEBUG overriding value set in config\n'
)
raise SystemExit(0)
elif "-v" in sys.argv or "--version" in sys.argv:
print(f'bpytop version: {VERSION}\n' print(f'bpytop version: {VERSION}\n'
f'psutil version: {".".join(str(x) for x in psutil.version_info)}') f'psutil version: {".".join(str(x) for x in psutil.version_info)}')
raise SystemExit(0) raise SystemExit(0)
ARG_MODE: str = "" ARG_MODE: str = ""
if "-f" in sys.argv or "--full" in sys.argv:
if stdargs.full:
ARG_MODE = "full" ARG_MODE = "full"
elif "-p" in sys.argv or "--proc" in sys.argv: elif stdargs.proc:
ARG_MODE = "proc" ARG_MODE = "proc"
elif "-s" in sys.argv or "--stat" in sys.argv: elif stdargs.stat:
ARG_MODE = "stat" ARG_MODE = "stat"
#? Variables -------------------------------------------------------------------------------------> #? Variables ------------------------------------------------------------------------------------->
BANNER_SRC: List[Tuple[str, str, str]] = [ BANNER_SRC: List[Tuple[str, str, str]] = [
@ -223,7 +214,7 @@ THREADS: int = psutil.cpu_count(logical=True) or 1
THREAD_ERROR: int = 0 THREAD_ERROR: int = 0
if "--debug" in sys.argv: if stdargs.debug :
DEBUG = True DEBUG = True
else: else:
DEBUG = False DEBUG = False