Files
MSYS2-packages/filesystem/bash.bashrc
T
Renato Silva d81601b726 More environment improvements.
* Warning about required shortcut changes.
  When upgrading the filesystem package, user will be notified about the
  unified msys2_shell.cmd and asked for updating their shortcuts.

* New warning mechanism for interactive bash sessions.
  Applications can now add warnings to the terminal for notifying the
  user about possible problems. This is done by adding a file containing
  the warning text to one of the following locations:

      - /etc/profile.d/NAME.warning
      - /mingw32/etc/profile.d/NAME.warning
      - /mingw64/etc/profile.d/NAME.warning

  These files are processed by /etc/bash.bashrc. Files with the
  "warning.once" extension are removed after processing. An
  implementation example is provided by next change.

* Add simplified parameter -full-path to msys2_shell.cmd. The old
  parameter -use-full-path still works for now but is marked as
  deprecated using the above warning mechanism.

* Add file opening support to shell manager.
  Both directory and file arguments are now accepted and passed to
  Windows Explorer for opening with default application.

* Residual pkgrel updates.
2016-05-24 14:37:08 -03:00

51 lines
1.8 KiB
Plaintext

# To the extent possible under law, the author(s) have dedicated all
# copyright and related and neighboring rights to this software to the
# public domain worldwide. This software is distributed without any warranty.
# You should have received a copy of the CC0 Public Domain Dedication along
# with this software.
# If not, see <http://creativecommons.org/publicdomain/zero/1.0/>.
# /etc/bash.bashrc: executed by bash(1) for interactive shells.
# System-wide bashrc file
# Check that we haven't already been sourced.
([[ -z ${CYG_SYS_BASHRC} ]] && CYG_SYS_BASHRC="1") || return
# If not running interactively, don't do anything
[[ "$-" != *i* ]] && return
# Warnings
unset _warning_found
for _warning_prefix in '' ${MINGW_PREFIX}; do
for _warning_file in ${_warning_prefix}/etc/profile.d/*.warning{.once,}; do
test -f "${_warning_file}" || continue
_warning="$(command sed 's/^/\t\t/' "${_warning_file}" 2>/dev/null)"
if test -n "${_warning}"; then
if test -z "${_warning_found}"; then
_warning_found='true'
echo
fi
if test -t 1
then printf "\t\e[1;33mwarning:\e[0m\n${_warning}\n\n"
else printf "\twarning:\n${_warning}\n\n"
fi
fi
[[ "${_warning_file}" = *.once ]] && rm -f "${_warning_file}"
done
done
unset _warning_found
unset _warning_prefix
unset _warning_file
unset _warning
# If MSYS2_PS1 is set, use that as default PS1, otherwise set a default prompt
# of user@host, MSYSTEM variable, and current_directory
if test -n "${MSYS2_PS1}"
then PS1="${MSYS2_PS1}"
else PS1='\[\e]0;\w\a\]\n\[\e[32m\]\u@\h \[\e[35m\]$MSYSTEM\[\e[0m\] \[\e[33m\]\w\[\e[0m\]\n\$ '
fi
# Uncomment to use the terminal colours set in DIR_COLORS
# eval "$(dircolors -b /etc/DIR_COLORS)"