Mylenie technologii z linkiem

Odpowiedz Nowy wątek
2020-09-15 19:04

Rejestracja: 10 lat temu

Ostatnio: 10 minut temu

7

Nie wiem do końca czy to jest bug czy nie, ale ostatnio odpowiadałem na jeden post i napisałem coś w stylu:

Może spróbujesz Angular/Vue.js/React?

I jak pewnie widzicie, część Vue.js/React? jest parsowana jak Uri: domain.js/path? Oczywiście parser działa dobrze, ale może możnaby wykluczyć jakieś słowa kluczowe? np właśnie vue.js, jeśli nie mają http://? Oczywiście keyword nie zadziała ze wszystkim, bo np biblioteka socket.io znajduje się pod adresem http://socket.io

Zwłaszcza rozszerzenie .js bym brał pod uwagę, bo większość technologii takich właśnie ma nazwy: p5.js, d3.js, pdf.js, node.js, backbone.js, React.js pewnie są jeszcze inne - bo raczej inne języki nie mają takiego trendu - nie ma bibliotek Carbon.php :D Albo spring.java

Bug/zgłoszenie do interpretacji przez @Adam Boduch ja nie wiem co o tym myśleć.


edytowany 2x, ostatnio: TomRiddle, 2020-09-15 19:07

Pozostało 580 znaków

2020-09-15 19:22

Rejestracja: 1 rok temu

Ostatnio: 54 sekundy temu

Lokalizacja: Silesia

2

A jak ktoś kupi sobie taką domenę i będzie chciał podlinkować to potem zglosi to jako błąd


Pozostało 580 znaków

2020-09-15 20:50

Rejestracja: 10 lat temu

Ostatnio: 10 minut temu

0
KamilAdam napisał(a):

A jak ktoś kupi sobie taką domenę i będzie chciał podlinkować to potem zglosi to jako błąd

Dopisze http://


Pozostało 580 znaków

2020-09-16 02:14
Moderator Delphi/Pascal

Rejestracja: 8 lat temu

Ostatnio: 2 minuty temu

Lokalizacja: Tuchów

3
TomRiddle napisał(a):

Oczywiście parser działa dobrze […]

Adresy powinny posiadać prefiks http:// lub https://, więc nie działa dobrze.


Uogólniłbym to na dowolny protokół. - Saalin 2020-09-16 06:18
Jeszcze ftp:// ocalcie - Burdzi0 2020-09-19 19:51

Pozostało 580 znaków

2020-09-16 02:41

Rejestracja: 10 lat temu

Ostatnio: 10 minut temu

1
furious programming napisał(a):
TomRiddle napisał(a):

Oczywiście parser działa dobrze […]

Adresy powinny posiadać prefiks http:// lub https://, więc nie działa dobrze.

No właśnie nie jestem tego pewien. Pisałem nie dawno unit testy pod parser linków w coyote, i tam było dokładnie wyszczególnione ze case bez scheme (tzn samo www.) jest linkiem. Trzeba by spytać kogoś kto wie co powinno być linkiem a co nie.

Możnaby np sprawdzić jak github albo Facebook rozumie linki, i próbować się wzorować.


www. to też archaizm prawdę mówiąc - Marooned 2020-09-16 10:32
No to był przykład, [a-z]+\.[a-z]+. - TomRiddle 2020-09-16 12:13

Pozostało 580 znaków

2020-09-16 15:15
Moderator Delphi/Pascal

Rejestracja: 8 lat temu

Ostatnio: 2 minuty temu

Lokalizacja: Tuchów

3
TomRiddle napisał(a):

Trzeba by spytać kogoś kto wie co powinno być linkiem a co nie.

No zapytałeś, więc Ci odpowiedziałem. Adres zaczyna się od protokołu, a bez niego dany tekst może być wszystkim. Nawet jeśli za adres uznawać ciąg zaczynający się od www., to w dalszym ciągu parser działa źle, bo Tobie zrobił link, choć tego prefiksu nie podałeś.

Możnaby np sprawdzić jak github albo Facebook rozumie linki, i próbować się wzorować.

Można też pomyśleć samodzielnie i wziąć sprawę na logikę. W końcu to forum programistyczne. ;)


Pozostało 580 znaków

2020-09-17 00:04

Rejestracja: 6 lat temu

Ostatnio: 1 minuta temu

6

np. ktoś może wymieniać różne odmiany biblioteki Rx:

rx.NET/RxJS/RXJava

i się robi link, bo mylnie bierze .net za domenę.

poza tym parser jest jakiś niespójny:
example.com
example.com/1
example.com/1/
example.com/a
example.com/a/
example.com/fooo

potencjalny kawałek kod, który mógłby ktoś wkleić, a zapomniałby umieścić go w znacznikach:
element.style.left/2.5


((0b10*0b11*(0b10**0b101-0b10)**0b10+0b110)**0b10+(100-1)**0b10+0x10-1).toString(0b10**0b101+0b100);

Pozostało 580 znaków

2020-09-17 11:08

Rejestracja: 10 lat temu

Ostatnio: 10 minut temu

1

Biorąc pod uwagę wypowiedź @LukeJL oraz @furious programming trzeba by się zastanowić co jest mniejszym złem:

  • Czasem coś co nie jest linkiem, jest oznaczone jako link (vue.js/react? jako link)
  • Ktoś zapomni http://, i link nie zostanie pokazany jako link (łącznie z linkami które już teraz są na forum).

Pozostało 580 znaków

2020-09-17 12:38
Moderator Delphi/Pascal

Rejestracja: 8 lat temu

Ostatnio: 2 minuty temu

Lokalizacja: Tuchów

1

Mniejszym złem będzie uznawanie za adres tekstu, który:

  • rozpoczyna się od protokołu (np. https://) lub prefiksu strony internetowej (np. www.),
  • pasuje do wzorca adresu strony (posiada prefiks, domenę oraz rozszerzenie) lub wzorca adresu e-mail.

To powinno rozwiązać problem z linkami, a na pewno znacząco zmniejszy ułomność parsera w praktyce.


edytowany 1x, ostatnio: furious programming, 2020-09-17 12:39
No Twoją opinię już słyszeliśmy :) Dajmy wypowiedzieć się innym - TomRiddle 2020-09-17 13:15
Inni się nie znają. - furious programming 2020-09-17 13:15

Pozostało 580 znaków

2020-09-18 09:27
Administrator

Rejestracja: 18 lat temu

Ostatnio: 14 godzin temu

3
TomRiddle napisał(a):

Możnaby np sprawdzić jak github albo Facebook rozumie linki, i próbować się wzorować.

Na github, link musi mieć http:// albo www aby był parsowany.

Pozostało 580 znaków

2020-09-18 11:05

Rejestracja: 10 lat temu

Ostatnio: 10 minut temu

1
Adam Boduch napisał(a):
TomRiddle napisał(a):

Możnaby np sprawdzić jak github albo Facebook rozumie linki, i próbować się wzorować.

Na github, link musi mieć http:// albo www aby był parsowany.

Tak teraz myślę że github używa się chyba parsera markdown, więc na tym można by się wzorować.

Parser linków już dobrze znam w coyote, więc mogę wrzucić jutro PRka.

@Adam Boduch Tylko pytanie czy idziemy z tym podejściem GH, i czy wgl poprawiamy linki?


Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0