답글 작성 후 마지막 글로 자동 이동하는 기능 비활성화 옵션 추가

안녕하세요,

최근 Meta와 다른 Discourse 기반 포럼의 과거 주제와 토론을 찾아보는 시간을 가졌습니다. 그 결과, 수년간 많은 사용자가 반복적으로 동일한 우려를 제기하고 있다는 것을 발견했습니다:

답글을 작성하거나 작성기(composer)를 닫으면, Discourse가 자동으로 해당 주제의 가장 마지막 게시물로 이동합니다.

저를 포함하여 꽤 많은 사람들에게 이 동작은 도움이 되는 것이 아니라 오히려 방해가 됩니다.

왜 문제가 되는가

많은 사용자가 표현한 내용에 기반할 때, 공통적인 문제점은 다음과 같습니다:

  • 긴 스레드 중간에서 답글을 작성하면, 작성기가 닫히고 화면이 갑자기 맨 아래로 이동하여 읽던 위치로 돌아가기 위해 처음부터 끝까지 스크롤해야 합니다.
  • 과거 메시지들을 확인하면서 답글을 작성하고 있을 때, 이 자동 이동은 읽는 흐름을 끊습니다.
  • 일부 사용자는 이 동작이 너무 빠르고 직관적이지 않아 버그일 수도 있다고 생각했습니다.
  • 과거 토론 중 상당수는 사람들이 우회책, 스크립트, 또는 해킹을 시도했지만, 신뢰할 수 있거나 공식적으로 작동하는 방법은 없음을 시사합니다.

요약하자면, 최신 게시물로 자동 이동하는 것은 일부 사용자에게 유용할 수 있지만, 읽는 습관이나 워크플로에 따라 많은 다른 사용자에게는 원치 않는 동작입니다.

기능 요청: 이 동작을 선택적으로 만들어 주세요

과거 스레드를 검토해 본 결과, 다음과 같은 것으로 보입니다:

  • 이 자동 이동을 비활성화할 내장된 설정이 없습니다
  • 토글을 제공하는 공식 플러그인이 없습니다
  • 관리자와 사용자는 현재 이 동작을 전혀 제어할 수 없습니다

따라서 저는 Discourse가 다음 중 하나를 제공해 주기를 요청합니다:

사용자 설정, 예를 들어:

“게시물 작성 또는 작성기 닫기 후, 현재 위치에 머물러 주세요(마지막 게시물로 이동하지 않음).”

또는

사이트 전체/관리자 설정, 예를 들어:

“답글 작성 후 최신 게시물로 자동 스크롤 활성화/비활성화”

이를 통해 다른 커뮤니티(및 개별 사용자)가 자신의 읽는 스타일에 더 잘 맞는 상호작용 모델을 선택할 수 있습니다. 또한 이는 일반적으로 읽는 흐름 동작의 사용자 정의를 허용하는 Discourse의 디자인 철학과도 일치합니다.

옵션이 모든 사람에게 이로운 이유

  • 자동 이동을 좋아하는 사용자는 그대로 유지할 수 있습니다
  • 싫어하는 사용자는 꺼둘 수 있습니다
  • 포럼 관리자는 커뮤니티의 필요에 맞는 기본값을 설정할 수 있습니다
  • 취약한 커스텀 JavaScript나 브라우저 사용자 스크립트에 의존할 필요가 없어집니다
  • 접근성을 개선하고, 일부 독자에게는 불편할 수 있는 갑작스러운 화면 이동을 줄입니다

수년간 이 문제를 제기한 사람이 많았기 때문에, 구성 가능한 옵션을 추가하면 커뮤니티의 상당 부분에서 UX를 크게 개선할 수 있습니다.

만약 기존 설정이나 플러그인을 놓쳤다면 알려주시면 감사하겠습니다. 하지만 제가 찾은 바로는, 현재 그런 옵션이 존재하지 않는 것으로 보입니다.

검토해 주셔서 감사합니다. 팀이나 다른 플러그인 개발자분들의 통찰이 정말로 도움이 될 것입니다.

3개의 좋아요

글을 올린 후, 게시글이 올라갔다는 표시도 없이 수십 개의 게시물 위에 남겨지는 것이 혼란스럽지 않나요? 원한다면 나머지 게시물에도 댓글을 달 수 있도록 계속 읽으면 되지 않을까요?

