summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/normal.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/normal.cc b/src/normal.cc
index 02f5490c..2cf066d0 100644
--- a/src/normal.cc
+++ b/src/normal.cc
@@ -395,7 +395,8 @@ void pipe(Context& context, NormalParams)
str += '\n';
str = ShellManager::instance().pipe(str, real_cmd, context,
{}, EnvVarMap{});
- if (insert_eol and str.back() == '\n')
+ if ((insert_eol or sel.max() == buffer.back_coord()) and
+ str.back() == '\n')
str = str.substr(0, str.length()-1);
strings.push_back(std::move(str));
}