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 ec3001b5..33460cf8 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" } @@ -4184,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. @@ -4401,6 +4416,7 @@ get_args() { ;; esac ;; + "--stdout") stdout="on" ;; "-v") verbose="on" ;; "-vv") set -x; verbose="on" ;; "--help") usage ;; @@ -4421,9 +4437,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 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