Stata的swilk
命令执行Shapiro-Wilk非正常性测试。同样地,Stata的sfrancia
执行Shapiro-Francia测试非正态性。但是,两个命令共享相同的帮助文件swilk.sthlp
。
Stata如何知道单个帮助文件用于多个命令?例如,Stata如何知道swilk.sthlp
保持对命令help sfrancia
的正确响应}?或者ttest.sthlp
对help ttesti
(不只是help ttest
)保留了正确的回复?
我正在编写一个新的软件包,同一个帮助文件应该同样用于多个命令,并且希望确保我做对了。
答案 0 :(得分:2)
StataCorp自己的路标指向其他地方的求助电话,最近的版本通常由.maint
文件完成。因此
viewsource shelp_alias.maint
包含从s
开始的名称的各种指针列表,包括允许的缩写,help sfrancia
可以看到help swilk
。对于s
替换任何其他相关的首字母。
要查看此类文件潜伏在您系统上的位置,请使用which
which shelp_alias.maint
历史系统和用户程序员易于模拟的系统是一个名为foo.sthlp
且包含单行的帮助文件
.h bar
相当于直接help bar
。所以,如果你输入
. help foo
就像你知道输入
一样 . help bar
该系统早于SMCL的引入,并且不使用SMCL指令。
总结:foo.sthlp
等文件只指向bar.sthlp
,并不是完整的帮助文件。
有关.maint
文件的更多信息:基本上,用户程序员应该忽略它们,就其自身的软件包而言。否则,每个用户都将致力于编辑他们使用的每个系统上的.maint
文件,甚至可能不允许在本地使用,并且每次升级Stata时都会这样做。此外,StataCorp可能会在未来的版本中使用一些不同的系统。相比之下,.h
机制已经使用了很长时间并且被广泛宣传,以至于可以安全地打赌它将无限期地工作。
注意:Stata帮助文件最初标有扩展名.hlp
。当Stata于1985年启动时,与文件扩展名不能超过3个字符的现有DOS规则的兼容性至关重要。后来Windows为其帮助文件采用了完全相同的扩展名,并且给出了这样的强制不可抗力 Stata在版本10中引入了.sthlp
个文件.Stata自然仍然可以读取文本.hlp
文件文件在适当的目录或文件夹中,即沿着定义的adopath
。