Most applications provide you configuration files that are data / text based. Whether it is toml, JSON, yaml or some other format, you are usually defining values for pre-determined keys and that’s all.
This makes sense for many applications, but involved applications have explored configurations that make use of scripting. For example, vim uses VimScript, neovim uses Lua, but vscode uses json (as far as I remember), and Helix (vim inspired editor) argues editor configurations must be data, not scripting, and uses toml.
many tiling window managers use various programming languages (Qtile uses python, xmonad uses Haskell, Awesome uses Lua) while others stick to data configuration (i3).
Do you think that scriptable configuration is over-engineered and brings weaknesses, or is it warranted and grants the user power in these big applications? What are the benefits of scriptable configurations?
Apart from text editors/IDEs I don’t really see the use for it. I think it is not practical unless all your users are both power users and programmers, which basically boils down to developer tools.