Skip to content

Update README.md with Fortran-Lang Discourse #504

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 6 commits into from
Jun 1, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/).

### Changed

- Rewrote README to include links to fortran-lang and other projects
([#485](https://github.com/fortran-lang/vscode-fortran-support/issues/485))
([#501](https://github.com/fortran-lang/vscode-fortran-support/issues/501))
- Changed `linter.compilerPath` to use the full path to the compiler instead of the root
([#500](https://github.com/fortran-lang/vscode-fortran-support/issues/500))
- Changed all instances of the publisher to `fortran-lang`
Expand Down
68 changes: 48 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<p align="center">
<img src="assets/modern-fortran-logo.png"/>
<img src="assets/modern-fortran-logo.svg" width=800/>
</p>

<div align="center">
Expand All @@ -22,11 +22,27 @@
- Hover support, Signature help and Auto-completion
- GoTo/Peek implementation and Find/Peek references
- Project-wide and Document symbol detection and Renaming
- Native Language Server integration with [`fortls`](https://github.com/gnikit/fortls)
- Linting support for GCC's [`gfortran`](https://gcc.gnu.org/wiki/GFortran), and Intel's [`ifort`](https://www.intel.com/content/www/us/en/developer/tools/oneapi/fortran-compiler.html) and `ifx`
- Debugger [C/C++ extension](https://github.com/Microsoft/vscode-cpptools)
- Formatting with [findent](https://github.com/gnikit/findent-pypi) or [fprettify](https://github.com/pseewald/fprettify)
- Code snippets (more can be defined by the user [see](https://code.visualstudio.com/docs/editor/userdefinedsnippets#_create-your-own-snippets))
- [Native Language Server integration](#language-server-integration) with [`fortls`](https://github.com/gnikit/fortls)
- [Linting support](#linting) for GCC's [`gfortran`](https://gcc.gnu.org/wiki/GFortran), and Intel's [`ifort`](https://www.intel.com/content/www/us/en/developer/tools/oneapi/fortran-compiler.html), `ifx`
- [Interactive Debugger with UI](#debugging)
- [Formatting](#formatting) with [findent](https://github.com/gnikit/findent-pypi) or [fprettify](https://github.com/pseewald/fprettify)
- [Code snippets](#snippets) (more can be defined by the user [see](https://code.visualstudio.com/docs/editor/userdefinedsnippets#_create-your-own-snippets))

## Get Started & Seek Support

<p float="left">
<a href="https://fortran-lang.org/learn/"><img src="./assets/readme.tutorial.svg"/></a>
<a href="https://github.com/fortran-lang/vscode-fortran-support/discussions"><img src="./assets/readme.github.svg"/></a>
<a href="https://fortran-lang.discourse.group/"><img src="./assets/readme.discourse.svg"/></a>
</p>

### Useful Tools

<p float="center">
<a href="https://gnikit.github.io/fortls"><img src="./assets/readme.fortls.svg"/></a>
<a href="https://fpm.fortran-lang.org"><img src="./assets/readme.fpm.svg"/></a>
<a href="https://github.com/fortran-lang/stdlib"><img src="./assets/readme.stdlib.svg"/></a>
</p>

## Language Server integration

Expand Down Expand Up @@ -143,6 +159,9 @@ More details about how to set up the debugger can be found in Microsoft's websit
- 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>

<details>
<summary><b>Example: Launch.json</b></summary>

```jsonc
{
// Use IntelliSense to learn about possible attributes.
Expand Down Expand Up @@ -173,16 +192,23 @@ More details about how to set up the debugger can be found in Microsoft's websit
}
```

</details>

## Formatting

Two formatters are supported [`findent`](https://github.com/gnikit/findent-pypi)
and [`fprettify`](https://github.com/pseewald/fprettify). Both of them can be
installed with `pip` automatically through the extension.

<details>
<summary><b>Demo: formatters in action</b></summary>

| findent | fprettify |
| :-------------------------------: | :---------------------------------: |
| ![alt](./assets/findent-demo.gif) | ![alt](./assets/fprettify-demo.gif) |

</details>

The formatter is controlled by the user option

```jsonc
Expand Down Expand Up @@ -221,13 +247,13 @@ by following these VS Code [instructions](https://code.visualstudio.com/docs/edi
If you think a snippet should be shipped by with the extension feel free to
submit a [feature request](https://github.com/fortran-lang/vscode-fortran-support/issues/new?assignees=&labels=feature-request&template=feature_request.md&title=)

### Program skeleton

![program snippet](https://media.giphy.com/media/OYdq9BKYMOOdy/giphy.gif)

#### Module skeleton

![module snippet](https://media.giphy.com/media/3ohzdUNRuio5FfyF1u/giphy.gif)
<details>
<summary><b>Demo: snippets in action</b></summary>
<p float="left">
<img alt="program snippet" src="https://media.giphy.com/media/OYdq9BKYMOOdy/giphy.gif" width=400/>
<img alt="module snippet" src="https://media.giphy.com/media/3ohzdUNRuio5FfyF1u/giphy.gif" width=320/>
</p>
</details>

## Advanced options

Expand Down Expand Up @@ -257,16 +283,18 @@ For debugging you need to have one of the following debuggers installed:
- **macOS**: GDB or LLDB
- **Windows**: GDB or Visual Studio Windows Debugger

## Issues
## Contributing

Please report any issues and feature request on the GitHub repo [here](https://github.com/fortran-langiguelangel/vscode-fortran-support/issues/new)
- [Guidelines](https://github.com/fortran-lang/vscode-fortran-support/blob/master/CONTRIBUTING.md)
- [Code of conduct: Contributor Covenant](https://github.com/fortran-lang/.github/blob/main/CODE_OF_CONDUCT.md)
- [License](https://github.com/fortran-lang/vscode-fortran-support/blob/master/LICENSE)

## Notice
## Support Us

The syntax highlight support was imported from [TextMate bundle](https://github.com/textmate/fortran.tmbundle)
You can support further development of the extension by fiscal donations:

The idea of using `gfortran` comes from this awesome [fortran plugin](https://github.com/315234/SublimeFortran) for Sublime Text.
<a href="https://numfocus.org/donate-to-lfortran"><img src="./assets/readme.lfortran.svg" width=90></a> to our [**LFortan**](https://numfocus.org/donate-to-lfortran) project on NumFOCUS

## LICENSE
Or

MIT
<a href="https://github.com/fortran-lang/vscode-fortran-support"><img src="./assets/readme.github.sponsor.svg" width=120></a> directly sponsoring developers through [**GitHub Sponsors**](https://github.com/fortran-lang/vscode-fortran-support)
22 changes: 21 additions & 1 deletion assets/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Creating High Quality GIF animations
# Information about asset creation

## Creating High Quality GIF animations

Two scripts have been included inside the `tools` folder for ease of use, but the following instructions should allow for more custom-made GIFs

Expand Down Expand Up @@ -35,3 +37,21 @@ considerably less sharp and artifact-free.
ffmpeg -i animation.mp4 -vf palettegen palette.png
ffmpeg -i animation.mp4 -i palette.png -filter_complex "fps=15,scale=-1:-1:flags=lanczos[x];[x][1:v]paletteuse" output.gif
```

## SVG assets

Assets containing the word `workspace` e.g. `readme.workspace.svg` are the master
document from which all other assets with similar names e.g. `readme.fpm.svg` are
derived.

> Note:
> **The derived `SVG`s are converted to Paths in order to avoid any
> potential problems with missing fonts.**

Normal workflow:

1. Edit the `.workspace.svg` file
2. Copy the final asset to a separate `SVG` file.
3. Adjust the `SVG` file size to just the size of the asset.
4. Convert the final Object to Path.
5. The final asset is ready to use.
Binary file removed assets/modern-fortran-logo.png
Binary file not shown.
Loading