커뮤니티 위시리스트 설문조사 2022/문단 분할을 위한 더 나은 차이 관리

This page is a translated version of the page Community Wishlist Survey 2022/Better diff handling of paragraph splits and the translation is 81% complete.

'문단 분할을 위한 더 나은 차이 처리는 2022년 커뮤니티 위시리스트 설문 조사에서 1위를 차지했습니다. 소원의 목적은 페이지의 두 버전 사이에 단락 간격이 삽입된 시점을 시청자가 이해할 수 있도록 하는 것입니다. 이 페이지는 이 소망의 제안에 표현된 요구 사항을 해결하기 위한 커뮤니티 기의 접근 방식을 간략하게 설명합니다. 피드백이 있다면 남겨주세요.

이 페이지는 위키미디어 재단의 커뮤니티 기술 팀이 과거에 작업했거나 거절한 프로젝트를 기록합니다. 이 프로젝트에 대한 기술 작업이 완료되었습니다.

토론 페이지에서 토론에 참여하도록 초대합니다.

원본 희망사항 보기

배경 및 문제 공간

 
Wikidiff2단락 분할

차이점의 줄임말인 "diff"는 페이지의 두 버전 사이의 변경 사항을 표시합니다.

위키 생태계의 플랫폼에는 사용 중인 미디어위키의 장치 및 설치에 따라 여러 버전의 Diff가 있습니다.

사용자가 diff의 예를 찾을 수 있는 한 가지 방법은 지정된 페이지의 기록으로 이동하고 비교할 두 버전을 선택하는 것입니다.

데스크톱에서는 대부분의 위키에서 사용할 수 있는 두 가지 환경이 있습니다:

  • WikiDiff2은 미디어위키에 더 빠른 diff 엔진을 제공하는 PHP용 기본 확장입니다. 일부는 원본 wikidiff에 기반하고 일부는 미디어위키의 DifferenceEngine 클래스에 기반합니다. 입력 텍스트(줄 기반 또는 단어 수준)에서 diff를 생성하고 이를 HTML 또는 JSON 형식으로 지정할 수 있습니다. Wikidiff2에는 문자로 구성된 텍스트에 대한 문자 수준 diff 지원이 포함됩니다.
  • 시각적 diff는 현재 베타 기능이며 렌더링된(또는 표시된) 문서의 형식을 지정하는 데 사용되는 텍스트(또는 마크업)를 표시하는 것과는 대조적으로 렌더링된(또는 표시된) 문서 간의 차이점을 비교하고 보여줍니다.

모바일에는 세 가지 경험이 있습니다:

또한 사용자는 diff 경험을 사용자 정의하기 위해 널리 사용되는 스크립트를 개발했습니다.

올해(2022) 커뮤니티 위시리스트 설문조사의 1위 소원은 단락 분할의 더 나은 diff 처리였습니다. 이 소원은 다른 위시리스트에 두 번 이상 나타났습니다.

이 바램은 단락 분할이 추가될 때 diff 뷰어의 개선을 요구했습니다. 단순히 용도가 변경된 것이 아니라 삭제되고 다시 추가된 것으로 표시되기 때문입니다.

기존 격차: 제품, 기술 및 설계 부채

이 단락 분할 문제를 조사하는 동안 diff 뷰어의 다른 측면이 사용자에게(또는 적어도 신규 사용자에게는) 직관적이지 않다는 것을 발견했습니다.

  • 일부 플랫폼에서는 색상 대비 사용이 불가능합니다. 색상이 의미의 유일한 지표가 되어서는 안 되며, 스트라이크 또는 기타 기호를 사용하여 색상 사용을 지원해야 합니다.
  • Wikidiff2에서 기호 +와 -가 있는 이전(왼쪽)과 이후(오른쪽)를 의미하는 두 열은 일부에게는 직관적이지 않았습니다.
  • 사람들은 "빨간색"을 나쁜 것과 "녹색"을 좋은 것과 연관시킬 수 있어 편집 품질에 대한 혼동을 일으킬 수 있습니다.
  • 줄 번호는 대부분의 플랫폼 편집 환경에 표시되지 않지만 구성 단위로 diff에 표시됩니다.
  • 플랫폼 간 패리티 없음

단락 분할을 보는 것이 혼란스러운 이유는 무엇입니까?

현재 Wikidiff2 환경은 줄 번호별로 변경 사항을 구성합니다.

