v2.7 - floodrate delay interval added/efnet
This commit is contained in:
37
dr1p4ns1.py
37
dr1p4ns1.py
@@ -1,4 +1,4 @@
|
||||
########################################################################################### dr1p4ns1 version 2.3 ####### SOF
|
||||
########################################################################################### dr1p4ns1 version 2.6 ####### SOF
|
||||
#################################################################################################### #######################
|
||||
from glob import glob
|
||||
from time import sleep
|
||||
@@ -47,6 +47,7 @@ FIFO_PATH = f"{os.path.expanduser('~')}/.weechat/weechat_fifo"
|
||||
FIFO_ENABLED = True #####
|
||||
COPY_PATH = f"{os.path.expanduser('~')}/Pictures" #####
|
||||
DELETE_PATH = "/tmp" #####
|
||||
FLOODRATE_INTERVAL_SECONDS = 0.335 #####
|
||||
#################################################################################################### #######################
|
||||
#################################################################################################### #######################
|
||||
#####
|
||||
@@ -95,7 +96,12 @@ def getfiles(argv=""):
|
||||
print('ERROR: NO ANSI FILES IN THE PATH SPECIFIED',end='')
|
||||
sys.exit(1)
|
||||
return FILES
|
||||
#############################################################################################################################
|
||||
class D:
|
||||
def __init__(self):
|
||||
self.delay=FLOODRATE_INTERVAL_SECONDS
|
||||
########################################################################################################## CLASS DR1P4NS1 - 2
|
||||
|
||||
class dr1p4ns1:
|
||||
############################################################################################################ LOOKUP TABLE
|
||||
commands = {
|
||||
@@ -589,6 +595,7 @@ class UI:
|
||||
113: 'q',
|
||||
120: 'x',
|
||||
99: 'c',
|
||||
100: 'd',
|
||||
82: 'R'
|
||||
}
|
||||
return key_mapping.get(k, chr(k))
|
||||
@@ -609,7 +616,7 @@ class UI:
|
||||
while True:
|
||||
B='\x1b[1;94m'; C='\x1b[1;95m'; S='\x1b[1;36m'; M='\x1b[1;92m'; E='\x1b[0m'; R='\x1b[31m'
|
||||
msg=f"{B}[ {C}DR1P {B}] {B}- {B}[ {M}x{B}: {M}exit{B}, {M}c{B}: {M}copy{B}, {M}R{B}: {M}remove{B}, {M}q{B}: {M}pumpqueue{B}, {M}p{B}: {M}pump{B}, "
|
||||
msg+=f"{M}left{B}/{M}right{B}: {M}browse {B}] {B}- "
|
||||
msg+=f"{M}left{B}/{M}right{B}: {M}browse {B}] {B}- [ {M}d{B}: {M}delay{B} - {M}{dr1p.delay}{B} ]"
|
||||
msg+=f"{B}[ {S}pumpqueue{B}: {C}{len(self.QUEUE)} {B}- {S}index{B}: {C}{index+1}{B}/{C}{len(self.files)} {B}- {S}filename{B}: {C}{d.filename} {B}]{E}"
|
||||
if self.REMOVED==True: msg+=f'{R} - FILE REMOVED'
|
||||
print(msg)
|
||||
@@ -669,6 +676,28 @@ class UI:
|
||||
sleep(1)
|
||||
print('\x1bc')
|
||||
decoder.as_terminal()
|
||||
elif k == 'd':
|
||||
while True:
|
||||
print(f'{C}input floodrate delay{B}: {C}',end='')
|
||||
USER_INPUT=input()
|
||||
TRAPFLAG=-1
|
||||
try:
|
||||
TRAPFLAG=int(USER_INPUT)
|
||||
except:
|
||||
try:
|
||||
TRAPFLAG=float(USER_INPUT)
|
||||
except:
|
||||
print(f'{S}accepted floodrate delay range is between 0 and 10.0 seconds')
|
||||
try:
|
||||
if TRAPFLAG>=0 and TRAPFLAG<=10:
|
||||
dr1p.delay=TRAPFLAG
|
||||
break
|
||||
except:
|
||||
print(f'{S}accepted floodrate delay range is between 0 and 10.0 seconds')
|
||||
print(f'{M}floodrate delay set to{B}: {C}{dr1p.delay}')
|
||||
sleep(1)
|
||||
print('\x1bc')
|
||||
decoder.as_terminal()
|
||||
elif k == 'p':
|
||||
PMSG=""
|
||||
try:
|
||||
@@ -1133,6 +1162,7 @@ class ANSIDecoder:
|
||||
self.as_irc_lines()
|
||||
for _ in self.output_lines:
|
||||
self.fifo(_)
|
||||
sleep(dr1p.delay)
|
||||
################################################################################################### RE-ENCODING ENCODINGS
|
||||
def as_terminal_lines(self):
|
||||
default_fg=7
|
||||
@@ -1208,8 +1238,9 @@ class ANSIDecoder:
|
||||
print(_)
|
||||
################################################################################################################### ENTRY - 1
|
||||
if __name__=="__main__":
|
||||
dr1p=D()
|
||||
FIFO_ENABLED = os.path.exists(FIFO_PATH)
|
||||
files = getfiles(sys.argv)
|
||||
ui = UI(files)
|
||||
#################################################################################################### #######################
|
||||
########################################################################################### dr1p4ns1 version 2.3 ####### EOF
|
||||
########################################################################################### dr1p4ns1 version 2.6 ####### EOF
|
||||
Reference in New Issue
Block a user