Un suggerimento per la facilità d'uso del MetaEditor

 

Ciao, vorrei suggerire agli sviluppatori di standardizzare i rientri in MetaEditor quando scrivono il codice, come si fa in VisualStudio. Perché non c'è un'indentazione standard nelle funzioni e nei blocchi. Di conseguenza, il codice è meno leggibile. Anche quando si copia e incolla il codice, viene inserito in modo asimmetrico, alcune linee sono a sinistra e altre a destra. Potete per favore aggiustarlo. E per essere in grado di normalizzare automaticamente tutto il codice per rientri, è anche implementato in VisualStudio

 
Fresto:

Ciao, vorrei suggerire agli sviluppatori di standardizzare i rientri in MetaEditor quando scrivono il codice, come si fa in VisualStudio. Perché non c'è un'indentazione standard nelle funzioni e nei blocchi. Di conseguenza, il codice è meno leggibile. Anche quando si copia e incolla il codice, viene inserito in modo asimmetrico, alcune linee sono a sinistra e altre a destra. Potete per favore aggiustarlo. E per essere in grado di normalizzare automaticamente tutto il codice sull'indentazione, è anche implementato in VisualStudio


Per rendere il codice leggibile, usate styler:Styler - Lavorare con il codice sorgente - Sviluppo di programmi - MetaEditor

Стилизатор - Работа с исходным кодом - Разработка программ - Справка по MetaEditor
Стилизатор - Работа с исходным кодом - Разработка программ - Справка по MetaEditor
  • www.metatrader5.com
Данная функция предназначена для оформления исходного кода в соответствии с рекомендуемым стандартом. Это позволяет сделать код более читаемым...
 

Standardizzato. Usate lo styler del codice (Ctrl+,).

 
Non avevo notato questa funzione) Pensavo che il tasto destro del mouse dovesse essere) Grazie)

P.s. Com'è facile fare tutto bello ora, e io facevo fatica e aggiungevo spazi, mi abituavo a scrivere automaticamente in modo bello in una volta sola, ecc.
 
Ihor Herasko:

Standardizzato. Usate lo styler del codice (Ctrl+,).


Il code styler ha un solo stile di codice, come K&R, di cui la maggior parte dei programmatori sono costantemente stufi. Ho il progetto FormatMQL in VS, fare collegamenti a fonti, che ho intenzione di usare strettamente e riformattare in stile MS umano.

 

Grande argomento! Vorrei anche suggerire MQLEditor il più vicino possibile a Sublime Text 3.:) Mi manca davvero ottenere - il commento del blocco, il controllo del rientro del blocco immediatamente dalla combinazione di tasti. Vedere l'evidenziazione laterale dell'"architettura" del codice, ecc.

 
Alexey Volchanskiy:

Lo styler ha un solo stile di codice, come K&R, di cui la maggior parte dei programmatori sono costantemente stufi. Ho il progetto FormatMQL in VS, mi collego alle fonti che userò strettamente e le riformatto in stile MS umano.

Niente del genere - scrivo in due ambienti diversi con due stili di formattazione diversi - non è nauseante.

Quindi non inventare, ma abituati.

 
Rashid Umarov:

Niente affatto - scrivo in due ambienti diversi con due stili di formattazione diversi - non è nauseante.

Quindi non inventare, ma abituati.

Naturalmente, dopo tutto, lei è un dipendente dell'azienda. Sarebbe bello avere una scelta di codestyle nell'editor. Non voglio abituarmici.
 
Mikhail Kontsevoy:

Quello che manca è una scorciatoia da tastiera per ottenere - blocco di commento, blocco di controllo del rientro.

Guarda nel menu Modifica -> Avanzate

 

Sì, lo stile di MQ è un problema. Ma convincerli a fare almeno un aggiustamento è impossibile. Questo problema ha già 10 anni.

Forum sul trading, sistemi di trading automatico e test di strategia

Che stile! :)

Sergey Kravchuk, 2009.11.24 11:27

