diff --git a/src/microblog.py b/src/microblog.py index 51aff70..1c4a95a 100644 --- a/src/microblog.py +++ b/src/microblog.py @@ -545,6 +545,8 @@ if __name__ == "__main__": tl, tc, tg = get_posts(p, cfg["post"], new_posts) if tl == []: return + if "rss" in cfg and "post" in cfg: + cfg["rss"]["trailing_punctuation"] = cfg["post"]["trailing_punctuation"] # main timeline updated = [] updated += writepage(tpl, tl, tc, cfg["page"], diff --git a/src/rss.py b/src/rss.py index 9ec9807..bf40eb4 100644 --- a/src/rss.py +++ b/src/rss.py @@ -11,7 +11,7 @@ except ImportError: print("\trss disabled - missing dependency", file=sys.stderr) print("\tYour microblog still may have been generated.", file=sys.stderr) -def line2words(lines, limit): +def line2words(lines, limit, trailing_punctuation): output = [] char_count = 0 break_outer_loop = False @@ -29,8 +29,7 @@ def line2words(lines, limit): # last char of last word last_char = output[-1].strip()[-1] # print(output[-1], file=sys.stderr) - punctuation = [".", ")", ",", "!", "?", ">", ']'] - if last_char not in punctuation: + if last_char not in trailing_punctuation: output.append("...") return output @@ -99,7 +98,7 @@ def write_feed(posts, filename, params, tagname=None): # len of post.message is number of lines msg = post.message ti = " ".join( - line2words(msg,TITLE_LEN_LIMIT)) + line2words(msg, TITLE_LEN_LIMIT, params["trailing_punctuation"])) if params["use_atom"]: de = " ".join( enrich_msg( @@ -110,7 +109,7 @@ def write_feed(posts, filename, params, tagname=None): ) else: de = " ".join( - line2words(msg,DESC_LEN_LIMIT)) + line2words(msg, DESC_LEN_LIMIT, params["trailing_punctuation"])) li = base_url + ("#%i" % post.num) p = dateutil.parser.parse(post.timestamp) if params["use_atom"]: