register keywords dynamically