summaryrefslogtreecommitdiff
path: root/functions/echo.sh
blob: 8162212627a62c0700860ffc16e5aabfd7ec5e74 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
#!/bin/sh

# echo.sh - define output methods
# Copyright (C) 2006-2008 Daniel Baumann <daniel@debian.org>
#
# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
# This is free software, and you are welcome to redistribute it
# under certain conditions; see COPYING for details.

Echo ()
{
	STRING="${1}"
	shift

	if [ "${_L10N}" = "false" ]
	then
		printf "${STRING}\n"
	else
		printf "$(eval_gettext "${STRING}")" "${@}"; echo;
	fi
}

Echo_debug ()
{
	STRING="${1}"
	shift

	if [ "${_DEBUG}" = "enabled" ]
	then
		if [ "${_L10N}" = "false" ]
		then
			printf "D: ${STRING}\n"
		else
			printf "D: $(eval_gettext "${STRING}")" "${@}"; echo;
		fi
	fi
}

Echo_error ()
{
	STRING="${1}"
	shift

	if [ "${_L10N}" = "false" ]
	then
		printf "E: ${STRING}\n" >&2
	else
		(printf "E: $(eval_gettext "${STRING}")" "${@}"; echo;) >&2
	fi
}

Echo_message ()
{
	STRING="${1}"
	shift

	if [ "${_QUIET}" != "enabled" ]
	then
		if [ "${_L10N}" = "false" ]
		then
			printf "P: ${STRING}\n"
		else
			printf "P: $(eval_gettext "${STRING}")" "${@}"; echo;
		fi
	fi
}

Echo_verbose ()
{
	STRING="${1}"
	shift

	if [ "${_VERBOSE}" = "enabled" ]
	then
		if [ "${_L10N}" = "false" ]
		then
			printf "I: ${STRING}\n"
		else
			printf "I: $(eval_gettext "${STRING}")" "${@}"; echo;
		fi
	fi
}

Echo_warning ()
{
	STRING="${1}"
	shift

	if [ "${_L10N}" = "false" ]
	then
		printf "W: ${STRING}\n"
	else
		printf "W: $(eval_gettext "${STRING}")" "${@}"; echo;
	fi
}

Echo_breakage ()
{
	case "${LH_DISTRIBUTION}" in
		sid|unstable)
			Echo_message "If the following stage fails, the most likely cause of the problem is with your mirror configuration, a caching proxy or the sid distribution."
			;;
		*)
			Echo_message "If the following stage fails, the most likely cause of the problem is with your mirror configuration or a caching proxy."
			;;
	esac

	Echo_message "${@}"
}

Echo_file ()
{
	while read LINE
	do
		echo "${1}: ${LINE}"
	done < "${1}"
}