shanchen
shanchen

hi

PyCharm和IntellJ IDEA使用筆記

JetBrains的IDE太強了, 除非只要在linux下寫簡單的東西用vim以外,其他寫scala/java用IntellJ, python用PyCharm. WebStorm的功能應該都包含在前面這兩個裡面了,html/css/javascript的功能跟設定都含在裡面了.到現在還在熟悉這個IDE的功能來增加打code效率,希望可以更省時間.

Ultimate版本的Django Support:

File -> Settings -> Language & Frameworks -> Django : 
 Check Enable Django support
 Select project path
 Select manage.py path
 Select
setting.py path

之後就可以用tool那邊選擇run manage.py task了,比起用terminal好處是有manage.py 後面的command suggestion. 但是要用django shell會變數無法suggestion(tab無效)

JetBrains IDE共通功能

  1. Local History:
  2. 超級好用的功能,可以記錄每個檔案的所有更改紀錄,不用commit到git(習慣用git可能會比較好,但我比較喜歡寫好ok的版本或是做完一定的量再commit,太小的差別不想commit).
  3. 假設我現在在project寫了一個版本A去測試,得到結果後想再去寫版本B來跟A比較.這時只要對project上按右鍵(若是只有一個檔案也可以按那個檔案)選Local History再按Put Label記錄這個版本.(也可以不設定Label只是要自己查時間去看哪一個版本).再去寫B版本,發現效果不好要跳回A,只需要點剛才的路徑,按右鍵->Local History->Show History,找前面的label下的一個版本,按revert就好.
  4. 如果需要B版本的某幾行,可以點開那個需要的檔案,會有comparison.可以按accept把之前那段code移到現在這邊即可.
  5. Vim Emulator
  6. 讓編輯器能夠有vim的編輯功能,自己常開,但有時跟IDE編輯器快捷鍵衝突時要先關掉.
  7. Deployment
  8. 若是要連到別台環境上coding,可以用,但有時本地跟遠端的同步還是有點麻煩,還找不到可以隨時監測並同步遠端到本地端的設定.自己還是用這邊的功能,但之後應該會改成在windows上掛載linux磁碟,這樣同步問題就沒有了.若是用virtualenv,可以按project->setting->interpreter選擇remote environment,讓IDE可以提示library錯誤,但是PyCharm在用pip install東西有點慢,有時還會有奇怪的安裝錯誤.
  9. Reformat Code
  10. 按Code-> Reformat Code.應該每個編輯器都有.這邊可以和editorconfig結合,像如果在html設定縮排空兩格,python空四格,IDE在html時使用會自動用成兩格. 懶得縮排,按一下Reformat Code就可以排好了.
  11. Class Diagram
  12. 如果研究所知道這個IDE就好了,之前eclipse產生diagram的工具爛爛的,sublime的自動產生diagram我裝不起來=.=.寫完code或打好class name,在project的某個路徑下按右鍵diagram-> Show Diagram就好了.
  13. Trace Code
  14. call一個method會出現提示parameter要放什麼.ctrl+左鍵可以過去看library的src code. Scala可以看implicit幹了什麼事情(用純文字編輯器根本GG)
  15. Multiple Selection
  16. Sublime首頁有的功能都有.官方說明
  17. Search
  18. 兩下shift.找檔案 class function都可以
  19. Terminal
  20. 可以在IDE裡開啟local端terminal. 不用再切換視窗.若是遠端環境,用Tool->Start SSH session,這邊有bug是打到注音有時terminal就當掉,超煩.(2017.1 Pycharm已經修正打中文會當掉的問題了)
  21. Console
  22. 有python console跟scala console直接測試code.不過scala worksheet比較好用.可以整合Ipython,但是我是直接ipython跟django 的shell結合
  23. Postfix completion
  24. https://www.jetbrains.com/help/pycharm/2016.3/postfix-completion.html
  25. 每種語言都有,以python為例:
  26.  打上a.ifnn 然後按快捷鍵(用上面連結說明看,預設應該是tab)就會變成
  27.  if a is not None:
CC BY-NC-ND 2.0 版权声明

喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。

加载中…

发布评论