mac 下的新玩具

tools

  1. zsh
    爲啥須要zsh,由於能更快更方便的進行代碼提示與代碼補全,每一個人的精力都是有限的,能打一個字母出來結果就絕對不打第二個。python

plugins=(git brew mvn svn svn-fast-info sbt go pip zsh-syntax-highlighting npm)
zshgit

  1. vim
    vim是大二學操做系統的時候看老師折騰紅帽的時候看到的,發現這個編輯器頗有b格,並且花花綠綠的很好看,後面就投入了一段時間,後面會貼出一些經常使用的插件,如今由於主力編程語言是scala,因此我開發工具是IDEA,在裏面使用ideavim,而後經過.ideavimrc改了一些鍵位的mapping,若是是寫go或者python的那種小腳本我就會用vimgithub

vim

  1. tmux + tmuxinator
    tmux也是一個至關酷炫的工具,特別是大數據開發過程當中會連不少服務器,而把生產環境,dev環境,test環境經過tmuxinator定義成不一樣的project,配置好了ssh免登錄以後媽媽不再用擔憂我鏈接服務的速度了web

tmux
tmux-2

  1. cvim+chrome
    瀏覽器我仍是用chrome,雖然cvim沒有Vimperator那麼酷炫,但基本也夠用了,關鍵是chrome的爹好,並且平時也用gmail啥的,帳號同步仍是比較方便的chrome

cvim

  1. note
    筆記我原來用印象筆記,後面在ubuntu下用了一段時間爲知筆記,爲了markdown嘛,後來發現爲知筆記的導出很難用,恰好如今換成mac了,就換成quiver了,同步如今就用iCloudshell

quiver

  1. scala
    scala在使用過程當中worksheetsbt中的console是不少人一開始並不會去用的功能,但真心以爲這兩個是project級別的神器,另外一個是無水scala羣主,國內scala大牛老豬寫的scalaconsole,在一些簡單的語法上若是不想打開ide,那麼這個也是一個神器,還有就是高亮scala的repl: `alias scala='scala -Dscala.color'npm

,由於我用zsh,因此是在.zshrc,若是是bash則是.bashrc`中
scalaconsole編程

  1. idea
    idea中插件也是不少的,我推薦幾個我用的比較多的,一個是ideavim,另外一個是Key promoter,最後還有zookeeperubuntu

  2. 防鎖屏
    在討論問題時候,常常出現鎖屏,因此我用一個叫caffeine的小插件,能夠防止電腦鎖屏vim

  3. jdk版本切換
    由於不少時候要編譯一些source,在編譯過程當中須要用一些平時並不用的jdk版本,因此我是用了jenv進行jdk版本切換的,由於編譯一般只要在shell裏面完成一次編譯就能夠,控制成session級別的仍是比較讚的

jenv

  1. 文檔助手dash
    這個也是一個神器,特別是沒網的時候能救命,哈哈

idea常見快捷鍵

智能提示

  1. ctrl+space 自動出現

  2. f2 移動到錯誤出現的地方

  3. ctrl+shift+enter ,括號補全

重構

  1. ctrl + shift + alt + t

  2. alt+command+m method

  3. alt+command+f field

  4. alt+command+v var alias

  5. shift + f6 rename

代碼生成

  1. fori/sout/psvm

  2. command+j 查看全部模板

  3. for(User user:users) users.for+Tab

  4. Date brithday = user.getBrithday() user.getBrithday.var+Tab

editor

  1. ctrl+shift+num bookmarks

  2. ctrl+num jump to bookmark

  3. 摺疊代碼段

find

  1. ctrl+h 類層次圖 ,ctrl+b/ctrl+alt+b 跳轉父子類方法

  2. command + f12 當前類的所有方法

  3. command+f/command+shift+f 當前窗口/全工程查找

  4. F3/Shift+F3 查找跳轉

other

  1. command+shift+a 查看全部命令

  2. alt+insert

  3. 格式化代碼: ctrl+alt+l

  4. 格式化包: ctrl+alt+o

  5. f7/f8/f9 step into/step over/continu

todo list

個人工做中的todo list如今都是用worktile,若是是我的的則用筆記記一下,寫成markdown格式的

外設

  1. 鼠標
    鼠標最近入手了一個羅技M570,由於我用雙屏,在雙屏切換的時候甩動軌跡球仍是比較爽的

  2. 鍵盤
    鍵盤最近入了個hhkb,媽媽不再擔憂我嫌棄鍵盤很差了

  3. 顯示屏
    對於13寸的mac我的以爲擴展屏幕是必須的,由於,不管是看代碼仍是調試,還有刷github和知乎(捂臉),一般我把一邊放瀏覽器和釘釘qq等交流娛樂的,另外一塊則是idea加iterm,並且我喜歡用豎屏,發現看代碼不再用翻頁了,還有一個好處是豎屏的寬度大概恰好是80字符左右,代碼規範也有了,23333, dell那個能夠豎屏的屏幕仍是至關爽的

  4. 支架
    辦公桌上mac顯得有點低,因此我30塊錢在淘寶買了個酷奇的支架,還不錯

