AutoYADM commit: 2025-03-25 14:00:07
This commit is contained in:
parent
fadf9c9d31
commit
f5197a2655
2 changed files with 80 additions and 55 deletions
|
@ -2,72 +2,48 @@
|
||||||
|
|
||||||
import textwrap
|
import textwrap
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
# with open(sys.argv[1], 'r') as f:
|
|
||||||
# lines = f.read().splitlines()
|
|
||||||
# print(lines)
|
|
||||||
|
|
||||||
# first pass: reflow paragraphs
|
# first pass: reflow paragraphs
|
||||||
# paragraph = []
|
paragraph = []
|
||||||
# lines = []
|
lines = []
|
||||||
# for line in sys.stdin:
|
|
||||||
# line = line.rstrip()
|
|
||||||
# if line:
|
|
||||||
# paragraph.append(line)
|
|
||||||
# else:
|
|
||||||
# if paragraph:
|
|
||||||
# lines.append(' '.join(paragraph))
|
|
||||||
# lines.append("\n")
|
|
||||||
# if paragraph:
|
|
||||||
# lines.append(' '.join(paragraph))
|
|
||||||
|
|
||||||
|
|
||||||
skipping = False
|
skipping = False
|
||||||
in_par = False
|
for line in sys.stdin:
|
||||||
running = True
|
line = line.rstrip()
|
||||||
while running:
|
if line:
|
||||||
line = sys.stdin.readline()
|
if line.startswith(">") or skipping:
|
||||||
if line == '':
|
# ignore quoted line
|
||||||
running = False
|
lines.append(line)
|
||||||
|
elif line.startswith("```"):
|
||||||
|
# ignore code block
|
||||||
|
skipping = not skipping
|
||||||
|
lines.append(line)
|
||||||
|
elif line.startswith("--"):
|
||||||
|
skipping = True
|
||||||
|
lines.append(line)
|
||||||
|
else:
|
||||||
|
paragraph.append(line)
|
||||||
|
else:
|
||||||
|
if paragraph:
|
||||||
|
lines.append(' '.join(paragraph))
|
||||||
|
paragraph = []
|
||||||
|
lines.append("\n")
|
||||||
|
if paragraph:
|
||||||
|
lines.append(' '.join(paragraph))
|
||||||
|
skipping = False
|
||||||
|
for line in lines:
|
||||||
if line.startswith(">"):
|
if line.startswith(">"):
|
||||||
# ignore quoted line
|
# ignore quoted line
|
||||||
print(line, end = "")
|
print(line)
|
||||||
elif line.startswith("```"):
|
elif line.startswith("```"):
|
||||||
# ignore code block
|
# ignore code block
|
||||||
skipping = not skipping
|
skipping = not skipping
|
||||||
print(line, end = "")
|
print(line)
|
||||||
elif line.startswith("--"):
|
elif line.startswith("--"):
|
||||||
skipping = True
|
skipping = True
|
||||||
print(line, end = "")
|
print(line)
|
||||||
elif not line.rstrip():
|
|
||||||
# Empty line
|
|
||||||
in_par = not in_par
|
|
||||||
print()
|
|
||||||
print("printing empty line")
|
|
||||||
# print(line, end="")
|
|
||||||
else:
|
else:
|
||||||
if not skipping and in_par:
|
|
||||||
par = []
|
|
||||||
while True:
|
|
||||||
next_line = sys.stdin.readline()
|
|
||||||
# if not line.startswith((">", "```", "--")):
|
|
||||||
stripped = next_line.rstrip()
|
|
||||||
# print(next_line)
|
|
||||||
# print("runs")
|
|
||||||
if stripped:
|
|
||||||
# print("runs strip")
|
|
||||||
par.append(stripped)
|
|
||||||
else:
|
|
||||||
in_par = False
|
|
||||||
print("breaking par")
|
|
||||||
# par.append("\n")
|
|
||||||
break
|
|
||||||
line = " ".join(par)
|
|
||||||
# print(par)
|
|
||||||
# empty line, treat next section as paragraph
|
|
||||||
# TODO: fix signature being mangled and newlines erased
|
# TODO: fix signature being mangled and newlines erased
|
||||||
if not skipping:
|
if not skipping:
|
||||||
wrapped = textwrap.wrap(line, width=74, break_long_words=False, replace_whitespace=True)
|
wrapped = textwrap.wrap(line, width=74, break_long_words=False, replace_whitespace=True)
|
||||||
print("\n".join(wrapped), end="")
|
print("\n".join(wrapped))
|
||||||
else:
|
else:
|
||||||
print(line, end = "")
|
print(line)
|
||||||
|
|
49
.config/mail/format2.py
Executable file
49
.config/mail/format2.py
Executable file
|
@ -0,0 +1,49 @@
|
||||||
|
#!/bin/env python
|
||||||
|
|
||||||
|
import textwrap
|
||||||
|
import sys
|
||||||
|
# first pass: reflow paragraphs
|
||||||
|
paragraph = []
|
||||||
|
lines = []
|
||||||
|
skipping = False
|
||||||
|
for line in sys.stdin:
|
||||||
|
line = line.rstrip()
|
||||||
|
if line:
|
||||||
|
if line.startswith(">") or skipping:
|
||||||
|
# ignore quoted line
|
||||||
|
lines.append(line)
|
||||||
|
elif line.startswith("```"):
|
||||||
|
# ignore code block
|
||||||
|
skipping = not skipping
|
||||||
|
lines.append(line)
|
||||||
|
elif line.startswith("--"):
|
||||||
|
skipping = True
|
||||||
|
lines.append(line)
|
||||||
|
else:
|
||||||
|
paragraph.append(line)
|
||||||
|
else:
|
||||||
|
if paragraph:
|
||||||
|
lines.append(' '.join(paragraph))
|
||||||
|
paragraph = []
|
||||||
|
lines.append("\n")
|
||||||
|
if paragraph:
|
||||||
|
lines.append(' '.join(paragraph))
|
||||||
|
skipping = False
|
||||||
|
for line in lines:
|
||||||
|
if line.startswith(">"):
|
||||||
|
# ignore quoted line
|
||||||
|
print(line)
|
||||||
|
elif line.startswith("```"):
|
||||||
|
# ignore code block
|
||||||
|
skipping = not skipping
|
||||||
|
print(line)
|
||||||
|
elif line.startswith("--"):
|
||||||
|
skipping = True
|
||||||
|
print(line)
|
||||||
|
else:
|
||||||
|
# TODO: fix signature being mangled and newlines erased
|
||||||
|
if not skipping:
|
||||||
|
wrapped = textwrap.wrap(line, width=74, break_long_words=False, replace_whitespace=True)
|
||||||
|
print("\n".join(wrapped))
|
||||||
|
else:
|
||||||
|
print(line)
|
Loading…
Add table
Add a link
Reference in a new issue