18
在SO上搜索「vim haskell indent」。關於如何爲Haskell縮進配置Vim有很多答案。他們沒有一個真的「工作」。他們不提供Haskell indentation wiki page推薦的代碼。例如,對齊do或let塊中的語句,數據類型的=
和|
等。Haskell和Vim:正確縮進
是否存在可生成類似wiki的代碼的Vim解決方案?
在SO上搜索「vim haskell indent」。關於如何爲Haskell縮進配置Vim有很多答案。他們沒有一個真的「工作」。他們不提供Haskell indentation wiki page推薦的代碼。例如,對齊do或let塊中的語句,數據類型的=
和|
等。Haskell和Vim:正確縮進
是否存在可生成類似wiki的代碼的Vim解決方案?
這可能不是您正在尋找的答案,但您可以遵循縮進wiki指南並與大多數編輯兼容。
例如,做塊
而不是
myFunc x = do y <- bar
return $ x + y
您可以縮進像這樣
myFunx x = do
y <- bar
return $ x + y
這被明確提及的壓痕維基可接受的替代方法。
以同樣的方式,你可以格式化數據類型
data FooBar
= Foo
| Bar
| Asdf
衛隊
myFunc x
| x < 0 = 0
| otherwise = x
當從句
myFunc x = x + y + c where
y = x + 5
c = x * y
等等......
我個人開始使用這種o因爲,正如你所說,沒有編輯可以可靠地縮進代碼,否則。這在所有編輯器中效果更好,因爲縮進總是四的倍數(或者您爲基礎縮進級別選擇的任何其他值)。當我使用這種風格時,我也開始更加喜歡這種一致的縮進級別,所以即使編輯變得更聰明,我也不會回頭。
尚,在這一點上,我懷疑每個使用vim的人都會妥協。我一直在做這種變化很長一段時間。 – Ana 2011-12-26 21:55:25
這不一定是妥協。除了'where'版本之外,這是我的眼睛喜歡的風格(以及小的變化,一直以來)。 – luqui 2012-01-04 07:54:54