2개의 좋아요

설명해 주셔서 감사합니다! 현재 동작 방식이 여전히 저에게 실질적인 문제를 일으키고 있으므로, 제 실제 사용 사례를 명확히 설명드리겠습니다.

다음과 같은 상황을 상상해 보세요.
제가 토론 스레드를 시작하고 잠자리에 들었습니다. 다음 날 일어나 보니 100개 이상의 답변이 달린 것을 발견합니다. 그중 많은 답변이 흥미롭고, 스레드를 읽어나가면서 일부 답변에 답하고 싶습니다.

문제는 다음과 같습니다.

주제의 가운데 어딘가에 있는 답변을 읽고 이에 답을 보낸 후, 저는 Discourse가 즉시 주제의 가장 아래로 건너뛰게 됩니다.
하지만 이 대화는 실시간이 아닙니다. 사람들이 몇 시간 후에야 다시 답장할 수도 있습니다. 최신 게시물로 이동할 필요가 없습니다. 단지 나머지 답변을 순서대로 계속 읽고 싶을 뿐입니다.

제가 실제로 필요한 것은 단순히 이것입니다:

  • 제 답변이 성공적으로 게시되었음을 명확히 알려주는 표시

  • 현재 읽는 위치를 잃지 않고

  • 다음 답변들을 자연스럽게 순서대로 계속 읽을 수 있도록

현재로서는 강제 자동 점프 이후, 제가 어디까지 읽었었는지 기억하며 수동으로 스크롤을 다시 올려야 하는데, 이는 번거롭고 읽는 흐름을 깨뜨립니다.

이 때문에 게시 후 현재 스크롤 위치를 유지하는 옵션이 있다면 매우 도움이 될 것입니다.
자동 점프는 일부 워크플로우에는 유용하지만, 제 경우와 같은 상황에서는 오히려 방해가 됩니다.

Will disable_jump_reply make a return? 및 관련 주제에서 이 주제에 대해 수천 개의 글이 작성되어 있습니다.

요약하자면, 게시글을 작성할 때 Shift 키를 누르면 스크롤이 방지됩니다.

2개의 좋아요

팁 감사합니다! Shift + Reply 동작에 대해 몰랐는데, 일부 상황에서는 정말 도움이 되네요.

그렇다고 해도, 이 부분은 적절한 설정이나 사용자 환경 설정이 있으면 훨씬 좋겠다는 생각은 여전히 듭니다. 매번 수정키를 사용하는 것은 발견하기 어렵고, 특히 이러한 단축키가 존재하는지조차 모르는 비기술적 사용자에게는 쉽게 잊기 쉽습니다.

제가 Discourse에서 정말 좋아하는 점 중 하나는 이미 제공되는 높은 수준의 자유도입니다 — 사용자가 읽기, 탐색, 상호작용 방식의 많은 부분을 커스터마이즈할 수 있습니다. 제 생각에, 바로 이 자유가 Discourse를 훌륭한 플랫폼으로 만들어 주는 것입니다. 이 특정 동작과 관련하여, 사용자가 단순히 기본 선호도를 선택할 수 있다면 좋겠습니다:

  • 답글 작성 후 마지막 게시물로 자동 이동, 또는

  • 현재 위치에 머물러 읽기를 계속

명확한 기본값과 이를 조정할 수 있는 기능이 있다면 동작이 더 직관적이고 접근성이 높아질 것입니다. 예를 들어, 제 개인적인 브라우징 습관으로는 최신 컴퓨터에는 충분한 메모리가 있고 탭을 닫는 것이 앞뒤로 탐색하는 것보다 빠르고 편리한 경우가 많기 때문에, 대부분의 주제를 홈페이지에서 새 탭으로 여는 경향이 있습니다. 이는 단순히 사용자가 서로 다른 워크플로를 어떻게 중요하게 여기는지를 보여주는 하나의 예시입니다.

