aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Xu <dxu@dxuuu.xyz>2019-08-19 19:06:52 -0700
committerDrew DeVault <sir@cmpwn.com>2019-08-20 16:05:20 +0900
commitea4fe713607e40cf19df37cdd0699cacba7313a3 (patch)
tree99da6e4091a99ad99d708f125fe2a1052e4cf83e
parent6fcc047c3116b6ef59cae39b3beb9e815f9b62a6 (diff)
downloadaerc-ea4fe713607e40cf19df37cdd0699cacba7313a3.tar.gz
Strip carriage returns (^M) when filtering emails
Presumably some email servers will transform newlines into carriage return new lines to better support windows users. I can't prove this but that's the best explanation I have for my hosted email provider (fastmail). Without this patch, I was seeing annoying `^M`s at the end of every filtered line. Signed-off-by: Daniel Xu <dxu@dxuuu.xyz>
-rwxr-xr-xfilters/hldiff6
-rwxr-xr-xfilters/plaintext3
2 files changed, 9 insertions, 0 deletions
diff --git a/filters/hldiff b/filters/hldiff
index a17f17b8..64e95d2c 100755
--- a/filters/hldiff
+++ b/filters/hldiff
@@ -10,6 +10,9 @@ BEGIN {
}
{
if (hit_diff == 0) {
+ # Strip carriage returns from line
+ gsub(/\r/, "", $0)
+
if ($0 ~ /^diff /) {
hit_diff = 1;
print bright $0 reset
@@ -23,6 +26,9 @@ BEGIN {
print $0
}
} else {
+ # Strip carriage returns from line
+ gsub(/\r/, "", $0)
+
if ($0 ~ /^-/) {
print red $0 reset
} else if ($0 ~ /^\+/) {
diff --git a/filters/plaintext b/filters/plaintext
index 71e33f7c..cfaa170e 100755
--- a/filters/plaintext
+++ b/filters/plaintext
@@ -5,6 +5,9 @@ BEGIN {
reset = "\x1B[0m"
}
{
+ # Strip carriage returns from line
+ gsub(/\r/, "", $0)
+
if ($0 ~ /^On .*, .* wrote:/ || $0 ~ /^>+/) {
print dim cyan $0 reset
} else {