스크린 리더로 Discourse 사용

지난주 저는 디스코urses를 스크린리더(NVDA)와 함께 하루 동안 사용해 보았는데, 이 문제가 제 1순위 불만 사항이었습니다. 따라서 이 문제를 수정하고 싶습니다.

/latest와 같은 토픽 목록에서 토픽에 진입하면, 디스코urses는 해당 토픽의 첫 번째 읽지 않은 게시물로 스크롤하여 하이라이트하거나, 읽지 않은 게시물이 없으면 마지막 게시물로 이동합니다. 이 기능은 시각적으로 볼 수 있는 사용자에게는 훌륭하게 작동하지만, 스크린리더 사용자에게는 토픽 진입 시 포커스가 전혀 이동하지 않기 때문에 이 사실을 알지 못하게 됩니다. 따라서 스크린리더는 항상 페이지 상단부터 읽기 시작합니다.

저는 이 문제를 해결하기 위한 수정 사항을 테스트하기 위해 메타에 테마 컴포넌트를 배포했습니다. 스크린리더를 사용하는 분 중 이 수정 사항을 테스트해 보시고, 상황이 나아졌는지(또는 더 나빠졌는지 :sweat_smile:) 확인해 주실 수 있을까요? 무작위로 토픽에 진입하여 몇 개의 게시물을 읽은 후, 토픽을 나갔다가 다시 진입했을 때, 디스코urses가 나를 첫 번째 읽지 않은 게시물로 이동시켰는지 쉽게 알 수 있었나요? 개선할 수 있는 부분이 있을까요?

11개의 좋아요

아, 이건 정말 좋은 것 같고 꽤 도움이 되는 것 같습니다. 다만 포괄적으로 테스트해 보지는 않았습니다. 확실한 개선이라고 생각합니다.

한 가지 제안드릴 것이 있습니다: 주제를 클릭해서 끝까지 읽은 뒤 브라우저의 뒤로 버튼을 누르면, 마우스 포커스가 이전에 클릭했던 주제에 유지됩니까? 지금 바로 말씀드릴 수 있는데, 다음으로 가장 큰 불편함은 클릭했던 주제로 다시 돌아가야 다음 주제를 찾아야 한다는 점일 것입니다. 주제를 클릭한 뒤 뒤로 버튼을 누르면, 목록에서 해당 주제 링크에 키보드 포커스가 설정될 수 있을까요?

그리고 참고로, 주제 내 마지막 게시물 아래에 "Select % name or value"라고 표시된 이상한 컨트롤이 있습니다. 무언가가 제대로 이스케이프되지 않은 건가요? NVDA 음성 버퍼에서 해당 문구를 직접 복사해야 할 것 같아서 정확한 발음 값은 알지 못합니다. 페이지 텍스트 자체에는 표시되지 않았습니다.

8개의 좋아요

@osama 여기 작은 회귀(regression)가 있는 것 같습니다. Chrome과 Safari 모두에서 테스트해 보았습니다. 토픽 목록을 스크롤하면 다음 페이로드의 첫 번째 토픽에 포커스 "링"이 나타납니다. 예를 들어 다음과 같습니다:

방금 이 문제를 발견했는데, 방금 병합된 https://github.com/discourse/discourse/commit/76aeee6735ea06302dd9c09cf2bd2ce0e01e827e와 관련이 있을 것으로 보입니다.

8개의 좋아요

일단 여기서는 되돌립니다.

6개의 좋아요

@ndarilek 현재 스크린 리더 사용자의 경험은 어떤가요? 스크린 리더 사용자를 고려하여 구축된 학습 관리 시스템(LMS)에 통합할 수 있는 토론 게시판이 필요합니다. 감사합니다.

4개의 좋아요

과거에 비해 훨씬 좋아졌고, 실제로도 꽤 잘 사용되고 있습니다. 다만, 개선이 정체된 것 같아 조금 우려됩니다.

