토픽에 코딩 텍스트를 작성하기 위한 플러그인

안녕하세요,

Discourse에서 아래 사진과 같은 코드를 포함하여 주제를 작성할 수 있는 플러그인이 있는지 알고 싶습니다.

색상, 식별자 등이 포함된 형태입니다.

무언가를 놓치고 있는 것일 수도 있지만, 이미 코드 블록을 사용할 수 있습니다:

console.log("hi");

스크린샷이 캡처된 디스코드와 동일한 방식으로 작동합니다.

모르는 것을 물어봐서 죄송합니다. 하지만 토픽을 작성할 때 이 코드 블록을 어떻게 사용하나요?

정확한 아이디어는 디스코드를 이런 방식으로 복제하는 것입니다.

3개의 백틱 + 언어 이름 (선택 사항):

```js
console.log(“hi”);
```

이해한 것 같은데, 예를 들어 이 코드에서 일부 함수의 색상 처리는 어떻게 되어야 하나요? 일부 색상은 표시되지만, 디스코드에 있는 그림처럼 표시가 되지 않습니다.

언어는 Python입니다.

input long  MagicN = 1234;

CTrade         negocio;
CPositionInfo  posicao;
bool           InseriuParcial = false;


void OnTrade()
{
   ExpiringOrdersPartial(_Symbol, MagicN);
}


void OnTick()
{   
   //....
   
   bool pos = posicao.SelectByMagic(_Symbol, MagicN);
   
   if (pos) && (!InseriuParcial)
   {
      string comment = "[part:" + IntegerToString(posicao.Ticket()) + "]"; 
      if (PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_SELL)
      {
         negocio.BuyLimit(1.0, simbolo.Last() -500, _Symbol, 0, 0, orderTypeTime, 0, comment + " Partial");
         negocio.BuyLimit(1.0, simbolo.Last()-1000, _Symbol, 0, 0, orderTypeTime, 0, comment + " Partial");
      }
      else
      {
         //....
      }
      InseriuParcial = true;
   }
   
   //....
}

void ExpiringOrdersPartial(string symbol, long m_magic)
{  
   int total = OrdersTotal();
   for(int i = total - 1; i >= 0; i--)
   {    
      ulong  order_ticket  = OrderGetTicket(i);
      
      if((OrderGetString(ORDER_SYMBOL) != symbol) || (OrderGetInteger(ORDER_MAGIC) != m_magic))
         return;
      
      string comment = OrderGetString(ORDER_COMMENT);
      string tokenB  = "[part:";
      string tokenE  = "]";
      
      int posB = StringFind(comment,tokenB);
      if (posB != -1)
      {
         int posE = StringFind(comment,tokenE, posB + StringLen(tokenB));
         if (posE == -1)
            return;
         
         string position_ticketS = StringSubstr(comment, posB + StringLen(tokenB), posE - (posB + StringLen(tokenB)));
         ulong  position_ticket  = (ulong)StringToInteger(position_ticketS);
         
         if (!PositionSelectByTicket(position_ticket))
            OrderDelete(order_ticket);
      }
   }
}

제가 아는 바로는 Discord도 우리와 동일한 라이브러리를 코드 하이라이팅에 사용합니다: GitHub - highlightjs/highlight.js: JavaScript syntax highlighter with language auto-detection and zero dependencies. · GitHub

Discourse 게시물에서 코드가 Discord와 동일하게 보이도록 하려면 Codeblock Theme Picker 를 설치하고 테마를 Solarized Dark로 변경하세요.

저희 사이트에는 활성화된 다양한 변형을 보여주는 페이지가 있습니다.