\big| 사용 그리고 \오른쪽| \bigr\rvert 및 \right\rvert 비교

\big| 사용 그리고 \오른쪽| \bigr\rvert 및 \right\rvert 비교

에 대한 답변을 바탕으로이 질문(약 \bigl, \bigr, \big등) 및이 질문(약 \lvert, \rvert, 등), 오른쪽을 구분하기 위해 수직 막대를 사용할 때마다 , 등 또는 (또는 ) |을 써야 한다고 생각합니다 . 그러나 일부 답변에서는 이러한 혼합 및 일치를 보는 것 같습니다. 발췌를 예로 들어보자\rvert\bigr\rvert\right\rvert\mright\rvert

\right|_{#2} % this is the delimiter

~에서이 답변, 또는 발췌

\NewDocumentCommand{\evalat}{sO{\big}mm}{%
  \IfBooleanTF{#1}
   {\mleft. #3 \mright|_{#4}}
   {#3#2|_{#4}}%
}

~에서이 답변. 여기서 다양한 조합을 사용하는 것이 적절한 이유는 무엇입니까?

답변1

좋습니다. 간단한 답변은 댓글에 있습니다. 여기는루옹하나.

참고: 이 답변은 Knuth의 원본 TeX, eTeX 및 pdfTeX에 적용됩니다. 다른 조판 엔진에서는 수학 모드의 문자 입력과 수학 글꼴이 어떻게 관리되는지 모르겠지만,예를 들어, XeTeX에서. 게다가 원칙적으로는입력패키지는 아래 설명된 프로세스를 방해할 수 있으며 이에 대해서는 마지막에 간략하게 설명합니다.

이 주제에 대한 유용한 정보를 제공하는 기존 답변은 다음과 같습니다.


문자 토큰, 수학 코드 및 원자 종류

아시다시피 TeX가 입력 파일에서 조판할 수식을 읽을 때 입력 토큰은 "수학 모드"에서 처리됩니다. 이러한 입력 토큰의 대부분은 공식의 구문 단위를 나타내는 "x", "y", "+", "=" 등과 같은 간단한 문자입니다. 예를 들어 "x" 및 "y"는 변수입니다. "+"는 이진 연산이고 "="는 관계 등입니다. 물론 일반 텍스트에서 사용되는 간단한 문자로는 표현할 수 없어서 제어 시퀀스로 입력되는 수학 기호도 많이 있습니다. 예를 들어 , \sum, \int, \cup\cap뿐만 아니라 \langle또는 \rangle. 분명히 |첫 번째 경우에 속하고 while \vert, \lvert, 및 \rvert두 번째 경우에 속합니다.

이제 입력 방법에 관계없이 TeX가 입력해야 하는 각 문자에 대해조판하다공식에서는 다음 사항을 알아야 합니다.

  1. 문자를 어디에서 가져올지, 즉 어떤 글꼴에서, 해당 글꼴 내에서 어떤 위치에서 가져오는지;

  2. 문자가 나타내는 구문 엔터티의 종류, 즉 변수인지, 이항 연산인지, 관계인지 등입니다.

TeX에는 공식에서 인접한 문자 사이의 간격이 의존하기 때문에 2에서 언급한 정보가 필요합니다. 예를 들어 공식에서 ax+by=0변수 "a"와 "x" 사이 또는 "b"와 " 사이에 공백을 삽입해서는 안 됩니다. y'이지만, 반대로 '+' 및 '=" 기호는 주변 요소와 어느 정도 간격을 두고 분리되어야 합니다(실제로 "="는 "+"보다 더 두꺼운 간격이 필요합니다).

이제 가능한 각 입력 토큰에 대해 이 모든 정보를 유연하고 재구성 가능한 방식으로 지정하는 방법에 대한 문제가 발생합니다. 예를 들어 "+"는 이항 연산자이고 "="는 관계입니다. 기호는 TeX 자체의 코드에 고정되어 있지 않습니다. \cup, \vert또는 와 같은 제어 시퀀스에서는 이것이 전혀 문제가 되지 않는다는 것을 이미 추측할 수 있습니다 \lvert. 결국 제어 시퀀스는 임의의 "프로그램"을 나타낼 수 있으므로 그 안에 원하는 만큼의 정보를 쉽게 담을 수 있습니다. 자세한 내용은 아래를 참조하세요). 그러나 "x" 또는 "+"(또는 "|")와 같은 단순 문자에 대해 이 정보는 어떻게 지정됩니까?

답변: 각 문자에 소위 "수학 코드"를 연결하면 됩니다. TeX는 내부적으로 256개의 항목으로 구성된 테이블을 유지 관리하며 각 항목은 16비트 정수를 보유할 수 있습니다(한 가지 예외를 제외하고 실제로는 15비트 값만 사용됨). 각 입력 문자에 대해 연관된 항목에 포함된 정수는 다음을 지정합니다. 필요한 정보. (이것을 테이블이라고 하며 s, s, s 등 \mathcode의 테이블과 같은 다른 TeX 테이블과 매우 유사합니다 .) 더 정확하게는 이러한 정수를 문자열로 표현하면 네 자리의 16진수\catcode\sfcode\uccode

kfpp

~와 함께케이0과 7 사이에서만 변하는 경우:

  • 케이을 제공합니다케이조판되는 기호의 ind: 예를 들어 0 = 일반 기호, 1 = 큰 연산자(예: \sum), 2 = 이항 연산자 등(참조)TeXbook, p. 전체 목록은 154 참조);

  • 에프다음을 지정합니다.에프여기서는 논의하지 않지만(그리고 LaTeX2e의 NFSS가 역할을 하는) 간접적인 메커니즘을 통해;

  • PP나타냅니다해당 글꼴 내의 위치.

\mathcode이 " " 테이블이 어떻게 설정되고 관리되는지 에 대한 자세한 내용은 다음과 같습니다.많이LaTeX2e에서는 설명된 일반 TeX 형식보다 더 복잡합니다.TeXbook, 여기에서 이를 만지는 것조차 불가능합니다(NFSS 문서 참조). 그러나 우리의 질문에 답하기 위해서는 TeX가 무엇을 알아야 할 때 살펴볼 "어떤 장소"가 있다는 것을 아는 것으로 충분합니다.케이기호의 ind가 곧 조판될 예정입니다. 다시 한 번 요약하자면 다음과 같습니다.

  • TeX는 수학 모드에서 문자 토큰을 처리할 때만 테이블을 봅니다 \mathcode(실제로 이 명령문은 다듬어야 하지만 TeXnicalities는 건너뛰겠습니다).

  • 그렇다면 테이블에서 해당 항목을 찾습니다. 그 내용은 무엇보다도 문제의 문자가 나타내는 구문 엔터티의 종류를 지정합니다.

  • 그러한 종류의 원자는 결국 현재 수학 목록에 추가됩니다. 아마도 위 첨자나 아래 첨자를 붙인 후일 것입니다.


수학 문자와 원자의 종류

텍스트 모드에서는 입력에 리터럴 문자를 포함시킬 뿐만 아니라 \charLaTeX의 명령과 동일한 기본 문자 를 사용하여 조판할 문자를 지정할 수 있습니다 \symbol. 예를 들어 bubble소스 파일에 , 를 쓰는 대신 \char98 u\char98 \char98 le정확히 동일한 결과를 얻을 수 있습니다. 물론, \char 기본 요소는 "¿"와 같은 "이상한" 문자를 조판해야 할 때 실제로 유용합니다.

비슷한 방식으로 수학 모드에서는 \mathchar기본 요소를 사용하여 원하는 수학 문자(또는 수학 기호)를 지정할 수 있습니다. 그러나 \char와 : 사이에는 중요한 차이점이 있습니다 \mathchar. \char 8비트 숫자만 지정하면 의도한 문자를 나타내는 내부 코드만 제공되고, \mathchar15비트 정수 후에는 우리가 원하는 것과 정확히 동일한 정보가 포함됩니다. 에서 찾아보세요\mathcode : a케이ind, 글꼴에프아밀리, 그리고 위치는 정확히 동일한 형식으로 지정됩니다. 예를 들어,

\matchar"1350

TeX에게 Op[erator] 원자(케이= 1) 글꼴 번호 3(에프= 3), 이것이 무엇을 의미하든, 위치 번호 80(PP = 16진수 50). 일반적인 설정에서는 ∑ 기호로 나타납니다.

물론 \mathchar명령은 직접 사용되지 않고 동등한 명령으로 작동하도록 정의된 제어 시퀀스를 통해 사용됩니다. 예를 들어, 관례적인 설정에서는 \sum와 동일하게 만들어졌으며 \mathchar"1350이는 입력하는 이유를 설명합니다.\sum 입력 파일을 입력하면 올바른 기호가 포함된 Op 원자가 현재 수학 목록(가능한 하위/위 첨자 포함)에 추가되는 이유를 설명합니다. 여기서 주목할 점은 이번에는케이산업/에프온트/위치 정보는 "기본" 문자 토큰의 경우처럼 테이블에서 조회되지 않지만 \mathchar기본 명령이든 와 같은 상위 수준 명령이든 명령 자체와 함께 제공됩니다 \sum.

이제 항상 관습적인 관습이 유효하다고 가정하면 다음과 같은 사실이 밝혀집니다.단독으로 사용하는 경우 \left또는 \big또는 이후에는 사용하지 않음\biggr 또는… 이후에는 사용하지 않음:

  • \vert결국에는 다음과 같습니다.\mathchar"026A Ord[inary] 원자(케이= 0) 특정 글꼴의 특정 위치에 있는 문자를 포함합니다.

  • \lvert결국에는 다음과 같습니다.\mathchar"426A Open[ing] 원자(케이= 4) 위와 정확히 동일한 문자를 포함합니다.

  • \lvert는 결국 와 동일하므로 \mathchar"526AClos[ing] 원자를 생성합니다(케이= 5) 동일한 문자가 다시 포함됩니다.

\mathcode또한, "|"와 연관된 것을 볼 수 있습니다 . 문자 "026A도 마찬가지이므로 |입력의 단순 문자는 적어도 단독으로 사용될 때나 \right또는 \Bigm또는 \Biggl… 뒤에 사용되지 않고 정확히 처럼 동작합니다 \vert.

그러나 이것은 전체 이야기의 단순화된 버전일 뿐입니다. 다음 두 섹션에서 그림을 완성하겠습니다.


구분 기호

괄호 및 루트 기호와 같은 일부 수학 기호는 포함하는 하위 공식의 크기에 따라 커질 것으로 예상되므로 특별한 처리가 필요합니다. 이를 위해 TeX는 "구분자"와 "부수"의 개념을 제공하며 여기서는 첫 번째 개념만 관심을 가집니다.

기본 수준(예를 들어 TeX의 "기계 언어" 수준)에서 TeX는 잘 정의된 소수의 경우에만 기호를 구분 기호로 처리합니다. 즉, \left또는 \right명령 다음과 분수를 처리하는 특정 기본 명령과 관련됩니다. . 예를 들어, (그 자체는 "일반"(, 비구분자) 문자는 위에 설명된 규칙에 따라 실행되지만 \left(TeX는 괄호를 "구분자", 즉 성장할 수 있는 문자로 처리하게 됩니다. 이렇게 성장하는 문자를 조판할 수 있으려면 TeX은 "일반" 문자의 경우보다 더 많은 정보가 필요합니다. 다른구분 기호의 크기를 확인할 수 있습니다. 따라서 해당 문자에 대한 수학 코드( )를 보는 대신 \mathcodeTeX는 256개의 가능한 문자 코드 각각에 대한 항목을 포함하는 내부 테이블 중 다른 하나를 검색합니다. 각 항목은 소위 "구분 기호 코드"( \delcode) 를 보유합니다. "x" 또는 "+"와 같이 구분 기호 역할을 해서는 안 되는 문자인 경우 음수이거나 음수가 아닌 24비트 숫자, 즉 6개의 16진수 시퀀스일 수 있는 관련 문자입니다. 숫자

fppgqq

표 에 사용된 것과 유사한 두 가지 버전의 규칙을 사용하여 문제의 문자 모양의 두 가지 변형을 지정합니다 \mathcode. 보다 정확하게는 처음 세 자리 숫자(fpp) 글꼴을 나타냅니다에프아밀리와가장 작은 크기의 글리프를 찾을 수 있는 위치와 마지막 3개(gqq) 더 큰 크기를 찾을 수 있는 위치를 비슷한 방식으로 지정합니다(실제로는qq첫 번째 큰 변형의 글꼴 내 위치를 나타냅니다. 더 큰 변형도 사용할 수 있으며 글꼴 메트릭 파일 자체에 포함된 정보를 통해 첫 번째 변형부터 찾을 수 있습니다. 이 경우 해당 기호의 구문적 특성에 대한 정보는 다음과 같다는 점에 유의하는 것이 특히 중요합니다.~ 아니다에 포함되어 \delcode있기 때문입니다.~ 아니다\left필요함: TeX는 구분 기호( , \right또는 우리가 고려하지 않는 다른 것) 를 찾도록 하는 명령으로부터 이 정보를 이미 알고 있습니다 .

예를 들어 이 개념을 더 자세히 설명하겠습니다. TeX가 입력에서 문자 토큰을 발견하면| 그 자체로, 그것은 그것을 "일반적인" 기호로 취급합니다: 그것은 그것의 를 찾아 \mathcode그것이 , 이라는 것을 알아내고, "026A의 첫 번째 숫자로부터 \mathcode손에 있는 문자가 현재 수학 목록에 다음과 같이 추가되어야 한다는 것을 학습합니다. 내용) 일반[inary] 원자; 나머지 세 자리 숫자는 \mathcode TeX에게 적절한 문자 모양을 찾을 위치를 알려줍니다. 반면에 TeX이 입력을 만나면 \left|,이미 알고 있다, 명령 자체에서 \left 여는 구분 기호가 필요하며 문자 모양을 찾는 문제만 있습니다. 이를 위해, 그리고 바로 이를 위해 필요한 정보를 검색하는 \delcode다음 의 를 살펴봅니다 .|

(둥근 괄호( , )), 대괄호( [, ]) 또는 수직 막대( |) 의 경우처럼 구분 기호를 문자 토큰으로 지정할 수 있는 경우에는 잘 작동합니다. 하지만 중괄호나 이중 수직 막대와 같은 구분 기호는 어떻습니까? 아시다시피 이는 제어 시퀀스( \lbrace, 또는 동의어 ) \rbrace를 통해 지정됩니다 . 음, 이러한 모든 제어 시퀀스는 실제로 와 느슨하게 유사한 또 다른 기본 명령의 적절한 호출로 확장되는 매크로입니다 .\Vert\|\delimiter\mathchar


명령\delimiter

기본 TeX 명령 \delimiter뒤에는 7개의 16진수 문자열로 표시될 수 있는 27비트 부호 없는 정수가 와야 합니다.

kfppgqq

~와 함께케이0과 7 사이에서만 변합니다. 이 명령은 TeX가 구분 기호를 찾는 모든 위치에서 사용할 수 있습니다(즉, \left, \right, 및 분수를 다루는 다른 기본 명령과 함께). 이 경우 가장 오른쪽의 6자리 숫자는 TeX에게 알립니다. 와 똑같은 방식으로 구분 기호에 대한 문자 모양을 찾을 위치입니다 \delcode. 지금,

\left \vert

정확하게 이런 방식으로 작동합니다. 는 \vert로 확장되는 매크로 \delimiter "026A30C이므로 위의 줄은 다음으로 확장됩니다.

\left \delimiter "026A30C

그리고 TeX은 여는 구분 기호를 구성해야 한다는 것을 알고 있습니다. \left그리고 TeX는 글꼴에서 작은 변형이 발견되는에프amily 2 (TeX는 이것이 어떤 글꼴인지 알고 있습니다)위치 106이고 첫 번째 큰 변형은 글꼴 3, 위치 12에서 발견됩니다. 문제는 이 숫자가 대체 무엇인지입니다.케이을 위해 제공되었다?

글쎄, 우리 모두는 or (또는 등) \vert이후뿐만 아니라 그 자체로도 사용할 수 있다는 것을 알고 있으며 , 이 경우에는 lone 과 완전히 동일합니다 . 이는\left\right\bigl|\delimiter 이는 TeX가 있는 위치에도 명령이 나타나는 것이 허용되기~ 아니다구분 기호를 찾고 있습니다. 이 경우 다음 숫자의 마지막 세 자리 16진수는 삭제되고 명령은 이전과 같이 동작합니다. \mathchar . 즉, 그럴 때~ 아니다팔로우 \left

\delimiter "kfppgqq

정확히 다음과 같이 행동합니다

\mathchar "kfpp

이 시간,k자리부터야TeX은 어떤 종류의 원자를 구성해야 하는지 학습하고 이것이 TeX를 제공하는 이유입니다. 따라서 \vert로 확장하도록 정의할 수 \delimiter "026A30C있으며 이 정의는 모든 상황에서 작동합니다.


마침내 대답이 나왔습니다!

우리는 마침내 질문에 답할 수 있는 위치에 이르렀습니다. 다음 입력 샘플을 고려하십시오.

  • |\mathcode그 자체로: TeX는 연관된 를  보고 |학습합니다.둘 다관련 문자를 찾을 수 있는 곳 그리고어떤 종류의 원자를 구성할지.

  • \left|또는 \right|: TeX이미 알고 있다왼쪽(각각, 오른쪽) 구분 기호를 구성해야 하며 필요한 문자 모양을 찾을 수 있는 위치를 배우기 위해 \delcodeof 를  살펴봐야 합니다.|

  • \vert그 자체로: 이것은 다음으로 확장되는 매크로입니다 \delimiter "026A30C. 이 문맥에서 이것은 예전처럼 작동하고 \mathchar "026A숫자의 첫 번째 숫자는 "026A TeX에게 어떤 종류의 원자를 구성할지 알려줍니다(다음 세 개는 문자 모양을 찾을 수 있는 위치이며 이 경우 항상 작은 변형이 사용됩니다). 따라서 Ord[inary] 원자(케이 = 0)이 여기에 구성됩니다.

  • \left\vert또는 \right\vert: 이들 중 첫 번째는 로 확장됩니다 \left \delimiter "026A30C. TeX은 왼쪽 구분 기호가 요청된다는 것을 이미 알고 있으므로무시하다숫자의 첫 번째 숫자를 "026A30C사용하고 나머지 숫자를 사용하여 필요한 문자 모양을 찾을 수 있는 위치를 알아냅니다. 효과는 \right\vert유사합니다.

  • \lvert그 자체로: 이것은 다음으로 확장되는 매크로입니다 \delimiter "426A30C. 이 문맥에서 이것은 예전처럼 작동하며 \mathchar "426A, 숫자의 첫 번째 숫자는 "426A TeX에게 어떤 종류의 원자를 구성할지 알려줍니다. 이번에는 Open[ing] 원자입니다(케이 = 4); 다음 세 자리 숫자는 TeX에게 적절한 문자 모양을 찾을 수 있는 위치를 알려주며, 이 경우 작은 변형이 항상 사용됩니다.

  • \left\lvert또는 \right\lvert: 이들 중 첫 번째는 로 확장됩니다 \left \delimiter "426A30C. TeX는 왼쪽 구분 기호가 요청된다는 것을 이미 알고 있으므로 숫자의 첫 번째 숫자를 무시 "426A30C하고 나머지 6개를 사용하여 필요한 문자 모양을 찾습니다. .\right\lvert

  • \rvert그 자체: 운동. ( 힌트: \rvert; \delimiter "526A30C케이 = 5는 Clos[ing] 원자를 의미합니다.

  • \left\rvert또는 \right\rvert: 운동.

위에서 우리는 (관습적인 \mathcodes와 정의를 가정하면) \left|, \left\vert, \left\lvert, even 이 \left\rvert 모두 정확히 같은 것임을 알 수 있습니다. 그리고 \right.


\bigl친척은 어떻습니까 ?

제어 시퀀스 \big, \bigl, \bigm, \bigr, \Big등은 하나의 인수가 있는 매크로이며, 각 인수는 "의사 구분 기호"(, 사전 정의된 크기의 구분 기호가 아닙니다. 적절한 크기의 빈 상자를 포함하는 \left... 구성을 통해 이를 수행합니다 . 이 상자는 , , 또는 명령으로 명시적으로 래핑됩니다( "기본적으로 암시되기 때문에 실제로 사용되지 않음"). 보다 정확하게는 이미 알고 있듯이 다음과 같습니다.\right\mathord\mathrel\mathopen\mathclose\mathord

  • \big, , ... 시리즈 \Big는 Ord[inary] 원자를 생성합니다.

  • \bigl, , ... 시리즈 \Bigl는 Open[ing] 원자를 생성합니다.

  • \bigm, , ... 시리즈 \Bigm는 Rel[ation] 원자를 생성합니다.

  • \bigr, , … 시리즈 \Bigr는 Clos[ing] 원자를 생성합니다.

따라서 여기서 인수는 의도한 문자 모양을 찾는 데만 사용됩니다.


입력에 관한 한마디

\mathcode단순화를 위해 위 설명에서는 카테고리 코드가 11(문자) 또는 12(기타)인 문자 토큰에 대해서만 테이블 조회가 발생한다는 사실을 언급하지 않았습니다 . 기억하세요. 입력패키지는 위치 128 ~ 255의 문자를 활성화하며 해당 인코딩 정의 파일은 수학 모드에서 사용될 때 이러한 활성 문자 중 일부에 특정 의미를 할당할 수 있습니다. 물론 그러한 활성 문자를 그 의미로 대체하는 일이 발생합니다.~ 전에 위에서 설명한 프로세스가 수행됩니다. 한 가지 예를 들자면, 파일에는 latin1.def다음과 같은 선언이 포함되어 있습니다.

\DeclareInputMath{177}{\pm}

따라서 문자 번호 177은 수학 모드에서 사용될 때 제어 시퀀스와 항상 동일합니다 \pm. 물론 이러한 대체는 기계와 완전히 독립적입니다 \mathcode.

답변2

Gustavo의 답변에는 흥미로운 세부 사항이 많이 포함되어 있으므로 주의 깊게 읽어 볼 가치가 있습니다. 그러나 문제의 대부분은 매우 쉽습니다.

이후에는 \left일부 토큰 \middle\right유효합니다.

  • 음수가 아닌 문자(또는 궁극적으로 하나로 확장되는 매크로) \delcode;
  • \delimiter최종 확장이 27비트 숫자로 시작하는 매크로입니다 .

TeX는 음수가 아닌 필수 문자를 찾기 위해 \left, \middle또는 를 스캔한 후 확장을 수행한다는 점에 유의하십시오 (이는 차례로 숫자를 찾기 위해 확장을 트리거합니다).\right\delcode\delimiter

표준 TeX/LaTeX( 를 사용하는 XeTeX/LuaTeX와 반대 unicode-math)로 제한하면 음수가 아닌 문자는 다음과 \delcode같습니다.

( "028300
) "029301
. 0
/ "02F30E
< "26830A
> "26930B
[ "05B302
\ "26E30F
] "05D303
| "26A30C

두 번째 종류의 일반적인 매크로는 다음과 같이 일반 TeX로 정의됩니다.

\def\rangle{\delimiter"526930B }

LaTeX에서는 다음과 같이 작성되었습니다.

\DeclareMathDelimiter{\rangle}{\mathclose}{symbols}{"69}{largesymbols}{"0B}

이는 본질적으로 동일한 내용을 (더 명확하게) 표현하기 위한 상용구 코드일 뿐입니다.

거기~이다중요한 차이점은 일반 TeX처럼 수학 그룹(또는 계열) 번호를 직접 연결하는 대신 LaTeX는 기호 이름을 사용한다는 것입니다.

A는 \delcode24비트 숫자입니다. 코드 와의 차이점은 코드 \delimiter의 가장 왼쪽 3비트가 \delimiter기호 유형을 지정한다는 점입니다. 이 경우 기호는 \left, \middle또는 \right(이후 LMR)의 컨텍스트에서 사용되지 않습니다. \rangle예 를 들어닫다간격에 관한 원자( \mathcloseLaTeX의 일반 문자에서는 첫 번째 16진수 5).

반대로 LMR에서 사용될 때 이 세 비트는 무시됩니다. 왜냐하면 TeX는 이미 유형(열려 있는,오르드또는닫다, 각각)을 할당합니다. 가장 오른쪽 24비트의 의미는 실제로 관련이 없습니다.

형제자매와 함께 게임에 어떻게 참여 \bigl하나요 ? 실제로는 변장되어 있지만 각각 , 및 . 명령을 지정하는 유형에 묻혀 있습니다. 또한​\big\bigr\left\mathopen\mathord\mathclose\bigm상대같은 방식으로 원자:

\math<X>{\left<token><box>\right.\kern-\nulldelimiterspace}

, , , , 를 구분하기 위한 적절한 크기의 상자가 있고 <token>, , 및 ( 또는 친구) 중 어느 것을 호출하는지에 따라 , , \big또는 가 됩니다 . 특히 친구는 LMR 컨텍스트를 구성합니다.<box>\big\Big\bigg\Bigg<X>openordcloserel\bigl\big\bigr\bigm\big

사이에는 아무런 차이가 없습니다.

\big| \big\lvert \big\rvert

또는 사이

\bigl| \bigl\lvert \bigl\rvert

마찬가지로 , \left|\left\lvert는 모두 동일한 문자를 가리키기 때문에 \left\rvert완전히 동일합니다 (기술적으로 or 코드 의 최하위 24비트는 동일합니다).|\lvert\rvert\delcode\delimiter


코드 와 코드에서 각각 최하위 24비트를 공유한다는 >점 에 주목하셨을 것입니다 . 및 에 대해서도 마찬가지입니다 . 이것은 다음과 같이 말할 수 있게 해준다.\rangle\delcode\delimiter<\langle

\left<
\bigl<
\Bigl<

(또는 \big<, 그러나 그것은 잘못된 것입니다) 를 사용하는 대신 \langle; 에 대해서도 마찬가지입니다 \rangle.

|(또는 동의어 \vert) \lvert및 사이의 구별은 \rvertLMR 컨텍스트에 나타나지 않는 경우에만 중요합니다.

이를 볼 수 있는 가장 간단한 예는 다음과 같습니다.

\log|-2|
\log\lvert-2\rvert

올바른 것은 후자입니다. 전자는 다음과 같은 결과를 가져올 것입니다.

로그 <thinmuskip>| <medmuskip>- <medmuskip>2|

후자는 올바른 것을 제공하는 반면

로그|-2|


결론: \bigl\lvert더 편안하지만 \bigl|더 짧고 같은 결과가 나올 경우 사용하세요.

관련 정보