Skip to content

Commit

Permalink
removed roll_text
Browse files Browse the repository at this point in the history
  • Loading branch information
napalm255 committed Dec 14, 2014
1 parent 84fbbe0 commit 42366e1
Showing 1 changed file with 0 additions and 64 deletions.
64 changes: 0 additions & 64 deletions powertmux.sh
Original file line number Diff line number Diff line change
Expand Up @@ -229,70 +229,6 @@ __powertmux_plugin_separator_is_thin() {
${powertmux_plugin[3]} == $POWERTMUX_SEPARATOR_RIGHT_THIN ]];
}

# Rolling anything what you want.
# arg1: text to roll.
# arg2: max length to display.
# arg3: roll speed in characters per second.
roll_text() {
local text="$1" # Text to print

if [ -z "$text" ]; then
return;
fi

local max_len="10" # Default max length.

if [ -n "$2" ]; then
max_len="$2"
fi

local speed="1" # Default roll speed in chars per second.

if [ -n "$3" ]; then
speed="$3"
fi

# Skip rolling if the output is less than max_len.
if [ "${#text}" -le "$max_len" ]; then
echo "$text"
return
fi

# Anything starting with 0 is an Octal number in Shell,C or Perl,
# so we must explicitly state the base of a number using base#number
local offset=$((10#$(date +%s) * ${speed} % ${#text}))

# Truncate text.
text=${text:offset}

local char # Character.
local bytes # The bytes of one character.
local index

for ((index=0; index < max_len; index++)); do
char=${text:index:1}
bytes=$(echo -n $char | wc -c)
# The character will takes twice space
# of an alphabet if (bytes > 1).
if ((bytes > 1)); then
max_len=$((max_len - 1))
fi
done

text=${text:0:max_len}

#echo "index=${index} max=${max_len} len=${#text}"
# How many spaces we need to fill to keep
# the length of text that will be shown?
local fill_count=$((${index} - ${#text}))

for ((index=0; index < fill_count; index++)); do
text="${text} "
done

echo "${text}"
}

# clear all variables
unset $(env | grep POWERTMUX | sed -e 's/=.*//g')

Expand Down

0 comments on commit 42366e1

Please sign in to comment.