public:computer:iterm_customize

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
public:computer:iterm_customize [2018/03/17 18:16] – created alexpublic:computer:iterm_customize [2022/09/25 23:03] (current) alex
Line 1: Line 1:
 {{tag>macOS iTerm ZSH}} {{tag>macOS iTerm ZSH}}
 ====== iTerm2 Customize on macOS ====== ====== iTerm2 Customize on macOS ======
 +
 +<code>
 +ref from : https://gist.github.com/kevin-smets/8568070
 +
 +get and install iTerm2
 +
 +iTerm->Preferences->Profiles->colors->load presets. : Solarized Dark theme
 +
 +get and install Oh My Zsh
 +
 +sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)”
 +edit ~/.zshrc -> ZSH_THEME=“agnoster”
 +
 +install a patched font (Meslo)
 +
 +https://github.com/powerline/fonts/blob/master/Meslo%20Slashed/Meslo%20LG%20M%20Regular%20for%20Powerline.ttf
 +
 +iTerm->Preferences->Profiles->Text->Change Font
 +
 +install zsh-syntax-highlighting
 +git clone https://github.com/zsh-users/zsh-syntax-highlighting.git
 +echo "source ${(q-)PWD}/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc
 +
 +
 +test font
 +echo "\ue0b0 \u00b1 \ue0a0 \u27a6 \u2718 \u26a1 \u2699”
 +
 +
 +using multi-line prompt
 +
 +ref from : https://wayhome25.github.io/etc/2017/03/12/zsh-alias/
 +
 +vi ~/.zshrc
 +# to delete computer name in prompt
 +prompt_context() {
 +  if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
 +    prompt_segment black default "%(!.%{%F{yellow}%}.)$USER"
 +  fi
 +}
 +
 +vi ~/.oh-my-zsh/themes/agnoster.zsh-theme
 +## Main prompt
 +build_prompt() {
 +  RETVAL=$?
 +  prompt_status
 +  prompt_virtualenv
 +  prompt_context
 +  prompt_dir
 +  prompt_git
 +  prompt_bzr
 +  prompt_hg
 +  prompt_newline # 멀티라인 적용
 +  prompt_end
 +}
 +
 +# 멀티라인 적용, 커버모양 변경
 +prompt_newline() {
 +  if [[ -n $CURRENT_BG ]]; then
 +    echo -n "%{%k%F{$CURRENT_BG}%}$SEGMENT_SEPARATOR
 +%(?.%F{$CURRENT_BG}.%F{red})❯%f"
 +
 +  else
 +    echo -n "%{%k%}"
 +  fi
 +
 +  echo -n "%{%f%}"
 +  CURRENT_BG=''
 +}
 +
 +</code>
  
 ====== Preparation ====== ====== Preparation ======
