我需要将Perl脚本从Linux移植到Windows.脚本输出到stdout并突出显示并根据需要为特定单词加下划线.在Linux中,这可以通过将系统调用包围在一起来实现tput
:
tput smso
并tput rmso
突出显示
tput smul
并tput rmul
强调
Windows上是否有可以轻松实现此功能的系统调用?如果没有,有没有人知道可以实现类似结果的解决方法?
我们需要将Javascript哈希算法转换为Perl代码.因此,我们需要将Javascript的按位移位运算符<<,>>和>>>转换为Perl.到目前为止,我们有进行转换的算法,但由于Javascript按位移位运算符在32位整数上运行,我们还需要在Perl中模拟它.
基于这篇文章/sf/answers/2912724391/,我们了解到我们可以使用ctypes在Python中执行此操作.例如,要将整数左移x位:
import ctypes
print (ctypes.c_int(integer << x ^ 0).value)
Run Code Online (Sandbox Code Playgroud)
我的理解是我们需要使用XS来做到这一点.我的问题是,是否有人有快速解决方案来实施它.我们不知道XS.我们可以开始学习它,但从我的印象来看,学习曲线相当高,可能需要一段时间才能掌握它.当然,非XS解决方案是理想的,如果存在的话.任何解决方案或提示将不胜感激.
由于我们已经有了Python解决方案,我们可以在Python中实现这个模块,然后从Perl中调用它.性能不是真正的问题,因此这种"黑客"是可以接受的,尽管有点不受欢迎.换句话说,我们更愿意仅在Perl中维护整个程序(由几个模块组成).