물음표와 느낌표

물음표 ? 그리고 느낌표! 정직한 캐릭터입니다. 입력만 하면 나타납니다. 그러나 이를 둘러싼 관례는 언어에 따라 다릅니다. 영어는 마침표와 마찬가지로 더 넓은 문장 끝 공간을 제공합니다. 프랑스어는 그들 앞에 얇은 공간을 둡니다. 스페인어는 거꾸로 된 ¿ 또는 ¡로 시작됩니다. 일본어는 전각 ? 및 !를 사용합니다. 이 페이지에서는 언어별로 정렬하고, 입력하는 방법과 LaTeX이 처리하는 공백을 정리합니다.

서양인 ? 그리고 !

영어 및 기타 서양 텍스트의 경우 키보드에서 ?!을 직접 입력합니다. 탈출이 필요하지 않으며 특별한 명령도 없습니다. 영어 관례는 앞의 단어(앞에 공백 없음) 뒤에 일반 공백을 두는 것입니다.

내부적으로 TeX은 모든 문자에 공백 인자를 할당합니다. 마침표 ., 물음표 ? 및 느낌표 !는 모두 3000의 공백 인수를 가지며, 이는 다음 공백을 문장 끝 공백으로 표시합니다. 기본값(\nonfrenchspacing)에서는 해당 문장 사이의 공간이 단어 사이의 공간보다 약간 넓게 설정되어 있으며 약 3배 정도 늘리거나 줄일 수 있습니다. 따라서 ? 또는 !으로 문장을 끝내면 마침표와 마찬가지로 간격이 약간 더 넓어집니다.

한 가지 함정: TeX은 대문자 바로 뒤의 구두점은 문장을 끝내지 않는다(Ph.D.과 같은 약어를 방지함)고 가정합니다. 대문자 Who is FBI? 바로 뒤에 문장을 끝내는 드문 경우에는 ? 앞에 \@을 넣어 "이것이 정말 끝입니다."라고 말합니다. 반대로 더 넓은 문장 끝 공백을 완전히 삭제하고 단어 간 공백과 동일하게 만들려면 프리앰블에서 \frenchspacing을 선언합니다. '자동으로 삽입된 공백' 페이지는 더 자세히 설명되어 있습니다.

latex
Really? Yes! It works.

% After a capital, mark the true sentence end:
He joined the FBI\@. Then he left.

프랑스어는 다릅니다. 철자법은 Vraiment ?처럼 ! ? : ; 에 얇은 공백을 둡니다. 이를 수동으로 삽입하지 마십시오. [french] 옵션(babel-french)을 사용하여 babel을 로드하면 이 표시 앞에 올바른(잘라내지 않는) 공백이 자동으로 배치됩니다.

스페인어 반전 표시 ¿ ¡

스페인어는 절의 시작에 반전 표시를 사용하여 질문이나 느낌표를 엽니다. 질문은 ¿…?이고 느낌표는 ¡…!이며 시작 및 종료 표시로 괄호 안에 표시됩니다. 닫는 ?!은 정상적으로 입력됩니다. 문제는 오프닝 ¿와 ¡를 입력하는 방법입니다.

전통적인 방식은 합자 입력입니다. 표준 텍스트 글꼴 인코딩에서는 느낌표 뒤에 백틱이 오면 ¡로 바뀌고, 물음표 뒤에 백틱이 오면 ¿로 바뀝니다. 즉, 시작 느낌표는 ! ` `, and the opening question is ? then ``입니다. 백틱은 출력에 나타나지 않습니다. 단일 반전 표시가 나타납니다.

다른 방법은 명시적 명령입니다. ¡은 \textexclamdown이고 ¿는 \textquestiondown입니다. 많은 사람들이 이것을 선호합니다. 의도는 한 눈에 분명하며 합자가 비활성화된 경우에도 작동합니다. babel[spanish]과 함께 로드하면 스페인어 하이픈 넣기와 캡션이 추가로 설정되고 언어에 맞게 ?! 주위의 처리가 조정됩니다.

latex
% Ligature input (mark + backtick):
?`Como estas?
!`Hola!

% Explicit commands (identical output):
\textquestiondown Como estas?
\textexclamdown Hola!

주의 사항: pdfLaTeX에서 이러한 합자는 글꼴 인코딩 기능으로 작동하지만 유니코드 기본 XeLaTeX / LuaLaTeX에서는 이에 의존하지 않는 것이 가장 안전합니다. 소스에 반전된 ¿ ¡를 직접 입력하십시오(또는 \textquestiondown / \textexclamdown 사용).

일본어 ? 그리고 !

일본어 텍스트에서는 반자 ? !이 아닌 전각 ? 및 !를 사용합니다. 소스에 직접 작성하면 일본어 지원 엔진(upLaTeX 또는 luatexja의 LuaLaTeX)이 이를 그대로 설정합니다. 이스케이프가 필요하지 않습니다.

