There are some exceptions, but in most cases you can make macros work in other languages by using the auto-translate function. It is important to use auto-translate (or Tab-key auto-completion) for both the command and its arguments, including job names and action names. Some subcommands, such as on/off, current/share, or placeholders, are not auto-translate ready, yet they are recognised as valid across different language versions. There are about 200 macros in my macro editor, and almost all of them work across all client languages without any problems. But if you toggle HUD layout using a macro, it may not work in another language settings since the arguments of /hud command depends on client language. Enemysigns and Quickchats may also cause problems, but you can resolve this by including multiple language-specific lines within a single macro.