Introducing azfetch.nvim: Fetch Azure Function App Settings in Neovim
Introducing azfetch.nvim: Fetch Azure Function App Settings in Neovim If you're a Neovim user like I am, you know the joy of having a blazing-fast, customizable editor that feels like home. However, as someone who works a lot with Azure, I quickly ran into a challenge: there's no Azure plugin for Neovim, and I needed a way to fetch Azure Function App settings directly from my editor. The Azure extension in Visual Studio Code is great, but for those of us who live in terminal-based editors, opening VS Code just to fetch or decrypt app settings felt like overkill. So, I decided to solve the problem myself — and that's how azfetch.nvim was born. The Problem When working with Azure Function Apps, you often need access to application settings: Debugging issues locally. Setting up configurations for deployment. Decrypting sensitive values for troubleshooting. Visual Studio Code users have the luxury of the Azure Functions extension, but for Neovim users, there simply wasn't an equivalent. I wanted a tool that: Let me fetch Azure Function App settings without leaving Neovim. Supported optional decryption of sensitive settings. Was lightweight and configurable. The Solution: azfetch.nvim azfetch.nvim is a Neovim plugin written in Lua that integrates directly with Azure CLI to fetch and optionally decrypt Azure Function App settings. With just a few key presses, you can have your app settings available in your editor, ready for use. Features Fetch settings from any Azure Function App. Optional decryption of sensitive settings. Fully configurable keybindings. Lightweight and designed specifically for Neovim. Built-in versioning for easy updates and compatibility. Installation You can easily install azfetch.nvim using your favorite plugin manager. Here's how to do it with packer.nvim: use({ "edwinboon/azfetch.nvim", config = function() require("azfetch").setup({ decrypt = true, -- Enable decryption keymap = "af", -- Set your custom keybinding }) end, }) For lazy.nvim users: require("lazy").setup({ { "edwinboon/azfetch.nvim", version = "0.0.1", -- Pin to a specific version config = function() require("azfetch").setup({ decrypt = true, -- Enable decryption keymap = "af", -- Set your custom keybinding }) end, }, }) Configuration The plugin is simple to configure and offers a few options to meet your needs: Option Type Default Description decrypt boolean false Whether to decrypt settings after fetching. keymap string az Keybinding to trigger the fetch action. Example configuration: require("azfetch").setup({ decrypt = true, -- Enable decryption keymap = "af", -- Set your custom keybinding }) Usage Once installed and configured, using azfetch.nvim is as simple as pressing your configured keybinding (default: az). Here's how it works: Press your keybinding in normal mode. A prompt will ask you for the name of the Azure Function App you want to fetch settings for. The plugin fetches the settings and decrypts them if decrypt is enabled. How It Works The plugin leverages the power of the Azure CLI to perform the heavy lifting: It runs az functionapp config appsettings list to fetch the settings. If decryption is enabled, it decrypts the settings using the same CLI. The results are displayed in Neovim for easy access. This means you need to have the Azure CLI installed and logged in (az login) before using the plugin. Why I Built This As someone who uses Neovim daily, I needed a solution that fit into my workflow. Switching to Visual Studio Code just to fetch app settings broke my flow and slowed me down. With azfetch.nvim, I can now perform these tasks without ever leaving Neovim. What's Next? This is just the beginning! Here are some ideas for future updates: Support for other Azure resources (e.g., Key Vault secrets). Enhanced decryption options. Better error handling and logging. If you have feature requests or ideas, feel free to open an issue on GitHub. Conclusion If you're a Neovim user working with Azure, I hope azfetch.nvim makes your workflow a little smoother. It's lightweight, easy to use, and designed with Neovim users in mind. Give it a try and let me know what you think! You can find the plugin on GitHub: azfetch.nvim Happy coding!

