From 17a94b3228346b22e8d961c3af9704ffa71972ee Mon Sep 17 00:00:00 2001 From: quadrismegistus Date: Thu, 17 Sep 2020 09:59:27 +0100 Subject: [PATCH] komrade update! --- komrade/backend/messages.py | 26 +++----------------------- komrade/cli/cli.py | 27 ++++++++------------------- komrade/utils.py | 20 ++++++++++++++++++++ 3 files changed, 31 insertions(+), 42 deletions(-) diff --git a/komrade/backend/messages.py b/komrade/backend/messages.py index 24edb4c..e08d902 100644 --- a/komrade/backend/messages.py +++ b/komrade/backend/messages.py @@ -50,29 +50,9 @@ class Message(Logger): else: msg=self.msg - return str(msg) - - fpk=b64enc_s(self.from_pubkey) - fpk1,fpk2 = fpk[:len(fpk)//2],fpk[len(fpk)//2:] - numchar = len(b64enc_s(self.to_pubkey)) - linestr = '-'*CLI_WIDTH #(numchar+2) - -# return f""" -------{linestr} - -# from: @{self.from_name if self.from_name else ''} -# [{b64enc_s(self.from_pubkey)}] - -# to: @{self.to_name if self.to_name else ''} -# [{b64enc_s(self.to_pubkey)}] - -# -------{linestr} - -# msg: {msg} -# """ - import textwrap as tw - msg_s = '\n'.join(tw.wrap(str(msg),CLI_WIDTH)) - hdr='#'*CLI_WIDTH - + # return str(msg) + msg_s = wrapp(str(msg)) + hdr='#'*CLI_WIDTH return f""" {hdr} from: @{self.from_name if self.from_name else ''} diff --git a/komrade/cli/cli.py b/komrade/cli/cli.py index bb76965..6509dc1 100644 --- a/komrade/cli/cli.py +++ b/komrade/cli/cli.py @@ -86,25 +86,14 @@ class CLI(Logger): if not komrade_name: komrade_name='Telephone' # prefix='Komrade @'+komrade_name+': ' prefix='@'+komrade_name+': ' - blank=' '*(len(prefix) if len(prefix)>min_prefix_len else min_prefix_len) - total_msg=[] - for i,msg in enumerate(msgs): - if not msg: msg='' - msg=msg.replace('\r\n','\n').replace('\r','\n') - for ii,ln in enumerate(msg.split('\n')): - if not ln: - total_msg+=[''] - ln_wrap=tw.wrap(ln,CLI_WIDTH-len(prefix)) - for iii,lnw in enumerate(ln_wrap): - # prfx=prefix + (' '*(len(blank)-len(prefix))) if (not i and not ii and not iii and use_prefix) else blank - prfx=prefix + (' '*(len(blank)-len(prefix))) if (not i and not ii and not iii and use_prefix) else blank - x=prfx+lnw - total_msg+=[x] - # total_msg+=[''] - # print() - # print([total_msg]) - - print('\n'.join(total_msg)) + # wrap msg + total_msg=wrapp( + *msgs, + use_prefix=use_prefix, + prefix=prefix if use_prefix and prefix else '', + min_prefix_len=min_prefix_len if use_prefix and prefix else 0 + ) + print(total_msg) if pause: do_pause() if clear: clear_screen() diff --git a/komrade/utils.py b/komrade/utils.py index 5b4ef14..02c0927 100644 --- a/komrade/utils.py +++ b/komrade/utils.py @@ -31,6 +31,26 @@ def log(*x,off=False): with open(path_log,'a') as of: of.write('\n'+tolog+'\n') +from komrade.constants import CLI_WIDTH +def wrapp(*msgs,prefix='',min_prefix_len=0,width=CLI_WIDTH,use_prefix=False): + blank=' '*(len(prefix) if len(prefix)>min_prefix_len else min_prefix_len) + total_msg=[] + for i,msg in enumerate(msgs): + if not msg: msg='' + msg=msg.replace('\r\n','\n').replace('\r','\n') + for ii,ln in enumerate(msg.split('\n')): + if not ln: + total_msg+=[''] + ln_wrap=tw.wrap(ln,width-len(prefix)) + for iii,lnw in enumerate(ln_wrap): + prfx=prefix + (' '*(len(blank)-len(prefix))) if (not i and not ii and not iii and use_prefix) else blank + x=prfx+lnw + total_msg+=[x] + return '\n'.join(total_msg) + + + + def clear_screen(): import os # pass