즉, 줄에 추가된 문자열이나 문자가 삭제되고 다시 추가된 것으로 표시됩니다. 단락을 나누는 것은 "줄 안에 스페이스바 문자를 추가하고 새 줄을 만드는 것"을 의미하므로 현재 Wikidiff2 환경에서는 콘텐츠가 삭제된 것으로 표시됩니다. 그런 다음 줄이 다시 추가된 줄과 추가된 줄로 나뉩니다. 다시 추가되는 줄은 편집 내에서 변경된 개별 단어를 강조 표시하지 않습니다.

작업 범위 및 사용자 스토리

사용자 스토리 요구 사항

위키 방문자로서 페이지의 두 버전을 비교할 때:

  • 무엇이 추가되었는지 명확하게 파악하여 변경된 사항을 파악하고 "싶습니다".
  • 삭제된 내용을 명확히 파악하여 변경된 내용을 파악할 수 있도록 하고 "싶습니다".
  • 줄 바꿈 삽입을 명확하게 식별하여 변경된 내용을 이해할 수 있도록 하고 "싶습니다".
  • 쪼개진 문단 내에서 단어의 변화를 명확하게 파악하여 무엇이 바뀌었는지 파악하고 "싶습니다".

MVP 요건

데스크톱의 2열 위키텍스트 Diff diff 뷰어

  • 하나의 단락으로 분리된 단락 내에서 단어가 변경되었을 때 표시되는 시각적 마커를 볼 수 있습니다.

diff의 스크린 리더 사용자로서,

  • 삭제 및 추가 열의 변경 사항에 대한 정확하고 유용한 설명과 변경 사항에 대한 시각적 설명에 접근할 수 있습니다.

이상적인 범위 요구 사항

데스크톱에서 위키텍스트를 보는 사람으로서,

  • 통합 인라인 보기 또는 2열 diff 보기 중에서 선택할 수 있습니다.

데스크탑의 통합 인라인 위키텍스트 Diff diff의 뷰어로서,

  • 제거된 텍스트 위에 시각적 마커를 볼 수 있습니다.
  • 하나의 단락으로 분리된 단락 내에서 단어가 변경되었을 때 표시되는 시각적 마커를 볼 수 있습니다.
  • 새 줄 추가를 표시하는 시각적 마커를 볼 수 있습니다.
  • 비주얼 마커의 의미를 이해할 수 있도록 범례를 볼 수 있습니다.

범위 및 제약

커뮤니티 기술이 이끄는 이 개선의 목적을 위해 다음 Diff 경험에 대한 UX 개선의 우선 순위를 지정하지 않을 것입니다:

  • 모바일 웹
  • iOS
  • 안드로이드
  • 비주얼 디프

우리는 해당 팀과 회의를 갖고 사용자 연구 및 기술 조사에서 밝혀진 내용에 대한 지식을 공유할 수 있지만 해당 플랫폼에 대한 수정 사항을 엔지니어링하는 작업은 맡지 않을 것입니다.

우리는 페이지의 두 버전을 비교하는 핵심 경험에 대해서만 작업할 것입니다. 이는 명시적으로 다음과 관련된 디자인 요구 사항이 없음을 의미합니다:

  • diff의 발견 가능성: 우리는 사람들이 두 개정판의 비교를 탐색하는 방법에 초점을 맞추지 않을 것입니다.
  • 변경 사항 비교와 관련되지 않은 사용자가 diff에 대해 수행할 수 있는 기타 작업

위의 내용은 리소스 조달로 인해 이 팀이 집중할 범위를 벗어납니다. 우리는 모바일 웹을 처리하기 위한 중재자 도구 팀과 이러한 플랫폼을 각각 소유한 IOS 및 안드로이드 팀의 다른 내부 노력을 알고 있습니다.

설계 부채 및 계획:

  • 위키텍스트 diff에 있는 스타일과 일치하도록 시각적 Diff 스타일을 일치시킬 예정인가요?

"복잡성에 따라 그럴 가능성이 높습니다."

  • 위키텍스트 diff에 있는 스타일과 일치하도록 모바일 웹 Diff 스타일을 일치시킬 건가요?

"현재 해당 경험을 접하고 있는 중재자 도구 팀과 연구 및 최종 모의를 실시간으로 공유할 것입니다."

데이터 조사

  • 얼마나 많은 사용자가 2열 diff 페이지를 방문합니까?
  • 얼마나 많은 사용자가 인라인 diff 페이지를 방문합니까?

우리는 이 소원을 왜, 어떻게 받아들였는가

