mirror of
				https://github.com/openimsdk/open-im-server.git
				synced 2025-11-04 03:13:15 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			141 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			141 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env bash
 | 
						|
 | 
						|
# Copyright © 2023 OpenIM. All rights reserved.
 | 
						|
#
 | 
						|
# Licensed under the Apache License, Version 2.0 (the "License");
 | 
						|
# you may not use this file except in compliance with the License.
 | 
						|
# You may obtain a copy of the License at
 | 
						|
#
 | 
						|
#     http://www.apache.org/licenses/LICENSE-2.0
 | 
						|
#
 | 
						|
# Unless required by applicable law or agreed to in writing, software
 | 
						|
# distributed under the License is distributed on an "AS IS" BASIS,
 | 
						|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
						|
# See the License for the specific language governing permissions and
 | 
						|
# limitations under the License.
 | 
						|
 | 
						|
# this script is used to install the dependencies of the project
 | 
						|
#
 | 
						|
# Usage: `scripts/color.sh`.
 | 
						|
################################################################################
 | 
						|
 | 
						|
# shellcheck disable=SC2034
 | 
						|
if [[ ! -v COLOR_OPEN ]]; then
 | 
						|
    COLOR_OPEN=1
 | 
						|
fi
 | 
						|
 | 
						|
# Function for colored echo
 | 
						|
openim::color::echo() {
 | 
						|
    COLOR=$1
 | 
						|
    [ $COLOR_OPEN -eq 1 ]  && echo -e "${COLOR} $(date '+%Y-%m-%d %H:%M:%S') $@ ${COLOR_SUFFIX}"
 | 
						|
    shift
 | 
						|
}
 | 
						|
 | 
						|
# Define color variables
 | 
						|
# --- Feature --- 
 | 
						|
COLOR_NORMAL='\033[0m';COLOR_BOLD='\033[1m';COLOR_DIM='\033[2m';COLOR_UNDER='\033[4m';
 | 
						|
COLOR_ITALIC='\033[3m';COLOR_NOITALIC='\033[23m';COLOR_BLINK='\033[5m';
 | 
						|
COLOR_REVERSE='\033[7m';COLOR_CONCEAL='\033[8m';COLOR_NOBOLD='\033[22m';
 | 
						|
COLOR_NOUNDER='\033[24m';COLOR_NOBLINK='\033[25m';
 | 
						|
 | 
						|
# --- Front color --- 
 | 
						|
COLOR_BLACK='\033[30m';
 | 
						|
COLOR_RED='\033[31m';
 | 
						|
COLOR_GREEN='\033[32m';
 | 
						|
COLOR_YELLOW='\033[33m';
 | 
						|
COLOR_BLUE='\033[34m';
 | 
						|
COLOR_MAGENTA='\033[35m';
 | 
						|
COLOR_CYAN='\033[36m';
 | 
						|
COLOR_WHITE='\033[37m';
 | 
						|
 | 
						|
# --- background color --- 
 | 
						|
COLOR_BBLACK='\033[40m';COLOR_BRED='\033[41m';
 | 
						|
COLOR_BGREEN='\033[42m';COLOR_BYELLOW='\033[43m';
 | 
						|
COLOR_BBLUE='\033[44m';COLOR_BMAGENTA='\033[45m';
 | 
						|
COLOR_BCYAN='\033[46m';COLOR_BWHITE='\033[47m';
 | 
						|
 | 
						|
# --- Color definitions --- 
 | 
						|
# Color definitions
 | 
						|
COLOR_SUFFIX="\033[0m"      # End all colors and special effects
 | 
						|
BLACK_PREFIX="\033[30m"     # Black prefix
 | 
						|
RED_PREFIX="\033[31m"       # Red prefix
 | 
						|
GREEN_PREFIX="\033[32m"     # Green prefix
 | 
						|
YELLOW_PREFIX="\033[33m"    # Yellow prefix
 | 
						|
