Description
Is there an existing request for this?
- I have searched the existing issues
Feature Request
I'd like to request a feature "Fortran: gfortran build and debug active file", just like what the C/C++ extension does when someone debugs his .c
or .cpp
source code. Obviously we need tasks.json
configured as well (to setup a preLaunchTask
).
Here are my configurations:
// .vscode/tasks.json
{
"tasks": [
{
"type": "shell",
"label": "Fortran: gfortran build active file",
"command": "/usr/bin/gfortran",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"options": {
"cwd": "${fileDirname}"
},
"group": {
"kind": "build",
"isDefault": true
},
"detail": "Task generated by Debugger"
}
],
"version": "2.0.0"
}
I was wondering if there's a way to generate launch.json
and tasks.json
automatically with minor modification to this extension.
Activity
While I agree that some automatic generation of tasks.json
and launch.json
files for debugging would be really nice.
I think that a more complete approach would be a command that generates a new fpm
project at the current directory with something like fpm new --backfill
and also the .vscode
files with some setting similar to fortran-lang/fpm#479 (reply in thread)
While I agree that some automatic generation of
tasks.json
andlaunch.json
files for debugging would be really nice.I think that a more complete approach would be a command that generates a new
fpm
project at the current directory with something likefpm new --backfill
and also the.vscode
files with some setting similar to fortran-lang/fpm#479 (reply in thread)
This is a great idea @fedebenelli. FYI there are plans for making fpm fully integrated with VS Code similar to CMake, but we will probably save that for a GSoC project or a funding proposal, since the dev time required would be in the hundreds of hours.
@yuxuan-z19 No it is not currently possible. We rely 100% on the C++ extension so for me software-wise it makes sense not duplicating these file generation processes, since they will inevitably get outdated. I appreciate that this is not the most reasonable thing for a user though. Users just want to have these scripts ready.
Maybe there is a way (through some registered command) to call the C++ extension's task and launch generation scripts and then edit them.
I red in the description that the extension somehow uses the C/C++ extension for debugging. How do I do it? Somehow there is no run or debug button like in C/C++
I tried using the
C/C++: Add Debug Configuration
option, but it throws an error and saysCannot build and debug because the active file is not a C or C++ source file.
@TheFibonacciEffect I assume you have installed the (Microsoft) C/C++ and Modern Fortran extensions. Referring to this post, place the config files under a .vscode
folder in your workspace (or working directory).
Following what it says, your debugging console should be ready.
I've made the configs available here. Feel free to use ; )
I also have made some sane defaults here: https://github.com/ipqa-research/vscode-fortran if anyone is intersted