2011-12-14 3 views
6

Quando si scorre un documento Sweave (Rnw) con codice in lattice e R , il testo salta quando la modalità cambia tra Latex e ESS. Le due modalità non sono d'accordo su come il testo dovrebbe essere avvolto. Inoltre, ho notato che quando faccioGNUEmacs/ESS/Latex/Sweave: il testo viene visualizzato in modo diverso quando il cursore è in codice latex o in codice R

  1. Mx ginocchiera troncamenti linee abilitare troncare le linee lunghe mentre il cursore è al codice lattice
  2. spostare il cursore codice R
  3. ritorno al codice latex

la modalità troncata delle linee lunghe non è più attiva. Qualcuno ha notato questo? Qualcuno ha risolto questo problema?

+0

Sì, ho notato che; fa la stessa cosa con la modalità palangari M-x. Mi ci sono abituato perché non so abbastanza su emacs per risolverlo. Mi piacerebbe vedere una risposta però. – Aaron

+0

Per @csgillespie, io sono pelo nell'uovo con la grammatica qui, ma credo che sia un documento ** ** ** Sweave e non un documento Sweave **. È il suono (consonante o vocale) che determina se usiamo ** a ** o ** an **. Vedi [collegamento] (http://grammar.quickanddirtytips.com/a-versus-an.aspx). – jrm

+0

@jrm: Niente di male spaccare il capello, si solleva un importante [punto] (http://csgillespie.wordpress.com/2011/03/26/an-r-package-or-ar-package/);) Tuttavia , Trovo che dire "un documento di Sweave" è un po 'irritante, e continuerei a cercare "a Sweave". – csgillespie

risposta

4

Con la lettura di una domanda simile nella mailing list [email protected], questo è ciò che ho imparato. Quando scorriamo il file noweb, stiamo passando le principali modalità da ESS a LaTeX. La maggior parte delle modalità principali uccide tutte le variabili locali come parte della loro inizializzazione, quindi quando impostiamo la variabile localmente viene sovrascritta. Per risolvere questo problema, ho modificato un gancio che ho trovato:

(add-hook 'LaTeX-mode-hook '(lambda() (if (string-match "\\.Rnw\\'" buffer-file-name) (setq fill-column 80)))) 

è possibile impostare un gancio simile per palangari-mode o alternare-Tronca-lines, ecc, per soddisfare le vostre esigenze. Il lato negativo di questa soluzione è che sei bloccato con un singolo valore per la variabile impostata nel gancio.

+0

Grazie, non vedo l'ora di provarlo. – Aaron

+0

Ciao, ho trovato la tua discussione molto interessante. C'è un modo utilizzare il codice qui sopra per abilitare la modalità di contorno minore in Sweave ?? Perché quando mi muovo attraverso ESS da LaTeX (e viceversa) tutte le parti delineate sono state spiegate. – Riccardo

+0

@Riccardo, non sono sicuro di come risolvere il problema contorno a causa della descrizione nella mia risposta. Cioè, a meno che tu non modifichino le modalità principali per mantenere le variabili locali. La mia soluzione è stata un po 'incisiva, quindi le dimensioni della colonna di riempimento erano le stesse per entrambe le modalità. – jrm

Problemi correlati