callmekohei's blog

callmekoheiのひとりごと

マックの環境復旧の個人的メモ

Summary

クリーンインストールしたmacを元の環境に戻すメモ

事のなり行き

先日、ターミナルでrm -rf /etcとかやったら

マックが立ち上がらなくなりました。

f:id:callmekohei00:20170802152638j:plain

先程アップルストア福岡に行ったら

可愛らしい若いエンジニアさんが

直してくれました!

f:id:callmekohei00:20170802152739j:plain

ので環境復旧します、します

Global setting

change keyboard layout

caps lockcontrolの位置をかえます

f:id:callmekohei00:20170802152029p:plain

f:id:callmekohei00:20170802152038p:plain

spotlight shortcut

command + r で検索窓を表示させます

f:id:callmekohei00:20170802151629p:plain

Japanese input method

日本語を入力できるようにします

入力ソースはHiraganaのみ

f:id:callmekohei00:20170802152304p:plain

ちなみに日本語と英語の切り替えはctrl + space

f:id:callmekohei00:20170805184720p:plain

install font

migmix-2mというfontを使えるようにします

まずmigmix-2mをダウンロードします

MigMixフォント : M+とIPAの合成フォント

つぎにfont Bookmigmix-2mを追加

spotlightを立ち上げて font Book と入力・リターン

ダウンロードした migmix-2m をdrag and drop

f:id:callmekohei00:20170802153738p:plain

other setting

その他こまごまと

siriをunableにする

バッテリー残を表示する

Dockをカーソルが来た時だけ表示する

キーボードのバックライトを消す

文字入力Live Conversionoffにする

Firefoxをインストールする

filename extensionsを表示させる

Excelをインストールする

Terminal setting

ターミナルの設定をやっていきます

terminalそのものの設定

preferenceから設定する

テーマを変える

github.com

フォントをmigmix-2m 14ptに変更

shellタブのwhen the shell exits:のところをClose the windowにする

bashの設定

.inputrcをつくる(bashの操作をvi風にする)

set editing-mode vi
set show-all-if-ambiguous on
set completion-ignore-case on

set keymap vi-command
    "\C-p": history-search-backward
    "\C-n": history-search-forward

set keymap vi-insert
    "\C-p": history-search-backward
    "\C-n": history-search-forward
    "\C-h": backward-char
    "\C-l": forward-char

.bash_profileをつくる

$ vim .bash_profile

if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

export LANG=ja_JP.UTF-8
export LESSCHARSET=utf-8

# PATH( left first )
p=""
p=$p'/usr/local/bin'
p=$p':/usr/local/sbin'
p=$p':/usr/sbin'
p=$p':/usr/bin'
p=$p':/bin'
p=$p':/sbin'

export PATH=$p

# NeoVim
export XDG_CONFIG_HOME=$HOME/.config
alias vim='nvim'

.bashrcをつくる

$ vim .bashrc

#!/bin/bash

# http://qiita.com/caad1229/items/6d71d84933c8a87af0c4
function parse_git_branch {
    git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ [\1]/'
}

function promps {
    local BLUE='\[\033[01;34m\]'
    local RED='\[\033[01;31m\]'
    local GREEN='\[\033[01;32m\]'
    local WHITE='\[\033[0;00m\]'
    local GRAY='\[\033[01;37m\]'
    PS1="${BLUE}\W${GREEN}\$(parse_git_branch)${BLUE}\$${WHITE} "
}

PROMPT_COMMAND='promps'
export CLICOLOR=1
export LSCOLORS=ExFxBxDxCxegedabagacad
export EDITOR=nvim

Vimの設定

VimNeovimに変更する

Home brew をインストール

下記のホームページのスクリプトをターミナルに貼り付けて実行

brew.sh

Neovimのインストール他

// neovim のインストール
$ brew install neovim

// Python3のインストール
$ brew install Python3

// Neovim Python3パッケージのインストール
$ pip3 install neovim

// Python2のインストール
$ brew install Python2

// Neovim Python2パッケージのインストール
$ pip2 install neovim

Neovimの設定

Neovimホームフォルダをつくる

$ mkdir -p ./.config/nvim

.config/nvimに下記を作成

dein.toml

#----------------------------------------------------------
# Shougo ware
#----------------------------------------------------------

[[plugins]]
repo = 'Shougo/dein.vim'

[[plugins]]
repo = 'Shougo/denite.nvim'

[[plugins]]
repo = 'Shougo/deoplete.nvim'
hook_add = '''
    let g:deoplete#enable_at_startup = 1
'''

[[plugins]]
repo = 'callmekohei/deoplete-fsharp'
build = 'bash install.bash'

[[plugins]]
repo = 'zchee/deoplete-jedi'

[[plugins]]
repo = 'Shougo/vimproc.vim'
build = 'make'


#----------------------------------------------------------
# Color scheme
#----------------------------------------------------------

# [[plugins]]
# repo = 'romainl/Apprentice'


#----------------------------------------------------------
# QuickRun
#----------------------------------------------------------

