如何将这些Haxe源文件转换为Python?

2024-04-26 06:46:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将Nape物理引擎(用Haxe编写)移植到Haxe(Xojo)不支持的语言。现在我不懂Haxe,但我对Python很满意。我正在尝试将大量的.hx文件转换为python源文件,这样我就可以将它们转换为Xojo。在

我有Nape.hx源文件(来自haxelib),并安装了haxe命令行工具。在

我尝试了多次置换来尝试将.hx文件转换为Python文件,但是没有成功。我试过以下方法:

haxe -cp <directory containing some .hx files> -python <output directory>

这只是从haxe工具输出帮助。在

haxe <directory containing .hx files> -python <output directory>

这引发了:

Error: Could not process argument [directory] Class name must start with uppercase character

我试着处理一个.hx文件:

haxe <.hx file> -python <output directory>

Error: Could not process argument [myfile.hx] empty part

你知道我做错了什么吗?我认为Haxe的全部目的是能够轻松地转换成不同的语言?在


Tags: 文件工具语言outputerrorfilesdirectorycould
1条回答
网友
1楼 · 发布于 2024-04-26 06:46:33

休是对的,您通常需要指定一个-main参数。但是,如果不需要入口点(例如,在编译库时,如您的例子所示),您也可以省略此项并编译单个模块:

<dot-path> : compile the module specified by dot-path

你在这里选择哪个模块并不重要。我和nape.Config一起去了。重要的部分是使用 macro include来确保nape库中的每个文件都被编译(否则只包括引用的文件)。在

haxe nape.Config -lib nape -python nape.py  macro include('nape')  macro include('zpp_nape')

这个命令生成一个nape.py文件,大约有121000行,这可能有点令人望而却步,这取决于将Python代码转换成这种Xojo语言所需的工作量。即使这是一个简单的过程,生成的代码通常也不是最可读的。在

事实上,Nape的Haxe版本已经不是很可读了,因为它是由一个名为caxe.cx)的预处理器生成的。Nape的caxe来源可以找到here。在


您可以在这里尝试一些编译器选项来减小代码大小,使其更具可读性:

  • no-inline:防止代码形式被内联,将输出减少到大约60000行
  • -D NAPE_RELEASE_BUILD:Nape define删除错误处理-可能不值得,只删除了2000多行。在

相关问题 更多 >