따라서 제 일반적인 철학은 이렇습니다: 사용자의 선택지가 많을수록 좋습니다.
기능에 여러 가지 합리적인 동작이 있을 때, 모든 사람을 하나의 경로로 강제하기보다 사용자로 하여금 결정하게 하는 것이 일반적으로 모두에게 더 나은 경험을 가져다줍니다. 또한 저 같은 사용자가 우리에게 자연스러운 워크플로를 복원하기 위해 작은 스크립트나 플러그인을 만들 필요가 없게 됩니다.

도움이 되는 답변에 다시 한번 감사드리며, 이것이 미래에 잠재적인 선택형 설정으로 고려될 수 있기를 바랍니다.

2개의 좋아요

Will disable_jump_reply make a return? 를 읽어보세요. 사용자 설정이었으며 제거되었습니다.

2개의 좋아요

:heart: 힌트 감사합니다. 이제 “Will disable_jump_reply make a return?”(disable_jump_reply가 복귀할 것인가?)라는 토픽 전체를 읽어봤습니다.

기존 disable_jump_reply 설정을 제거한 이유를 이해합니다:
당시에는 기능이 깨져 있었고, 사용하는 사람이 매우 적었으며, Discourse는 일반적으로 전역 사용자 설정이 과도하게 쌓이는 것을 피하려는 경향이 있습니다. 거기서 설명하신 디자인 철학도 이해합니다. 즉, 자동 점프를 사용하여 사람들이 답글을 남기기 전에 토픽 전체를 읽도록 장려하고, 수정키나 고급 옵션 뒤에 ‘전문가용’ 워크플로를 숨겨두는 방식이죠.

Shift + Reply 단축키는 분명 몇 가지 상황에서 도움이 되며, 언급해 주셔서 감사합니다. 제게 문제가 되는 부분은 다음과 같습니다:

해당 Meta 토픽을 읽거나 누군가 알려주지 않는 한 아예 발견할 수 없다는 점,

매번 특별한 키를 기억해야 한다는 정신적 부담,

여러 Discourse 포럼에서 긴 토픽을 따라 읽을 때, 읽던 위치에서 수백 개의 글이나 떨어져 있는 곳으로 끌려가는 것은 단순한 답글에 대해 꽤 무거운 ‘벌’처럼 느껴진다는 점.

제가 Discourse에서 개인적으로 좋아하는 것 중 하나는 바로 그 유연성입니다:
관리자든 사용자든 자신의 독서 및 탐색 습관에 맞게 많은 세부 사항을 조정할 수 있습니다. 이 관점에서 보면, UI가 옵션의 벽으로 변하지 않으면서도 이 영역에서 약간의 추가 설정 가능성을 제공하는 것이 큰 도움이 될 것 같습니다.

예를 들어, 다음 중 어느 것이라도 이미 큰 개선이 될 것입니다:

UI에 보이는 “점프 없이 답글 남기기” 옵션(고급/전문가용 동작으로 간주되더라도),

또는 “고급” 섹션 뒤에 숨겨진 사용자/사이트 수준의 토글. 이렇게 하면 해당 동작에 정말로 신경 쓰는 사람들이 영구적으로 숨겨진 단축키에 의존하지 않고도 점프를 한 번만 비활성화할 수 있습니다.

설정 항목이 너무 많아지는 것에 대한 우려를 충분히 이해하며, 모든 난해한 설정을 되살려달라는 것은 아닙니다. 다만, 오래된 글들을 읽으면서 답글을 많이 남기는 사람의 관점에서 이 동작에 대해 명확하고 발견하기 쉬운 선택지가 없을 때의 비용이 다른 많은 설정보다 더 크다고 느껴서 공유하고자 합니다.

어쨌든 설명과 Shift 팁을 다시 한번 감사드립니다. 제 희망이 이루어지지 않더라도, 배경을 알 수 있어 매우 도움이 되었습니다. 미래에 이것이 어떤 형태의 선택적 또는 “전문가용” 설정으로 재고될 수 있기를 여전히 기대합니다.

2개의 좋아요

다시 한번 감사드립니다 — 흥미롭게도, 다른 몇몇 Discourse 기반 포럼에서 같은 질문을 했을 때, 여러 사용자들이 Shift 키를 누르면 점프가 방지된다는 사실을 전혀 모르고 있었습니다. 따라서 이는 분명히 매우 찾기 어려운 동작입니다.

