web-dev-qa-db-ja.com

.bash_profileを.zprofileに変換する方法

OSX Catalinaでは、シェルにzshを使用してほしいとのことで、私は好きなbashプロファイル(「借りた」)を持っていました。しかし、私はシェルの専門家ではないので、変換方法がわかりません。以下は、変換したい.bash_profileです。

#!/bin/bash

export TERM=xterm-256color
export CLICOLOR=1
export LSCOLORS=Fafacxdxbxegedabagacad

GREEN=$(tput setaf 2);
YELLOW=$(tput setaf 3);
RESET=$(tput sgr0);

function get_branch {
 git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\ \(\1\)/'
}

function random_element {
 declare -a array=("$@")
 r=$((RANDOM % ${#array[@]}))
 printf "%s\n" "${array[$r]}"
}

setEmoji () {
 EMOJI="$*"
 PS1="${YELLOW}\w${GREEN}\$(get_branch)${RESET} ${EMOJI}\n$ ";
}

newRandomEmoji () {
  setEmoji "$(random_element ???? ???? ???? ???? ???? ⛄ ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ⚛️ ???? ???? ???? ???? ???? ???? ???? ????‍???? ????‍ ????‍ ????‍ ????‍ ????‍???? ????‍???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ???? ✨ ☄️ ⚡️ ???? ???? ???? ???? ⚗️ ???? ???? ⚪️ ????)"
}

newRandomEmoji

newRandomEmoji

alias jestify="PS1=\"????\n$ \"";
alias cypressify="PS1=\"????\n$ \"";

# history size
HISTSIZE=5000
HISTFILESIZE=10000

# PATH ALTERATIONS
## Node
PATH="/usr/local/bin:$PATH:./node_modules/.bin";

# Custom bins
PATH="$PATH:$HOME/.bin";

CDPATH=.:$HOME:$HOME/code:$HOME/Desktop

alias ll="ls -la"
alias cls="clear"

alias pj="cd ~/Projects"

つまり、ランダムな絵文字なしで実行できます(楽しかったです)。でもカラープロンプトが欲しいです。ブランチをプロンプトに表示するのが好きだったので、自分がgitリポジトリにいるかどうか、現在どのブランチがチェックアウトされているかを常に知っていました。

私はどんな助けにも感謝します。

2
JeffBaumgardt

その既存の「.bash_profile」の内容を新しい「〜/ .zshrc」ファイルにコピーすることをお勧めします。変数、関数、エイリアスはそのまま動作します。希望するプロンプトに対して、Zshは豊富なプロンプトをサポートしています。新しいPowerlevel10kプロンプトをお勧めします。それは非常に高速で、完全にカスタマイズ可能で、有益です。インストールのヘルプは https://github.com/romkatv/powerlevel10k にあります。プロンプトを決定する前に、zshのプラグインフレームワークを調査することをお勧めします。各フレームワークには、カスタムプロンプトを追加する独自の方法があります。 Oh-my-zshとPreztoは2つの一般的で役立つマネージャーですが、多くのマネージャーがいます。必要に応じて、自分でロールすることも、なしで実行することもできます。 Prezto( https://github.com/sorin-ionescu/prezto )を使用すると、すばやく移動できますが、最近、oh-my-zsh( https://)に切り替えました。 github.com/robbyrussell/oh-my-zsh )も非常に簡単でクリーンです。

2
Buckley