Preistoria: in molti anni di codifica ho sviluppato il "mio" stile di formattazione del testo(qui). I miei testi sono stati scritti in autoplay già da molto tempo e devo usare Astyle solo quando inizio a lavorare con un testo "alieno".

Posso spiegare perché formatto i miei testi in questo modo: il numero di tabulazioni (spostamento a destra in profondità nel testo) corrisponde al livello di annidamento. Ogni { di apertura inizia un nuovo livello, quindi è su una linea separata con la stessa indentazione del testo precedente, e tutto il testo dopo è indentato a destra. Ogni chiusura } porta il testo indietro di una scheda. Questo rende facile trovare le parentesi accoppiate (dovrebbero essere nella stessa posizione verticalmente e il numero di volte che il tasto Tab viene premuto corrisponde al livello di annidamento del testo. Gli interni + - > < < sono punteggiati da spazi, in modo che il testo non si confonda in una poltiglia solida. Per me, questo ha senso e ha un senso.


Ecco la storia: ieri ho ricevuto il codice sorgente di ml5 con una strana (dal mio punto di vista) formattazione: parentesi graffe spostate a destra nel testo per 2 posizioni, e anche il testo al loro interno è spostato a destra, ma solo per una posizione. Ho cercato di ottenere il tabulatore nella stessa posizione dell'apertura { per mettere una chiusura } - non ha funzionato. Si è scoperto, così formattato testo Metaeditor5 comando Styler.

Qualcuno (forse gli stessi sviluppatori) può spiegare la logica della formattazione di Metaeditor5?

Ecco un pezzo di codice da MACD Sample.mq5 a modo loro e a modo mio:

Styler5                                  -|- Мой стиль
-------                                  -|- ---------
bool CSampleExpert:: LongModified()       -|- bool CSampleExpert:: LongModified()
  {                                      -|- {  
   bool res=false;                       -|-   bool res = false;
//--- check for trailing stop            -|-   //--- check for trailing stop
   if( InpTrailingStop>0)                 -|-   if ( InpTrailingStop > 0)
     {                                   -|-   { 
      if( m_symbol.Bid()- m_position. Price -|-     if ( m_symbol.Bid() - m_position. Pric
        {                                -|-     {
         if( m_position. StopLoss()< m_symb -|-       if ( m_position. StopLoss() < m_symb
           {                             -|-       {
            double sl= m_symbol.Bid()- m_a -|-         double sl = m_symbol.Bid() - m_a
            double tp= m_position. TakePro -|-         double tp = m_position. TakeProfi
            //--- modify position        -|-         //--- modify position
            if( m_trade. PositionModify( Sy -|-         if ( m_trade. PositionModify( Symbo
               printf("Long position by  -|-           printf(" Long position by % s to
            else                         -|-         else
              {                          -|-         {
               printf("Error modifying p -|-           printf(" Error modifying positi
               printf("Modify parameters -|-           printf(" Modify parameters : SL
              }                          -|-         }
            //--- modified and must exit -|-         //--- modified and must exit fro
            res=true;                    -|-         res = true;
           }                             -|-       }
        }                                -|-     }
     }                                   -|-   } 
//---                                    -|-   //---
   return( res);                          -|-   return( res);
  }                                      -|- }

E inoltre.

Forum sul trading, sistemi di trading automatico e test di strategia

Styler in MetaTrader 5

Combinator, 2009.11.24 14:10

Discutere la styler MQL5. Iniziato qui


Devo guardare un codice diverso. Compreso uno scritto male.

Una buona formattazione facilita notevolmente la lettura del codice.


Quindi, imho, per una gran parte dei normali codificatori la funzione rimarrà inutilizzata a causa delle peculiarità della formattazione e della mancanza di opzioni.

Suggerisco di aggiungere la personalizzazione o di formattare in uno stile veramente comune.

Come opzione - rendere possibile la scelta di uno dei 2 o 3 stili.


 
Stanislav Korotky:

Sì, lo stile di MQ è un problema. Ma convincerli a fare almeno un aggiustamento è impossibile. Questo problema ha ormai 10 anni.

E inoltre.

La differenza non è significativa, ma lo stile di formattazione di MQ è innegabilmente migliore.