Skip to content

Minor release - version 2.2.0 #167

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 34 commits into from
May 15, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
f4417f9
map Fortran subroutine to vscode Function kind
letmaik Jun 22, 2019
b3a13de
Bump lodash from 4.17.11 to 4.17.14
dependabot[bot] Jul 12, 2019
fbcb0dd
Bump mixin-deep from 1.3.1 to 1.3.2
dependabot[bot] Aug 28, 2019
6d26c9c
Fix blocking due to very slow regex execution in "parseFunction"
hansec Dec 4, 2019
e130700
Add support for disabling Hover, Completion and Symbol providers
hansec Dec 4, 2019
3480f65
Added select rank
implicitall Jan 24, 2020
b0e0400
Merge pull request #1 from andrewbest/andrewbest-select-rank
implicitall Jan 24, 2020
4e89a1c
Fix symbols in VSCode ^1.40
pedro-ricardo Feb 24, 2020
2f2f8e8
Update package.json
pedro-ricardo Feb 24, 2020
80edd63
Fix autoclosing pair for array constructor
pedro-ricardo Feb 24, 2020
bf52b35
Merge pull request #141 from letmaik/patch-1
pedro-ricardo Feb 24, 2020
9da7fa4
Merge pull request #151 from hansec/slow_fun_regex
pedro-ricardo Feb 24, 2020
8f98a62
Merge branch 'hotfix/symbol-provider' into release/2.1.2
pedro-ricardo Feb 24, 2020
e40ddad
Merge pull request #152 from hansec/toggle_HovSymComp
pedro-ricardo Feb 24, 2020
9ce44f6
Fix minor error using
pedro-ricardo Feb 24, 2020
4755265
Merge pull request #144 from krvajal/dependabot/npm_and_yarn/lodash-4…
pedro-ricardo Feb 24, 2020
06eb066
Merge pull request #146 from krvajal/dependabot/npm_and_yarn/mixin-de…
pedro-ricardo Feb 24, 2020
a39662d
Bump handlebars from 4.0.11 to 4.7.3
dependabot[bot] Feb 24, 2020
4c0b518
Merge branch 'release/2.1.2' into dependabot/npm_and_yarn/handlebars-…
pedro-ricardo Feb 24, 2020
6bf3b7d
Merge pull request #164 from krvajal/dependabot/npm_and_yarn/handleba…
pedro-ricardo Feb 24, 2020
f9d2abe
Merge pull request #157 from andrewbest/master
pedro-ricardo Feb 24, 2020
c79dc8c
Revert "Select rank"
pedro-ricardo Feb 25, 2020
6e14c58
Revert "Select rank"
pedro-ricardo Feb 25, 2020
1fcefd5
Fix select highlight after & operator (#165)
pedro-ricardo Feb 27, 2020
7914b97
Update Changelog and package version
pedro-ricardo Feb 27, 2020
1fd49fd
Added debugging functionality. (#150)
gnikit Feb 28, 2020
bfa4bb0
Fix in-line forall highlighting
ChrisspyB Apr 11, 2020
e817c59
Merge PR #170 to fix in-line forall highlighting
pedro-ricardo Apr 11, 2020
6e54249
Update CHANGELOG.
pedro-ricardo Apr 11, 2020
6b77f56
towards adding more test coverage
ktomkeys Apr 19, 2020
c61a200
undo package json changes
ktomkeys Apr 19, 2020
52af517
fix extra slash
ktomkeys Apr 19, 2020
4fe630f
Update README to fix #174
pedro-ricardo May 5, 2020
7fa698f
Merge pull request #173 to Update test launch configuration
pedro-ricardo May 15, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 19 additions & 6 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,22 +7,35 @@
"type": "extensionHost",
"request": "launch",
"runtimeExecutable": "${execPath}",
"args": ["--extensionDevelopmentPath=${workspaceRoot}" ],
"args": [
"--extensionDevelopmentPath=${workspaceFolder}"
],
"stopOnEntry": false,
"sourceMaps": true,
"outFiles": [ "${workspaceRoot}/out/src/**/*.js" ],
"outFiles": [
"${workspaceFolder}/out/src/**/*.js"
],
"preLaunchTask": "npm"
},
{
"name": "Launch Tests",
"type": "extensionHost",
"request": "launch",
"runtimeExecutable": "${execPath}",
"args": ["test/resources/sample.f90","--extensionDevelopmentPath=${workspaceRoot}", "--extensionTestsPath=${workspaceRoot}/out/test" ],
"env": {
"CODE_TESTS_WORKSPACE": "./"
},
"args": [
"test/resources/sample.f90",
"--disable-extensions",
"--extensionDevelopmentPath=${workspaceFolder}",
"--extensionTestsPath=${workspaceFolder}/out/test"
],
"stopOnEntry": false,
"sourceMaps": true,
"outFiles": [ "${workspaceRoot}/out/test/**/*.js" ],
"preLaunchTask": "npm"
"outFiles": [
"${workspaceFolder}/out/test/**/*.js"
]
}
]
}
}
16 changes: 15 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,21 @@ and this project adheres to [Semantic Versioning](http://semver.org/).

## [Unreleased]

## [2.1.1] - 2019-xx-xx
## [2.2.0] - 2020-04-11

### Changed

- Improve syntax highlight (#149, #166, #169)
- Fix Symbols in VSCode ^1.4x (#154, #140, #151)
- Dependencies Update (#144, #146, #155)
- Improve code completion (#148)

### Added

- More custom settings (#152)
- Breakpoints support (#150)

## [2.1.1] - 2019-06-03

### Changed

Expand Down
72 changes: 64 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
[![Installs](https://vsmarketplacebadge.apphb.com/installs/krvajalm.linter-gfortran.svg)](https://marketplace.visualstudio.com/items?itemName=krvajalm.linter-gfortran)
[![GitHub release](https://img.shields.io/github/release/krvajal/vscode-fortran-support.svg)](https://GitHub.com/krvajal/vscode-fortran-support/releases/)

> This extension provides support for the Fortran programming language. It includes syntax highlighting, code snippets and a linting based on `gfortran`. You can download the Visual Studio Code editor from [here](https://code.visualstudio.com/download).
> This extension provides support for the Fortran programming language. It includes syntax highlighting, debugging, code snippets and a linting based on `gfortran`. You can download the Visual Studio Code editor from [here](https://code.visualstudio.com/download).

## Features

Expand All @@ -16,14 +16,15 @@
- Code linting based on `gfortran` to show errors wiggles in your code
- Code autocompletion (beta)
- Symbols provider
- Debugger, uses Microsoft's [C/C++ extension](https://github.com/Microsoft/vscode-cpptools)

![symbol_nav](./doc/symbol_nav.png)

## Settings

You can control the include paths to be used by the linter with the `fortran.includePaths` setting.

```
``` jsonc
{
"fortran.includePaths": [
"/usr/local/include",
Expand All @@ -34,23 +35,23 @@ You can control the include paths to be used by the linter with the `fortran.inc

By default the `gfortran` executable is assumed to be found in the path. In order to use a different one or if it can't be found in the path you can point the extension to use a custom one with the `fortran.gfortranExecutable` setting.

```
``` jsonc
{
"fortran.gfortranExecutable": '/usr/local/bin/gfortran-4.7',
"fortran.gfortranExecutable": "/usr/local/bin/gfortran-4.7",
}
```

If you want to pass extra options to the `gfortran` executable or override the default one, you can use the setting `fortran.linterExtraArgs`. By default `-Wall` is the only option.

```
``` jsonc
{
"fortran.linterExtraArgs": ['-Wall'],
"fortran.linterExtraArgs": ["-Wall"],
}
```

You can configure what kind of symbols will appear in the symbol list by using

```
``` jsonc
{
"fortran.symbols": [ "function", "subroutine"]
}
Expand All @@ -68,7 +69,7 @@ and by default only functions and subroutines are shown

You can also configure the case for fortran intrinsics auto-complete by using

```
``` jsonc
{
"fortran.preferredCase": "lowercase" | "uppercase"
}
Expand All @@ -90,10 +91,65 @@ This is a list of some of the snippets included, if you like to include addition

To trigger code validations you must save the file first.

## Debugging

The extension uses the debugger from Microsoft's
[C/C++ extension](https://github.com/Microsoft/vscode-cpptools)
for Visual Studio Code. This allows this extension to use the full functionality
of the C/C++ extension for debugging applications:
(un)conditional breaking points, expression evaluation, multi-threaded debugging,
call stack, stepping, watch window.

A minimal `launch.json` script, responsible for controlling the debugger, is
provided below. However, Visual Studio Code is also capable of autogenerating
a `launch.json` file and the configurations inside the file.

More details about how to setup the debugger can be found in Microsoft's website:

- General information about debugging in VS Code: <https://code.visualstudio.com/docs/editor/debugging>
- C/C++ extension debugger information: <https://code.visualstudio.com/docs/cpp/cpp-debug>
- Build tasks for easy compiling: <https://code.visualstudio.com/docs/editor/tasks>

``` jsonc
{
// 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": [
{
"name": "(gdb) Fortran",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/a.out",
"args": [], // Possible input args for a.out
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
```

## Requirements

For the linter to work you need to have `gfortran` on your path, or wherever you configure it to be.

For debugging you need to have one of the following debuggers installed:

- **Linux**: GDB
- **macOS**: GDB or LLDB
- **Windows**: GDB or Visual Studio Windows Debugger

## Issues

Please report any issues and feature request on the GitHub repo [here](https://github.com/krvajalmiguelangel/vscode-fortran-support/issues/new)
Expand Down
2 changes: 1 addition & 1 deletion language-configuration.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
},
{
"open": "(/",
"close": "/)"
"close": "/"
}
],
"surroundingPairs": [
Expand Down
Loading