-
-
Notifications
You must be signed in to change notification settings - Fork 26
[Refactor] 로마자 구간을 열고 닫을 때 규칙 로직 구현 및 rule_32 테스트 케이스 추가 #90
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Refactor] 로마자 구간을 열고 닫을 때 규칙 로직 구현 및 rule_32 테스트 케이스 추가 #90
Conversation
Signed-off-by: ihyeeun <oioigl@naver.com>
Signed-off-by: ihyeeun <oioigl@naver.com>
Signed-off-by: ihyeeun <oioigl@naver.com>
Signed-off-by: ihyeeun <oioigl@naver.com>
|
|
엇... 제가 이슈 올렸던 부분을 해결하셨군요 한참 하고 있었는데.. 다음에는 혼선 안생기게 미리 이슈 올려주시면 감사하겠습니다 |
|
OSSCA 마감 직전에 봐서 좀 많이 당황스럽긴합니다 |
|
안녕하세요, 그 사이 @hanan-nana 님께서 문제를 정확히 짚어 이슈를 등록해주셨습니다. 제 미성숙한 자세와 사전에 이슈를 올리지 않아 중복된 문제에 시간을 쓰시게 한 것 같아 정말 죄송합니다.. 이 PR은 실패중인 테스트 케이스를 통과하기 위해 진행한 결과이며 추가되지 않은 로마자 관련 케이스에서 완벽하게 커버되지 않을 수 있습니다. 앞으로는 이런 문제가 없도록 이슈를 먼저 등록하고 작업을 진행하도록 하겠습니다.. |
|
괜찮습니다! 다행히 이슈 올린뒤로 39항의 로마자가 주된 문장의 구분과 관련해서 한글이 주된 문장과의 구분을 어떻게 구현할지부분도 보고 있었어서 그 부분으로 진행하려고 합니다. 저도 러스트는 익숙하지 않기도 하고, @ihyeeun 님이 올려주신 PR과 별개로 39항 처리를 중심으로 잡아서 구현해보려고 하니 너무 심려치 마세요! 좋은 프로젝트에 큰 기여하신거 같아서 부럽고 저도 다른 이슈 해결하는데 집중해보겠습니다 :) |
|
@hanan-nana 님 너그럽게 이해해주셔서 정말 감사합니다. 🙇 39항 관련 작업도 순조롭게 진행되어 꼭 성공적으로 기여하시길 진심으로 응원하겠습니다 !! |
owjs3901
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
함수 주석 관련만 수정 부탁드립니다
| // 규칙 33~35에서 종료표(⠲)를 생략해야 하는 기호 모음. | ||
| // 기호 앞뒤에서는 로마자 종료표를 생략한다. | ||
| pub(crate) fn should_skip_terminator_for_symbol(symbol: char) -> bool { | ||
| matches!(symbol, '.' | '?'| '!'| '…'| '⋯'| '"'| '\''| '”'| '’'| '」'| '』' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
저 이 문법 처음 알았어요
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
char 대상으로도 됐었구나..
libs/braillify/src/english_logic.rs
Outdated
| // 규칙 33~35에서 종료표(⠲)를 생략해야 하는 기호 모음. | ||
| // 기호 앞뒤에서는 로마자 종료표를 생략한다. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// 로 걸어야지 docs 에 들어갈거에요
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
수정 했습니다 ! 한번만 확인 부탁드립니다 !
Codecov Report❌ Patch coverage is
... and 1 file with indirect coverage changes 🚀 New features to boost your workflow:
|
Signed-off-by: ihyeeun <oioigl@naver.com>
|
@owjs3901 멘토님 테스트 코드 추가 했습니다 ! 확인 부탁드립니다 ! |
요약
should_skip_terminator_for_symbol,should_request_continuation등 헬퍼 함수로 분리해Encoder가 종료/연속 상태를 명확하게 전환하도록 했습니다.english_logic모듈을 만들었습니다.rule_32CSV 테스트 케이스를 추가해 새 로직이 의도한 결과를 내는지 검증했습니다.세부 변경 사항
english_logic.rs모듈을 신설해 로마자 종료/연속 판단, 영어 기호 사용 판정을 각각의 함수로 분리했습니다.이렇게 하면 제33~35항의 조건을 한 곳에서 관리할 수 있도록 하였습니다.
Encoder는 영어 구간을 열고 닫을 때 새 헬퍼를 호출하도록 수정되었습니다.숫자(제35항), 닫는 괄호·따옴표(제34항), 문장부호(제33항) 등에서 종료표를 생략하고도 연속 상태를 기억하도록
needs_english_continuation플래그를 사용합니다.영어 구간에서 열었던 괄호는 영어 괄호로 닫히고,
한글 문맥에서는 기존 점형을 유지하게 했습니다.
symbol_shortcut에 영어 전용 기호 매핑을 추가해, 제33~34항 상황에서도 올바른 점형이 나오도록 했습니다.rule_32를 추가하였습니다.테케 추가 -> 100%33항
50% -> 100%33항_다만
42% -> 100%34항
33% -> 100%35항
0% -> 100%위 케이스가 모두 통과하면서
총 실패 케이스 수가
48건에서 37건으로 감소.리뷰 요청사항
Rust 언어를 이번에 처음 사용해 보았습니다.
미숙한 부분이나 코드 스타일에 개선이 필요한 부분이 있다면 편하게 리뷰 남겨주시면 감사하겠습니다 ! 🙌
(아직 로마자 관련 로직이 완벽하게 구현되지는 않았습니다. 이 부분은 추후 개선해 나가야할거같습니다!)