[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: pipes and colors



On Mon, Apr 16, 2018 at 10:48:32AM +0300, sergio wrote:
> On 16/04/18 10:21, Peter Pentchev wrote:
> 
> 
> > Ну, если у Вас полности нету "кривых скриптов"
> 
> У меня вообще кривых скриптов нет. Я про чужие ./configure и Makefile.
> 
> 
> > "$HOME/bin/ls"
> 
> Не совсем понял, как это поможет.

Если хотите, чтобы в Вашем окружении выход ls и grep всегда был
цветным, тогда $HOME/bin/ls и $HOME/bin/grep поможет тем, что
все, что хочет выполнить ls и grep (вкл. Вашие вызови с командной
строчки) будут выполнять те оболочки, которые сделают все цветным.

Хм, но если Вы не хотите цветов, когда выполняете скрипты, тогда,
можно, сделать что-то вроде того, чего у меня в ~/.zshenv и ~/.zshrc:

[roam@straylight ~]$ cat .zshenv
[ -f ~/lang/sh/defaults/zsh_profile ] && roam_zshenv_only=1 . ~/lang/sh/defaults/zsh_profile
[roam@straylight ~]$ cat .zshrc
[ -f ~/lang/sh/defaults/zsh_profile ] && . ~/lang/sh/defaults/zsh_profile
[roam@straylight ~]$

И потом в ~/lang/sh/defaults/zsh_profile, после всего чего:

if [ -z "$roam_zshenv_only" ]; then
	# Real .zshrc territory
	setopt nomatch
	unsetopt appendhistory autocd beep extendedglob notify
	bindkey -e

	autoload -z edit-command-line
	zle -N edit-command-line
	bindkey '^X^E' edit-command-line

	if [ -f "$HOME/.zshcompstuff" ]; then
		. "$HOME/.zshcompstuff"
	fi

	case "$-" in
		*i*)
			echo 'Setting up interactive shell params..'
			if [ -x "`whence -p fortune 2>/dev/null`" ]; then
				fortune -a
			
			# ...

			fi
			;;
	esac
fi

И там, где "# ...", выложите Ваши alias-и для цветов.  Так Ваши
выполнения ls и grep с командной строчки будут цветным, но скрипты
никогда не увидят alias-и.

Всего лучшего,
Петр

-- 
Peter Pentchev  roam@ringlet.net roam@FreeBSD.org pp@storpool.com
PGP key:        http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint 2EE7 A7A5 17FC 124C F115  C354 651E EFB0 2527 DF13

Attachment: signature.asc
Description: PGP signature


Reply to: