More Related Content
More from Chun-Yu Tseng (15)
哎哎呀呀 Joe 上手 Vim Plugin 心得 @ taipei.py.2016.08.25
- 5. 【台北拍限定版】哎哎呀呀 JOE 上⼿ VIM PLUGIN ⼼得
➤ 著重在 故事
➤ 短分享: 15 分鐘
➤ 以概念為主
➤ 省略與 Python 無關的部分 幾乎就是全部
➤ 有 Live Demo
➤ 免責聲明
➤ 聽完演講後,開始寫 Vim Plugin 還是會「哎哎呀呀」
- 13. 如何查找 PYTHON CODE
➤ 使⽤「*」、「?」
➤ 向後、向前搜尋
➤ ⽤外部指令 grep, ack 直接看,或串結果到 Vim
➤ ack -f proxy . | xargs -o vim
- 16. 開始裝⼀堆 PLUGINS 來寫 PYTHON
➤ Syntax
➤ Auto-Complete
➤ Refactor
➤ Snippets
➤ Doc
➤ (略)
- 17. 如何查找 PYTHON CODE
➤ 使⽤「*」、「?」
➤ 向後、向前搜尋
➤ 使⽤ Jedi / Rope 來達到 Go To Definiton
➤ 路徑沒設對時會有點兩光
➤ 使⽤ Ack.vim 來做搜尋
➤ 蠻好⽤的
- 20. 找⼀些看 CODE ⼯具
➤ 想起牆壁曾經推薦過 Source Navigator NG
在 Mac 載入⼤專案不太穩
介⾯看得很痛苦 Orz
查找 Python Code 能⼒普普
- 27. STEP 1: 可⾏性評估
➤ 發現 CodeQuery 有提供⼀個 cmd-line tool
➤ 太好了,不⽤去讀 SQLite 檔案惹 =⽫=
- 28. STEP 2: 學⼀點(︖) VIMSCRIPT
➤ 不⼩⼼就失控讀完整本 Learn Vimscript The Hardway
➤ Vimscript 提供的 API 跟 Python 頗像,但是超雷
➤ 超雷
➤ 超雷
➤ 超雷(請移駕本週末的台南拍聚會)
➤ 然後整理⾃⼰的亂放了三年以上的 .vimrc
➤ 不知不覺就過了⼀個⽉惹 😗
- 30. STEP 4: (認真地)評估與設計
➤ 確保⾃⼰寫的 Plugin 能夠滿⾜⾃⼰的需求
➤ 也可以滿⾜⼀部份其他⼈的需求
➤ 做⼀些 Prototype 讓⾃⼰感覺⼀下成品的感覺
➤ 也決定在 Plugin 基本功能完成後,會加上「選單」以⽅便其他
⼈操作
- 31. STEP 5: 懶⼈ VIM PLUGIN 架構法
➤ 等寫完了再來做 lazy load 之類的設計
- 32. STEP 6: ⽤ PYTHON 的⽅法來寫 VIMSCRIPT
➤ 其實可以⽤ Python 來寫 VimScript
➤ 但是我選擇不要這麼做
- 33. STEP 7: ⽤ VIMSCRIPT 的⽅法來寫 VIMSCRIPT
➤ 由於說過要省略與 Python 無關的部分(發動陷阱卡!)
➤ 請移駕本週末的台南拍
➤ 然後我就寫完了。
- 36. 接下來
➤ 繼續補 Readme
➤ 調整 Menu 跟 Keybindings
➤ 把 Options 寫活
➤ ⽀援 Javascript/Ruby/Go …
➤ 加強 Async 的部分
➤ Vim 8 ???
➤ 發 PR 給 CodeQuery
➤ 跪求測試 and 給讚!