跨平台的hgrc解决方案?

| 我正在寻找一种解决方案,使一个.hgrc可以在我的所有工作环境(win / lin / mac)中正常工作,就像用vimrc统治所有环境一样。 当我必须为某些扩展名指定路径时遇到问题,例如hg-git: 在Windows上:
[extensions]
hggit = E:\\hg-git\\hggit
在linux / mac上:
[extensions]
hggit = ~/hg-git/hggit
对于vimrc,我们提供了区分不同平台的解决方案,例如
if has(\'win32\')
  ...
endif
知道Mercurial的hgrc几乎不是一个普通的ini文件,所以我想知道hgrc文件是否有类似的解决方案。 还是其他解决方案? 更新资料 感谢您提及使用“自定义环境变量而不是硬编码”,该方法适用于扩展程序的路径。 但是,使扩展正常工作只是一个目标。我相信还有其他取决于平台的配置行为,例如http://www.ogre3d.org/docs/OGREDeveloperGuide/index.html中,Windows和Mac需要特定的选项。如何解决这类问题?     
已邀请:
        如何使用.hgrc包含机制和三个单独的文件:
~/.hgrc
~/.hgrc-windows
~/.hgrc-linux
主要〜/ .hgrc具有:
%include .hgrc-$OS
然后在Windows个人资料和Linux个人资料中设置ѭ5。或者,您可能会发现两个系统上都已经存在一个env变量(通常$ userNAME已在Windows和Unix中设置,并且可能因您而异)。     
        这只是在万一您找不到只包含一个
.hgrc
(或根据Oben Sonne的评论而设置的一组
.hgrc*
文件)的方式的情况下。 我只面对Windows环境,因此我的
mercurial.ini
文件是相同的,除了1条路径。我将副本与Powershell配置文件脚本一起保留在版本控制中。 但是,如果我遇到的环境更多样,我会将该配置抽象为一种跨平台语言(例如Python)的脚本,该脚本会覆盖目标“ 6”或“ 8”。我将能够通过简单的方法来区分当前哪种环境,使每个OS /机器彼此之间都必须有所不同。然后,我将该脚本保留在版本控制中,以帮助在每台计算机上保留相同的版本。 由于我不经常更改它,因此我下次访问它时可能会在每台计算机上手动执行它。对于更多的机器或更频繁的更改,我将在登录时执行另一个脚本,该脚本从中央存储库中提取对生成脚本的更改,并且如果确实有新的更改,请更新以提示并运行该脚本。 (哎呀,无论如何,我现在很想操纵这种设置。)     
        为什么不只使用自定义环境变量而不是对路径进行硬编码?     

要回复问题请先登录注册