Browse Source

some fixes for /bin/sh

pull/1/head
10sr 11 years ago
parent
commit
167ee72ffc
2 changed files with 59 additions and 45 deletions
  1. +8
    -2
      README.txt
  2. +51
    -43
      shrc

+ 8
- 2
README.txt View File

@@ -37,9 +37,13 @@ both `setup.sh` and `shrc`.
Sourcing flow
-------------

$HOME/.profile <= console login (maybe sourced from .{ba,z}sh_profile)
When using `sh`, rc file for interactive use is found by `ENV` and it is usually
set to `$HOME/.shrc`.


$HOME/.{ba,z}shrc <= bash, zsh
|
`--$HOME/.{ba,z}shrc
`--$HOME/.shrc <= sh
|
`--$HOME/.dotfiles/shrc

@@ -50,3 +54,5 @@ $HOME/.profile <= console login (maybe sourced from .{ba,z}sh_profile)
|--~/.dotfiles/xprofile
|
`--~/.dotfiles/xprograms



+ 51
- 43
shrc View File

@@ -1127,51 +1127,56 @@ __my_alert_fail(){
# http://archive.linux.or.jp/JF/JFdocs/Bash-Prompt-HOWTO-5.html
# http://www.grapecity.com/japan/powernews/column/clang/047/page02.htm

if $inzsh

if $inbash || $inzsh
then
__attr_beg=$'%{\033['
__attr_end='m%}'
else
__attr_beg='\[\033['
__attr_end='m\]'
fi
if $inzsh
then
__attr_beg=$'%{\033['
__attr_end='m%}'
else
__attr_beg='\[\033['
__attr_end='m\]'
fi

__color_default="${__attr_beg}0${__attr_end}"

__color_black="${__attr_beg}0;30${__attr_end}"
__color_red="${__attr_beg}0;31${__attr_end}"
__color_green="${__attr_beg}0;32${__attr_end}"
__color_brown="${__attr_beg}0;33${__attr_end}"
__color_blue="${__attr_beg}0;34${__attr_end}"
__color_purple="${__attr_beg}0;35${__attr_end}"
__color_cyan="${__attr_beg}0;36${__attr_end}"
__color_light_gray="${__attr_beg}0;37${__attr_end}"

__color_dark_gray="${__attr_beg}1;30${__attr_end}"
__color_light_red="${__attr_beg}1;31${__attr_end}"
__color_light_green="${__attr_beg}1;32${__attr_end}"
__color_yellow="${__attr_beg}1;33${__attr_end}"
__color_light_blue="${__attr_beg}1;34${__attr_end}"
__color_light_purple="${__attr_beg}1;35${__attr_end}"
__color_light_cyan="${__attr_beg}1;36${__attr_end}"
__color_white="${__attr_beg}1;37${__attr_end}"

__color_bg_black="${__attr_beg}40${__attr_end}"
__color_bg_red="${__attr_beg}41${__attr_end}"
__color_bg_green="${__attr_beg}42${__attr_end}"
__color_bg_brown="${__attr_beg}43${__attr_end}"
__color_bg_blue="${__attr_beg}44${__attr_end}"
__color_bg_purple="${__attr_beg}45${__attr_end}"
__color_bg_cyan="${__attr_beg}46${__attr_end}"
__color_bg_light_gray="${__attr_beg}47${__attr_end}"

__attr_underline="${__attr_beg}4${__attr_end}"
__attr_reverse="${__attr_beg}7${__attr_end}"
__attr_bold="${__attr_beg}1${__attr_end}"
__color_default="${__attr_beg}0${__attr_end}"

__color_black="${__attr_beg}0;30${__attr_end}"
__color_red="${__attr_beg}0;31${__attr_end}"
__color_green="${__attr_beg}0;32${__attr_end}"
__color_brown="${__attr_beg}0;33${__attr_end}"
__color_blue="${__attr_beg}0;34${__attr_end}"
__color_purple="${__attr_beg}0;35${__attr_end}"
__color_cyan="${__attr_beg}0;36${__attr_end}"
__color_light_gray="${__attr_beg}0;37${__attr_end}"

__color_dark_gray="${__attr_beg}1;30${__attr_end}"
__color_light_red="${__attr_beg}1;31${__attr_end}"
__color_light_green="${__attr_beg}1;32${__attr_end}"
__color_yellow="${__attr_beg}1;33${__attr_end}"
__color_light_blue="${__attr_beg}1;34${__attr_end}"
__color_light_purple="${__attr_beg}1;35${__attr_end}"
__color_light_cyan="${__attr_beg}1;36${__attr_end}"
__color_white="${__attr_beg}1;37${__attr_end}"

__color_bg_black="${__attr_beg}40${__attr_end}"
__color_bg_red="${__attr_beg}41${__attr_end}"
__color_bg_green="${__attr_beg}42${__attr_end}"
__color_bg_brown="${__attr_beg}43${__attr_end}"
__color_bg_blue="${__attr_beg}44${__attr_end}"
__color_bg_purple="${__attr_beg}45${__attr_end}"
__color_bg_cyan="${__attr_beg}46${__attr_end}"
__color_bg_light_gray="${__attr_beg}47${__attr_end}"

__attr_underline="${__attr_beg}4${__attr_end}"
__attr_reverse="${__attr_beg}7${__attr_end}"
__attr_bold="${__attr_beg}1${__attr_end}"
fi

# NOTE: tput is another easy way to set colors and background
# For example, "$(tput setab 4)text$(tput sgr0)" print text with background
# color blue.
# http://www.ibm.com/developerworks/jp/linux/aix/library/au-learningtput/index.html

if test "$TERM" != dumb
then
@@ -1216,16 +1221,19 @@ __my_ps1_move_15left="\[\033[15D\]"
# __my_ps1_right="${__my_ps1_save_pos}${__my_ps1_move_rightmost}"
# ${__my_ps1_move_15left}\D{%Y/%m/%d %H:%M}${__my_ps1_restore_pos}

$inbash && PS1="\
${__my_c4}:: ${__my_cdef}[${__my_c2}\u@\H${__my_cdef}:${__my_c1}\w/${__my_cdef}]\$(__my_ps1_info)\n\
${__my_c4}:: ${__my_cdef}\D{%Y/%m/%d %H:%M} \$(__my_ps1_jobs \j)${__my_ps1_str}\$(__my_alert_fail)${__my_ps1_right}\$ "

if $inzsh
then
PROMPT="\
${__my_c4}:: ${__my_cdef}[${__my_c2}%n@%M${__my_cdef}:${__my_c1}%~/${__my_cdef}]\$(__my_ps1_info)
${__my_c4}:: ${__my_cdef}\$(__my_ps1_jobs)${__my_ps1_str}\$(__my_alert_fail)%# "
RPROMPT="%D{%Y/%m/%d %H:%M}"
elif $inbash
then
PS1="\
${__my_c4}:: ${__my_cdef}[${__my_c2}\u@\H${__my_cdef}:${__my_c1}\w/${__my_cdef}]\$(__my_ps1_info)\n\
${__my_c4}:: ${__my_cdef}\D{%Y/%m/%d %H:%M} \$(__my_ps1_jobs \j)${__my_ps1_str}\$(__my_alert_fail)${__my_ps1_right}\$ "
else
PS1="$(printf $(whoami)@$(hostname)\n$ )"
fi

__my_set_header_line(){


Loading…
Cancel
Save