Thanks, Greg
This is how my code is evolving (the "conditional part" is not working yet):
(add-hook 'logos-focus-mode-hook
#'(lambda ()
(defvar posicion
"Position where is the cursor.")
(defun posicion3 ()
(interactive)
(end-of-visual-line) ;;C-e
(backward-char 7)
(setq posicion 3)
)
(defun posicion2 ()
(interactive)
(forward-char 23)
(setq posicion 2)
)
(defun posicion1 ()
(interactive)
(next-line 1)
(beginning-of-visual-line)
(forward-char 6)
(setq posicion 1)
)
(defun salto ()
(interactive)
(if posicion 1
(posicion2)
(if posicion 2
(posicion3)
(if posicion 3
(posicion1)))))
;; (define-key global-map (kbd "SPC") #'salto)
(local-set-key "j" 'posicion1)
(local-set-key "k" 'posicion2)
(local-set-key "l" 'posicion3)
))
Ypo,Additional problem: I don't know how to recover keys 1, 2 and 3 to their normal functioning, right now I can't type 1, 2 or 3 on my Emacs. xDyou have, e.g.,(define-key global-map (kbd "1") #'posicion1) (define-key global-map (kbd "2") #'posicion2) (define-key global-map (kbd "3") #'posicion3)but, that is in the global map. for a given mode, i sometimes do something like that:(add-hook 'mh-show-mode-hook #'(lambda () (local-set-key "q" 'mh-show-execute-commands)))or, closer to what you have, sometimes like(define-key mh-letter-mode-map (kbd "C-c s") 'ggm-mh-sentaddrs-completion)i am no elisp expert, and so those are just random things i've found that work. but, hopefully this may give you a hint of a direction to follow. cheers, Greg