Markdown 콘텐츠에서 URI 처리 관련 Discourse 버그

최근 geo:36.95733984,-122.0172856과 같은 형태의 geo URI에서 이 버그를 마주하게 되었습니다.

tel URI에 대한 예외 처리가 있다는 것을 확인했습니다:

    if (allowedHrefSchemes.includes("tel")) {
      extraHrefMatchers.push(new RegExp("^tel://\\+?[\\w\\.\\-]+", "i"));

Uniform Resource Identifier (URI) Schemes 가 있지만, 예시가 포함되어 있어 List of URI schemes - Wikipedia 를 참고하여 스킴을 확인했습니다. 저는 그, 음, 스킴 이름의 “접미어” 부분, 즉 :// (이걸 뭐라고 부르는 걸까요? “스킴 형식”?)을 보고 있습니다.

주의 깊게 눈으로 확인해 본 결과, 사용된 패턴은 단 세 가지인 것 같습니다:

  • ://
  • :/
  • :

마크다운을 작성하고 href로 변환하는 과정에서 이것이 어디에서 일어나는지를 파악하는 데 제 머리가 좀 버거워지지만, 이 세 가지 형식을 확인하는 방법을 알아낸다면 관리자によって 추가된 어떤 스킴이든 문제없이 처리할 수 있을 것이라고 생각합니다.

스킴별로 어떻게 검증해야 할지 전혀 감이 오지 않습니다… :thinking:


저의 비공식적인 형식 코드 이름들:

  • : “관찰(observing)”
  • :/ “의심(skeptical)”
  • :// - “더 강한 의심(double skeptical)”
1개의 좋아요