이 소원은 2022년 우선 순위 결정 프로세스에서 높은 점수를 받았습니다. 투표 수 측면에서 매우 인기가 있었고 커뮤니티에 대한 이점 측면에서 영향력이 있었으며 상대적으로 복잡성 추정치가 낮았습니다. 차이점은 위키의 핵심 부분입니다. 사용자는 협업 편집 생태계에서 무엇이 변경되었는지 이해해야 합니다.

디자인 리서치

지금까지 다양한 "diff" 경험이 얼마나 직관적인지 이해하기 위해 조정되지 않은 사용자 검색을 실행했습니다. PDF 형식으로 첨부된 연구 프로토콜과 비디오 형식의 통찰력 분석을 함께 참조하십시오.

 
사용성 테스트는 Diff 경험에서 실행됩니다.
위키백과의 diff 뷰어에 대한 사용성 테스트 분석

시각적 차이 점수:

  • 4.5/5: 콘텐츠 추가 경험은 명확성 측면에서 평균 순위를 받았습니다.
  • 4.5/5: 콘텐츠 삭제 경험은 명확성 측면에서 평균 순위를 받았습니다.
  • 2.75/5: 단락 나누기 경험은 명확성 측면에서 평균 순위를 받았습니다.

Wikitext2 diff 점수:

  • 4.75/5: 콘텐츠 추가 경험은 명확성 측면에서 평균 순위를 받았습니다.
  • 4/5: 콘텐츠 삭제 경험은 명확성 측면에서 평균 순위를 받았습니다.

Status Updates

2023년 9월 29일

Close to the end of September 2023, iterative Better Diff updates listed below have been released. The changes apply to wikis where Wikidiff2 is installed.

Roll out of inline switch widget

The new inline toggle switch widget in diff pages has been rolled out by Community Tech.

The inline toggle switch allows viewers to toggle between viewing wikitext diffs as a two-column diff or as a unified inline diff.

 
Inline toggle switch

Paragraph split detection

The paragraph split detection in Wikidiff2 has been deployed to all wikis. Overall accuracy of paragraph split detection has been improved.

The system better identifies where new lines were added and deleted. We are currently awaiting user feedback for reports of inaccurate diffs so we can adjust the algorithm to get better results.

We addressed issues identified in the Better Diff wish and also mentioned on Phabricator, hence paragraph splits and moves should now be identified properly in diffs.

Adding a legend and tooltips

Better Diff project has also introduced legends and tooltips to inline diff so that users seeing the blue and yellow highlights, which depict changes, can better understand the type of edits made.

In Wikitext two-column diff view, individual words changed inside a paragraph that has been split, isn’t highlighted or noted anywhere. This could cause users to miss vandalism. However in inline diff mode, the content added is highlighted blue, and content removed is highlighted yellow.

Once the switch is toggled on, a legend on the top left of the diff page indicates that edits highlighted blue represent content added and edits highlighted yellow are content deleted.

Additionally, when users hover their cursors over a highlighted section, a tooltip appears to inform them which kind of edit (and addition or removal) was made.

 
Better Diff legend and tooltip

Adding and deleting lines

If a user inserts one or more lines, it is represented with the text "newline" highlighted in blue. Deleting one or more lines will be represented with the text "deleted" in a yellow highlight.

 
Adding and deleting new lines in Better Diff

2023년 4월 14일

커뮤니티 기술은 앞으로 몇 달 안에 더 나은 Diff에 관한 몇 가지 릴리스를 출시할 예정입니다. 이 릴리스에서는 Wikidiff2 알고리즘의 개선 사항과 향상된 diff 사용자 인터페이스(UI) 개선 사항을 다룹니다.

Wikidiff2 알고리즘은 단락 분할을 더 잘 캡처하고 분할된 단락 내의 단어 변경 사항을 식별할 수 있습니다.

UI 향상에는 인라인 형식 및 형식 스위처에 대한 업그레이드가 포함됩니다. 인라인 형식은 사용자가 편집 내용을 더 잘 이해할 수 있도록 범례와 도구 설명을 표시합니다.

스위처를 통해 사용자는 인라인, 2열 및 비주얼을 포함하여 가능한 다양한 형식을 쉽게 탐색할 수 있습니다.

아래 표는 파브리케이터의 배포를 추적합니다.

# 작업 코드 (Core, VE, Wikidiff2) 배포 날짜
1 인라인 Diff: 범례 및 툴팁 추가 Core Week of July 3
2 더 나은 Diff: Wikidiff2 수정 알고리즘 Wikidiff2 Week of July 17
3 인라인 Diff: 시각적 마커 변경 Core and Wikidiff2 Week of July 17
4 Better Diffs: Complete deployment of Wikidiff2 improved split detection to all wikis Core Week of August 30
5 "개정 간 차이" 형식 간 전환을 허용하는 드롭다운 추가 Core and VE Week of September 11

2023년 3월 10일

팀은 엔지니어링 및 디자인 측면 모두에서 이러한 희망 사항을 위해 계속 작업했으며 업데이트를 여러분과 공유하고 싶었습니다.

 
Visual diff
 
Wikitext - inline
 
Wikitext - two columns
 
Review changes - two column

시간을 내어 토론 페이지에 참여하고 피드백을 제공해주신 모든 분들께 감사드립니다. 우리는 모든 피드백을 읽고 지적 사항에 대한 종합적인 분석을 수행했습니다. 그런 다음 이러한 제안된 디자인에 대한 귀하의 피드백과 중재되지 않은 사용자 연구를 결합하고 제안된 디자인을 마무리하여 희망 사항 변경과 관련된 개선을 위해 엔지니어링에 투입했습니다. 다음을 포함하는 이 업데이트의 디자인을 참조하십시오:

  • 드롭다운을 통해 diff 모드 간 전환
  • 데스크톱용 범례 및 툴팁으로 인라인 diff의 접근성 향상
  • 새 줄 또는 단락을 도입한 변경 사항의 표시 개선
  • 기존 줄이나 문단을 삭제한 변경사항 표시 개선

또한 기본 비교 엔진의 변경 사항에 대한 데모가 생성되었습니다. 피드백을 제공하기 위해 데모를 시도하기 전에 다음 사항에 유의하십시오.

  • 진행 중인 작업입니다. QA 엔지니어는 현재 포괄적인 diff 목록을 사용하여 변경 사항이 현재 버전의 2열 diff 경험 또는 UI 개선과 일치하는지 확인하고 있습니다.
  • 데모 페이지에는 모든 최종 UI 변경 사항이 포함되어 있지 않지만 테스터에게 완료된 2열 diff 환경이 어떻게 표시되는지에 대한 좋은 정보를 제공할 수 있습니다.
  • 데모를 사용하려면 두 개의 상자에 동일한 텍스트를 붙여넣고 오른쪽 상자의 텍스트를 수정하십시오. 그 아래의 diff는 변경된 내용을 보여줍니다.

토론 페이지에서 여러분의 피드백을 듣고 싶습니다!

다음 단계

  • 디자인 색상의 접근성: 우리 디자이너는 디자인의 접근성을 결정하기 위해 디자인 시스템 팀과 긴밀히 협력하고 있습니다. 더 쉽게 접근할 수 있도록 음영을 약간 변경해야 할 것으로 예상하지만 색상은 현재 2열 및 인라인 diff에 표시되는 파란색과 노란색과 유사하게 유지됩니다.
  • 출시 계획: 출시 계획과 다음 단계 일정을 작업 중이며 다음 프로젝트 업데이트에 이를 포함할 예정입니다! diff의 기본 엔진에 대한 변경 사항을 릴리스하는 것은 미디어위키 소프트웨어의 기존 릴리스와 다른 프로세스를 따르므로 다음 번에 단계와 세부 정보를 업데이트할 것입니다.

또한 wikidiff2의 C++ 엔진의 기본 변경 사항을 지원하기 위해 친절하게 도움을 준 커뮤니티 기술 직원이 아닌 팀 스털링에게 이번 업데이트에 큰 감사를 전하고 싶습니다. 우리는 커뮤니티 기술 팀에 속하지 않더라도 소원을 이루는 데 필요한 전문 지식을 갖춘 재단의 다른 구성원으로부터 소원을 이루는 지원을 받는 것을 항상 기쁘게 생각합니다.

여러분의 의견을 기다리겠습니다!

첫 번째 업데이트의 공개 질문: 여러분의 의견을 듣고 싶습니다!

  • 단락 분할을 비교하기 위해 새로 제안된 인터페이스에 대한 사용자 조사를 수행하는 데 관심이 있습니까? 그렇다면 토론 페이지에 관심이 있다고 게시하시겠습니까?
  • diff를 볼 때 나타나는 다른 문제점은 무엇입니까?
  • 단락 분할과 관련된 혼란을 해결하는 근본적인 문제를 어떻게 해결할 수 있습니까?
  • 색상 사용은 어떤 콘텐츠가 추가, 제거 또는 동일하게 유지되었는지 어떻게 나타냅니까?

관련 링크