diff --git a/.gitignore b/.gitignore
index c4c4ffc6aa41a89cc618a31d17f6d5924ddf2b10..5737aeb062c7fd2f26a393c40d8f5045bc56b84e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
 *.zip
+*.elc
diff --git a/zero-framework.el b/zero-framework.el
index e92c13360953ecbc8b55945f71827f4ed7bf2e0f..89daa5ad6c5aa19ded1bae439d038b9c64af35d0 100644
--- a/zero-framework.el
+++ b/zero-framework.el
@@ -127,7 +127,7 @@ if item is not in lst, return nil"
 
 ;; zero-el version
 (defvar zero-version nil "zero-el package version")
-(setq zero-version "1.0.3")
+(setq zero-version "1.1.0")
 
 ;; FSM state
 (defconst *zero-state-im-off* 'IM-OFF)
@@ -370,6 +370,7 @@ return ch's Chinese punctuation if ch is converted. return nil otherwise"
 
 (defun zero-page-up ()
   "if not at first page, show candidates on previous page."
+  (interactive)
   (when (> zero-current-page 0)
     (setq zero-current-page (1- zero-current-page))
     (zero-show-candidates)))
@@ -383,6 +384,7 @@ return ch's Chinese punctuation if ch is converted. return nil otherwise"
 
 (defun zero-page-down ()
   "if there is still candidates to be displayed, show candidates on next page."
+  (interactive)
   (let ((len (length zero-candidates))
 	(new-fetch-size (* zero-candidates-per-page (+ 2 zero-current-page))))
     (if (and (< len new-fetch-size)