Line 103: Line 173:
 } }
 </sxh> </sxh>
 +
 +====== Update manually ======
 +Old Version
 +<cli>
 +$ upgrade_oh_my_zsh
 +</cli>
 +
 +Newer Version
 +<cli>
 +$ omz update
 +</cli>
 +
 +<cli>
 +Updating Oh My Zsh
 +error: cannot pull with rebase: You have unstaged changes.
 +error: please commit or stash them.
 +There was an error updating. Try again later
 +
 +$ cd ~/.oh-my-zsh
 +$ git status
 +$ git stash 
 +or
 +$ git add .
 +$ git commit -m
 +$ upgrade_oh_my_zsh
 +</cli>
 +
 +===== Examples =====
 +  * ~/.zshrc <sxh bash title:~/.zshrc>
 +# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
 +# Initialization code that may require console input (password prompts, [y/n]
 +# confirmations, etc.) must go above this block; everything else may go below.
 +if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
 +  source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
 +fi
 +
 +# If you come from bash you might have to change your $PATH.
 +# export PATH=$HOME/bin:/usr/local/bin:$PATH
 +export ANDROID_HOME=${HOME}/Library/Android/sdk
 +export PATH=${PATH}:${ANDROID_HOME}/tools
 +export PATH=${PATH}:${ANDROID_HOME}/platform-tools
 +
 +# Path to your oh-my-zsh installation.
 +export ZSH="/Users/alex/.oh-my-zsh"
 +
 +# Set name of the theme to load --- if set to "random", it will
 +# load a random theme each time oh-my-zsh is loaded, in which case,
 +# to know which specific one was loaded, run: echo $RANDOM_THEME
 +# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
 +#ZSH_THEME="robbyrussell"
 +#ZSH_THEME="agnoster"
 +#ZSH_THEME="powerlevel10k/powerlevel10k"
 +ZSH_THEME="spaceship"
 +
 +# Set list of themes to pick from when loading at random
 +# Setting this variable when ZSH_THEME=random will cause zsh to load
 +# a theme from this variable instead of looking in ~/.oh-my-zsh/themes/
 +# If set to an empty array, this variable will have no effect.
 +# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
 +
 +# Uncomment the following line to use case-sensitive completion.
 +# CASE_SENSITIVE="true"
 +
 +# Uncomment the following line to use hyphen-insensitive completion.
 +# Case-sensitive completion must be off. _ and - will be interchangeable.
 +# HYPHEN_INSENSITIVE="true"
 +
 +# Uncomment the following line to disable bi-weekly auto-update checks.
 +# DISABLE_AUTO_UPDATE="true"
 +
 +# Uncomment the following line to change how often to auto-update (in days).
 +# export UPDATE_ZSH_DAYS=13
 +
 +# Uncomment the following line to disable colors in ls.
 +# DISABLE_LS_COLORS="true"
 +
 +# Uncomment the following line to disable auto-setting terminal title.
 +# DISABLE_AUTO_TITLE="true"
 +
 +# Uncomment the following line to enable command auto-correction.
 +# ENABLE_CORRECTION="true"
 +
 +# Uncomment the following line to display red dots whilst waiting for completion.
 +# COMPLETION_WAITING_DOTS="true"
 +
 +# Uncomment the following line if you want to disable marking untracked files
 +# under VCS as dirty. This makes repository status check for large repositories
 +# much, much faster.
 +# DISABLE_UNTRACKED_FILES_DIRTY="true"
 +
 +# Uncomment the following line if you want to change the command execution time
 +# stamp shown in the history command output.
 +# You can set one of the optional three formats:
 +# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
 +# or set a custom format using the strftime function format specifications,
 +# see 'man strftime' for details.
 +# HIST_STAMPS="mm/dd/yyyy"
 +
 +# Would you like to use another custom folder than $ZSH/custom?
 +# ZSH_CUSTOM=/path/to/new-custom-folder
 +
 +# Which plugins would you like to load?
 +# Standard plugins can be found in ~/.oh-my-zsh/plugins/*
 +# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
 +# Example format: plugins=(rails git textmate ruby lighthouse)
 +# Add wisely, as too many plugins slow down shell startup.
 +plugins=(
 +        git
 +        zsh-syntax-highlighting
 +        zsh-autosuggestions
 +)
 +
 +source $ZSH/oh-my-zsh.sh
 +
 +# User configuration
 +
 +# export MANPATH="/usr/local/man:$MANPATH"
 +
 +# You may need to manually set your language environment
 +# export LANG=en_US.UTF-8
 +
 +# Preferred editor for local and remote sessions
 +# if [[ -n $SSH_CONNECTION ]]; then
 +#   export EDITOR='vim'
 +# else
 +#   export EDITOR='mvim'
 +# fi
 +
 +# Compilation flags
 +# export ARCHFLAGS="-arch x86_64"
 +
 +# Set personal aliases, overriding those provided by oh-my-zsh libs,
 +# plugins, and themes. Aliases can be placed here, though oh-my-zsh
 +# users are encouraged to define aliases within the ZSH_CUSTOM folder.
 +# For a full list of active aliases, run `alias`.
 +#
 +# Example aliases
 +# alias zshconfig="mate ~/.zshrc"
 +# alias ohmyzsh="mate ~/.oh-my-zsh"
 +
 +
 +
 +# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
 +[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
 +
 +autoload -U promptinit; promptinit
 +prompt pure
 +
 +alias vim="nvim"
 +alias vi="nvim"
 +alias vimdiff="nvim -d"
 +export EDITOR=/usr/local/bin/nvim
 +</sxh>
 +
 +
 +
 +===== References =====
 +
 +  * [[https://blog.liplex.de/manually-update-oh-my-zsh/|Manually update oh-my-zsh]]
 +
 +
 +  * [[https://ooeunz.tistory.com/21|[개발 환경] iTerm2로 터미널 커스텀하기]]
 +  * [[https://ifuwanna.tistory.com/267|[MacOS] 터미널(iTerm2) 한글 깨짐 해결 방법]]
  • public/computer/iterm_customize.1521278174.txt.gz
  • Last modified: 2021/01/20 17:48
  • (external edit)