diff options
Diffstat (limited to 'poezio/windows/funcs.py')
-rw-r--r-- | poezio/windows/funcs.py | 60 |
1 files changed, 0 insertions, 60 deletions
diff --git a/poezio/windows/funcs.py b/poezio/windows/funcs.py deleted file mode 100644 index 22977374..00000000 --- a/poezio/windows/funcs.py +++ /dev/null @@ -1,60 +0,0 @@ -""" -Standalone functions used by the modules -""" - -import string -from typing import Optional, List -from poezio.windows.base_wins import FORMAT_CHAR, format_chars - -DIGITS = string.digits + '-' - - -def find_first_format_char(text: str, - chars: str = None) -> int: - to_find = chars or format_chars - pos = -1 - for char in to_find: - p = text.find(char) - if p == -1: - continue - if pos == -1 or p < pos: - pos = p - return pos - - -def truncate_nick(nick: Optional[str], size=10) -> Optional[str]: - if size < 1: - size = 1 - if nick and len(nick) > size: - return nick[:size] + '…' - return nick - - -def parse_attrs(text: str, previous: Optional[List[str]] = None) -> List[str]: - next_attr_char = text.find(FORMAT_CHAR) - if previous: - attrs = previous - else: - attrs = [] - while next_attr_char != -1 and text: - if next_attr_char + 1 < len(text): - attr_char = text[next_attr_char + 1].lower() - else: - attr_char = '\0' - if attr_char == 'o': - attrs = [] - elif attr_char == 'u': - attrs.append('u') - elif attr_char == 'b': - attrs.append('b') - elif attr_char == 'i': - attrs.append('i') - if attr_char in DIGITS and attr_char: - color_str = text[next_attr_char + 1:text.find('}', next_attr_char)] - if color_str: - attrs.append(color_str + '}') - text = text[next_attr_char + len(color_str) + 2:] - else: - text = text[next_attr_char + 2:] - next_attr_char = text.find(FORMAT_CHAR) - return attrs |