2012-12-16 20 views
6

Quando si utilizza ESS in emacs per scrivere il codice R, è utile avere il comportamento predefinito con '_' sostituito da ' < - '(inserendo due' _ 'consecutivi inserirebbe il carattere di sottolineatura stesso). Ma quando si incolla il codice su un qualsiasi buffer nella modalità ESS, anche questa sostituzione si verifica e ogni '_' viene sostituito da '< -' e questo non è un comportamento desiderato da parte mia.Come evitare la sottomissione automatica di sottolineatura ESS con '<-' quando si incolla il testo ma tenerlo quando si scrive un trattino di sottolineatura

C'è un modo per impedire la sostituzione solo quando si incolla il testo?

Al momento ho completamente disattivato la sostituzione aggiungendo questo codice ai miei .emacs

(ess-toggle-underscore nil) 

Ma vorrei recuperare il '_' a '< -' solo la sostituzione durante la scrittura non quando incollare.

Qualche idea?

+1

Underscore non ha funzionato come operatore di assegnazione dalla versione 1.8.0, quindi ESS ti sta "aiutando". Perché non usare '=' per l'assegnazione se non si desidera digitare '<-'? –

+2

Impossibile riprodurlo. Se metto 'this_foo = 99' in un file, e lo copio e lo incollo in ESS, ottengo esattamente questo, assegnazione a una cosa chiamata' this_foo'. Non importa se lo copio/lo incollo con il mouse oi comandi. Cosa stai facendo esattamente? – Spacedman

+0

se incollo 'this_and_that' diventa 'this <- and <- that' (quando ess-toggle-underscore è impostato su true). Sto usando 'emacs -nw', emacs è 23.3.1. Come posso conoscere la versione ESS in uso? –

risposta

2

Questo non dovrebbe accadere. Si prega di segnalare un bug con ulteriori dettagli per ess-help o con M-x ess-submit-bug-report. Stai incollando in una sessione terminale, giusto?

+1

Non sei sicuro che sia un bug? Se l'OP sta incollando il testo in un terminale, può il terminale (o emacs che lo esegue) sapere che è stato effettivamente incollato, contro qualcuno sta scrivendo über veloce? Ho sempre pensato che fosse qualcosa che non si poteva evitare. –

+0

@SteveLianoglou, da più di 10 anni utilizzo emacs dal terminale (con 'emacs -nw') e ora trovo che usarlo da una GUI abbia un vantaggio. Quali altri pro e cos ci sono tra windows e la modalità emacs del terminale? –

+0

http://ergoemacs.org/emacs/emacs_gui_vs_terminal.html E un altro professionista per la GUI: copia e incolla del trattino basso dagli appunti funziona correttamente! –