tracer Markdown mettant en évidence dans Emacs?

Existe-t-il une modification d’un outil existant ou d’un nouvel outil qui mettra en évidence des blocs (de couleur) surlignés en syntaxe du code R dans un document de démarcation knitr lorsqu’il sera ouvert dans Emacs?

Les morceaux que je regarde sont des blocs à sortingple fond qui contiennent du code R à l’intérieur.

EDIT: des choses que j’ai essayées jusqu’ici:

– Ubuntu 12.04 avec Emacs 23

 emacs --version GNU Emacs 23.3.1 

1. Polymode

https://github.com/vitoshka/polymode/issues/3

J’essaie de faire polymode pour mettre en évidence la syntaxe de mes fichiers Rmd, mais il se plaint d’un fichier de chargement ‘couleur’:

 cd ~/.emacs.d git clone https://github.com/vitoshka/polymode.git 

Dans mon fichier .emacs:

 (add-to-list 'load-path "/home/avilella/.emacs.d/polymode/") (add-to-list 'load-path "/home/avilella/.emacs.d/polymode/modes/") ;; Require any polymode bundles that you are interestd in: (require 'poly-R) (require 'poly-markdown) 

eval-buffer:

 Cannot open load file: color 

– CentOS avec Emacs 24:

 emacs --version GNU Emacs 24.2.1 

1. Polymode installé correctement

Ouvrez un fichier Rmd, Mx polymode-minor-mode , aucune modification de la coloration syntaxique.


 emacs --version GNU Emacs 24.3.1 

1. Polymode installé correctement

Ouvrez un fichier Rmd, Mx poly-markdown+r-mode , une partie de la coloration syntaxique commence à apparaître, mais je dois modifier manuellement le test dans chaque bloc de code sortingple-tic afin qu’il affiche complètement la syntaxe.

Entrez la description de l'image ici

Entrez la description de l'image ici

La deuxième image est juste après avoir tapé un retour avant le bloc knitr.

Cela pourrait aider: http://sjp.co.nz/posts/emacs-ess-knitr/

Knitr markdown à Emacs via ESS

Ton problème

Tout d’abord, vous dites que vous avez GNU Emacs 23.3.1, mais dans le polymode readme.md , on lit readme.md :

Testé avec Emacs 24.3.1 et 24.4.5.

En ce qui concerne votre erreur: “Impossible d’ouvrir le fichier de chargement: color”, dans polymode.el , il y a la ligne:

 (require 'color) 

ce paquet est dans Emacs 24, mais il pourrait bien manquer dans votre version.

Solution

  1. Passez à une version récente (donc prise en charge) d’Emacs.

  2. Extrayez le polymode.zip dans un répertoire où vous conservez le matériel Emacs, par exemple:

     ~\conf\emacs 

et changer le polymode-master résultant en polymode

  1. Ajoutez ceci dans votre fichier init (et si vous avez utilisé des noms différents ci-dessus, changez les noms ci-dessous en conséquence):

     ;; Just an Emacs personal dir containing polymode packages etc. (setq MY-EMACS "~/conf/emacs") (defun my-emacs (subfolder) "Get path to personal dir + subfolder" (concat (expand-file-name MY-EMACS) "/" subfolder)) ;; ESS Markdown ;; ------------- (defun rmd-mode () "ESS Markdown mode for rmd files" (interactive) (setq load-path (append (list (my-emacs "polymode/") (my-emacs "polymode/modes/")) load-path)) (require 'poly-R) (require 'poly-markdown) (poly-markdown+r-mode)) ;; Wrap line in markdown. Comment if you don't dislike words cut in the middle (add-hook 'markdown-mode-hook (lambda () (visual-line-mode 1))) ;; Let you use markdown buffer easily (setq ess-nuke-trailing-whitespace-p nil) 
  2. Meta + rmd lorsque le fichier Rmd est ouvert ou définissez le mode dans
    … profitez d’un changement spectaculaire de votre productivité.

PS
Ne négligez pas la dernière ligne elisp. Cela permettra de sauvegarder correctement les démarques. Sinon, lorsque vous rouvrez votre document, vous aurez des sursockets désagréables.

Une note aux utilisateurs de Windows

Ignorez cela si vous êtes un Linux, mais, malgré la question mentionnée sur Ubuntu, ma réponse s’applique parfaitement à Windows Emacs. Juste en ce qui concerne:

  • Étape 2) Vous allez extraire polymode.zip dans:

     %USERPROFILE%\conf\emacs 

    Comme vous le devinez, la variable d’environnement% USERPROFILE% contient le chemin d’access au répertoire de votre profil utilisateur. Si vous n’êtes pas sûr de ce que c’est, exécutez set USERPROFILE dans l’invite de la CLI.
    En tant qu’utilisateur Windows, vous pouvez être utilisé pour stocker des éléments dans My Documents . Dans ce cas, votre dir sera:

     %USERPROFILE%\Documents\conf\emacs 
  • Étape 3) Si à l’étape 2) vous avez utilisé le chemin d’access %USERPROFILE%\Documents\conf\emacs , modifiez en conséquence la première ligne de code à partir de:

     (setq MY-EMACS "~/conf/emacs") 

    à (notez les barres obliques):

     (setq MY-EMACS "~/Documents/conf/emacs") 

    Dans les deux cas (avec et sans “Mes documents”), vous préférerez peut-être le style Windows:

     (setq MY-EMACS (substitute-in-file-name "$USERPROFILE/Documents/conf/emacs"))