从终端窗口启动firefox,打开文本文件并定位显示在指定行的文本

问题描述 投票:2回答:1

我想通过在用户输入一个单独的浏览器(Firefox)窗口中打开用户指南来改进Fortran程序中的帮助工具?作为程序要求的问题的答案。

我可以使用呼叫系统('path / firefox -file user_guide.hlp')

打开帮助文件。但另外我想将文本放在浏览器窗口中帮助文本中的指定行。

我知道帮助文件中哪些行应该与用户相关,因为在Fortran程序中我跟踪用户所做的命令(我使用命令行界面,没有GUI)。目前我在运行程序的终端窗口中打印这些行,但这限制了我可以打印的行数并模糊了程序输出。通过在单独的窗口中提供整个用户指南,用户还可以轻松地在用户指南的其他地方搜索其他说明,我不希望他或她会自愿阅读用户指南。

谢谢你的帮助

博桑德曼

firefox browser fortran command-line-interface
1个回答
3
投票

你不能去特定的行,但你可以尝试使用命名锚标签。在帮助文件中,

<a name="1"/>
help topic 1
<a name="2"/>
help topic 2

当你发出对firefox的调用时,要去锚2

system('path/firefox -file user_guide.html#2')

这适用于所有浏览器。较新的也将采用id =而不是name =

编辑如果以上不起作用,请尝试

system('path/firefox "file://path/user_guide.html#2"')

编辑2如果firefox路径和html文件路径都有空格,则在Windows上可以使用8.3文件名。使用dir / x找出8.3文件名是什么。或者,可以使用带空格的文件名;语法很奇怪

 call execute_command_line('""C:\...\firefox.exe" "file://x:\...\userguide.html#2""')
  1. 用'开始字符串'
  2. 使用2个双引号作为第一个双引号“”
  3. 将您的路径名添加到Firefox
  4. 使用1个双引号来终止路径名
  5. 添加一个空间
  6. 使用1双引号启动参数
  7. 添加参数
  8. 使用2个双引号终止
  9. 用'结束字符串'
© www.soinside.com 2019 - 2024. All rights reserved.