2009-07-10 4 views
6

Есть ли способ использования emacs для Rscript?Есть ли режим Emacs для Rscript?

(Rscript это скрипт передний конец для R языка.)

Если я печатаю это:

#!/usr/bin/Rscript 
print(commandArgs(TRUE)) 

и сделать indent в R-режиме ESS он сдвигает первую строку, как сумасшедший , так как он видит это как комментарий:

      #!/usr/bin/Rscript 
print(commandArgs(TRUE)) 

ответ

1

Существует нет, но вы можете заставить ваш Rscript в режим редактирования R, сделав вторую строчку файла выглядит следующим образом: (. Больше информации here)

# -*- mode: R -*- 

+2

Кроме того, если вы закончите их .R (мой выбор для обычных R-файлов) или .r (мой выбор для скриптов littler или Rscript), режим получает автоматическое присвоение. –

0

Попробуйте shell-script-mode - с некоторыми notes on customized indentation

Он отступом ваш код просто отлично, для меня.

+0

Любая причина для пропусков голосования? Как я уже сказал, то, что я связал, исправил плохой отступ, о котором жаловался ОР; если это не поможет, пожалуйста, игнорируйте. Если это неправильно или вредно, downvote - но делайте все любезно объясняя, почему это неправильно. –

2

По версии 5.9, ESS распознает скрипты с использованием интерпретатора Rscript или интерпретатора мусора; см. http://ess.r-project.org/Manual/ess.html#New-features.

Для ссылки, чтобы назначить режим интерпретатору, используйте переменную-интерпретатор-тип-alist. Например,

(add-to-list 'interpreter-mode-alist '("Rscript" . r-mode)) 

Любой файл с первой строки, как "#!/USR/бен/Rscript" будет признан в качестве г-режиме.

0

Если вы просто хотите прокомментировать строку, используйте «##» вместо «#». Двойной номер # поместит линию в нужное положение.

+1

Правда, и полезно знать. Однако в этом случае первая строка должна начинаться с '#!', Чтобы сообщить оболочке, что это за скрипт. – Aaron

Смежные вопросы