Code cleanup
Autogenerate keyboard options.
Add keyboard filters to prevent imposible characters from being included in search.