【译】Metasploit:代码风格小建议
- 原文地址:https://github.com/rapid7/metasploit-framework/wiki/Style-Tips
- 译者:王一航 & Google 2018-05-15
- 校对:王一航 2018-05-15
编辑器配置
请让你的文本编辑器为你处理格式化问题,这会在我们接受你的代码的时候不那么头疼。
绝大多数的 Metasploit 贡献者在使用 vim 和/或者 gvim 作为他们的默认编辑器。
如果你有一些其他的编辑器的配置的话,我们非常乐意看到你分享出来!
VIM 与 GVIM
添加下面的配置文件到你的 .vimrc 文件中,你的代码将会更加符合 CONTRIBUTING.md 和 msftidy.rb 指南中的要求。
顺便提一句,如果你安装了 Janus Distribution 这个 vim 的插件,那么下面配置文件中的工作将会被这个插件自动化地完成。但是如果你是一个特殊的雪花(译者注:可能是完美主义者的意思?),那么下面的操作就可以让你的代码有非常完美的格式。
set shiftwidth=2 tabstop=2 softtabstop=2
" textwidth 这个配置项会影响 `gq` 命令,这对格式化注释非常方便
set textwidth=78
" Metasploit 要求使用 空格 代替 制表符
set expandtab
" 高亮每一行结尾(EOL,end of line)的空格,并且将 制表符 与 空格合并
hi BogusWhitespace ctermbg=darkgreen guibg=darkgreen
match BogusWhitespace /\s\+$\|^\t\+ \+\|^ \+\t\+/
如果您希望这些设置只对于 Ruby 文件生效,您可以使用 vim 的 autogroup
和 autocommands
功能。
if !exists("au_loaded")
let au_loaded = 1
augroup rb
au FileType ruby set shiftwidth=2 tabstop=2 softtabstop=2 textwidth=78
au FileType ruby set expandtab
au FileType ruby hi BogusWhitespace ctermbg=darkgreen guibg=darkgreen
au FileType ruby match BogusWhitespace /\s\+$\|^\t\+ \+\|^ \+\t\+/
augroup END
endif
你也可以使用 :set list
命令来将所有空格视为不同的字符,以便更容易看到错误的空白。
Rubymine(译者注:Jet Brains 出品)
鉴于切换到使用标准Ruby缩进,RubyMine 不再需要特殊配置。 两个空格替换制表符妥妥的!
语法与大小写
虽然我们了解世界上有很多种语言,但Metasploit主要是以美国英语开发的。因此,模块中的描述语法应当符合美国英语的语法惯例。这样做不仅可以确保大多数 Metasploit 用户使用的方便,而且还可以帮助自动(和手动)翻译为其他语言。
标题
模块标题应该像文章的标题一样容易阅读。 有关英文的大写规则,请参阅:
唯一的例外是函数名称(例如:thisFunc()
)和特殊的文件名称(例如:thisfile.ocx
)。
模块标题应该被良好设计,所以第一个和最后一个词都以大写字母开头,因为这是 msftidy.rb 的检查项目。
0 条评论
可输入 255 字