首个OpenFOAM的VS Code插件公开发布



  • 虽然目前市面上也有不少的开源的或商业的OpenFOAM的GUI软件,但是对于一个OpenFOAM深度用户而言,直接用文本编辑器进行操作是最方便最高效的。
    VS Code 又是一款非常非常优秀的代码编辑器,那么对其进行语法高亮、智能提示以及代码片段功能就非常有用了,不仅颜值高而且平时码字的时候也会更高效。但是目前还没有发现 VS Code 上的相应插件可供使用。 作者就只能自己动手开发一枚了: vscode-OpenFOAM ,希望能对CFD中文社区做一点点小贡献😎

    VS code插件商店中的展示

    f21c83da-f3a5-45dc-91e3-8e188986a757-image.png 915948d8-7454-4d3b-b65d-2644c0070cc4-image.png

    安装

    与其他的vscode扩展插件安装方法一样,直接在vscode的扩展管理中搜索 openfoam 直接进行安装即可。

    使用

    因为OpenFOAM的各种字典文件和输入数据文件都没有扩展名,而vscode的语法高亮是通过代码文件的扩展名来判断语言的,所以我们需要在vscode的设置中配置 OpenFOAM 语言的探测规则,即通过 files.associations 属性配置来完成,配置方法很简单。VScode的老用户可以忽略此步骤了。

    Code->Preferences->Settings

    在用户Settings.json文件中添加红框所示的内容,可以直接从下面的代码中复制

    "files.associations": {
        "*Dict": "OpenFOAM",
        "*Properties": "OpenFOAM",
        "fvSchemes": "OpenFOAM",
        "fvSolution": "OpenFOAM",
        "**/constant/g": "OpenFOAM",
        "**/0/*": "OpenFOAM"
        }
    

    如此设置之后就可以看到你的OpenFOAM字典文件已经有了语法高亮,如下图所示:

    1. Fields input data

    Color syntaxing for fields data file

    2. thermophysicalProperties

    thermophysicalProperties

    3. blockMeshDict

    blockMeshDict

    4. fvSolution

    fvSolution

    后续工作

    目前已经将大部分的关键词和变量(作者常用的)等进行了语法高亮显示,但是还有一些其他的有待添加。如果有需要的同学可以将自己的需求告诉我,我可以添加进去。各位大佬有什么建议,也可以告诉我哈

    鼠标悬停提示

    正在开发中....

    代码自动补全

    正在开发中...


  • OpenFOAM副教授

    手动点赞



  • 感谢分享



  • 良心好贴,感谢楼主的分享。之前看知乎用户“陈与论”(https://zhuanlan.zhihu.com/p/32798165) 发表过的帖子,帖子中通过向emacs编辑器中安装插件,实现关键字高亮、代码补全、自动跳转功能。当时按照他的办法做了尝试,emacs编辑器打开of中的代码确实看起来很舒服,但是emacs编辑器每次打开时应该需要联网,即使用梯子连接清华镜像网址打开也很慢(目前我在老家上网采用的手机热点,估计打开emacs编辑器启动慢也和我这边的网速有关系)。楼主如果感兴趣可以看下知乎链接原文,个人感觉如果将编辑器背景改为黑色,关键字高亮、代码自动补全、代码能够跳转、快速启动再好不过啦~





  • @沐风 是的,目前这个VScode的代码高亮插件才刚开始,还很初步,只添加了我自己常用的一些命令的高亮。这是个开源项目,如果大家感兴趣或者觉得有用,可以参与一起完善。毕竟我个人的时间非常有限,目前只能倾向于我自己的使用。你推荐的帖子很有用,我会参考并想办法引进到vscode的插件中。



  • @沐风 我看了你说的这个帖子,好像跟我这个插件不是一回事儿呀。如果我没理解错,你推荐的这个帖子是进行OpenFOAM编程(写Solver的C++编程)的吧?这个VScode现成的插件已经非常强大了,我一直在用,代码高亮、跳转、自动补全非常棒的呀。我搞的这个插件是OpenFOAM进行case setup的时候,高亮显示OpenFOAM的字典文件什么的😂,有了语法高亮在进行算例设置的时候看着会舒服很多,还有后面我会添加命令的悬停提示功能,应该很有帮助。



  • 仔细看了下确实不是一回事,尴尬ing。必须要下载下大佬开发的vscode-OpenFOAM试下效果,大佬加油~





  • 大佬真好。



  • 感谢分享!



  • 一百个赞!





  • @张RP @Hungryandfool @沐风 喜欢就帮我来个five star😀,让它在vscode marketplace上活跃起来



  • 大佬真好


  • Linux讲师 OpenFOAM讲师

    虽然我们用 emacs 的和用 vim 的向来不和,但是为了合伙掐死用 vs code 的还是可以站在一起的๑乛◡乛๑ 

    躲在角落里擦一擦自己的机械硬盘,还能用emacs再续两年……
    :mianmo:


Log in to reply
 

CFD中文网 2016 - 2020 | 京ICP备15017992号-2