You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							70 lines
						
					
					
						
							1.8 KiB
						
					
					
				
			
		
		
	
	
							70 lines
						
					
					
						
							1.8 KiB
						
					
					
				| # --- SDE-COPYRIGHT-NOTE-BEGIN --- | |
| # This copyright note is auto-generated by ./scripts/Create-CopyPatch. | |
| # | |
| # Filename: package/.../sysfiles/etc_rc.d_functions-ansi.in.txt | |
| # Copyright (C) 2006 - 2008 The OpenSDE Project | |
| # | |
| # More information can be found in the files COPYING and README. | |
| # | |
| # This program is free software; you can redistribute it and/or modify | |
| # it under the terms of the GNU General Public License as published by | |
| # the Free Software Foundation; version 2 of the License. A copy of the | |
| # GNU General Public License can be found in the file COPYING. | |
| # --- SDE-COPYRIGHT-NOTE-END --- | |
|  | |
| # http://en.wikipedia.org/wiki/ANSI_escape_code | |
| # | |
|  | |
| ECHO='echo -e' | |
| ESC='\e'	# \e or \033 | |
| BELL='\a'	# \a or 07 | |
|  | |
| ART_SUCCESS="  OK " | |
| ART_FAILURE=" FAIL" | |
| ART_NEXT=" v " | |
|  | |
| COLOR_BANNER="$ESC[35;1m"	# magenta | |
| COLOR_TITLE="$ESC[36m"		# cyan | |
| COLOR_NORMAL="$ESC[0m"		# default (no attributes) | |
| COLOR_SUCCESS="$ESC[32m"	# green | |
| COLOR_FAILURE="$ESC[31m"	# red | |
|  | |
| MOVE_EOL="$ESC[222G"		# 222 columns to the right... kind-of-eol | |
| MOVE_UP="$ESC[1A"		# 1 line up (eat last \n) | |
|  | |
| MOVE_LEFT_STATUS="$ESC[$( expr ${#ART_SUCCESS} - 1 )D"	# move left the length of $ART_SUCCESS | |
| MOVE_LEFT_NEXT="$ESC[$( expr ${#ART_NEXT} - 1 )D"	# move left the length of $ART_NEXT | |
|  | |
| banner() | |
| { | |
| 	$ECHO "$COLOR_BANNER$*$COLOR_NORMAL" | |
| } | |
|  | |
| title() | |
| { | |
| 	local x=1 columns= | |
| 	columns=$( if ! stty size -F /dev/tty; then | |
| 		stty size -F /dev/console | |
| 	fi 2> /dev/null | cut -d' ' -f2 ) | |
| 	[ -n "$columns" ] || columns=80 | |
|  | |
| 	# fill with dots with an "arrow" pointing down at the end. | |
| 	for (( x=1; x<columns; x++ )); do | |
| 		$ECHO -n '.' | |
| 	done | |
| 	$ECHO -n "$MOVE_LEFT_NEXT$ART_NEXT\r" | |
|  | |
| 	# and the title | |
| 	$ECHO "$COLOR_TITLE$* $COLOR_NORMAL" | |
| 	error=0 | |
| } | |
|  | |
| status() | |
| { | |
| 	$ECHO -n "$MOVE_UP$MOVE_EOL$MOVE_LEFT_STATUS" | |
| 	if [ ${1:-$error} -eq 0 ]; then | |
| 		$ECHO "$COLOR_SUCCESS$ART_SUCCESS$COLOR_NORMAL" | |
| 	else | |
| 		$ECHO "$BELL$COLOR_FAILURE$ART_FAILURE$COLOR_NORMAL" | |
| 	fi | |
| }
 | |
| 
 |