(defun mst-event-name (event) (cond ((string= (event-name event) "SPC") " ") (t (event-name event)))) (defun read-string (prompt) (do ((e (mst-event-name (read-event prompt)) (mst-event-name (read-event prompt))) (acc "" (format nil "%s%s" acc e))) ((string= e "RET") acc))) (defun ha () (let ((x (read-string "Row number?"))) (mapc (lambda (col) (type-in (format nil "=%s%s/E%s" col x x) (get-window-by-name-re "Gnumeric")) (synthesize-event "TAB" (get-window-by-name-re "Gnumeric")) (sleep-for 0.2)) '("B" "C" "D" "E")) (synthesize-event "Home" (get-window-by-name-re "Gnumeric")))) (bind-keys global-keymap (meta+ "h") '(ha))