BLUE_PREFIX="\033[34m"      # Blue prefix
 | 
						|
SKY_BLUE_PREFIX="\033[36m"  # Sky blue prefix
 | 
						|
WHITE_PREFIX="\033[37m"     # White prefix
 | 
						|
BOLD_PREFIX="\033[1m"       # Bold prefix
 | 
						|
UNDERLINE_PREFIX="\033[4m"  # Underline prefix
 | 
						|
ITALIC_PREFIX="\033[3m"     # Italic prefix
 | 
						|
CYAN_PREFIX="\033[0;36m"     # Cyan prefix
 | 
						|
 | 
						|
# Print colors you can use
 | 
						|
openim::color::print_color()
 | 
						|
{
 | 
						|
  echo
 | 
						|
  echo -e ${bmagenta}--back-color:${normal}
 | 
						|
  echo "bblack; bgreen; bblue; bcyan; bred; byellow; bmagenta; bwhite"
 | 
						|
  echo
 | 
						|
  echo -e ${red}--font-color:${normal}
 | 
						|
  echo "black; red; green; yellow; blue; magenta; cyan; white"
 | 
						|
  echo
 | 
						|
  echo -e ${bold}--font:${normal}
 | 
						|
  echo "normal; italic; reverse; nounder; bold; noitalic; conceal; noblink;
 | 
						|
  dim; blink; nobold; under"
 | 
						|
  echo
 | 
						|
}
 | 
						|
 | 
						|
# test functions
 | 
						|
openim::color::test() {
 | 
						|
    echo "Starting the color tests..."
 | 
						|
 | 
						|
    echo "Testing normal echo without color"
 | 
						|
    openim::color::echo $COLOR_NORMAL "This is a normal text"
 | 
						|
 | 
						|
    echo "Testing bold echo"
 | 
						|
    openim::color::echo $COLOR_BOLD "This is bold text"
 | 
						|
 | 
						|
    echo "Testing dim echo"
 | 
						|
    openim::color::echo $COLOR_DIM "This is dim text"
 | 
						|
 | 
						|
    echo "Testing underlined echo"
 | 
						|
    openim::color::echo $COLOR_UNDER "This is underlined text"
 | 
						|
 | 
						|
    echo "Testing italic echo"
 | 
						|
    openim::color::echo $COLOR_ITALIC "This is italic text"
 | 
						|
 | 
						|
    echo "Testing red color"
 | 
						|
    openim::color::echo $COLOR_RED "This is red text"
 | 
						|
 | 
						|
    echo "Testing green color"
 | 
						|
    openim::color::echo $COLOR_GREEN "This is green text"
 | 
						|
 | 
						|
    echo "Testing yellow color"
 | 
						|
    openim::color::echo $COLOR_YELLOW "This is yellow text"
 | 
						|
 | 
						|
    echo "Testing blue color"
 | 
						|
    openim::color::echo $COLOR_BLUE "This is blue text"
 | 
						|
 | 
						|
    echo "Testing magenta color"
 | 
						|
    openim::color::echo $COLOR_MAGENTA "This is magenta text"
 | 
						|
 | 
						|
    echo "Testing cyan color"
 | 
						|
    openim::color::echo $COLOR_CYAN "This is cyan text"
 | 
						|
 | 
						|
    echo "Testing black background"
 | 
						|
    openim::color::echo $COLOR_BBLACK "This is text with black background"
 | 
						|
 | 
						|
    echo "Testing red background"
 | 
						|
    openim::color::echo $COLOR_BRED "This is text with red background"
 | 
						|
 | 
						|
    echo "Testing green background"
 | 
						|
    openim::color::echo $COLOR_BGREEN "This is text with green background"
 | 
						|
 | 
						|
    echo "Testing blue background"
 | 
						|
    openim::color::echo $COLOR_BBLUE "This is text with blue background"
 | 
						|
 | 
						|
    echo "All tests completed!"
 | 
						|
}
 | 
						|
 | 
						|
# openim::color::test
 |