2012年7月3日 星期二

Vim: CamelCase to snake_case

這篇文章:http://fcamel-life.blogspot.tw/2010/03/vim-camel-case-underscore-based.html 提到用 vim 取代把 CamelCase 轉換成 snake_case 的作法,看到後有一點點小想法,特別紀錄一下 :P

作者提到的取代方式是:
:%s/\(\l\)\(\u\)/\1_\l\2/gc
但配合 very magic 可以變成這樣
:%s/\v(\l)(\u)/\1_\l\2/gc
短了一點點不是重點,重點是括號好看多了XD

另外作者稍微寫錯的部分是,\l\u 在 substitute pattern 中表示的的 小寫和大寫字元,而不是把下一個字變成大(小)寫,那是在後面做的事。可以 :help /character-classes 看到詳細的列表 (大心)。

既然這篇文章這麼短,那就提一下好了。今天找資料的時候不小心發現這位作者的 blog,實在看得我欲罷不能啊XD 而且他玩的東西好多,也玩系統、也寫程式,從 C 寫到 PHP、Python、Perl、Ruby.....太強了orz 還有很多有趣的東西,實在很好玩....太佩服 <(_ _)> 建議熱愛技術的人可以參考看看,我覺得很精采 :D

沒有留言:

張貼留言