doomemacs/modules/tools/terraform
Henrik Lissner 1a05e2fa64
bump: :tools
NicolasPetton/pass@c721604b3b -> NicolasPetton/pass@ed7031c5c3
Silex/docker.el@6997c86a24 -> Silex/docker.el@d5255a65b7
alphapapa/magit-todos@cadf29d1cc -> alphapapa/magit-todos@debb77b358
andras-simonyi/citeproc-el@290320fc57 -> andras-simonyi/citeproc-el@c61c98b9d2
doomelpa/code-review@26f426e992 -> doomelpa/code-review@c34ff1ee64
editorconfig/editorconfig-emacs@2fed9599bc -> editorconfig/editorconfig-emacs@4b81a59928
emacs-citar/citar-org-roam@761eed6678 -> emacs-citar/citar-org-roam@7d67dccf80
emacs-citar/citar@2c0547db57 -> emacs-citar/citar@885b86f673
emacs-lsp/lsp-mode@02c5ba59ce -> emacs-lsp/lsp-mode@fb88cc6b8b
emacs-straight/eglot@f73594f589 -> emacs-straight/eglot@cd4e45b700
emacs-straight/rainbow-mode@24437ec2c6 -> emacs-straight/rainbow-mode@70ed10d410
emacs-tree-sitter/tree-sitter-langs@5eb24557f5 -> emacs-tree-sitter/tree-sitter-langs@20fbbb8573
emacsorphanage/quickrun@6f96318930 -> emacsorphanage/quickrun@248149b026
hcl-emacs/terraform-mode@39d2fd5bfc -> hcl-emacs/terraform-mode@e8b57df8c2
jacktasia/dumb-jump@d9503c157a -> jacktasia/dumb-jump@ede6a04187
magit/forge@ba35ffc9ba -> magit/forge@b16b6ec4f7
magit/magit@4881835572 -> magit/magit@54d37dc14c
meain/evil-textobj-tree-sitter@9a9edd42a2 -> meain/evil-textobj-tree-sitter@220ceae065
purcell/envrc@33d01388ce -> purcell/envrc@1385e72a73
rejeep/prodigy.el@a3be00d3b9 -> rejeep/prodigy.el@cc68fa9d60
tmalsburg/helm-bibtex@ef07adfeda -> tmalsburg/helm-bibtex@bf184cc311
xuchunyang/osx-dictionary.el@0715e5a3ac -> xuchunyang/osx-dictionary.el@1f5a74f3e5
yoshiki/yaml-mode@3fcb36d603 -> yoshiki/yaml-mode@5b58248ab2
zx2c4/password-store@28cec11f1d -> zx2c4/password-store@b5e965a838
2024-02-04 19:07:25 -05:00
..
config.el refactor: deprecate featurep! for modulep! 2022-08-14 20:43:35 +02:00
doctor.el tools/terraform: add doctor dependency check 2019-11-21 16:10:43 -05:00
packages.el bump: :tools 2024-02-04 19:07:25 -05:00
README.org docs(terraform): mention +lsp flag 2023-11-24 18:39:01 -05:00

:tools terraform

Description   unfold

This module adds support for working with Terraform files within Emacs. This includes syntax highlighting, intelligent code completion, and the ability to run Terraform commands directly from Emacs.

Maintainers

This module has no dedicated maintainers. Become a maintainer?

Module flags

+lsp
Enable LSP support for terraform-mode. Requires doom-module::tools lsp and a langserver (supports terraform-ls or terraform-lsp).

Packages

Hacks

No hacks documented for this module.

TODO Changelog

This module does not have a changelog yet.

Installation

Enable this module in your doom! block.

This module requires the terraform executable to be installed and in your $PATH.

Usage

Syntax highlighting

Syntax highlighting is provided from terraform-mode and hcl-mode.

Code formatting

doom-module::tools terraform does not provide code formatting directly, but doom-module::editor format works with Terraform files.

Code navigation

Code navigation is supported through doom-package:imenu from doom-package:terraform-mode.

Code completion

Code completion of Terraform builtins is provided from doom-package:company-terraform and generally works well despite being generated through a static (outdated) file.

doom-package:company-terraform also provides code completion of resources within your project.

Documentation

Documentation is accessible through the normal doom-package:company show documentation functionality, thanks to doom-package:company-terraform.

Executing Terraform commands

doom-module::tools terraform provides commands under <localleader> to run the most common Terraform operations:

key description
<localleader> i Runs $ terraform init
<localleader> p Runs $ terraform plan
<localleader> a Runs $ terraform apply

TODO Configuration

󱌣 This module has no configuration documentation yet. Write some?

Troubleshooting

There are no known problems with this module. Report one?

Frequently asked questions

This module has no FAQs yet. Ask one?

TODO Appendix

󱌣 This module has no appendix yet. Write one?