vscode 配置 pascal环境

vscode 配置 pascal环境

网上关于配置pascal的教程不太多,我试验了好几个,都没搞对,其中有很多原因吧,最后从较多、较熟悉的c环境开始配置理解,才算是慢慢懂得了这个配置过程,前前后后大概花一个星期,写这个就是少让大家走弯路,也算是给这个事一个交代。

1、准备

分别下载vscode和free pascal
vscode下载链接: link.
free pascal下载链接:link.

2、vscode插件

需要下面几个插件:
Pascal、Pascal Formatter、Pascal Language Basics、Free Pascal Debugger
主要就是配置tasks.json和launch.json文件

3、配置过程

配置tasks.json

点击pascal插件,下拉找到free pascal示例,如下所示:


{
   "version": "2.0.0",
   "tasks": [
      {
         "label": "Pascal",
         "type": "shell",
         "windows": {
            "command": "FPC_BIN_PATH"
         },
         "linux": {
            "command": "FPC_BIN_PATH"
         },
         "presentation": {
            "reveal": "always",
            "panel": "new"
         },
         "args": [
            {
               "value": "YOUR_FREEPASCAL_PROJECT_OR_FILE",
               "quoting": "escape"
            }
         ],
         "problemMatcher": {
            "owner": "external",
            "pattern": {
               "regexp": "^([\\w]+\\.(p|pp|pas))\\((\\d+)\\,(\\d+)\\)\\s(Fatal|Error|Warning|Note):(.*)",
               "file": 1,
               "line": 3,
               "column": 4,
               "message": 6
            }
         },
         "group": {
            "kind": "build",
            "isDefault": true
         }
      }
   ]
}

修改过后如下所示:


{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "fpDebug Pascal", // 这个名字任意  但是要与launch.json中的preLaunchTask一致
            "type": "shell",
            "windows": {
                "command": "fpc", // 这里是free pascal编译器,由于电脑环境变量path中有fpc的路径,这里只需写名字fpc即可
            },
            "presentation": {
                "reveal": "always",
                "panel": "new"
            },
            "args": [
                "-g", // debug选项

                // debug的文件,修改为自己的即可
                "${workspaceFolder}\\${relativeFileDirname}\\${relativeFileDirname}.pas",

                {
                    "value": "", // 这个还不知道干什么的,先直接删掉
                    "quoting": "escape"
                 }
            ],
            "problemMatcher": {
                "owner": "external",
                "pattern": {
                "regexp": "^([\\w]+\\.(p|pp|pas))\\((\\d+)\\,(\\d+)\\)\\s(Fatal|Error|Warning|Note):(.*)",
                "file": 1,
                "line": 3,
                "column": 4,
                "message": 6
                }
            },
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

配置launch.json

新建一个.pas文件,例如:


program chinese;

begin
    writeln('你好!');
end.

点 F5 调试,会出现下图,选择Pascal(fpDebug),会生成一个launch.json文件,

点击右下角的 ‘Add configuration’并选择‘fpDebug:Launch program’,会生成下图

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "fpDebug",
            "request": "launch",
            "name": "Launch Program",
            "program": "${workspaceFolder}/executable"
        }
    ]
}

修改代码之后,如下所示

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "fpDebug",
            "request": "launch",
            "name": "Launch Pascal-file",
            // 执行文件的路径
            "program": "${workspaceFolder}\\${relativeFileDirname}\\${relativeFileDirname}.exe",
            "preLaunchTask": "fpDebug Pascal", // 与 tasks.json 中label的名字相同即可
        }
    ]
}

运行.pas文件

运行刚写好的.pas代码,如下图所示即为成功,并生成了.o和.exe文件
在这里插入图片描述
这里并不会像c环境那样自动运行.exe文件,还需要在cmd中运行下才出结果,如下所示
在这里插入图片描述
图中的中文乱码是由于cmd活动也的编码格式不正确,修改为chcp 65001即可
在这里插入图片描述

完结散花

  • 5
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值