Sign in to follow this  
Followers 0
DEST

Изменения в тег "Код"

1 post in this topic

Думаю, многие заметили, что последние 4 года на форуме был ужасный тег "Код": плохо форматировал, по умолчанию выставлял HTML синтаксис, многие не замечают это и оставляют, поэтому ничего не подсвечивалось. 

 

Сегодня я кардинально выпилил старый редактор (codemirror) и подключил от товарищей из Майкрософт редактор monaco-editor. 

Это скорее даже не радктор, а онлайн IDE, поэтому должно быть намного удобней, однако есть и минусы: все это выполняется в браузере, поэтому скорее всего этот редактор выжрет остатки оперативной памяти, если у вас они есть на компьютере. Ну что ж, красота требует жертв :) 

 

Кнопка для вставки та же. Если у вас не работает редактор, или работает некорректно, то попробуйте очистить кэш в браузере. Если не помогло, отпишитесь, пожалуйста, мне в ЛС @DEST. Я вроде бы потыкался, но ошибки все равно могут остаться. 

 

Вот некоторые примеры: 

Спойлер

public OnPlayerConnect(playerid)
{
    // создаем таймер, где будем проверять игрока на пользование читами
    gPlayerTimer[playerid] = SetTimerEx("ac_money_OnPlayerSecondTimer"1000*1true"i", playerid);
    
    #if defined ac_money_OnPlayerConnect
        return ac_money_OnPlayerConnect(playerid);
    #else
        return 1;
    #endif
}
#if defined _ALS_OnPlayerConnect
    #undef OnPlayerConnect
#else
    #define _ALS_OnPlayerConnect
#endif
#define OnPlayerConnect ac_money_OnPlayerConnect
#if defined ac_money_OnPlayerConnect
    forward ac_money_OnPlayerConnect(playerid);
#endif

public OnPlayerDisconnect(playerid, reason)
{
    KillTimer(ac_timerid[playerid]); // удалим таймер для этого игрока
    
    #if defined ac_money_OnPlayerDisconnect
        return ac_money_OnPlayerDisconnect(playerid, reason);
    #else
        return 1;
    #endif
}
#if defined _ALS_OnPlayerDisconnect
    #undef OnPlayerDisconnect
#else
    #define _ALS_OnPlayerDisconnect
#endif
#define OnPlayerDisconnect ac_money_OnPlayerDisconnect
#if defined ac_money_OnPlayerDisconnect
    forward ac_money_OnPlayerDisconnect(playerid);
#endif

 

Спойлер

SELECT  c1.id AS id1,
        c1.login 
    FROM clients AS c1 
    INNER JOIN clients c2 ON c1.login = c2.login 
    WHERE c1.id <> c2.id 
    GROUP BY c1.id 
    ORDER BY c1.id;

 

Спойлер

function append(form) {
   if (form.input.value) {
      var newItem = document.createElement("LI");
      newItem.appendChild(document.createTextNode(form.input.value));
      document.getElementById("myUL").appendChild(newItem);
   }
}

function replace(form) {
   if (form.input.value) {
      var newItem = document.createElement("LI");
      var lastChild = document.getElementById("myUL").lastChild;
      newItem.appendChild(document.createTextNode(form.input.value));
      document.getElementById("myUL").replaceChild(newItem, lastChild);
   }
}

function restore() {
   var oneChild;
   var mainObj = document.getElementById("myUL");
   while (mainObj.childNodes.length > 2) {
      oneChild = mainObj.lastChild;
      mainObj.removeChild(oneChild);
   }
}

 

Пока в редакторе нет поддержки PAWN, но, возможно скоро я ее туда добавлю, так как это в нем возможно. 

Можно настроить под любой язык, и даже автокомплит самповских функций скорее всего получится сделать. 

Если кому интересно, или кто хочет помочь в этом, вот тут сам редактор: 

https://microsoft.github.io/monaco-editor/index.html

Вот тут есть демо его функций https://microsoft.github.io/monaco-editor/playground.html

А вот тут описание языка для описания своего языка https://microsoft.github.io/monaco-editor/monarch.html

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.