DiscoTOC - automatic table of contents

오랜 기간 DiscoTOC를 사용해 왔는데, 최근 업데이트 이전까지는 중국어 제목과 함께 잘 작동했습니다.

포스트에 중국어 제목(ASCII 문자가 전혀 없는 제목)이 여러 개 있는 경우, 오른쪽의 내비게이션 항목을 클릭하면 해당 레벨의 첫 번째 제목으로만 이동합니다. 이는 DiscoTOC가 내비게이션 항목을 동일한 id로 생성하기 때문이라고 생각합니다(제목이 모두 중국어이기 때문에). 따라서 쿼리 셀렉터는 첫 번째 제목만 찾게 됩니다.

테스트 차원에서 GitHub 저장소를 포크하여 작은 커밋을 다음과 같이 push했습니다.

제 사이트에서는 잘 작동하는 것 같습니다. 팀에서 괜찮다고 보시면 pull request를 올리거나, 이 버그는 다른 방식으로 수정되어야 할 수도 있습니다.

8개의 좋아요

고맙습니다 @topological :slight_smile: 버그 리포트를 DisoTOC 주제 자체로 이동해서, 올바른 사람들에게 전달되기를 바랍니다. :+1:

4개의 좋아요

리포트와 PR 감사합니다. PR에서 언급했듯이, 헤딩에 앵커가 자식으로 있는 것에 의존하지 않는 다른 수정 방법을 구현했습니다.

(다만, PR에 포함된 번역은 병합해 드릴 수 있습니다.)

4개의 좋아요

우선, 긴 게시물에 정말 유용한 테마 컴포넌트네요!

하지만 이 테마 컴포넌트는 모바일 기기(최소 iOS에서는)에서 문제가 있습니다. 큰 목차를 열었을 때, 데스크톱에서는 목차를 스크롤할 수 있지만 모바일에서는 스크롤이 되지 않습니다.


목록에는 A~H 헤딩이 포함되어 있지만, 스크롤이 되지 않습니다

목록은 스크롤이 가능한 것처럼 보이지만, touchstart 이벤트가 목록 스크롤을 방해하고 있습니다. d-toc 요소의 터치 시작 이벤트 리스너를 비활성화하면 문제가 해결되는 것 같습니다.


저희 포럼에 있는 테마 컴포넌트의 버전을 확인할 수 없고, 로컬 설치 환경에서도 테스트할 수 없습니다(휴대폰에서 로드할 수 없어서). 만약 제가 모르는 수정 사항이 있거나 제가 확인해야 할 부분이 있다면 알려주시면 감사하겠습니다.

미리 감사드립니다 :slight_smile:

3개의 좋아요

리포트 감사합니다. 스크린샷이 문제를 추적하는 데 특히 도움이 되었습니다. 이 문제는 코어에서 발생하며, DiscoTOC 모바일 UI의 상위 요소 중 하나가 자식 요소의 스크롤을 비활성화하여 DiscoTOC에 영향을 미쳤습니다. FIX: Limit pan event handler to fix scrolling in TOC - Pull Request #16673%EC%9D%84 - discourse/discourse - GitHub 통해 수정될 예정입니다(다음 주 초에 병합될 것으로 보입니다).

4개의 좋아요

이것이 여전히 작동하고 있나요?

@pmusaraj 제가 올바르게 설정하지 않은 것일 수도 있지만, 테마를 설치했고 주제(topic)에 설정한 목차가 discourse-docs 버전에서는 표시되지 않지만, 주제 본문의 주제 페이지에서는 표시됩니다.

3개의 좋아요

음, 동의합니다. discourse-docs 페이지에 다시 목차(ToC)가 표시되지 않는 것 같습니다. 예를 들어:

https://meta.discourse.org/docs?ascending=false&category=53&tags=themes&topic=91966

4개의 좋아요

모바일 스크롤 문제 수정이 이제 병합되었습니다. 또한 discourse Docs 뷰에 대한 호환성 수정도 추가했으며, meta에서 직접 확인해 볼 수 있습니다.

6개의 좋아요

목차가 항상 완전히 확장된 상태로 표시되기를 원하신다면, 테마에 다음 CSS를 추가해 보세요.

#d-toc li.d-toc-item > ul {
  max-height: 500em !important;
  overflow: visible !important;
  opacity: 1 !important;
}
5개의 좋아요

이것도 수정된 걸 확인했습니다 :+1:

3개의 좋아요

게시물 5개가 새 주제로 분리되었습니다: ToC가 존재할 때, 주제 wrench에 대한 접근 권한을 잃게 되나요?

다음에 DiscoTOC를 업데이트하면 주제 타임라인과 목차 사이를 전환할 수 있는 버튼이 추가된 것을 알게 되실 겁니다. 이 새로운 기능에 대해 문제가 발생했거나 피드백이 있으시면 알려주세요!

11개의 좋아요

정말 좋아해요! :heart_eyes_cat:

이 주제에서 보려고 브라우저를 새로고침해야 했는데, 정말 반짝반짝하고 새것처럼 보이거든요! :sparkling_heart:

5개의 좋아요

이 테마에 사소한 업데이트를 적용했는데, 이제 스태프 계정의 경우 신뢰 수준 요건을 무시합니다. 이는 Discourse 설정의 동작 방식에 더 가깝게 맞춘 것입니다.

6개의 좋아요

첫 번째 게시물에는 이 컴포넌트가 잘 작동합니다. 좋은 컴포넌트를 만들어 주셔서 감사합니다.

아래에 있는 게시물들에도 자동 목차(autoTOC)를 적용할 수 있을지 궁금합니다. 하나의 게시물과 그 아래 댓글을 사용하여 무언가를 문서화할 때 흔히 발생하는 경우가 아닌가요? 예를 들어, 메인 게시물이나 아래 답변을 볼 때, 해당 게시물/답변에 제목/부제가 정의되어 있으면 자동으로 목차를 표시하고, 그렇지 않으면 기본적으로 타임라인을 표시하는 방식입니다.

이 긴 스레드를 읽지는 않았지만, 간단히 검색해 보니 논의된 적이 없는 것 같습니다.

감사합니다…

2개의 좋아요
4개의 좋아요

또 다른 질문입니다.

어떤 이유인지 모르겠지만, 콘텐츠와 목차(TOC)를 전환하는 버튼을 찾지 못하겠습니다.
공식 disco-toc 플러그인이나 @Moin 님의 포크 버전에서도 같은 현상이 발생합니다…
이것에 대한 설정이 있을까요? 없는 것 같은데… 음…
제 시스템은 discourse 3.2.1입니다.

누군가 힌트를 줄 수 있을까요? 감사합니다…

1개의 좋아요

해당 기능을 사용하려면 Discourse 업데이트가 필요합니다. Discourse를 업데이트해 주세요.

3개의 좋아요

음, 3.2.1이 현재 릴리스 버전인 것 같네요, 맞나요?

베타 버전으로 업데이트할까요?

3개의 좋아요

네, 메이저 버전은 릴리스 주기가 훨씬 느리므로, 그렇지 않으면 새로운 기능과 보안 업데이트를 기다리는 데 몇 달이 걸릴 수 있습니다. 기본적으로는 베타 릴리스를 통해 최신 상태를 유지하는 것을 권장합니다. 자세한 정보는 여기에서 확인하세요: Understanding Discourse release channels

7개의 좋아요