Skip to content

Commit 72c042a

Browse files
authored
dev: enable fortls navigation in VS Code (#1676)
1 parent 8821173 commit 72c042a

3 files changed

Lines changed: 23 additions & 44 deletions

File tree

.fortlsrc

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
{
22
"source_dirs": [
3-
"src/",
43
"src/common/",
54
"src/simulation/",
65
"src/pre_process/",
@@ -25,10 +24,10 @@
2524
],
2625
"pp_suffixes": [".fpp"],
2726
"pp_defs": {
28-
"MFC": 1,
29-
"MFC_SINGLE_PRECISION": 1,
30-
"MFC_OPENACC": 1,
31-
"MFC_MPI": 1
27+
"MFC": "1",
28+
"MFC_SINGLE_PRECISION": "1",
29+
"MFC_OPENACC": "1",
30+
"MFC_MPI": "1"
3231
},
3332
"lowercase_intrinsics": true,
3433
"debug_log": false,

.vscode/extensions.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
{
2-
"recommendations": [],
3-
"unwantedRecommendations": [
2+
"recommendations": [
43
"fortran-lang.linter-gfortran"
54
]
65
}

.vscode/settings.json

Lines changed: 18 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -21,53 +21,34 @@
2121
"*.fpp": "FortranFreeForm"
2222
},
2323

24-
// Disable the extension entirely at workspace level
25-
"extensions.ignoreRecommendations": true,
26-
"extensions.autoCheckUpdates": false,
27-
2824
"fortran.preferredCase": "lowercase",
2925

30-
// Disable built-in linter completely but enable fortls
31-
"fortran.disabled": false,
32-
"fortran.linter.enabled": false,
33-
"fortran.linter.gfortran.enabled": false,
34-
"fortran.linter.compiler": "",
35-
"fortran.linter.diagnostics": false,
36-
"fortran.linter.gfortran.diagnostics": false,
37-
"fortran.linter.modOutput": "",
38-
"fortran.linter.includePaths": [],
39-
"fortran.linter.extraArgs": [],
40-
"fortran.provideDiagnostics": false,
41-
"fortran.provideCompletion": false,
42-
"fortran.provideHover": false,
43-
"fortran.provideSymbols": false,
44-
"fortran.validation.enabled": false,
45-
"fortran.validation.diagnostics": false,
46-
"fortran.symbols": false,
47-
"fortran.hover": false,
48-
49-
// Enable ONLY fortls language server
50-
"fortran.enableLanguageServer": true,
51-
"fortran.languageServer": "fortls",
52-
"fortran.fortls.disabled": true,
26+
// Use fortls for definitions, references, hover, symbols, and completion.
27+
"fortran.provide.autocomplete": "fortls",
28+
"fortran.provide.hover": "fortls",
29+
"fortran.provide.symbols": "fortls",
30+
"fortran.fortls.disabled": false,
5331
"fortran.fortls.path": "fortls",
32+
"fortran.fortls.configure": ".fortlsrc",
33+
"fortran.fortls.notifyInit": true,
34+
"fortran.fortls.disableAutoupdate": true,
35+
"fortran.linter.compiler": "Disabled",
5436

55-
// Try to disable any built-in language features
56-
"editor.semanticHighlighting.enabled": false,
57-
"editor.suggest.showWords": false,
58-
"editor.suggest.showSnippets": false,
37+
// Navigation aids for a large source tree.
38+
"breadcrumbs.enabled": true,
39+
"editor.stickyScroll.enabled": true,
40+
"editor.gotoLocation.multipleDefinitions": "peek",
41+
"editor.gotoLocation.multipleReferences": "peek",
42+
"workbench.editor.navigationScope": "editorGroup",
5943

6044
"[fortran]": {
61-
"editor.tabSize": 2,
62-
"editor.semanticHighlighting.enabled": false
45+
"editor.tabSize": 2
6346
},
6447
"[fortran-free]": {
65-
"editor.tabSize": 2,
66-
"editor.semanticHighlighting.enabled": false
48+
"editor.tabSize": 2
6749
},
6850
"[FortranFreeForm]": {
69-
"editor.tabSize": 2,
70-
"editor.semanticHighlighting.enabled": false
51+
"editor.tabSize": 2
7152
},
7253

7354
// File exclusions - multiple layers of exclusion

0 commit comments

Comments
 (0)