스크린 리더로 Discourse 사용

이해합니다. 정말 짜증나는 문제네요.

@ 멘션도 마찬가지입니다. 스크린 리더에서 검색 기능을 작동시키는 것이 매우 어렵습니다.

@nktech1135 님, 우리가 할 수 있는 최선은 아마도 특수 키보드 단축키를 제공하는 것일 겁니다. 예를 들어 다음과 같은 방식이 될 수 있겠네요:

  • CTRL-ALT-u
  • 인용하고 싶은 게시글 선택
  • 아래 화살표
  • @sam 게시글 #7
  • 아래 화살표
  • @sam 게시글 #6
  • Enter
  • 인용하고 싶은 문장 선택
  • 문장 1 “Hi”
  • 아래 화살표
  • 문장 2 “I’d like to give a huge thanks to the people in this thread. I help admin a couple of discourse instances and have noticed most of the things mentioned here.”
  • Enter
  • 인용 블록이 추가됨

이 메커니즘은 마음에 듭니다. 하지만 이를 구축하는 것은 매우 큰 작업입니다. 다행히도 컴포넌트로 만들 수 있으므로 먼저 실험해 볼 수 있습니다. 실험해야 할 프로젝트 목록에 추가하겠습니다. 단, 이를 구현하기까지 시간이 좀 걸릴 수 있다는 점은 미리 알려드립니다. 하지만 이 기능이 구현된다면 정말 훌륭할 것이라고 동의합니다.

의견 있으신가요?

6개의 좋아요

마우스를 사용하는 사람들이 기존에 사용하던 워크플로우를 변경할 수 없는 상황이라면, 그 방식으로 진행하는 것이 합리적인 선택일 수 있습니다. 저는 가능한 한 하나의 워크플로우에 가깝게 유지하는 것을 선호하지만, 현재 비시각 장애인이 어떻게 작업하고 있는지 정확히 알지 못해 그 워크플로우를 바탕으로 구체적인 제안을 드리기 어렵습니다.

@sam 님이 제안하신 것보다 부담이 적은 대안으로, 예를 들어 alt shift q와 같은 키보드 단축키를 설정해 선택된 텍스트를 확인하고 해당 텍스트의 인용 정보를 현재 열려 있는 편집기에 삽입하는 방식이 있을 수 있습니다.

이 방식으로 하면 사용자는 인용할 텍스트를 찾아 선택한 후 단축키를 누르면 됩니다.

이 방식이 더 가벼운 워크플로우처럼 보이지만, 이 방법을 불가능하게 만드는 어떤 부분이 있는지는 모르겠습니다.

여러분의 생각은 어떠신가요?

5개의 좋아요

이미 매우 유사한 워크플로우가 있는 것 같습니다.

컴포저에는 툴바가 있으며, 첫 번째 버튼은 "전체 게시물 인용"입니다. 이 버튼을 클릭하면 답글을 작성 중인 게시물의 전체 내용을 인용합니다.

여러 게시물을 인용하는 경우에는 이상적이지 않지만, 일단 이것으로 시작해 보실 수 있습니다. 한번 시도해 보시겠어요?

6개의 좋아요

제가 어떤 게시물을 인용하고 싶다면, 그냥 ‘게시물 전체 인용’ 기능을 사용하고 필요 없는 텍스트를 편집해서 삭제할 것 같습니다.
@멘션은 작동하도록 만들 수 있겠지만, 시각적으로 어떻게 작동하는지 모르면 아이디어를 내기 어렵습니다. 가끔 페이스북 모바일 사이트에서는 이 기능이 잘 작동했지만, 그 사이트는 어떤 날은 고장 나고 다음 날은 괜찮을지 알 수 없기 때문에 예측이 어렵습니다.
하지만 @XXX를 입력할 때 XXX가 사용자 이름의 일부라면, 일치하는 항목이 있다는 알림을 주고 탭 키를 눌러 제안된 이름 목록에 접근할 수 있도록 하면 어떨까요. 제안된 이름을 선택하고 닫을 수 있는 방식으로 이러한 기능이 구현될 수 있을 것입니다.
또 다른 작은 불만은 긴 토론에서 내가 어떤 게시물에 답하고 있는지 종종 헷갈린다는 점입니다. 현재 답글 버튼은 단순히 게시물에 답하고 있다는 것만 알려줄 뿐이거든요. 현재 제가 포럼을 사용하는 방식으로는, 인용하지 않고 내가 답글을 달고 있는 게시물을 찾아서 읽을 방법이 없습니다. 그런데 저는 원래 인용을 하고 싶지 않은 경우가 많습니다.

