DataSwap Γρήγοροι μετατροπείς αρχείων και δεδομένων, χωρίς εγγραφή

Μετατροπέας Markdown σε HTML

Επικολλήστε το Markdown σας παρακάτω και πάρτε καθαρό HTML ακαριαία, μαζί με ζωντανή προεπισκόπηση — τίποτα από όσα επικολλάτε δεν φεύγει από το πρόγραμμα περιήγησής σας.

Ένας χειρόγραφος αναλυτής για το Markdown που γράφουν πραγματικά οι άνθρωποι

Αυτό το εργαλείο επεξεργάζεται το κείμενό σας block προς block — μια γραμμή επικεφαλίδας, ένα μπλοκ κώδικα με οριοθέτες, μια σειρά στοιχείων λίστας, μια παράγραφο — και μετά εφαρμόζει μορφοποίηση εντός γραμμής (έντονα, πλάγια, σύνδεσμοι, ενσωματωμένος κώδικας) μέσα σε κάθε block. Κάθε χαρακτήρας απλού κειμένου γίνεται escape (&, <, >) πριν κατασκευαστεί οποιαδήποτε ετικέτα, οπότε επικολλημένο HTML ή ετικέτες script εμφανίζονται πάντα ως αδρανές κείμενο αντί για ζωντανό markup — σημαντικό επειδή το HTML που παράγει αυτό το εργαλείο συχνά ενσωματώνεται απευθείας σε άλλη σελίδα. Είναι ένα σκόπιμα ειλικρινές υποσύνολο, όχι μια πλήρης μηχανή CommonMark: δείτε τις συχνές ερωτήσεις για το τι ακριβώς περιλαμβάνεται και τι όχι.

Πρακτικό παράδειγμα

Είσοδος:

# Σημειώσεις Έργου

Αυτό είναι **σημαντικό** και *αξίζει να το διαβάσετε*.

- Πρώτο σημείο
- Δεύτερο σημείο

> Θυμηθείτε να ελέγξετε το αρχείο `config.json`.

Έξοδος:

<h1>Σημειώσεις Έργου</h1>
<p>Αυτό είναι <strong>σημαντικό</strong> και <em>αξίζει να το διαβάσετε</em>.</p>
<ul><li>Πρώτο σημείο</li><li>Δεύτερο σημείο</li></ul>
<blockquote><p>Θυμηθείτε να ελέγξετε το αρχείο <code>config.json</code>.</p></blockquote>

Συχνές ερωτήσεις

Αυτό το εργαλείο ακολουθεί πλήρως την προδιαγραφή CommonMark;

Όχι, και δεν ισχυρίζεται κάτι τέτοιο. Αυτό το εργαλείο καλύπτει το Markdown που γράφουν πραγματικά οι άνθρωποι καθημερινά — επικεφαλίδες, έντονα και πλάγια γράμματα, συνδέσμους και εικόνες, λίστες με κουκκίδες και αριθμημένες, μπλοκ κώδικα με οριοθέτες, ενσωματωμένο κώδικα, παραθέσεις και οριζόντιες γραμμές. Δεν επιχειρεί να καλύψει πλήρως την προδιαγραφή CommonMark για ασυνήθιστες ακραίες περιπτώσεις: ένθετες λίστες, σύνδεσμοι τύπου αναφοράς ("[κείμενο][αναφ]" με ξεχωριστή γραμμή ορισμού), πίνακες, υποσημειώσεις, απευθείας ενσωματωμένο HTML και επικεφαλίδες τύπου setext (υπογράμμιση μιας γραμμής με === ή ---) μένουν όλα εκτός όσων χειρίζεται αυτός ο χειρόγραφος αναλυτής. Για ένα README, ένα σχόλιο ή ένα προσχέδιο άρθρου, αυτό αρκεί· για ένα έγγραφο που στηρίζεται πολύ σε αυτές τις προχωρημένες δυνατότητες, περιμένετε κάποια σύνταξη να εμφανιστεί αυτούσια, χωρίς μετατροπή.

Τι συμβαίνει αν το Markdown μου περιέχει αυτούσιο HTML, όπως μια ετικέτα <script> που έγραψα με το χέρι;

