我的第一個Emacs擴充套件
之前寫過2015年的讀書計劃,在寫的時候發現使用Markdown插入圖書連結很不方便, 所以乾脆藉著這次機會去學習一下如何寫Emacs的擴充套件。
功能
程式碼不長,實現步驟也很簡單,就是使用豆瓣的API進行書名的搜尋並顯示到一個新的Buffer裡, 之後通過選擇進行插入。包括了以下幾個函式:
search-db-book(呼叫API去查詢圖書)
show-books(把查詢結果顯示到一個新的Buffer中)
select-book(選擇並插入條目)
使用方法
使用方法很簡單:
- M-x search-db-book
- 輸入書名
- 選擇結果
圖靈好像不支援gif, 請移步到: http://samael65535.github.io/img/emacs_md_book.gif
現有的不足
因為elisp也是剛學,一些概念也不是很清晰,所以還是有一些不足擴充套件。
函式作用域是全域性的,但是輸出的是Markdown標記,應該在markdown-mode下進行擴充套件。
其實不光應該加圖書的標記,還可以加電影之類的。
豆瓣的API限制了一些查詢,如結果數量,查詢次數
參考資料
相關文章
- 1. 我的第一個 PHP 擴充套件PHP套件
- Chrome第一個擴充套件程式Chrome套件
- 年輕人的第一個VSCode擴充套件VSCode套件
- PHP擴充套件開發教程2 – 編寫第一個擴充套件 hello worldPHP套件
- 我的第一個擴充套件包釋出啦-封裝明道雲API套件封裝API
- PHP擴充套件開發就是一個自己的PHP擴充套件PHP套件
- kotlin 擴充套件(擴充套件函式和擴充套件屬性)Kotlin套件函式
- INFORMIX表的預設初始擴充套件、下一個擴充套件資料塊以及一個表允許的最大擴充套件數。ORM套件
- WCF擴充套件:行為擴充套件Behavior Extension套件
- ?用Chrome擴充套件管理器, 管理你的擴充套件Chrome套件
- PHP-擴充套件-安裝前讀我PHP套件
- 【Kotlin】擴充套件屬性、擴充套件函式Kotlin套件函式
- Kotlin的幾個擴充套件函式Kotlin套件函式
- Sanic 擴充套件套件
- ORACLE 擴充套件Oracle套件
- 擴充套件工具套件
- 擴充套件歐幾里得套件
- DOM擴充套件套件
- 擴充套件ACL套件
- Lua擴充套件套件
- 照片擴充套件套件
- 擴充套件篇套件
- disable or 擴充套件套件
- 擴充套件表套件
- Mybatis擴充套件MyBatis套件
- 表空間自動擴充套件 AUTOALLOCATE 的擴充套件規律套件
- 正則的擴充套件套件
- SRAM的容量擴充套件套件
- JMeter 擴充套件開發:擴充套件 TCP 取樣器JMeter套件TCP
- 我的第二個yii2擴充套件釋出 yii2-emoji套件
- chrome擴充套件推薦:此刻、今天、最近~一個關於時間管理的擴充套件 – MomentumChrome套件
- chrome擴充套件推薦:此刻、今天、最近~一個關於時間管理的擴充套件 - MomentumChrome套件
- 五個檢視擴充套件類 LL套件
- 擴充套件歐幾里得的幾個定理以及證明套件
- 12 個強大的 Chrome 外掛擴充套件Chrome套件
- 30 個驚豔的 Bootstrap 擴充套件外掛boot套件
- 6個最佳的Netbeans擴充套件外掛Bean套件
- ASP.NET Core擴充套件庫之Http通用擴充套件ASP.NET套件HTTP