다행히도 이제 Shift 메커니즘에 대해 알게 되었으니, 내일 작은 플러그인이나 테마 컴포넌트를 작성하는 것은 꽤 간단할 것입니다. 실제로 이는 더 깔끔한 구현 방식을 제시해 줍니다. 자동 스크롤을 상쇄하기 위해 무거운 DOM 변형 관찰자(mutation observers)에 의존할 필요가 없기 때문입니다. 대신 동일한 로직에 후킹(hooking)할 수 있습니다.

어쨌든, 정보를 공유해 주셔서 감사합니다. 이 동작이 여전히 "전문가 전용"이라 할지라도, 마침내 이 근본적인 메커니즘을 충분히 이해하여 올바르게 확장할 수 있게 되어 기쁩니다.

3개의 좋아요

내 친구 스크립트 마스터 @Pipecraft가 이 플러그인의 개발을 완료했습니다. 여러분도 사용하시려면 userscripts/discourse-prevent-jump-on-reply/discourse-prevent-jump-on-reply.user.js at main · utags/userscripts · GitHub 를 팔로우해 주세요.

드디어 게시글에 답글을 쓸 때 shift 키를 계속 누르고 있지 않아도 됩니다. 감사합니다.:heart:

4개의 좋아요

그건… Tampermonkey를 통해 실행하는 JS 스크립트네요. '플러그인’이라고 부르기엔 좀 애매하죠 :wink: .

사용자 설정에 따라 SHIFT 키의 로직을 복사해서 오버라이드하는 건 확실히 가능할 것 같은데, 복잡해 보이긴 하네요.

아, 어쨌든 작동하면 되는 거죠. JS로 이런 게 가능하다고 해서 놀랐어요. preventDefault()를 사용한다는 걸 확인했어요. 꽤 흥미로운 해결책이네요!

3개의 좋아요

귀하의 솔루션도 기대하고 있습니다. 감사합니다 :heart:

이 Tampermonkey 스크립트를 포럼 컴포넌트로 변환할 수 있을까요?

1개의 좋아요

모바일에서는 어떻게 할 수 있나요?

이론적으로는 가능하다고 생각합니다. Tampermonkey 스크립트는 클라이언트 측 수정이라는 점에서 테마 컴포넌트(Theme Component)와 유사하기 때문입니다.

다만 아직 충분한 경험이나 지식이 부족합니다. Tampermonkey 스크립트를 AI에 입력하여 테마 컴포넌트를 생성할 수 있을지 궁금합니다.

또 하나의 참고사항으로, 현재 UI가 가장 좋다고 생각합니다. '최신 게시물로 점프 방지’에서 상자를 선택하기만 하면 이 상태를 저장할 수 있습니다.

image

1개의 좋아요

답글에서 위로 점프하는 것을 방지하는 것보다, 오히려 원래 있던 위치로 _되돌아가기_를 더 쉽게 만드는 편이 좋다고 생각합니다. 이는 다른 시나리오에서도 유용할 것입니다.

해당 아이디어에 대한 이전 주제들:

2개의 좋아요

예를 들어, 주제를 절반까지 읽다가 나중에 다시 돌아왔을 때 표시되는 ‘뒤로’ 표시와 같은 것 말이에요?

1개의 좋아요

네, 그런 것 같습니다.

일부 사용자에게는 다소 시끄럽게 느껴질 수 있으므로, 디자인 세부 사항은 몇 번의 반복을 거칠 필요가 있을 것 같습니다. 닫을 수 있게 해야 하거나, 주제를 떠날 때 자동으로 닫히게 하거나, 또는 “여기부터 읽지 않음으로 표시” 같은 기능이 될 수도 있겠죠… 하지만 대체로 그런 식이 될 것 같습니다.

3개의 좋아요

아이디어를 공유해 주셔서 감사합니다. 저는 여전히 제 소박한 견해를 고수합니다. 특정 기능을 하드코딩하는 것보다는 사용자에게 더 많은 옵션을 제공하는 것이 더 좋다고 생각합니다. 기억된 토픽 위치는 “첫 번째 읽지 않은” 게시물 또는 “마지막으로 읽은” 게시물이어야 하며, 사용자는 원하는 대로 선택할 수 있어야 합니다.

2개의 좋아요