Εμφανίζεται, δεν εκτελείται ποτέ. Κάθε χαρακτήρας του απλού σας κειμένου — συμπεριλαμβανομένης οποιασδήποτε ετικέτας HTML που γράψατε απευθείας αντί να την παράγετε μέσω σύνταξης Markdown — γίνεται escape στην κυριολεκτική του μορφή κειμένου (το < γίνεται &lt;, κ.ο.κ.) πριν αυτό το εργαλείο κατασκευάσει οποιοδήποτε πραγματικό markup. Είναι σκόπιμη επιλογή ασφάλειας, όχι απλώς όριο εύρους: αυτός ο αναλυτής δεν έχει καμία λειτουργία απευθείας ενσωμάτωσης HTML, οπότε δεν υπάρχει κανένας τρόπος κάτι που επικολλήσατε να γίνει ζωντανή ετικέτα <script> ή <img onerror=...> στην έξοδο. Οι μόνες ετικέτες που εμφανίζονται ως πραγματικό, ζωντανό HTML είναι αυτές που παράγει το ίδιο το εργαλείο από πραγματική σύνταξη Markdown — επικεφαλίδες, έντονα, σύνδεσμοι κ.ο.κ. — κάτι που έχει ιδιαίτερη σημασία επειδή αυτό το παραγόμενο HTML συχνά ενσωματώνεται απευθείας στη σελίδα κάποιου άλλου.

Ανεβαίνει το Markdown μου κάπου;

Όχι. Ολόκληρη η μετατροπή — η ανάλυση του Markdown σας και η κατασκευή του HTML — γίνεται στο πρόγραμμα περιήγησής σας με απλή επεξεργασία συμβολοσειρών σε JavaScript· τίποτα από όσα πληκτρολογείτε ή επικολλάτε δεν αποστέλλεται ούτε αποθηκεύεται σε διακομιστή. Αυτό έχει ιδιαίτερη σημασία εδώ επειδή τα προσχέδια σε Markdown είναι συχνά αδημοσίευτες αναρτήσεις, εσωτερική τεκμηρίωση ή σημειώσεις που κάποιος θα προτιμούσε να μην φύγουν από τη συσκευή του.

Γιατί το εργαλείο εμφανίζει τόσο ζωντανή προεπισκόπηση όσο και ακατέργαστο HTML;

Εξυπηρετούν διαφορετικό σκοπό. Η προεπισκόπηση αποδίδεται μέσα σε ένα απομονωμένο iframe (χωρίς επιτρεπόμενα scripts, ξεχωριστό από την υπόλοιπη σελίδα) ώστε να βλέπετε πώς θα φαίνεται πραγματικά η μορφοποίηση — επικεφαλίδες, έντονα, λίστες — χωρίς τίποτα από το επικολλημένο περιεχόμενό σας να μπορεί να επηρεάσει αυτόν τον ιστότοπο. Το πλαίσιο HTML από κάτω είναι το κυριολεκτικό markup που παρήγαγε αυτό το εργαλείο, έτοιμο για αντιγραφή σε ένα πρότυπο, ένα πεδίο CMS ή έναν στατικό ιστότοπο.

Πώς χειρίζεται κάτι σαν ***έντονα και πλάγια μαζί***;

Με ατελή τρόπο, εξαιτίας του ειλικρινούς σχεδιασμού του υποσυνόλου που υλοποιεί. Τα έντονα (** ή __) και τα πλάγια (* ή _) είναι το καθένα ξεχωριστό πέρασμα κανονικής έκφρασης αντί για έναν ενιαίο αναδρομικό αναλυτή έμφασης, οπότε ακριβώς στο σημείο όπου συναντιούνται τρεις αστερίσκοι, το αποτέλεσμα μπορεί να βγει μόνο έντονο ή μόνο πλάγιο αντί και τα δύο ένθετα μαζί. Τα απλά **έντονα** και *πλάγια*, όταν χρησιμοποιούνται ξεχωριστά ακόμη και στην ίδια πρόταση, μετατρέπονται σωστά και προβλέψιμα — είναι συγκεκριμένα η συνδυασμένη περίπτωση τριπλού δείκτη στα άκρα που αυτός ο αναλυτής δεν επιλύει πλήρως.