From 04c22a8edd6064b63aac557597bae565f4848f8b Mon Sep 17 00:00:00 2001
From: Muhammad Herdiansyah <herdiansyah@openmailbox.org>
Date: Thu, 3 Aug 2017 15:16:52 +0700
Subject: [PATCH 1/2] Misc: Reimplement stdout

---
 neofetch | 22 +++++++++++++++++++---
 1 file changed, 19 insertions(+), 3 deletions(-)

diff --git a/neofetch b/neofetch
index ec3001b5..9e49c2d6 100755
--- a/neofetch
+++ b/neofetch
@@ -2801,7 +2801,7 @@ prin() {
     string="${subtitle_color}${bold}${string}"
 
     # Print the info.
-    printf "%b\n" "${text_padding:+\033[${text_padding}C}${zws}${string}${reset} "
+    printf "%b\n" "${text_padding:+\033[${text_padding}C}${zws}${string}${reset}"
 
     # Calculate info height.
     ((++info_height))
@@ -2813,7 +2813,7 @@ prin() {
 get_underline() {
     if [[ "$underline_enabled" == "on" ]]; then
         printf -v underline "%${length}s"
-        printf "%b\n" "${text_padding:+\033[${text_padding}C}${zws}${underline_color}${underline// /$underline_char}${reset} "
+        printf "%b\n" "${text_padding:+\033[${text_padding}C}${zws}${underline_color}${underline// /$underline_char}${reset}"
         unset -v length
     fi
     prin=1
@@ -3636,6 +3636,20 @@ color() {
 
 # OTHER
 
+stdout() {
+    image_backend="off"
+    unset subtitle_color
+    unset colon_color
+    unset info_color
+    unset underline_color
+    unset bold
+    unset title_color
+    unset at_color
+    unset text_padding
+    unset zws
+    unset reset
+}
+
 err() {
     err+="$(color 1)[!]\033[0m $1\n"
 }
@@ -4401,6 +4415,7 @@ get_args() {
                     ;;
                 esac
             ;;
+            "--stdout") stdout="on" ;;
             "-v") verbose="on" ;;
             "-vv") set -x; verbose="on" ;;
             "--help") usage ;;
@@ -4421,9 +4436,10 @@ main() {
     get_distro
     get_bold
     get_distro_colors
+    [[ "$stdout" == "on" ]] && stdout
 
     # Minix doesn't support these sequences.
-    if [[ "$TERM" != "minix" ]]; then
+    if [[ "$TERM" != "minix" && "$stdout" != "on" ]]; then
         # If the script exits for any reason, unhide the cursor.
         trap 'printf "\033[?25h\033[?7h"' EXIT
 

From faa71d0f95571800a8eaea221a8a6f915ff46ff8 Mon Sep 17 00:00:00 2001
From: Muhammad Herdiansyah <herdiansyah@openmailbox.org>
Date: Fri, 4 Aug 2017 00:15:55 +0700
Subject: [PATCH 2/2] Docs: CHANGELOG and manpage

---
 CHANGELOG.md       | 1 +
 config/config.conf | 6 ++++++
 neofetch           | 1 +
 neofetch.1         | 5 ++++-
 4 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index eb8d4fa5..4f4abcae 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -8,6 +8,7 @@
 
 - Config file now has a `.conf` suffix.
 - Neofetch now assumes target directories (config file and ASCII directory) at install time, this fixes problems with systems such as NixOS.
+- `stdout` mode is now reimplemented.
 
 
 ## Operating System
diff --git a/config/config.conf b/config/config.conf
index 33b3cf82..44b03a0b 100644
--- a/config/config.conf
+++ b/config/config.conf
@@ -717,6 +717,12 @@ image_host="teknik"
 
 # Misc Options
 
+# Stdout mode
+# Turn off all colors and disables image backend (ASCII/Image).
+# Useful for piping into another command.
+# Default: 'off'
+# Values: 'on', 'off'
+stdout="off"
 
 # Config version.
 #
diff --git a/neofetch b/neofetch
index 9e49c2d6..33460cf8 100755
--- a/neofetch
+++ b/neofetch
@@ -4198,6 +4198,7 @@ SCREENSHOT:
 OTHER:
     --config /path/to/config    Specify a path to a custom config file
     --config none               Launch the script without a config file
+    --stdout                    Turn off all colors and disables any ASCII/image backend.
     --help                      Print this text and exit
     --version                   Show neofetch version
     -v                          Display error messages.
diff --git a/neofetch.1 b/neofetch.1
index 21e96bd8..c31f1c90 100644
--- a/neofetch.1
+++ b/neofetch.1
@@ -1,5 +1,5 @@
 .\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.47.4.
-.TH NEOFETCH "1" "July 2017" "Neofetch 3.2.1-git" "User Commands"
+.TH NEOFETCH "1" "August 2017" "Neofetch 3.2.1-git" "User Commands"
 .SH NAME
 Neofetch \- A fast, highly customizable system info script
 .SH SYNOPSIS
@@ -304,6 +304,9 @@ Specify a path to a custom config file
 \fB\-\-config\fR none
 Launch the script without a config file
 .TP
+\fB\-\-stdout\fR
+Turn off all colors and disables any ASCII/image backend.
+.TP
 \fB\-\-help\fR
 Print this text and exit
 .TP