Is there any way to (or existing program which can) modify the keyboard symbols you get when holding down the option key?
I.e. I want to be able to modify these mappings:

Is there any way to (or existing program which can) modify the keyboard symbols you get when holding down the option key?
I.e. I want to be able to modify these mappings:

If you want to do this without using external application there is a good answer here
https://apple.stackexchange.com/a/130099/46541
DefaultKeyBinding.dict
Create ~/Library/KeyBindings/DefaultKeyBinding.dict and enter
{ "~l" = (insertText:, "@"); }
This rebinds ⌥L to insert @
~ = ⌥
Quit and reopen applications for the change to take effect
Some examples of external sources