emacs-orgmode
[Top][All Lists]
Advanced

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

[Orgmode] Re: Enhancing the Org/Gnus experience


From: Dan Davison
Subject: [Orgmode] Re: Enhancing the Org/Gnus experience
Date: Sun, 31 Oct 2010 20:57:29 +0000
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)

Hi Seb,

Wow, magic. I've totally got no idea how it works, but thanks!

Dan

"Eric Schulte" <address@hidden> writes:

> Hi Seb,
>
> This is really great.  I finally folded it into my gnus setup, and while
> it looks great when it works, I was getting frequent errors throw by the
> org-mode fontification engine recursing too deeply.  I've changed it to
> the following which augments what you sent with some simple error
> handling.
>
> ** Org-mode code block fontification
> Correctly fontify Org-mode attachments
> #+begin_src emacs-lisp
>     (add-to-list 'mailcap-mime-extensions '(".org" . "text/org"))
>     (add-to-list 'mm-automatic-display "text/org")
>     
>     (add-to-list 'mm-inline-media-tests
>                  '("text/org" my-display-org-inline
>                    (lambda (el) t)))
>     
>     (defun my-display-org-inline (handle)
>       (condition-case nil
>           (mm-display-inline-fontify handle 'org-mode)
>         (error
>          (insert (with-temp-buffer (mm-insert-part handle) (buffer-string))
>                  "\n"))))
> #+end_src
>
> Update =org-src-lang-modes= to provide some leeway for posters
> #+begin_src emacs-lisp
>   (add-to-list 'org-src-lang-modes
>                '("elisp" . emacs-lisp))
>   (add-to-list 'org-src-lang-modes
>                '("emacs_lisp" . emacs-lisp))
> #+end_src
>
> Fontify code blocks in the text of messages
> #+begin_src emacs-lisp
>   (defun my-mm-org-babel-src-extract ()
>     (mm-make-handle (mm-uu-copy-to-buffer start-point end-point) 
> '("text/org")))
>   
>   (add-to-list 'mm-uu-type-alist
>                '(org-src-block
>                  "^[ \t]*#\\+begin_"
>                  "^[ \t]*#\\+end_"
>                  my-mm-org-babel-src-extract
>                  nil))
>   
>   (mm-uu-configure)
> #+end_src
>
> Best -- Eric
>
> Sébastien Vauban <address@hidden> writes:
>
>> Hi,
>>
>>> "Eric Schulte" wrote:
>>>> Sébastien Vauban <address@hidden> writes:
>>>>> I don't have in mind full fontification like we now have in Org. No: *just
>>>>> the basic yellow background*, so that code blocks are outstanding in any
>>>>> mail, exactly *like it is now* but for the "cut here" markers (or 
>>>>> "v+/v-").
>>>>
>>>> While we're at it, why not go all the way to full fontification code block
>>>> fontification? Is the current code in org-src portable enough to be applied
>>>> to this (or maybe be applied whenever org-struct mode is enabled)?
>>>
>>> Yes, we can!?
>>>
>>> No idea... Maybe David could answer on such a topic?
>>>
>>>
>>>>> Though, I don't know where to begin... Can some Org/Gnus expert give a
>>>>> hint?
>>>>
>>>> This strays out of my narrow areas of expertise, but I hereby throw my +1
>>>> onto the request.
>>>
>>> Playing a bit around, I've succeeded to make it work for the blocks, and
>>> almost for the results.
>>
>> Put this in your .emacs file:
>>
>>       ;; regexp matching TeX groups
>>       (setq mm-uu-tex-groups-regexp ".*")
>>
>>       (eval-after-load "mm-uu"
>>         '(progn
>>            (add-to-list 'mailcap-mime-extensions '(".org" . "text/org"))
>>            (add-to-list 'mm-automatic-display "text/org")
>>            ;; (add-to-list 'mm-inlined-types "text/org")
>>            (add-to-list 'mm-inline-media-tests
>>                         '("text/org"
>>                           my-display-org-inline
>>                           identity))
>>
>>            (defun my-display-org-inline (handle)
>>              (mm-display-inline-fontify handle 'org-mode))
>>
>>            (defun my-mm-org-babel-src-extract ()
>>              (mm-make-handle (mm-uu-copy-to-buffer start-point end-point)
>>                              '("text/org")
>>                              nil nil
>>                              (list mm-dissect-disposition
>>                                    (cons 'filename "Org Babel source 
>> file"))))
>>
>>            (add-to-list 'mm-uu-type-alist
>>                         '(org-babel-block
>>                           "^#\\+begin_"
>>                           "^#\\+end_"
>>                           ;; (lambda nil
>>                           ;;   (mm-uu-verbatim-marks-extract 0 0))
>>                           my-mm-org-babel-src-extract
>>                           nil))
>>            (mm-uu-configure)))
>>
>> This is an enhanced version of what I sent previously: here, the identified
>> block is highlighted as an Org-mode buffer. In other words, it's not in 
>> yellow
>> background anymore, but really using the faces you've customized for such an
>> Org-Babel block in a standard Org buffer.
>>
>>
>>> What'd be an good extra is the colorization of such =org-verbatim= 
>>> strings...
>>
>> Still true; no clue for that one...
>>
>> Best regards,
>>   Seb
>
> _______________________________________________
> Emacs-orgmode mailing list
> Please use `Reply All' to send replies to the list.
> address@hidden
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode



reply via email to

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