[#1] Implement shourtcut customize feature, and add preference menu and prefernce window
Merge branch '1-shortcut-costomize'