2013-06-11 2 views
0

В редакторе скриптов Matlab мы можем использовать символ с двойным процентом для определения региона. например, в следующем MatLab скрипта, два региона определены:Как выполнить часть кода в ESS (Emacs говорит статистику)

%% region 1 
a=1; 
b=2; 
%% region 2 
c=7; 
d=5; 

Преимущество определения региона в том, что вы можете просто выполнить одну область, где находится курсор находит, а не весь скрипт с помощью пресс Ctrl + Enter.

если курсор находится в точке c = 7; line, после нажатия ctrl + enter, c = 7 и d = 5 будет выполняться, пока a = 1 и b = 2 не будут выполнены.

Однако, я много искал из сети, чтобы найти что-то эквивалентное в ESS, результатов нет.

В ESS есть команда 'eval region', но я не знаю, как определить такую ​​область.

Заранее благодарен!

ответ

1

Регион emacs говорит о части текста, которую вы (по существу) считаете «выделенной» в текстовом редакторе «обычного»/графического интерфейса.

Подробнее об этом можно узнать в The Mark and the Region в emacs manual.

Насколько я знаю, эквивалент поведения матлаба, который вы описываете, не соответствует. Несколько раз, когда я использовал matlab, я действительно нахожу его удобным, когда тыкаешь проблему, используя скрипты ad hoc.

+0

Вероятно, создание временных специальных скриптов для конкретной проблемы было бы хорошей идеей на данный момент. –

1

Как сказал Стив выберите регион, то все стандартные команды оценки ЕСС будет действовать на области (С-С С-с, С-RET, С-М-х).

Но, что вы описываете, звучит очень интересно. Не могли бы вы дать полное описание рабочего процесса и разметки и отправить его в список рассылки ess-help для более тщательного обсуждения? Мне было бы интересно реализовать такую ​​функцию. Благодарю.

+0

Чтобы запустить насос, [это] (http://www.mathworks.com/help/matlab/matlab_prog/run-sections-of-programs.html) является страницей документации для обсуждаемой функции. Вы можете увидеть относительно небольшой сценарий в разделе «Пример оценки разделов кода», в котором показано поведение. Это симпатичный трюк, но некоторые могут подумать, что это версия Rormdown от poorman ;-) –

+0

@SteveLianoglou Спасибо. Реализация Matlab глубоко интегрируется с парсером и распознает уровни вложенности. В emacs области верхнего уровня легко реализуемы. Я добавил это к нашему todo. – VitoshKa

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