Ana*_*Ana 19 haskell indentation
在SO上搜索" vim haskell indent ".关于如何为Haskell缩进配置Vim有很多答案.他们都没有真正"工作".它们不提供Haskell缩进维基页面建议的代码.例如,do或let块中的语句对齐,数据类型=
和|
数据类型等.
是否存在生成wiki等代码的Vim解决方案?
这可能不是您正在寻找的答案,但有一种方法可以遵循缩进维基指南并与大多数编辑兼容.
例如,do-blocks
代替
myFunc x = do y <- bar
return $ x + y
Run Code Online (Sandbox Code Playgroud)
你可以像这样缩进它
myFunx x = do
y <- bar
return $ x + y
Run Code Online (Sandbox Code Playgroud)
这在缩进维基中被明确提及为可接受的替代方案.
以同样的方式,您可以格式化数据类型
data FooBar
= Foo
| Bar
| Asdf
Run Code Online (Sandbox Code Playgroud)
逆天
myFunc x
| x < 0 = 0
| otherwise = x
Run Code Online (Sandbox Code Playgroud)
当从句
myFunc x = x + y + c where
y = x + 5
c = x * y
Run Code Online (Sandbox Code Playgroud)
等等...
我个人开始使用这种风格,因为,就像你说的,没有编辑可以可靠地缩进代码.这在所有编辑器中都能更好地工作,因为缩进始终是四的倍数(或者您为基本缩进级别选择的任何其他内容).当我使用这种风格时,我也开始在视觉上更喜欢这种一致的缩进级别,所以即使编辑变得更聪明,我也不会回到这一点.
归档时间: |
|
查看次数: |
2730 次 |
最近记录: |