Формулы

Формулы

от Стасик Черноус -
Количество ответов: 12

При наборе формул в предыдущей версии Moodle выражения, ограниченные знаками \( \), воспринимались как формулы. В новой версии они не преобразовывабтся в формулы. Весь формульный материал курса был набран посредством таких знаков, не хотелось бы менять по всему курсу знаки \(\) на двойные доллары $$. Подскажите, есть ли возможность сделать так, чтобы вновь выражения с  \( \) воспринимались как формулы?

В ответ на Стасик Черноус

Re: Формулы

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle

Проще сдампить базу/таблицу, заменить все \\ на $$ и залить назад.

А можно подправить фильтр.  двух исправлений будет достаточно.

после "!strstr($text,'$$')" вставить " and !strstr($text,'\\')" и в длинном RE после "|\$\$(.+?)\$\$|"

вставить  "\\\\(.+?)\\\\|"

PS А что у вас за версия moodle ?

В ответ на Виталий Лавров

Re: Формулы

от Alexandre Scherbyna -

Можно без дампа просто выполнить команду адрес_сайта/admin/tool/replace/index.php и заменить \( и \) на $$

В ответ на Alexandre Scherbyna

Re: Формулы

от Стасик Черноус -

Спасибо большое за ответы!!! Версия 2.5.1. Простите, пожалуйста, я не очень хорошо владею возможностями moodle: как выполнить команду  адрес_сайта/admin/tool/replace/index.php (где находится раздел, предназначенный для внесения команд. Или может причина в том, что я - преподаватель, может быть, для этого нужны права администратора?.

 

 

В ответ на Стасик Черноус

Re: Формулы

от Alexandre Scherbyna -

Администратор должен набрать эту команду в адресной строке браузера и потом прописать что чем менять.

В ответ на Alexandre Scherbyna

Re: Формулы

от Стасик Черноус -

Спасибо огромное за ответы! Глобальная замена символов - это, действительно, отличное решение. Однако, к сожалению, администратор сказал, что это приведет, возможно, к замене ненужных символов (т.е. там, где не нужно преобразовывать формулы) в других курсах. Не подскажете, как быть в такой ситуации?

В ответ на Стасик Черноус

Re: Формулы

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle

сделать бекапы курсов с формулами и в них исправить \( \) на $$ $$. Потом восстановить из исправленного бекапа.

Вопрос только в числе курсов.

В ответ на Стасик Черноус

Re: Формулы

от Alexandre Scherbyna -

Действительно, не исключено, что комбинации символов \( встречаются еще где то, помимо формул, а предлагаемая команда заменяет все, неглядя.

Тогда лучше воспользоваться программой phpMyAdmin. С ее помощью можно искать те же комбинации символов и заменять их по одному, где это действительно нужно. Копию базы данных перед этим сделать не помешает, разумеется.

В ответ на Alexandre Scherbyna

Re: Формулы

от Стасик Черноус -

Спасибо! Но, к сожалению, это нереально. Формул очень много и просить администратора о замене поштучно мне неудобно. А нельзя ли провести замену лишь в рамках одного моего курса, чтоб не затрагивать остальные? 

В ответ на Стасик Черноус

Re: Формулы

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle

так сделать бекап своего курса, исправить (в обычном редакторе) и восстановить назад.

бекап - это zip-архив. Распаковать его, исправить все что нужно, запаковать назад и после чего восстановить.

 

В ответ на Виталий Лавров

Re: Формулы

от Стасик Черноус -

Огромное спасибо! Хотя бэкап делать не хотелось (поскольку тогда все данные о пользователях и результаты было бы утрачено), Ваше решение натолкнуло меня на мысль о том, чтобы сделать экспорт тестовых вопросов в формате moodlexml, сделать замену и єкспортировать в moodle замененный файл. Решение найдено. Спасибо всем за помощь!!!   

В ответ на Стасик Черноус

Re: Формулы

от Alexandre Scherbyna -

Тогда, конечно, делайте так, как говорит Виталий: восстановите ваш курс на локальной машине, исправьте любым способом и загрузите обратно.