效果是這樣的:work

vim plugin

"dev
Plugin 'gmarik/Vundle.vim' "package manager

"Common 
Plugin 'tpope/vim-surround' "surroundings in xml,tags,quotes 
Plugin 'tpope/vim-repeat' "repeat plugin command rather than the using the `.`
Plugin 'rhysd/conflict-marker.vim' "highlight ,jump and resolve conflict markers quickly in vim 
Plugin 'jiangmiao/auto-pairs' "auto pair 
"Plugin 'vim-scripts/delimitMate.vim' "same as auto pair
Plugin 'ctrlpvim/ctrlp.vim' "finder tag ,file in vim 
Plugin 'tacahiroy/ctrlp-funky' "ctrlp-extension 
Plugin 'easymotion/vim-easymotion' "vim motion on speed
Plugin 'mbbill/undotree' "undo tree
Plugin 'gcmt/wildfire.vim' "quickly select the colsest text object 
Plugin 'tpope/vim-pathogen' "rutimepath manager 
Plugin 'vim-scripts/sessionman.vim' "session save in $Home/.vim/sessions 
Plugin 'vim-scripts/Conque-Shell' "shell in vim
Plugin 'vim-scripts/winmanager' "window manager
Plugin 'vim-scripts/TaskList.vim' "task manager td
Plugin 'vim-scripts/taglist.vim' "taglist  
Plugin 'airblade/vim-gitgutter' "git diff 
Plugin 'godlygeek/tabular'
Plugin 'plasticboy/vim-markdown'
Plugin 'moll/vim-bbye' "buffer bye
Plugin 'rizzatti/dash.vim'

"color
Plugin 'vim-airline/vim-airline' "light as air 
Plugin 'altercation/vim-colors-solarized' "color
Plugin 'spf13/vim-colors' "color
Plugin 'flazz/vim-colorschemes' "color colorscheme wombat
Plugin 'nathanaelkane/vim-indent-guides' "indent-guides in code can be easy to find
"Plugin 'vim-scripts/indentLine.vim' "display vertical lines
Plugin 'mhinz/vim-signify' "diff file  using :h signify
Plugin 'osyo-manga/vim-over' "replace world highlight
Plugin 'vim-airline/vim-airline-themes'

"nerdtree 
Plugin 'scrooloose/nerdtree' "file tree
Plugin 'Xuyuanp/nerdtree-git-plugin' "git
Plugin 'jistr/vim-nerdtree-tabs' "tab

"program
Plugin 'scrooloose/syntastic' "syntastic code 
Plugin 'tpope/vim-fugitive' "Git Gstatus ,Gcommit ,Gblame,Gmove,Gremove,Ggrep,Gread,Gbrowse
Plugin 'mattn/webapi-vim' "web api support 
Plugin 'mattn/gist-vim' "Gist suuport
Plugin 'scrooloose/nerdcommenter' "count code
Plugin 'tpope/vim-commentary' "comment stuff out ,gcc,gc
Plugin 'luochen1990/rainbow' "rain bow
Plugin 'majutsushi/tagbar' "ctags 

"autocomplete
Plugin 'Valloric/YouCompleteMe'
Plugin 'SirVer/ultisnips'
Plugin 'honza/vim-snippets'

"python
Plugin 'klen/python-mode'
Plugin 'davidhalter/jedi' 
Plugin 'yssource/python.vim'
Plugin 'vim-scripts/python_match.vim'
Plugin 'vim-scripts/pythoncomplete'

"scala
Plugin 'derekwyatt/vim-scala'
"Plugin 'derekwyatt/vim-sbt'
"Plugin 'vim-scripts/xptemplate'
Plugin 'ensime/ensime-vim'
"Plugin 'ktvoelker/sbt-vim'

"go 
Plugin 'Blackrush/vim-gocode'
Plugin 'fatih/vim-go'

tmuxinator

windows:
 - test-part-1:
 layout: tiled
 panes:
 - ssh  host1
 - ssh  host2
 - test-part-2:
 layout: tiled
 panes:
 -
 - ssh host3
 - ssh host4
 - test-part-3:
 layout: tiled
 panes:
 - ssh host5
 - ssh host6
 - test-part-4:
 layout: tiled
 panes:
 - ssh host7
 - ssh host8
 - ssh host9
相關文章
相關標籤/搜索