Introducing azfetch.nvim: Fetch Azure Function App Settings in Neovim
If you're a Neovim user like I am, you know the joy of having a blazing-fast, customizable editor that feels like home. However, as someone who works a lot with Azure, I quickly ran into a challenge: there's no Azure plugin for Neovim, and I needed a way to fetch Azure Function App settings directly from my editor.
The Azure extension in Visual Studio Code is great, but for those of us who live in terminal-based editors, opening VS Code just to fetch or decrypt app settings felt like overkill. So, I decided to solve the problem myself — and that's how azfetch.nvim was born.
The Problem
When working with Azure Function Apps, you often need access to application settings:
- Debugging issues locally.
- Setting up configurations for deployment.
- Decrypting sensitive values for troubleshooting.
Visual Studio Code users have the luxury of the Azure Functions extension, but for Neovim users, there simply wasn't an equivalent.
I wanted a tool that:
- Let me fetch Azure Function App settings without leaving Neovim.
- Supported optional decryption of sensitive settings.
- Was lightweight and configurable.
The Solution: azfetch.nvim
azfetch.nvim is a Neovim plugin written in Lua that integrates directly with Azure CLI to fetch and optionally decrypt Azure Function App settings. With just a few key presses, you can have your app settings available in your editor, ready for use.
Features
- Fetch settings from any Azure Function App.
- Optional decryption of sensitive settings.
- Fully configurable keybindings.
- Lightweight and designed specifically for Neovim.
- Built-in versioning for easy updates and compatibility.
Installation
You can easily install azfetch.nvim using your favorite plugin manager. Here's how to do it with packer.nvim
:
use({
"edwinboon/azfetch.nvim",
config = function()
require("azfetch").setup({
decrypt = true, -- Enable decryption
keymap = "af" , -- Set your custom keybinding
})
end,
})
For lazy.nvim
users:
require("lazy").setup({
{
"edwinboon/azfetch.nvim",
version = "0.0.1", -- Pin to a specific version
config = function()
require("azfetch").setup({
decrypt = true, -- Enable decryption
keymap = "af" , -- Set your custom keybinding
})
end,
},
})
Configuration
The plugin is simple to configure and offers a few options to meet your needs:
Option | Type | Default | Description |
---|---|---|---|
decrypt |
boolean | false |
Whether to decrypt settings after fetching. |
keymap |
string |
|
Keybinding to trigger the fetch action. |
Example configuration:
require("azfetch").setup({
decrypt = true, -- Enable decryption
keymap = "af" , -- Set your custom keybinding
})
Usage
Once installed and configured, using azfetch.nvim is as simple as pressing your configured keybinding (default:
). Here's how it works:
- Press your keybinding in normal mode.
- A prompt will ask you for the name of the Azure Function App you want to fetch settings for.
- The plugin fetches the settings and decrypts them if
decrypt
is enabled.
How It Works
The plugin leverages the power of the Azure CLI to perform the heavy lifting:
- It runs
az functionapp config appsettings list
to fetch the settings. - If decryption is enabled, it decrypts the settings using the same CLI.
- The results are displayed in Neovim for easy access.
This means you need to have the Azure CLI installed and logged in (az login
) before using the plugin.
Why I Built This
As someone who uses Neovim daily, I needed a solution that fit into my workflow. Switching to Visual Studio Code just to fetch app settings broke my flow and slowed me down. With azfetch.nvim, I can now perform these tasks without ever leaving Neovim.
What's Next?
This is just the beginning! Here are some ideas for future updates:
- Support for other Azure resources (e.g., Key Vault secrets).
- Enhanced decryption options.
- Better error handling and logging.
If you have feature requests or ideas, feel free to open an issue on GitHub.
Conclusion
If you're a Neovim user working with Azure, I hope azfetch.nvim makes your workflow a little smoother. It's lightweight, easy to use, and designed with Neovim users in mind. Give it a try and let me know what you think!
You can find the plugin on GitHub: azfetch.nvim
Happy coding!