P.S. Quando ho provato a pubblicare, ho visto apparire il popup Si è verificato un errore: Spiacenti, i nuovi utenti possono inserire solo 2 link in un post. Non so che tipo di spam sia in grado di prevenire, dato che un link è sufficiente per la maggior parte degli spammer, ma ora devo sostituire alcuni dei miei link markdown ben formattati con note a piè di pagina basate su testo. Il processo di aggiunta di una nota a piè di pagina nell’editor markdown predefinito è di per sé così difettoso e snervante da meritare un rapporto separato.
P.S.S. Sembra che anche i riferimenti basati su Markdown vengano conteggiati come link. Li rimuovo a favore di cifre in apice Unicode. Al 40° minuto di tentativi di scrivere questo post.
Secondo STD 66 / RFC 3986¹ (elenco estratto di facile lettura²), 81 caratteri possono essere non codificati in un frammento o coda di URL. Questo elenco, ordinato in ordine ASCII dal framework “Foundation³” nel linguaggio di programmazione Swift: !$&'()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~
Quello che segue è un URL contenente diversi di questi caratteri: Example Domain'()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~ Come puoi vedere, l’evidenziazione viene interrotta a un certo punto.
Mentre lavoravo al mio progetto che utilizza questi 81 caratteri per codificare dati binari in frammenti (in stile base64, ma più compatto) ho controllato ora l’evidenziazione conforme alle specifiche su diversi siti web. Mentre un bug simile era, in modo incoerente, presente in altri luoghi (come il forum di GitHub incapace di evidenziare l’ultimo carattere se è un ~), Discourse ha la più ampia selezione di simboli non funzionanti. Alcuni caratteri possono o non possono interrompere l’evidenziazione a seconda di un misterioso contesto, quindi non credo di poter compilare un elenco completo.
¹ Google rfc/rfc3986.txt
² Cerca la risposta di Stack Overflow #26119120
³ Cerca la documentazione/foundation/nscharacterset/urlfragmentallowed su Apple > Developer
P.S.S.S. Anche alcuni indirizzi e-mail standard non vengono evidenziati. Userò il mio secondo link per collegarmi a https://e-mail.wtf per alcuni esempi.
Non evidenziato, ma dovrebbe esserlo:
orgmail(a John Doe)@example.com
“:(){ :|: };:”@example.com
magic@[::1]