emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] [RFC] Add commmand for wrapping sexp/region in src-blocks to Org


From: Thorsten Jolitz
Subject: Re: [O] [RFC] Add commmand for wrapping sexp/region in src-blocks to Org?
Date: Wed, 06 Aug 2014 14:14:04 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

Xebar Saram <address@hidden> writes:

> thanks Thorsten
>
> its perfect

well, not perfect yet since, as Nicolas mentioned, it does not cover all
possible use cases (wrap/unwrap/modify ALL kinds of Org blocks with or
without header-line params and with or without affiliated keywords or
with a combination of both). 

I got pretty far in implementing this, but spent too much time - maybe I
can deliver the general 'all-inclusive' version later, I hope so, its
useful.

> On Tue, Aug 5, 2014 at 4:15 PM, Thorsten Jolitz <address@hidden>
> wrote:
>
>     Xebar Saram <address@hidden> writes:
>     
>     Hi Xebar,
>     
>     > small question.
>     
>     sorry for the late answer
>     
>     
>     > i wonder if i could request a tiny related feature (this may be
>     very
>     > easy to do already).
>     > i would like to assign hotkeys for 2 scenarios:
>     >
>     > 1) pre selected language for 1 line
>     > 2) pre selected language prompting for number of lines to wrap
>     >
>     > so IE id assign F9-b to auto wrap current line with bash syntax
>     while
>     > F9-l would wrap in lisp
>     > also F10-b would prompt me how man lines to wrap in bash etc
>     >
>     > is that possible?
>     
>     
>     I think so, I have some predefined calls to that function with
>     global
>     keybindings in my init file (right now I call it
>     `tj/wrap-in-src-block',
>     you might have to adapt this):
>     
>     (global-set-key (kbd "C-c w l")
>     (lambda ()
>     (interactive)
>     (let ((current-prefix-arg '(4)))
>     (call-interactively
>     'tj/wrap-in-src-block))))
>     
>     (global-set-key (kbd "C-c w n")
>     (lambda ()
>     (interactive)
>     (let ((current-prefix-arg '(16)))
>     (call-interactively
>     'tj/wrap-in-src-block))))
>     
>     (global-set-key (kbd "C-c w w") 'tj/wrap-in-src-block)
>     
>     
>     
>     > 1) pre selected language for 1 line
>     
>     
>     e.g.
>     (global-set-key (kbd "C-c w y")
>     (lambda ()
>     (interactive)
>     (tj/wrap-in-src-block "shell" 1)))
>     
>     
>     
>     > 2) pre selected language prompting for number of lines to wrap
>     
>     
>     emacs-lisp is kind of preselected, but you could add this after
>     the
>     ((equal current-prefix-arg '(16)) ...) part
>     
>     
>     ((equal current-prefix-arg '(64))
>     (list
>     "shell"
>     
>     (read-number "Number of lines to wrap: " 1)))
>     
>     
>     and then
>     
>     (global-set-key (kbd "C-c w z")
>     (lambda ()
>     (interactive)
>     (let ((current-prefix-arg '(64)))
>     (call-interactively
>     'tj/wrap-in-src-block))))
>     
>     everything untested, unfortunately ...
>     --
>     cheers,
>     Thorsten


-- 
cheers,
Thorsten




reply via email to

[Prev in Thread] Current Thread [Next in Thread]