4

I want to be able to toggle soft-wrapped lines in org-mode. My .emacs file has this code:

;;;;;;;;;;;;;;
;; Org Mode ;;
;;;;;;;;;;;;;;

(global-set-key "\C-cl" 'org-store-link)
(global-set-key "\C-ca" 'org-agenda)
(global-set-key "\C-cc" 'org-capture)
(global-set-key "\C-cb" 'org-iswitchb)

;; Start-up with soft-wrap enabled
(setq org-startup-truncated nil)  ; This works
;; Toggle soft-wrap with super-q
(define-key org-mode-map "s-q" 'toggle-truncate-lines)  ; This doesn't

I would like to map it to something like super-q or F7. Is there something wrong with my syntax? Neither works.

  • 1
    (setq truncate-lines nil) equals wrap. (setq truncate-lines t) equals don't wrap. You can make a function (defun () "doc-string" (interactive) (message "This is my function)). You can make a keyboard shortcut . . . . Have fun exploring the possibilities and enjoy your Emacs experience. If you want to break words at word-boundaries at the window edge, then use word-wrap t – lawlist Jan 24 '17 at 5:33
  • Thanks. I'm trying a few things. (global-set-key (kbd "s-q") 'toggle-truncate-lines) seems to work for toggling it, but I'm not sure if that is the best way. – Josh Jan 24 '17 at 5:35
  • 3
    It is only those two variables -- truncate-lines and the optional word-wrap. You may also enjoy using M-x visual-line-mode to toggle on and off. – lawlist Jan 24 '17 at 5:36
0

A bit more manual per file but you can do do:

# -*- truncate-lines: nil -*-

At the top of the org-mode file.

| improve this answer | |
0

To avoid spelling mistakes you should try to use the kbd function for writing the keybinding. My setting therefor looks like:

(global-set-key (kbd "C-x p") 'toggle-truncate-lines)

because I use that keybinding globally (e.g. also in any prog-mode). For your org-mode-map -only change it would look like this:

(define-key org-mode-map (kbd "s-p") 'toggle-truncate-lines)

otherwise you will have to consider regular expression syntax.

Therefor see https://www.gnu.org/software/emacs/manual/html_node/elisp/Key-Binding-Commands.html:

(global-set-key (kbd "C-x C-\\") 'next-line)
(global-set-key [?\C-x ?\C-\\] 'next-line)
(global-set-key [(control ?x) (control ?\\)] 'next-line)
| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.