Claus

3개의 좋아요

@codinghorror 이 제안이 좋습니다.

현재 답글 버튼의 aria-label은 "Reply"입니다. 이를 "Sam님의 #4 게시글에 답글"로 변경하는 것에 대해 어떻게 생각하시나요? 게시글을 작성하기 전에 훨씬 더 명확한 맥락을 느낄 수 있게 해 줍니다.

6개의 좋아요

어쨌든 툴팁/제목/호버에 더 많은 가중치를 부여해야 하므로, 그렇게 하는 것이 좋습니다.

3개의 좋아요

이상하게도 우리 타이틀은 Or press CTRL+ENTER입니다. 의도는 충분히 이해가 하지만, 좀 이상하게 느껴집니다. "무엇을 하는지"가 아니라 "무엇을 해야 하는지"를 알려주고 있거든요.

4개의 좋아요

보내는 버튼에 있는 "또는 ctrl+enter를 누르세요"라는 안내를 확인했습니다. 에디터에서 이를 기억하고 실제로 그렇게 하면 동작하니까, 그 부분은 제가 변경하고 싶은 부분이 아닙니다.
Claus 님, ~에서

2개의 좋아요

보시다시피, 이 기능은 작동하며 꽤 잘 작동합니다.
그러나 sam님이 지적했듯이, 여러 게시글에서 부분적인 답장을 발췌하려는 경우에는 매우 잘 작동하지 않습니다.
그래서 여전히 제 방식이 작동하지 않을지 궁금합니다. 지금 이 글을 쓰면서 또 생각한 것은, 제 이전 게시글에서 제 자신을 인용하고 싶지만, 그 게시글에 답장하고 있지 않아 그럴 방법이 없다는 점입니다.

의견 있으신가요?

2개의 좋아요

이 내용을 "또는 CTRL+ENTER를 눌러 이 게시물에 대한 답변을 제출하세요"로 변경할 수 있습니다. 약간 말이 많긴 하지만 정확합니다.

2개의 좋아요

그렇게 하는 것이 확실히 올바른 방법은 아닙니다. 버튼에 포커스가 있을 때 제안하신 텍스트가 읽혀지므로, 게시글에 답장하는 버튼의 기능이 실행되기 전에 단축키 control+enter를 들을 필요가 없습니다.
버튼에 포커스가 있을 때 무시하고 그냥 전송을 누를 수 있으므로, control+enter를 마지막에 사용하시길 원하시는 것입니다. 그리고 다음에 기억나면 버튼 대신 단축키를 사용해 답장하세요.
Claus

6개의 좋아요

안녕하세요,

이건 더 있으면 좋겠는(nice to have) 기능에 대한 요청입니다.
이런 스레드에서 게시글에 좋아요를 누르거나 답글을 쓰려 할 때, 옵션들이 다음과 같은 순서로 표시됩니다.
탭 키를 사용해 보시고, 현재 보고 있는 게시글에 멘션이나 링크, 인용된 메시지가 없기를 바라보세요:
탭 키가 다음 요소들에 포커싱됩니다:
“이 게시글에 좋아요 X명”
“이 게시글에 좋아요”
“이 게시글 링크 공유”
“더 보기”
“이 게시글에 답글 쓰기 시작”

사용자는 대부분 게시글에 좋아요를 누르거나 답글을 쓰는 것을 원하므로, 이 두 버튼이 탭 순서에서 가장 앞에 와야 합니다. 답글 버튼이 마지막에 포커싱되는 것은 적절하지 않습니다.
또한 “답글 쓰기 시작” 버튼의 텍스트를 "XX에게 답글"로 변경하는 것을 제안합니다. 여기서 XX는 답글을 쓰려는 게시글의 작성자 이름입니다.
버튼 텍스트가 정확하지 않을 수 있는데, 이는 제가 덴마크어에서 번역했기 때문입니다.
클라우스

5개의 좋아요

안녕하세요,

다른 분들이 이미 언급한 문제들이므로 새로운 관찰은 아니지만, 몇 가지 공유드립니다.

