Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Добрый день.

Нужно сделать он-лайн редактор кода (html + js) собственного языка программирования

(Кириллического, похожего на язык 1С).

Должны быть такие возможности:

Подсветка возможных функций языка

Подсветка строки между двойными кавычками

Подсветка чисел

Подсветка комментариев

Нумерация строк

Возможность указания ошибки в строке

Копировать, вырезать, вставить - стандартными горячими клавишами.

Выделение слова двойным кликом

Табуляция (4 пробела)

Автотабуляция для следующей строки

Сворачивание кода по { }

Стандартные комментарии (/* */, //)

Вставка блоков кода из панели возможных функций.

Функциb могут быть вида:

ОКРУГЛ();

или

ЕСЛИ() {

}

После вставки функции курсов позиционировать внутри скобок, если такие имеются.

Код после редактора будет сохраняться в базу данных.

Перед сохранением, он должен быть очищен от разного невидимого

кода разметки обеспечивающего подсветку синтаксиса

Так же должна быть написана функция загрузки кода из БД в редактор.

Возможны будут ещё какие-то незначительные дополнения в ТЗ по мере выполнения проекта,

свойственные для обычных редакторов кода.

Весь програмvный код обильно снабдить комментариями,

что бы в будущем это всё поддавалось редактированию.

Не должно быть программного кода подкачиваемого с внешних ресурсов

Пример кода:

//Сабля

Тип_Замка_Сабли = Параметр["type_lock"];

ЕСЛИ(Тип_Замка_Сабли == 2) {

Тип_Замка_Сабли = 3;

} //У mini хомутов сабли такие же как у norm, norm ближе к норме, поэтому принято за родителя

Артикул_Сабли = "01.11.".Тип_Замка_Сабли.".".Параметр["dlina_homuta"];

Артикул_Шпил = "01.12";

Артикул_Клык = "01.13.".Параметр["type_lock"];

ЕСЛИ(Параметр["type_lock"] == "1") {

Артикул_Сабли .= "-20-3";

Артикул_Шпил .= ".100-".Параметр[1];

Артикул_Клык .= ".55-20";

}

ИНАЧЕ_ЕСЛИ(Параметр["type_lock"] == "4") {

Артикул_Сабли .= "-40-4";

Артикул_Шпил .= ".200-".Параметр[1];

Артикул_Клык .= ".110-24";

}

АРТИКУЛ_В_СПЕЦИФИКАЦИЮ(Артикул_Сабли, 1);

//Клык

АРТИКУЛ_В_СПЕЦИФИКАЦИЮ(Артикул_Клык, Параметр["shpilka_kolvo"] * 2);

ПОСТ_В_СПЕЦИФИКАЦИЮ(1, 5, "Сварка клыков", 0.26+((0.24+0.37)*Параметр["shpilka_kolvo"])); //0.26-устан сабл,съём (0.24+0.37)- устан+сварка одной пары клыков

ПОСТ_В_СПЕЦИФИКАЦИЮ(2, 9, "Зачистка замка обратной стороны", 0.0016*Параметр["dlina_homuta"]); //0.0016-1мм сабли

Наим = "Замок с клыком ".Параметр[1];

ЕСЛИ (Параметр["type_lock"] == 1) { Наим .= " нано"; }

ИНАЧЕ_ЕСЛИ(Параметр["type_lock"] == 2) { Наим .= " мини"; }

ИНАЧЕ_ЕСЛИ(Параметр["type_lock"] == 4) { Наим .= " усил"; }

НАИМЕНОВАНИЕ(Наим);

4 года назад
_Medvedev_
Сергей 
37 лет
17 лет в сервисе
Был
3 года назад

Заявки фрилансеров

Евгений
 
31 год
8 лет в сервисе
Был
3 года назад
2 отзыва
4 года назад
Дмитрий
 
39 лет
7 лет в сервисе
Был
3 года назад
4 отзыва
4 года назад