diff options
| author | 2019-10-12 21:50:24 +0100 | |
|---|---|---|
| committer | 2019-10-12 21:50:24 +0100 | |
| commit | ea589b744ff26d95c9933c03b6068c55b945c97e (patch) | |
| tree | f5c5523b553e38fd16eaa840162c4e916fcb8382 /modules | |
| parent | Merge pull request #176 from jlu5/patch-1 (diff) | |
| parent | Remove @staticmethod (diff) | |
Merge pull request #173 from panicbit/splitpoints
Adjust line splitpoints to word boundaries. closes #159
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/commands/outs.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/modules/commands/outs.py b/modules/commands/outs.py index 2677d1bf..c81883ab 100644 --- a/modules/commands/outs.py +++ b/modules/commands/outs.py @@ -4,6 +4,7 @@ from src import utils STR_MORE = " (more...)" STR_MORE_LEN = len(STR_MORE.encode("utf8")) STR_CONTINUED = "(...continued) " +WORD_BOUNDARY = ' ' class Out(object): def __init__(self, server, module_name, target, target_str, tags): @@ -54,6 +55,8 @@ class Out(object): margin=STR_MORE_LEN) if truncated: + valid, truncated = self._adjust_to_word_boundaries(valid, truncated) + line = utils.irc.parse_line(valid+STR_MORE) self._text = "%s%s" % (STR_CONTINUED, truncated) else: @@ -61,6 +64,17 @@ class Out(object): sent_line = self.server.send(line) + def _adjust_to_word_boundaries(self, left, right): + if right[0] == WORD_BOUNDARY: + return left, right + + parts = left.rsplit(WORD_BOUNDARY, 1) + + if len(parts) != 2: + return left, right + + return parts[0], parts[1] + right + def _default_prefix(self, s: str): return s def set_prefix(self, prefix): |
