많은 수의 게시글을 가져오고 있는데, 콘텐츠에 @global과 같은 텍스트가 자주 포함되어 있습니다. (우리 디스코urs 인스턴스의 주제는 프로그래밍과 관련이 있고, 해당 언어에서 @는 기호입니다.)
사용자 멘션을 억제하는 깔끔한 방법이 있을까요? 가져오기 전에 게시글을 사전 처리하는 것은 괜찮습니다.
어떤 식으로든 더러운 임시 해결책으로, @ 뒤에 빈 bbcode 태그를 삽입하면 작동한다는 것을 발견했습니다(예: @[b][/b]global). 하지만 이 방법은 매우 좋은 해결책이라고 느끼지 못하며, 코드 블록 내에 있는 문자열에는 bbcode가 삽입되지 않도록 해야 하므로 마크다운을 파싱/토큰화해야 합니다. 따라서 좋은 해결책이 아닙니다. 영공백(zero-width space)도 사용자가 코드 스니펫을 자신의 소스 코드로 복사할 때 이상한 오류를 유발하므로 해결책이 될 수 없습니다.
네, @name이 코드 블록 안에 있다면 문제가 되지 않습니다. 문제는 그것이 코드 블록 안에 있는지 아닌지를 감지하여, 코드 블록 밖에서 핑이 발생하지 않도록 @와 name 사이에 보이지 않는 [b][/b] 태그를 삽입하는 것입니다. 이를 위해서는 실제로 완전한 마크다운 파서/토크나이저가 필요합니다.
음, 나중에 게시물이 다시 생성(rebake)될 경우에도 그 설정이 여전히 적용되나요? 아니면 그런 상황에서 무작위 핑이 발생하게 되나요?