특히 88번째 게시물에서 제가 제기했던 우려 사항들이 해결되었는지 확신이 서지 않습니다. 그리고 제가 예측했듯이, 이러한 접근성 변경 사항이 많은 Discourse 설치 환경으로 확산되면서 이제는 제게 상당한 번거로움을 주고 있습니다. 예를 들어, 특정 주제를 클릭해서 읽은 뒤 ‘뒤로’ 버튼을 누르면, 포커스가 원래 있던 스레드 목록의 맨 위 어딘가로 이동해 버립니다. 즉, 카테고리에서 50번째 게시물을 보고 있다가 이를 클릭해 읽은 뒤 ‘뒤로’ 버튼을 누르면, 포커스가 원래 목록의 20번째 게시물 근처로 이동해 버리는 식입니다. 그러면 저는 다시 원래 위치(즉, 링크를 클릭했던 50번째 게시물)로 돌아가야 하며, 이후 계속 열람을 이어가야 합니다. 이 과정은 보통 스레드 제목을 기억하고, 그 제목이 충분히 고유하길 바라며, 페이지에서 해당 제목을 검색해 원래 클릭했던 링크를 찾아내는 것으로 이어집니다. 아마도 카테고리에 보이는 첫 번째 게시물 링크로 포커스가 반환되는 것 같지만, 정말 마지막에 열람했던 게시물로 포커스가 반환되어야 합니다. 사소한 문제처럼 들릴 수 있지만, 5~10회 정도의 열람마다 제 원래 위치를 다시 찾기 위해 1~2분씩 소요된다면, 몇 번 반복만 해도 커뮤니티 활동에 지쳐 버립니다. 저는 반짝반짝한 몇 번의 ‘포커스 다시 찾기’ 과정이 너무 부담스러워서, 흥미가 있고 참여하고 싶었음에도 불구하고 실제로 여러 Discourse 포럼의 열람을 중단했습니다.

요약하자면, 나쁘지 않고 과거에 비해 확실히 훨씬 나아졌다고 생각합니다. 하지만 특히 이 문제가 해결되기를 진심으로 바랍니다. 왜냐하면 스크린리더 사용자가 몇 분 남짓한 ‘구 포커스 찾기’ 세션 몇 번 만에 지쳐버린다면, 그 목소리들은 여러분의 커뮤니티에 참여하지 않게 되기 때문입니다. 자원이 다소 부족할 수 있다는 점은 알지만, 접근성 전문가로서 이 수준의 마찰은 대부분의 Discourse 커뮤니티가 희망하는 장기적인 참여를 장려하기에는 다소 과하다고 자신 있게 말씀드릴 수 있습니다.

그럼에도 불구하고, 약 1년 전과 비교했을 때 상황이 훨씬 나아졌다는 점을 인정하고 싶습니다. 정말 감사합니다!

13개의 좋아요

답변 주셔서 감사합니다. 저희는 커뮤니티에서 장기적인 참여를 이끌어내고자 하고 있는데, 집중도 문제는 사소하지 않아 보입니다. 그래서 망설여집니다.

3개의 좋아요

수정되어야 할 문제인 것 같고, 누군가가 고칠 수도 있겠지만, 제 업무는 아닙니다. :slight_smile:

그때까지 시도해 볼 수 있는 임시 조치로는, 주제 하단으로 계속 스크롤을 내려 추천 주제 목록까지 가는 것입니다. 그중 하나 이상이 다음으로 진행하기에 적합한 주제일 가능성이 꽤 있습니다. 도움이 될지는 확신할 수 없네요.

3개의 좋아요

Nolan, 여기까지 함께해 주셔서 정말 감사합니다! 다음 한 달 동안 포커스 문제를 해결하는 데 시간을 투자하겠습니다. (NVDA로 테스트하고 있으며, JAWS와 Orca에서도 제대로 작동할 수 있기를 바랍니다.)

Discourse를 사용하면서 발견하신 불편한 점(작은 문제든, 큰 불편함든)이 있으면 언제든 알려주세요. Discourse를 사용하는 경험이 즐겁도록 만들고 싶습니다.

이번 달에 @kris.kotlarek이 작성기(composer) 경고에 aria 레이블을 구현했습니다. 덕분에 토픽을 제출할 때 제목을 입력하지 않고 제출을 시도하면, 제목이 누락되었음을 정확히 알려줄 수 있습니다!

6개의 좋아요

노란 님, 이 문제를这么久 동안 해결하지 못한 점 진심으로 사과드립니다. 하지만 좋은 소식이 있습니다! 해당 문제는 지난 주에 수정되었으며, 이후로 저희가 호스팅하는 모든 Discourse 인스턴스(이 사이트 포함)에 배포되었습니다. 예상대로 작동하는지 확인해 보시고 알려주실 수 있을까요? 추가로 개선되었으면 하는 부분이 있으신가요?

또한, 여기에서 언급된 “Select % name of value” 문제:

은 1월에 @j.jaffeux 님이 수정했습니다. 여전히 그 문제를 겪고 계신가요?

15개의 좋아요

아, 정말 훌륭하네요. 다른 인스턴스를 몇 분간 둘러보았는데 꽤 잘 작동했어요. 뒤로 갈 때 이전 주제로, 다시 돌아올 때 해당 주제 내의 내 위치로 포커스가 정확히 돌아왔어요.

감사합니다! 덕분에 Discourse를 훨씬 더 즐겁게 사용할 수 있게 됐어요. :slight_smile:

21개의 좋아요

인내심을 가져주셔서 정말 감사합니다. 우리는 Discourse가 _모두_에게 잘 작동하도록 최선을 다하고 있습니다. :person_bowing:

11개의 좋아요

안녕하세요,

