
(내 다른 질문과 관련여기.) 음역된 산스크리트어에 대한 다언어 하이픈 규칙은 기본적으로 단일 문자 뒤에 하이픈을 허용하는 것으로 보입니다. 예를 참조하세요. 세 번째 줄과 네 번째 줄 사이의 단어는 ulūkādayaḥ
단 한 문자 뒤에 하이픈으로 연결됩니다. 예를 들어 두 문자로 변경하려면 어떻게 해야 합니까?
\documentclass[12pt]{article}
\usepackage{fontspec}
\usepackage{polyglossia}
\setdefaultlanguage{sanskrit}
\newfontfamily\sanskritfont{TeX Gyre Pagella}
\setotherlanguage{english}
\newfontfamily\englishfont{TeX Gyre Pagella}
\begin{document}
asmadādiviśeṣaṇaśūnyasyārthasākṣātkāritvamātrasyaivendriyādhīnatvadarśanād anaikāntikatvam asambhavīti cet | yady evam arthasākṣātkāritvamātrasyendiryavadālokādhīnatvam upalabdham iti na santamase paśyeyur ulūkādayaḥ | atha vyabhicāradarśanād ālokasyāvyāpakatvam, vyabhicāraśaṅkayā tarhīndriyasyāpy avyāpakatvam | vyāptyā śaṅkā khaṇḍyata iti cet | śaṅkāsambhavād vyāptir evāsambhavinī yadi prathamata eva vyāptiḥ, vyabhicāro 'pi na dṛśyeta |
\end{document}
편집: 아직 완전히 이해하지 못했습니다. 이제 양쪽 끝에서 하이픈을 넣을 수 있는 최소 문자를 하나로 줄이려고 합니다.
\documentclass[12pt]{article}
\usepackage{fontspec}
\usepackage{polyglossia}
\tracingparagraphs=1
\setdefaultlanguage{sanskrit}
\setotherlanguage{english}
\PolyglossiaSetup{sanskrit}{
hyphenmins={1,1},
}
\newfontfamily\sanskritfont{TeX Gyre Pagella}
\newfontfamily\englishfont{TeX Gyre Pagella}
\begin{document}
anaikāntikatvam asambhavīti cet | yady evam arthasākṣātkāritvamātrasyendiryavadālokādhīnatvam upalabdham iti na santamase xx paśyeyur ulūkādayaḥ | atha vyabhicāradarśanād ālokasyāvyāpakatvam, vyabhicāraśaṅkayā tarhīndriyasyāpy avyāpakatvam | vyāptyā śaṅkā khaṇḍyata iti cet | śaṅkāsambhavād vyāptir evāsambhavinī yadi prathamata eva vyāptiḥ, vyabhicāro 'pi na dṛśyeta |
\end{document}
그리고 다음 출력을 얻습니다.
나는 전체 \hbox를 생성하는 단어에 하이픈을 넣지 않는다는 사실에 놀랐습니다 khaṇḍya-ta
.
로그 파일에서:
@firstpass
@secondpass
[]\EU1/TeXGyrePagella(0)/m/n/12 anaikāntikatvam a-sa-mbha-vīti cet | yady e-vam
a-rtha-sā-kṣā-tkā-ri-tva-mā-
@\discretionary via @@0 b=12 p=50 d=2984
@@1: line 1.2- t=2984 -> @@0
tra-sye-ndi-rya-va-dā-lo-kā-dhī-na-tvam u-pa-la-bdham iti na sa-nta-mase xx pa-
śye-
@\discretionary via @@1 b=26 p=50 d=13796
@@2: line 2.1- t=16780 -> @@1
yur u-lū-kā-da-yaḥ | a-tha vya-bhi-cā-ra-da-rśa-nād ā-lo-ka-syā-vyā-pa-ka-tvam,
vya-
@\discretionary via @@2 b=56 p=50 d=16856
@@3: line 3.1- t=33636 -> @@2
bhi-cā-ra-śa-ṅkayā ta-rhī-ndri-ya-syāpy a-vyā-pa-ka-tvam | vyā-ptyā śa-ṅkā kha-
ṇḍyata
@ via @@3 b=* p=0 d=*
@@4: line 4.3 t=33636 -> @@3
iti cet | śa-ṅkā-sa-mbha-vād vyā-ptir e-vā-sa-mbha-vinī yadi pra-tha-mata eva v
yā-
@\discretionary via @@4 b=31 p=50 d=4181
@@5: line 5.3- t=37817 -> @@4
ptiḥ, vya-bhi-cāro 'pi na dṛśyeta |
@\par via @@5 b=0 p=-10000 d=*
@@6: line 6.2- t=37817 -> @@5
일반적으로 마지막 음절 앞에 하이픈을 넣기를 원하지 않는 것을 알 수 있습니다. 왜 그렇습니까?
답변1
당신은 추가할 수 있습니다
\PolyglossiaSetup{sanskrit}{
hyphenmins={2,3},% default is {1,3}
}
\documentclass[12pt]{article}
\usepackage{fontspec}
\usepackage{polyglossia}
\setdefaultlanguage{sanskrit}
\setotherlanguage{english}
\PolyglossiaSetup{sanskrit}{
hyphenmins={1,3},
}
\newfontfamily\sanskritfont{TeX Gyre Pagella}
\newfontfamily\englishfont{TeX Gyre Pagella}
\begin{document}
asmadādiviśeṣaṇaśūnyasyārthasākṣātkāritvamātrasyaivendriyādhīnatvadarśanād anaikāntikatvam asambhavīti cet | yady evam arthasākṣātkāritvamātrasyendiryavadālokādhīnatvam upalabdham iti na santamase paśyeyur ulūkādayaḥ | atha vyabhicāradarśanād ālokasyāvyāpakatvam, vyabhicāraśaṅkayā tarhīndriyasyāpy avyāpakatvam | vyāptyā śaṅkā khaṇḍyata iti cet | śaṅkāsambhavād vyāptir evāsambhavinī yadi prathamata eva vyāptiḥ, vyabhicāro 'pi na dṛśyeta |
\end{document}
답변2
이 게시물은 다음으로 이어졌습니다.깃허브 문제, 그들은 Wontfix로 닫혔습니다. 그러나 이어지는 스레드에서는 몇 가지 해결 방법을 언급했습니다.
\providehyphenmins{sanskrit}{11}
그 전에 언제든지 전화하세요\setdefaultlanguage{sanskrit}
- 매크로를 ( 이전 , 이후)
\sanskrithyphenmins
로 설정합니다.11
providecommand
\setdefaultlanguage{sanskrit}
renewcommand
- 부르다
\lefthyphenmin=1
\righthyphenmin=1
이후 \begin{document}
( \AtBeginDocument
작동하지 않음, etoolbox의 AfterEndPreamble
의지). "하지만 언어를 변경하면 덮어쓰게 됩니다."
방법 2의 예:
\documentclass{article}
\usepackage[width=4.4in]{geometry}
\usepackage{fontspec}
\usepackage{polyglossia}
\setdefaultlanguage{sanskrit}
\renewcommand*{\sanskrithyphenmins}{11}
\setotherlanguage{english}
\PolyglossiaSetup{sanskrit}{} % still necessary
\begin{document}
anaikāntikatvam asambhavīti cet | yady evam arthasākṣātkāritvamātrasyendiryavadālokādhīnatvam upalabdham iti na santamase xx paśyeyur ulūkādayaḥ | atha vyabhicāradarśanād ālokasyāvyāpakatvam, vyabhicāraśaṅkayā tarhīndriyasyāpy avyāpakatvam | vyāptyā śaṅkā khaṇḍyata iti cet | śaṅkāsambhavād vyāptir evāsambhavinī yadi prathamata eva vyāptiḥ, vyabhicāro 'pi na dṛśyeta |
\end{document}
를 야기하는: