Atom Packages Directory

a package directory for a text editor of the 21st Century

Iam Syntax by Rob Witoff

Install with:
    apm install iam-syntax
  

Atom IDE IAM Policy Syntax Highlighting

Action aware syntax highlighting and snippets for AWS IAM Policies in the Atom IDE.

Demo

Features: * Strict Syntax Highlighting - discover errors early with the IAM EBNF * Block Snippets Autogenerate Id, Version and Statement * Action Snippets Never miss an action again across all 86 services e.g.: * logs:<tab> autocompletes to all cloudwatch logs actions * xray:<tab> autocompletes to all xray logs actions * Condition Snippets better scope your policies e.g. * IpAddress<tab> * IpAddressIfExists<tab> * Autogenerated Grammars This grammar autoscales with AWS!

Development Notes

Generating Grammars

Because AWS Services and available actions change often, so too must our grammar. We autogenerate the grammar with the provided script

bash cd ./lib bundle install bundle exec generate-grammars.rb

Extracting The Service map * The service map is extracted from the AWS Policy Generator which stores a javascript object of all service information in the policies.js file. * This object can also be accessed from within the developer console of the policy generated via: app.PolicyEditorConfig.serviceMap

Atom Grammar Development * ⌘+⌥+p – show current scope * ⌘+⇧+p -> Window: Reload – needed to reprocess your changes * apm link $SYNTAX_FOLDER – install a syntax repo into atom

Resources

Resources: * IAM Policy Generator * IAM Grammar * TextMate Grammar Docs * Writing a Syntax Highlighting Package

Thanks: * The Atom Team and Lee Dohm for building great templates

Keywords: aws, iam, policy, grammar, syntax Suggest keywords
Fork me on GitHub