일본어 조판에서는 일반적으로 중간 텍스트 ? 또는 ! 뒤에 전각 공백(zenkaku aki)을 넣습니다. W3C "JLREQ(일본어 텍스트 레이아웃 요구 사항)"에서는 문장 끝 질문이나 느낌표가 전폭이고 그 뒤에 전폭 공백이 따라오도록 지정합니다. 단, 닫는 괄호가 뒤에 오는 경우 공백이 없이 공백으로 설정됩니다. 요점: 일반적으로 전폭 공백을 직접 입력해서는 안 됩니다; 엔진은 이를 구두점 간격으로 자동 삽입합니다. 상단에 수동 전폭 공간을 추가하면 간격이 두 배가 됩니다.

? 또는 !로 문장을 끝내는 것은 일본어에서 마침표 。가 형식적인 문장 끝을 표시하는 방식으로 사용되지 않는다는 점에 유의하세요. 이는 대화와 가벼운 음역에서 흔히 사용되는 반면, 。는 격식을 갖춘 글쓰기에서 문장 끝을 전달합니다. ? 또는 !가 줄 끝에 있고 그 뒤의 전체 너비 공백이 남게 되는 경우 해당 줄 끝 공백을 억제하는 것이 가장 좋습니다(대부분의 클래스와 패키지가 이를 처리합니다).

입력 조회

입력 → 출력 → 메모. 합자 행의 백틱은 시작 ​​표시를 생성하는 입력의 일부입니다. 출력에는 나타나지 않습니다.

입력출력참고사항
???서양식 물음표; 더 넓은 문장 끝 공간(SF 3000)
!!!서양식 느낌표; 더 넓은 문장 끝 공간(SF 3000)
?-backtick? 그럼 `¿합자; 시작 물음표(스페인어)
!-backtick! 그럼 `¡합자; 느낌표 열기(스페인어)
textquestiondown\textquestiondown¿명시적 명령; 합자가 없어도 작동합니다.
textexclamdown\textexclamdown¡명시적 명령; 합자가 없어도 작동합니다.
fullwidth-question?(전각)?일본어; 후행 전폭 공백은 자동입니다.
fullwidth-exclam! (전각)!일본어; 후행 전폭 공백은 자동입니다.

실제 사례

다음은 언어별 실제 예입니다. 스페인어에서는 조항을 열고 닫는 표시로 대괄호로 묶습니다. 프랑스어에서는 babel-french가 표시 앞에 얇은 공백을 삽입합니다. 일본어에서는 전자 표시를 입력하면 뒤에 공백이 따라옵니다.

latex
% --- Spanish ---
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[spanish]{babel}
\begin{document}
?`Como estas? !`Que bien!

\textquestiondown Listo\textexclamdown
\end{document}

합자(? ! 다음에 백틱)를 통해 여는 ¿ ¡를 생성하는 줄과 명시적 명령을 사용하는 줄은 정확히 동일한 출력을 제공합니다. 다음은 일본의 예입니다. ? 또는 ! 바로 뒤에는 전각 공백을 입력하지 않는다는 점에 유의하세요.

latex
\documentclass{ltjsarticle}
\begin{document}
本当ですか? はい、できました! 次に進みましょう。
\end{document}

이것을 컴파일하면 "本当desika?" 뒤에 전폭 공백이 있는 읽을 수 있는 일본어 문단이 생성되고, "диkiました!" 뒤에 또 다른 문단이 생성됩니다. 손으로 공백을 추가하지 않았는데도 공백이 올바르게 나옵니다. 이것이 바로 일본어 조판의 편리함입니다.

제출 전 표시 확인

질문과 느낌표는 작지만 언어정책을 즉각 노출시킵니다. 제출하기 전에 표시가 반자인지 전자인지, 주변 공백을 수동으로 입력했는지, 스페인어 역 시작 표시가 누락되었는지 전체 문서를 스캔하세요. 일본어 단락에서 ?과 혼합하거나 !과 혼합하면 문장 톤이 동일한 경우에도 줄 끝 및 간격 동작이 변경됩니다.

  • 일본어 중심 보고서: 본문 질문 및 강조에 전자 을 사용하고 그 뒤에 추가 공백을 입력하지 않습니다.
  • 서양 인용문, 코드, 고유명사: 반각 ?!을 원본과 동일하게 유지하고 일본 본문 정책과 별도로 처리합니다.
  • 스페인어 문장: 닫는 표시뿐만 아니라 시작하는 ¿¡도 확인하세요. 반전된 오프닝 표시가 누락되면 모양과 언어적 정확성이 모두 손상됩니다.
  • 프랑스어 산문: babel과 같은 언어 지원이 얇은 공간을 직접 삽입하는 대신 관리하도록 미리 결정합니다.