우연히 신규 사용자를 위한 Discourse 사용 팁이 담긴 블로그 게시글을 알게 되었습니다. 해당 글에서는 주제(topic)에서 마지막 읽은 게시물로 이동하거나, 스레드 상단 또는 하단으로 이동하는 방법에 대해 설명하고 있지만, 스크린 리더와 함께 사용할 경우 이 방식이 작동하지 않는 것으로 확인됩니다. 주로 JAWS로 테스트했으며 NVDA에서도 마찬가지였습니다. 포커스가 어디로 이동하는지 명확하지 않고, 아래 링크에 설명된 내용과는 전혀 다릅니다:

“주제 목록에서 제목을 선택하면 해당 주제에서 마지막으로 읽은 게시물로 이동합니다. 대신 상단 또는 하단에서 시작하려면 답글 수나 마지막 답글 날짜를 선택하세요.”

읽음/안 읽음 상태를 색상으로 표시한다면, 좋은 접근성을 위해 주제/게시물 제목에 ‘읽음’ 또는 '안 읽음’이라는 텍스트를 추가해야 합니다. 특히 사용자가 이 정보를 필요로 하지 않을 경우 잘릴 수 있도록 마지막 정보로 배치하는 것이 중요합니다.

또한 2.8 베타 3 버전에 대한 뉴스를 읽다가 흥미로운 내용을 보았지만, 스크린 리더가 이 기능을 제대로 알림해 주는지는 확신이 서지 않습니다:

“주제 보기 페이지에 마지막 방문 표시 추가
이미 읽기 시작한 주제를 열면, Discourse가 자동으로 첫 번째 안 읽은 게시물에서 주제를 로드하여 이어서 읽을 수 있습니다. 이제 Discourse는 마지막 방문 위치를 표시하므로, 위치를 잃지 않고 안전하게 위아래로 스크롤할 수 있습니다.”

4개의 좋아요

또 다른 문제인데, 편집기에 설명된 대로 이미지를 편집 영역으로 드래그 앤 드롭하여 업로드할 때, 이미지에 대체 텍스트(alt text)를 추가하는 방법을 찾을 수 없습니다. 어딘가에 숨겨져 있을 수도 있지만, 찾는데 많은 시간을 들이지는 않았습니다. 하지만 대체 텍스트로 간단히 설명할 수 없는 의미 있는 이미지는 매우 기본적인 접근성 문제입니다.
클라우스

4개의 좋아요

2.8 베타 6 버전부터 게시물의 알림을 설정할 수 있는 드롭다운 박스에 변경 사항이 도입된 것을 확인했습니다. 이 중 일부는 좋은 변경이지만, 일부는 그렇지 않습니다. 새로운 구현 방식 덕분에 탭 키를 사용하여 컨트롤을 탐색할 때 드롭다운 박스에 접근할 수 있게 되었지만, 해당 컨트롤을 설명하는 텍스트가 없으며, 대부분의 스크린 리더에서 특정 유형의 컨트롤을 찾기 위해 사용하는 고급 탐색 기법을 사용할 수 없습니다. 따라서 탭 키를 사용하여 해당 컨트롤에 직접 접근하지 않는 한 찾기 어려울 것입니다. 또한, 컨트롤의 이름이나 유형이 아니라 현재 선택된 상태(팔로우 중, 무음, 일반)만 들립니다. 따라서 해당 컨트롤이 스크린 리더에 드롭다운 박스로 노출되도록 일부 ARIA 코드를 추가하고, 기존과 같은 짧은 설명을 다시 추가해야 할 것입니다.
클라우스

5개의 좋아요

어제 이 문제를 파악했으며, aria label을 추가하기 위한 PR을 이미 작성해 오늘 병합될 예정입니다.

cc @pmusaraj

4개의 좋아요

안녕하세요,

좋네요. 또한 고려해 볼 수 있는 역할에 대해서는 2.6절을 참고해 주세요.

ARIA 사용법 (w3c.github.io)

2개의 좋아요

다른 역할(role)들이 문제를 일으키고 있어서 application을 사용했습니다. 하지만 listbox로 변경하는 것을 고려하고 있습니다. 2.6에서는 역할에 대해 언급하고 있지만 구체적으로 무엇을 제안하고 있는지 정확히 파악하지 못하겠습니다.

4개의 좋아요

안녕하세요,

Listbox가 컨트롤의 실제 동작 방식에 훨씬 더 가까운 것 같습니다. 물론, 업데이트가 적용되면 meta에서 직접 확인해 보겠습니다.

클라우스

4개의 좋아요

클라우스, 이제 업데이트가 완료되었습니다. 지금 더 잘 작동하는지 알려주세요.

6개의 좋아요