diff --git a/vimrc b/vimrc
index 7a8c654ecb41401c93982a37b01910bb4b61a894..a29aef8d1a96c95a46ce61f41253fb2b5db97eee 100644
--- a/vimrc
+++ b/vimrc
@@ -65,3 +65,38 @@ autocmd BufEnter * let &titlestring = expand("%:t") . " - %{$USER}@" . hostname(
 "autocmd FileType html setlocal shiftwidth=2 softtabstop=2   " HTML
 "autocmd FileType php setlocal shiftwidth=4 softtabstop=4    " PHP
 
+" Map numpad keys in insert and command-line mode
+"noremap! <Esc>Oq 1
+"noremap! <Esc>Or 2
+"noremap! <Esc>Os 3
+"noremap! <Esc>Ot 4
+"noremap! <Esc>Ou 5
+"noremap! <Esc>Ov 6
+"noremap! <Esc>Ow 7
+"noremap! <Esc>Ox 8
+"noremap! <Esc>Oy 9
+"noremap! <Esc>Op 0
+"noremap! <Esc>On .
+"noremap! <Esc>OQ /
+"noremap! <Esc>OR *
+"noremap! <Esc>Ol +
+"noremap! <Esc>OS -
+"noremap! <Esc>OM <Enter>
+
+" Map numpad keys in all other modes
+"noremap <Esc>Oq 1
+"noremap <Esc>Or 2
+"noremap <Esc>Os 3
+"noremap <Esc>Ot 4
+"noremap <Esc>Ou 5
+"noremap <Esc>Ov 6
+"noremap <Esc>Ow 7
+"noremap <Esc>Ox 8
+"noremap <Esc>Oy 9
+"noremap <Esc>Op 0
+"noremap <Esc>On .
+"noremap <Esc>OQ /
+"noremap <Esc>OR *
+"noremap <Esc>Ol +
+"noremap <Esc>OS -
+"noremap <Esc>OM <Enter>