IronEagle
The IronEagle helps standardize terminology in IRON projects by identifying and correcting inconsistent or incorrect usage of glossary terms. This Visual Studio Code extension suggests appropriate abbreviations based on a predefined glossary.
How It Works
- Glossary File: The glossary file (
glossary.json) contains a list of words and their commonly used abbreviations. The extension compares the terms in your code against this glossary to suggest replacements.
- Quick Fix: If a word from the glossary is found in your code, a warning will be displayed, and a quick fix will be suggested. You can apply the fix with quick fix options.
For example, if the word component is found in your code, and the glossary suggests comp, the extension will highlight component and offer a quick fix to replace it with comp.
Override the glossary inside project:
To override or customize glossary suggestions for a specific project:
Create a glossary.json file in the root directory of your project.
Add the following entry to your .vscode/settings.json file:
"IronEagleExtension.overrideGlossaryPath": "glossary.json"
Define your overrides in glossary.json using this format:
{
"component": [["component", "comp", 3]],
"elements":["elems"],
"processing":["processing", "proc"]
}
- The key matches the glossary word.
- The first value in the array is the correct term. Additional values are treated as incorrect suggestions.
- For example:
- "component": [["component", "comp", 3]] suggests "comp" only when used with three or more words.
- "elements": ["elems"] treats "elems" as the only valid term.
- "proc": - ["processing", "proc"], Values after the first are treated as incorrect versions of the glossary word, only include if this is not defined inside extension.
NOTE: To add new words inside glossary, you can contact with Code Avengers by assigning them task on Asana inside IronEagle project.
Ignore glossary checker for BuiltIn Packages:
To ignore default packages:
- For React, enable the following in
settings.json:
"IronEagleExtension.ignoreReactDefaults": true
- For Angular, enable:
"IronEagleExtension.ignoreAngularDefaults": true
- For Go, enable:
settings.json:
"IronEagleExtension.ignoreGoDefaults": true
- To ignore certain words, add the words in an array.
"IronEagleExtension.ignoreWords" = []
- To ignore custom packages, add the package names in an array:
"IronEagleExtension.ignorePackages": []
Default ignored packages info:
For React:
[
"react",
"react-native",
"react-dom",
"react-bootstrap",
"tejas-react",
"axios",
"classnames",
"axios-hooks",
"react-redux",
"react-router",
"react-router-dom",
"react-hook-form",
"react-error-boundary",
"reactflow",
"lru-cache",
"fs",
"path"
]
For Angular:
[
"@angular",
"rxjs",
"tslib",
"zone.js",
"@angular-devkit",
"jasmine-core",
"karma",
"karma-chrome-launcher",
"karma-coverage",
"karma-jasmine",
"karma-jasmine-html-reporter",
"fs",
"path",
"ngx-toastr"
]
For GO:
[
"github.com",
"go.mongodb.org",
"googlemaps.github.io",
"firebase.google.com",
"cloud.google.com",
"archive",
"bufio",
"builtin",
"bytes",
"cmp",
"compress",
"container",
"context",
"crypto",
"database",
"debug",
"embed",
"encoding",
"errors",
"expvar",
"flag",
"fmt",
"go",
"hash",
"html",
"image",
"index",
"io",
"log",
"maps",
"math",
"mime",
"net",
"os",
"path",
"plugin",
"reflect",
"regexp",
"runtime",
"slices",
"sort",
"strconv",
"strings",
"sync",
"syscall",
"testing",
"text",
"time",
"unicode",
"unsafe",
]
Thanks & Enjoy!
Team: Code Avenger
| |