[[plugins]]
repo = 'thinca/vim-quickrun'
hook_add = '''
    set splitright
    let g:quickrun_config = {
    \
    \     '_' : {
    \           'runner'                          : 'vimproc'
    \         , 'runner/vimproc/updatetime'       : 60
    \         , 'hook/time/enable'                : 1
    \         , 'hook/time/format'                : "\n*** time : %g s ***"
    \         , 'hook/time/dest'                  : ''
    \         , "outputter/buffer/split"          : 'vertical'
    \         , 'outputter/buffer/close_on_empty' : 1
    \     }
    \
    \     , 'fsharp/fsharpi': {
    \           'exec'   :  [ '%c %s:p:r.fsx' ]
    \         , 'command':  'fsharpi'
    \         , 'args'   :  '%{input("args> ")}'
    \     }
    \
    \     , 'fsharp/fsharpc': {
    \           'exec'   :  [ '%c %s:p:r.fsx', 'mono %s:p:h/bin/%s:p:t:r.exe %a' ]
    \         , 'command':  'koheiEXE'
    \         , 'args'   :  '%{input("args> ")}'
    \     }
    \
    \     , 'fsharp/concurrent_process' : {
    \           'command'                         : 'fsharpi'
    \         , 'tempfile'                        : '%{tempname()}.fsx'
    \         , 'runner'                          : 'concurrent_process'
    \         , 'runner/concurrent_process/load'  : '#load "%S";;'
    \         , 'runner/concurrent_process/prompt': '> '
    \     }
    \
    \     , 'less': {
    \           'exec'   :  [ '%c -clean-css %s:p:r.less' ]
    \         , 'command':  'lessc'
    \     }
    \
    \     , 'python': {
    \           'command': 'python3'
    \     },
    \ }
'''
#----------------------------------------------------------
# Markdown browser
#----------------------------------------------------------

[[plugins]]
repo = 'plasticboy/vim-markdown'

[[plugins]]
repo = 'kannokanno/previm'
hook_add = '''
    let g:previm_open_cmd = 'open -a Firefox'
    let g:previm_disable_default_css = 1
    let g:previm_custom_css_path     = '/Users/kohei/.config/nvim/dein/repos/github.com/kannokanno/previm/preview/css/github.css'

    augroup PrevimSettings
      autocmd!
      autocmd BufNewFile,BufRead *.{md,mdwn,mkd,mkdn,mark*} set filetype=markdown
    augroup END

    let s:githubCss = "/Users/kohei/.config/nvim/dein/repos/github.com/kannokanno/previm/preview/css/github.css"
    let s:address   = "https://gist.githubusercontent.com/andyferra/2554919/raw/10ce87fe71b23216e3075d5648b8b9e56f7758e1/github.css"
    let s:folder    = "/Users/kohei/.config/nvim/dein/repos/github.com/kannokanno/previm/preview/css"

    if isdirectory(s:folder)
        if !filereadable(s:githubCss)
          execute '!wget' s:address '-P' s:folder
        endif
    endif
'''

#----------------------------------------------------------
# Util
#----------------------------------------------------------

[[plugins]]
repo = 'tomtom/tcomment_vim'
hook_add = '''
    if !exists('g:tcomment_types')
        let g:tcomment_types = {}
    endif
    let g:tcomment_types['fsharp'] = '// %s'
'''

[[plugins]]
repo = 'junegunn/vim-easy-align'
hook_add = '''
    xmap ga <Plug>(EasyAlign)
    nmap ga <Plug>(EasyAlign)
'''

[[plugins]]
repo = 'cespare/vim-toml'

init.vim

"----------------------------------------------------------
" Plugin manager ( Shougo/dein.vim )
"----------------------------------------------------------

let s:dein_dir = $HOME . '/.config/nvim/dein'
let s:toml     = $HOME . '/.config/nvim/dein.toml'

let s:dein_repo_dir = s:dein_dir . '/repos/github.com/Shougo/dein.vim'

if !isdirectory(s:dein_repo_dir)
    execute '!git clone https://github.com/Shougo/dein.vim' s:dein_repo_dir
endif

execute 'set runtimepath+=' . s:dein_repo_dir

if dein#load_state(s:dein_dir)
    call dein#begin(s:dein_dir)
    call dein#load_toml(s:toml, {'lazy': 0})
    call dein#end()
    call dein#save_state()
endif

if dein#check_install()
    call dein#install()
endif

filetype plugin indent on
syntax   enable

"----------------------------------------------------------
" Neovim's Python provider
"----------------------------------------------------------
let g:python_host_prog  = '/usr/local/bin/python2.7'
let g:python3_host_prog = '/usr/local/bin/python3.6'

"----------------------------------------------------------
" General
"----------------------------------------------------------
" Tab
set shiftwidth=4            "vimが自動でインデントを行った際、設定する空白数
set tabstop=4               "<TAB>を含むファイルを開いた際、<TAB>を何文字の空白に変換するかを設定
set softtabstop=4           "キーボードで<TAB>を入力した際、<TAB>を何文字の空白に変換するかを設定
set expandtab               "タブ文字を空白に設定する。shofttabstopとセットで使用すると便利

" Clipbord ( see : help clipboard )
set clipboard+=unnamedplus 

" Mouse ( see :help mouse-using )
set mouse=nvic

set nowrap
set number
set noswapfile
set cmdheight=2

"----------------------------------------------------------
" Seek
"----------------------------------------------------------
set wrapscan
set ignorecase
set smartcase
nnoremap <silent> <C-l> :nohlsearch<CR>

"----------------------------------------------------------
" Appearance
"----------------------------------------------------------
" colorscheme birds-of-paradise
" colorscheme Apprentice


" English menu display
source $VIMRUNTIME/delmenu.vim
set    langmenu=none
source $VIMRUNTIME/menu.vim

if has("multi_lang")
    language en_gb
endif

"----------------------------------------------------------
" Char code
"----------------------------------------------------------
set encoding=utf-8
set fileencodings=utf-8,iso-2022-jp,euc-jp,sjis

check

$ vim abc.fsx

"hello world"
|> stdout.Write
hello world

その他のコマンド

wget

hub gibo