스크린리더 사용자들을 위해 개선되었으면 하는 몇 가지 사항에 대해 다시 말씀드리고자 합니다.
지난 며칠간 제 작은 포럼에서 사용자 목록을 사용해보려 했지만, 보기 좋게 만들어진 표가 실제로는 쓸모없는 것을 발견했습니다.
Brugere - Discourse Meta

상단 행에는 실제로 표의 열 설명이 될 수 있는 버튼들이 채워져 있는 것 같습니다. 제 추측으로는 각 버튼이 표의 데이터를 다시 정렬하는 기능을 하는 것 같습니다. 아주 좋은 기능이지만, 스크린리더가 열 제목을 인식할 수 있는 방법이 전혀 없는 한, 현재 코딩된 상태로는 7개의 열을 가진 이 표는 너무 복잡하여 사실상 사용할 수 없습니다. 표를 탐색하면서 열 제목이 읽혀질 때까지는 거의 사용할 수 없는 상태입니다.

5개의 좋아요

특히 긴 스레드에서 발생하는 또 다른 문제는, 다른 사용자의 게시물에 답하는 것인지 아니면 스레드 내 자신의 “독립적인” 답변을 작성하는 것인지 명확히 구분할 수 있으면 좋겠다는 점입니다. 현재 답글 버튼은 답글을 쓰는 대상이 누구든, 어떤 문맥이든 관계없이 "답글"이라는 텍스트와 일반적인 추가 문구만 표시됩니다. 답글 버튼을 누를 때 답변한 사람의 이름이나 주제 번호가 함께 표시되면 좋겠습니다. 또한, 특정 게시물에 답글을 쓰는 경우와 주제 자체에 답글을 쓰는 경우를 시각적으로 구분해 주면 더 좋겠습니다.

,

5개의 좋아요

클라우스님, 안녕하세요.

이러한 문제에 대해 알려주셔서 감사합니다. 다음 주 초에 확인해 보고, 해결하는 데 얼마나 어려울지 알아볼게요.

6개의 좋아요

훌륭합니다! 베타 10에서 수정된 것 같습니다. 아주 좋은 개선이네요.

4개의 좋아요

새로운 좌절감에 다시 돌아왔습니다. 이 문제는 Edge 106과 Chrome 106에서 JAWS와 NVDA 모두에서 발생하는 것 같습니다.

토픽 목록이 포함된 테이블을 보면 마지막 답변으로 이동하는 두 가지 방법이 있습니다. 하나는 "이 토픽에 x개의 답변이 있습니다…"라는 링크를 누르면 해당 토픽의 첫 번째 또는 마지막 게시글로 이동할 수 있는 선택지가 제공되는 것입니다. 다른 하나는 마지막 게시글에 댓글이 추가된 시간을 나타내는 “XX 시간” 표시를 누르는 것입니다. 두 경우 모두 포커스가 해당 게시글로 이동할 것으로 기대할 수 있습니다. 그러나 더 이상 그렇게 되지 않습니다.

설명된 링크/버튼을 누르면 아무 반응이 없고, 스크린 리더의 포커스는 페이지 상단에 머물러 있습니다.

크로미엄의 문제인지 확인하기 위해 Firefox의 동작은 아직 확인하지 않았습니다.

6개의 좋아요

이것에 덧붙일 작은 사항 하나: Jaws는 현재 번역되지 않은 라벨과 이 r 리플 버튼에서 Jaws가 인식하는 이전의 더 일반적인 제목을 모두 가져옵니다:

label=Reply to post #107 by @Roman
title=begynd at skrive et svar til dette indlæg

일반적인 제목 텍스트가 없는 상태는 크게 문제되지 않을 수 있지만, 새로운 라벨 문자열이 현재 번역되어 있지 않은 것이 유일한 문제일 수 있습니다.

3개의 좋아요

방금 기본 브라우저를 Firefox Nightly로 변경했는데, 이제 포커스가 이전 크로미움 기반 브라우저에서처럼 관련 게시글로 이동합니다. 그래서 브라우저 문제인 것 같습니다. 다만 스크린 리더를 사용하는 크롬이나 엣지 사용자라면 정말 짜증나는 문제입니다.
클라우스

2개의 좋아요

안녕하세요 @thoeg, 이 문제를 보고해 주셔서 감사합니다.

재현을 시도해 보고 있지만, 아직 재현에 성공하지 못했습니다. 제 테스트에서는 Windows와 macOS 모두에서 주요 브라우저와 Narrator, VoiceOver, NVDA, JAWS를 함께 사용할 때 정상적으로 동작하는 것으로 확인되었습니다.

단순히 브라우저 문제였을 수도 있습니다. 시간이 좀 지났고 새로운 업데이트도 적용되었으니, Chrome 109에서 한 번 더 시도해 보시겠어요? 여전히 이 문제가 발생하는지 확인해 주시면 감사하겠습니다.

5개의 좋아요