diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /language/bengali |
Initial commit
Diffstat (limited to 'language/bengali')
88 files changed, 20937 insertions, 0 deletions
diff --git a/language/bengali/arosgn/CHANGES b/language/bengali/arosgn/CHANGES new file mode 100644 index 0000000000..9f4bcb8293 --- /dev/null +++ b/language/bengali/arosgn/CHANGES @@ -0,0 +1,9 @@ +Version 2.1 +~~~~~~~~~~~ + arosgn.sty can now be used on a stand-alone basis without + much pain. + + .mf files made available for optional .pk file generation + to suit personal usage. + + Sample test files incorporated. diff --git a/language/bengali/arosgn/README b/language/bengali/arosgn/README new file mode 100644 index 0000000000..3544dac4df --- /dev/null +++ b/language/bengali/arosgn/README @@ -0,0 +1,8 @@ +arosgn2.1 +~~~~~~~~~~ + Please print the file arosgn.ps using a postscript + printer. It contains the necessary instructions + for installation etc. + + Direct all enquiries and comments to + Muhammad Masroor Ali (masroor@human.is.kyushu-u.ac.jp). diff --git a/language/bengali/arosgn/arosgn.ps b/language/bengali/arosgn/arosgn.ps new file mode 100644 index 0000000000..1822d2dfb2 --- /dev/null +++ b/language/bengali/arosgn/arosgn.ps @@ -0,0 +1,1238 @@ +%!PS-Adobe-2.0 +%%Creator: dvips 5.58 Copyright 1986, 1994 Radical Eye Software +%%Title: arosgn.dvi +%%CreationDate: Thu Sep 5 15:37:32 1996 +%%Pages: 3 +%%PageOrder: Ascend +%%BoundingBox: 0 0 612 792 +%%EndComments +%DVIPSCommandLine: dvips -D 300 arosgn.dvi +%DVIPSParameters: dpi=300, comments removed +%DVIPSSource: TeX output 1996.09.05:1536 +%%BeginProcSet: tex.pro +/TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N +/X{S N}B /TR{translate}N /isls false N /vsize 11 72 mul N /hsize 8.5 72 +mul N /landplus90{false}def /@rigin{isls{[0 landplus90{1 -1}{-1 1} +ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale +isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div +hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul +TR[matrix currentmatrix{dup dup round sub abs 0.00001 lt{round}if} +forall round exch round exch]setmatrix}N /@landscape{/isls true N}B +/@manualfeed{statusdict /manualfeed true put}B /@copies{/#copies X}B +/FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{ +/nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N +string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N +end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{ +/sf 1 N /fntrx FMat N df-tail}B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0] +N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data dup +length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{ +128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub +get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data +dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N +/rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup +/base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx +0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff +setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff +.1 sub]{ch-image}imagemask restore}B /D{/cc X dup type /stringtype ne{]} +if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup +length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{ +cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin +0 0 moveto /V matrix currentmatrix dup 1 get dup mul exch 0 get dup mul +add .99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore userdict +/eop-hook known{eop-hook}if showpage}N /@start{userdict /start-hook +known{start-hook}if pop /VResolution X /Resolution X 1000 div /DVImag X +/IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for +65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N /RMat[1 0 0 -1 0 +0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V +{}B /RV statusdict begin /product where{pop product dup length 7 ge{0 7 +getinterval dup(Display)eq exch 0 4 getinterval(NeXT)eq or}{pop false} +ifelse}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale rulex ruley false +RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR rulex ruley scale 1 1 +false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave newpath transform +round exch round exch itransform moveto rulex 0 rlineto 0 ruley neg +rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail +{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{S p tail}B /c{-4 M} +B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B /k{ +4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w}B /q{ +p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p +a}B /bos{/SS save N}B /eos{SS restore}B end +%%EndProcSet +TeXDict begin 40258431 52099146 1000 300 300 +(/home/users/masroor/MyOwn/packages/arosgn/arosgn.dvi) +@start /Fa 1 16 df<01F807000C0018003800300070007FC0E000E000E000E000E000 +60006000300018600F800D127E9111>15 D E /Fb 14 166 df<FFFFF0FFFFF0FFFFF000 +3E0000F80001E00003C0000780000F00001E00001C00003C000038000038000038000038 +00003800003800003800001C00001C00000E00000F03E00787F003E7F001FFF0007FF000 +3FE0000FC0141D809912>60 D<1FF800003FFF0000F80FC000E001F000FF803C007FFC0F +0007FFC380000FF1C000007EE0000007E0000001F0000000F000000070000000700001FF +FF0001FFFF0001FFFF000000700000007000000070000000700000007000000070000000 +700000007000000070000000700000007000000070000000700000007000000070000000 +700000007000000070000000700000007000000070000000700000007000000070202992 +A70F>73 D<FFFFFFE0FFFFFFE0FFFFFFE000001C0000001C0000003C000000FC000007FC +00001F9C00007E1C0001F81C0007E01C001F801C003F001C003F001C001F801C0007E01C +0001F01C0000FC1C00003E1C00000F9C000003DC000000FC0000007C0000003C0000001C +001B1A80991B>98 D<3C1800007E3C0FF0FE3E0FF0FE3F0FF0FC3F0E00E0370E00E0770E +00F0E70E007FC70E003F870E001F0E0E00001E0E00003C0E0000780E0000F00E0003E00E +001F800E001FE00E001FF80E0001FE0E00003F8E000007EE000001FE0000007E0000001E +0000000E0000000E001C1B7F9A1D>I<FFFFFFC0FFFFFFC0FFFFFFC00E0000000E000000 +0E0000000E0000000E0000000E0038000E007C000E00FC000E01FC000E03DC000E0F1C00 +0E1E1C000F3C1C000FF81C000FF01C0007E00C0003800E0000000E000000060000000600 +000003000000030000000100000001001A1B80991A>I<003F800000FFF00001FFFC0007 +E00F000F8003C01E0000F03C00003C78000000F0000000E0000000E00000007000000038 +0000001C000000FFF00000FFF00000FFF000000E0000000E0000000E0000000E0000000E +0000000E0000000E0000000E0000000E0000000E0000000E0000000E0000000E0000000E +0000000E0000000E0000000E0000000E0000000E0000000E0000000E0000000E0000000E +0000000E0000001E2980A70B>105 D<FFFFFFFCFFFFFFFCFFFFFFFC0000E0000000F000 +0001FC000003FF80000FE7E0003EE0F000FCE03803F0E01C0FC0E0FC3F00E1FC3C00E1FC +3E00E1FC1F80E1F807C0E0F001E0E00000F0E0000078E000003CE000000EE0000007E000 +0003E0000001E0000000E0000000E0001E1B80991F>107 D<FFFFFFFEFFFFFFFEFFFFFF +FE0000007000000070000000700000007000000070000000700070007001F8007003FC1E +70079E7F700F0FFFF00E07E1F01C07C0F01F0380701F8380701FC000701FC000701FC000 +700F800070070000700000007000000070000000701F1A809920>I<FFFFFFF8FFFFFFF8 +FFFFFFF8000003800000038000000380000003800000038000000380001F0380007FC380 +01FFE38003F0F38007C03B800F801F800F000F801FC007801FE007801FE003801FE00380 +1FE003800FC0038007800380000003800000038000000380000003801D1B80991D>110 +D<001F007F80007FC07F8001FFF07F8003E07C70000F801E70001E000F70007C001FF000 +FC0039F000EE0070F0004700E0F0000383C0700001C780700000EE007000007C00700000 +7800700000F000700001E000700001C00070000080007000000000700000000070000000 +0070000000007000000000700000000070000000007000211A809921>112 +D<FFFFFFC0FFFFFFC0FFFFFFC0000000000007E000001FF800003FFC00007F1E00007F8F +00007F8780007F8380003F03C0401E01C0400001C0600001C0600001C0300001C0380001 +C0180003801C0003800E00070007000F0003C03E0001FFFC0000FFF800003FE0001A1A7F +991D>I<FFFFFFC0FFFFFFC0FFFFFFC000001C0000001C0000003C000000FC000003FC00 +001FDC0000FE1C0003F81C001FC01C007F001C007C001C007F001C003FC01C0007F01C00 +00FC1C00003F1C0000079C000003DC0000F0FC0001F87C0001F83C0001F81C0001F81C00 +00F000001A1B80991A>I<FFFFFFFEFFFFFFFEFFFFFFFE0000F8000001F0000003F80000 +07FC00000F1E00001E0F9C101C03FE101C00FC101C003C101E001C180F0E1C1807FF1C18 +03FF8C1C00F38C1C00038C0E00038E0E00038E0700070603800F0603C01E0601F07C0700 +FFF803007FF003001FC001201B809921>122 D<FFFFFFFF80FFFFFFFF80FFFFFFFF8003 +F81F0C0007FE3F9E000F0F71BC001E07E1F8001F03C1F0001F83C1E0001F81C1E0001F81 +C3C0000F01C7C0000001CFC0000001DDC0000001F9C0000001F1C0000003E0E0000003C0 +E0000007807000000F007000001E003800007C001C0003F8000E0003F000070003C00003 +800100000080211A7F9923>165 D E /Fc 2 57 df<00001C0000E00001C00003800003 +800003C00001E000107001FF1801F38C03E1C603E0C603F0C603F0CC03F0DC01E1F80007 +F0000FE0C00E80C00FE04007F06000382000183000181000181800381C00300E00700F00 +E007C3E003FFC001FF80003F0017217EA01E>50 D<FFE0FFF0FFE01C0038003800380038 +001C001E000F0007000380038003800380038003800700070007000E000E001C003C0038 +0030000C1B81990A>56 D E /Fd 14 115 df<7FFFF87FFFF87FFFF8001F00007C0000F0 +0003C0000780000F00001E00001C0000380000780000700000F00000E00000E00000E000 +00E00000F000007000007800003C0F001E1F801F3F800FFF8003FF8001FF00007E00151D +7D9912>60 D<F01FC0FC3FC0FE3FC00F380003B80003F00001F00000F000007000007000 +00E00000E00000E00000E00000E00000E00001C00001C00001C00001C00001C00001C000 +038000038000038000038000038000121B7F9910>65 D<FFFFFFFFFFFFFFFFFFFFFFFF1C +007F000E00E7000E01CE000701EE000700FFF003007FF80F000E3C3F001C1E7F801C0E7F +C01C3E7EE01C7E7E701C7E3C381C7C003C383801FF380003F7B80003F1F80003F0F80003 +F0780001E0700000007000000070000000700000007000201B7C9923>67 +D<FFFFFFF0FFFFFFF0FFFFFFF001C000000380000003C0000003FC000003FFC000039FF0 +000387F800070E7800070E3800070C3800079C380007F8780007E0F00003C1E0000003C0 +00000F8000003F000001FC00000FE000000FE0000007F0000000FC0000003F0000000F80 +000007C0000001F0000000780000001C00000004001C207C991D>74 +D<FE0F07F0FF1FC7F0FFBFE7F003F0F70001E07E0007F83E001FFC1E003FFE1E007FFF1E +00FFFF1C00FF7F1C00FE7F1C007C3E1C00381C1C0000001C000000380000003800000038 +0000003800000038000000380000007000000070000000700000007000000070001C1A7B +991F>83 D<FFFFFFF8FFFFFFF8FFFFFFF81F0001C0078001C003C001C001E0038000F003 +8000780380003E0380001F8380003FC7000071F70000E07F0001C01F0003800F00070007 +001E000E003C000E003F800E003FF80E001FFF0E0000FFEE000007FC000000FC0000003C +0000001C0000001C001D1C7B9920>90 D<7FFFFFFFE07FFFFFFFE07FFFFFFFE0000E000E +00003F801C00007FE01C0000FFF01C0000FE781C0000FE3C1C0040FC1C380040781C3800 +C0001C3800C0001C3800C0001C3800E0001C3800E000387000700038700070007C700078 +00FE70003C01E770003E07C3F0001FFF81E0000FFE00E00003F800E000000000E0000000 +00E000231A7D9923>97 D<FFFFFFE0FFFFFFE0FFFFFFE000001C00000038000000780000 +01F800000FF800003F380001F8700007E070001F8070007E007000FC007000F8007000FC +00E0003F00E0000F80E00007E0E00001F0E0000078E000003DC000000FC0000007C00000 +03C0000001C0000001C0001B1B7C991C>I<100000001000000030000000380000003C00 +00003FFFE0001FFFF80007FFFC0000003E0000001E0000000E0000000E00FFFFFF80FFFF +FF80FFFFFF8000FE000003FF80000FFFC0001FC1E0001FE0F0001FE078001FE038000FC0 +380007803800000070000000F0000001E0000007C000001F000001FC00003FF000003FC0 +00003FC000000FE0000001F80000003C0000000F00000003C0000000E000000030001928 +7CA51A>101 D<0007F000001FFE00007FFF0001F803C003E000F00780003C0F00000F3C +000000780000007000000070000000380000001C0000001C000000FFF00000FFF00000FF +F000000E0000000E0000001C0000001C0000001C0000001C0000001C0000003800000038 +000000380000003800000038000000380000007000000070000000700000007000000070 +00000070000000E0000000E0000000E0000000E0000000E000000020297CA70C>105 +D<FFFFFFFCFFFFFFFCFFFFFFFC0000E0000000F0000001FC000007FF00001FC7C0007DC1 +E001F9C0F00FC380703F0383F0FC0387F0F00387F0F80387F03C0383E01E0701C00F0700 +000787000003C7000001E7000000F70000007E0000003E0000001E0000000E0000000E00 +001E1B7C9920>107 D<FFFFFFFEFFFFFFFEFFFFFFFE00000070000000E0000000E00000 +00E0000000E0000000E0000001C003E001C00FF079C01FF9FDC03C3FFFC0781F87C0701E +0380F81C0380FC1C0380FC000380FC000380FC0003807800070000000700000007000000 +0700000007001F1A7C9921>I<000FF0003FF8007C3C00F81E00FC0E00FC0E00FC0E00F8 +1C0070380000704003E04007F8C007FCC007DEC0038EC0000EE0000EE0000E70001E7800 +1E3C003C3E00781F81F00FFFE007FF8001FE00171A7C991C>111 +D<7FFFFFE07FFFFFE07FFFFFE000000E0000000E0000003C000000FC000003FC00001FDC +0000FE1C0007F038003F803800FE003800F8003800FE0038003F8038000FC0700003F070 +0000FC7000003E7000000F70000387F0000FC3E0000FC1E0000FC0E0000FC0E000078000 +001B1B7D991B>114 D E /Fe 4 61 df<003F80007FE0007CE0007E6000FE7000FC7000 +FC600070600000600000600000600000C08000C08000C0C000C0C000C0E0018060018070 +01803FFD801FFF80000F0000070000070014187C9719>49 D<003800007E0001FF9807E7 +FC0F81FC0E00FE0E007F1E00370F800707E00701E00700E3C700EFFE07DFFE1FDC3C7FB8 +78E838F8701FFC701FDC381F9C3800381C00381E00700E00700700E00783E003FFC001FF +00007C00181D799A24>51 D<1FF83FFC1FF80F000E001C001C001C001E000E0007000780 +0380038003800380070007000E000E001C001C0038007800F000E000C0000E1B7F990A> +56 D<10101838383830307070706060E0E0E0C0C0C0C040051577960F>60 +D E /Ff 8 98 df<0003000000030000000780000007800000078000000BC000000BC000 +000BC0000011E0000011E0000021F0000020F0000020F000004078000040780000C07C00 +00803C0000803C0001FFFE0001001E0001001E0002000F0002000F0004000F8004000780 +0C0007801E0007C0FF803FFC1E1C7E9B22>65 D<FFFFFF000F000F000F0003000F000100 +0F0001000F0001800F0000800F0000800F0080800F0080000F0080000F0080000F018000 +0FFF80000F0180000F0080000F0080000F0080000F0080400F0000400F0000800F000080 +0F0000800F0001800F0001800F0003000F000F00FFFFFF001A1C7D9B1F>69 +D<FFFFFE0F001E0F00060F00020F00020F00030F00010F00010F00810F00800F00800F00 +800F01800FFF800F01800F00800F00800F00800F00800F00000F00000F00000F00000F00 +000F00000F00000F8000FFF800181C7D9B1E>I<FF80003FE00F80003E000F80003E000B +C0005E000BC0005E0009E0009E0009E0009E0009E0009E0008F0011E0008F0011E000878 +021E000878021E000878021E00083C041E00083C041E00081E081E00081E081E00081E08 +1E00080F101E00080F101E000807A01E000807A01E000807A01E000803C01E000803C01E +000801801E001C01801E00FF8181FFE0231C7D9B29>77 D<FF001FF00F8003800FC00100 +0BC0010009E0010008F0010008F0010008780100083C0100083E0100081E0100080F0100 +080F8100080781000803C1000801E1000801F1000800F1000800790008007D0008003D00 +08001F0008001F0008000F0008000700080003001C000300FF8001001C1C7D9B22>I<00 +1FC00000E0380003800E00070007000E0003801C0001C03C0001E0380000E0780000F070 +000070F0000078F0000078F0000078F0000078F0000078F0000078F0000078F000007878 +0000F0780000F0380000E03C0001E01C0001C00E0003800700070003800E0000F0780000 +1FC0001D1C7D9B23>I<7FFFFFC0700F01C0600F00C0400F0040400F0040C00F0020800F +0020800F0020800F0020000F0000000F0000000F0000000F0000000F0000000F0000000F +0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F +0000000F0000001F800003FFFC001B1C7D9B21>84 D<00200000700000700000700000B8 +0000B80000B800011C00011C00011C00020E00020E0004070004070007FF000803800803 +800803801801C03803C0FE0FF815157F9419>97 D E /Fg 16 116 +df<F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0041D7C9C0C> +73 D<F0003CF00078F000F0F001E0F003C0F00780F00F00F01E00F03C00F07800F0F000 +F0E000F1F000F3F000F77800FE7C00FC3C00FC1E00F81F00F00F00F00F80F00780F003C0 +F003E0F001E0F000F0F000F0F00078F0007C161D7C9C1D>75 D<FC0007E0FC0007E0FC00 +07E0EE000DE0EE000DE0EE000DE0EF001DE0E70019E0E70019E0E78039E0E78039E0E380 +31E0E3C071E0E3C071E0E1C061E0E1E0E1E0E1E0E1E0E0E0C1E0E0F1C1E0E0F1C1E0E071 +81E0E07181E0E07B81E0E03B01E0E03B01E0E03B01E0E01E01E0E01E01E0E01E01E01B1D +7C9C24>77 D<003F000001FFE00003FFF00007C0F8000F003C001E001E003C000F003C00 +0F00780007807800078070000380F00003C0F00003C0F00003C0F00003C0F00003C0F000 +03C0F00003C0F80007C078000780780007803C000F003E001F001E001E000F807C0007C0 +F80003FFF00001FFE000003F00001A1D7E9C1F>79 D<0FC03FF07FF87038401C001C001C +00FC0FFC3FFC781CE01CE01CE01CF07C7FFC7FDC3F1C0E127E9114>97 +D<07E00FF81FFC3C1C70047000E000E000E000E000E000E000700070043C1C1FFC0FF807 +E00E127E9112>99 D<07C01FE03FF078787018601CFFFCFFFCFFFCE000E000E000700070 +043C1C3FFC1FF807E00E127E9112>101 D<00FC01FC03FC07000E000E000E000E000E00 +0E000E00FFE0FFE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00 +0E000E000E1D809C0D>I<F0F0F0F0000000000000007070707070707070707070707070 +70707070041D7E9C0A>105 D<E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0 +E0E0E0E0E0E0031D7D9C0A>108 D<E3F03F00EFF8FF80FFFDFFC0F81F81E0F00F00E0E0 +0E00E0E00E00E0E00E00E0E00E00E0E00E00E0E00E00E0E00E00E0E00E00E0E00E00E0E0 +0E00E0E00E00E0E00E00E0E00E00E01B127D9124>I<E3E0EFF0FFF8F83CF01CE01CE01C +E01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01C0E127D9115>I<03F0000FFC001F +FE003C0F00780780700380E001C0E001C0E001C0E001C0E001C0F003C07003807807803C +0F001FFE000FFC0003F00012127F9115>I<E3E0EFF0FFF8F87CF01CE01EE00EE00EE00E +E00EE00EE00EE01CF03CF87CFFF8EFF0E3C0E000E000E000E000E000E000E000E0000F1A +7D9115>I<E380E780EF80FC00F800F000F000E000E000E000E000E000E000E000E000E0 +00E000E00009127D910E>114 D<1FC03FF07FF0F030E000E000F0007F003FC01FE000F0 +003800388038F078FFF07FE01FC00D127F9110>I E /Fh 2 115 +df<00FC000307000E01801C01C03800C03000C07000E07000E07000E0E001C0E001C0E0 +01C0600180600380700700380E001C180007E00013127E9115>111 +D<1F9C07EE03CF078E078C07000700070007000E000E000E000E000E000E001C001E00FF +C010127F9110>114 D E /Fi 41 126 df<038700038700038700038700038700038700 +7FFFC0FFFFE0FFFFE0070E00070E00070E000F1E000E1C000E1C000E1C00FFFFE0FFFFE0 +7FFFC01C38001C38001C38001C38001C38001C380013197F9816>35 +D<01C00001C00001C00001C00071C700F9CF807FFF001FFC0007F00007F0001FFC007FFF +00F9CF8071C70001C00001C00001C00001C00011127E9516>42 D<387C7E7E3E0E1E3C7C +F860070B798416>44 D<FFFF80FFFF80FFFF8011037E8D16>I<70F8F8F8700505788416> +I<000180000380000780000700000F00000E00001E00001C00003C000038000078000070 +0000F00000E00001E00001C00001C00003C0000380000780000700000F00000E00001E00 +001C00003C0000380000780000700000F00000E00000E0000011207E9C16>I<03E0000F +F8001FFC001E3C00380E00780F00700700700700E00380E00380E00380E00380E00380E0 +0380E00380E00380F00780700700700700780F003C1E001E3C001FFC000FF80003E00011 +197E9816>I<007C0000FC0000DC0001DC00039C00039C00071C000F1C000E1C001E1C00 +3C1C00381C00781C00F01C00FFFFE0FFFFE0FFFFE0001C00001C00001C00001C00001C00 +01FFC001FFC001FFC013197F9816>52 D<70F8F8F870000000000000000070F8F8F87005 +12789116>58 D<0FE03FF87FFCF01EF00EF00E601E007C00F801F003E003C00380038003 +8003800300000000000000000003000780078003000F197D9816>63 +D<00E00001F00001F00001B00001B00003B80003B80003B800031800071C00071C00071C +00071C00071C000E0E000E0E000FFE000FFE001FFF001C07001C07001C07007F1FC0FF1F +E07F1FC013197F9816>65 D<7FE000FFF8007FFC001C1E001C0F001C07001C07001C0700 +1C07001C0F001C1E001FFC001FF8001FFC001C3E001C0E001C0E001C0E001C0E001C0E20 +1C0E701C0E707F0FF0FF87E07F03C014197F9816>82 D<E00000E00000F0000070000078 +00003800003C00001C00001E00000E00000F000007000007800003800003C00001C00001 +C00001E00000E00000F000007000007800003800003C00001C00001E00000E00000F0000 +070000078000038000018011207E9C16>92 D<FFFF80FFFF80FFFF8011037E7E16>95 +D<1FE0007FF8007FFC00783C00301E00000E00000E0003FE001FFE007E0E00F00E00E00E +00E00E00F01E00F83E007FFFE03FE7E00F83E013127E9116>97 D<7E0000FE00007E0000 +0E00000E00000E00000E00000E3E000EFF800FFFC00F83E00F01E00E00F00E00F00E0070 +0E00700E00700E00700E00F00F00E00F01E00F83C00FFFC00EFF00063C001419809816> +I<03F80FFE1FFE3C1E780C7000F000E000E000E000E000F000700778073E0F1FFE0FFC03 +F010127D9116>I<003F00007F00003F0000070000070000070000070003C7000FF7003F +FF003C1F00780F00F00700F00700E00700E00700E00700E00700F00700F00F00781F007C +3F003FFFE01FF7F007C7E014197F9816>I<07E00FF81FFC3C3E780E700FF007FFFFFFFF +FFFFE000F000700778073E1F1FFE0FFC03F010127D9116>I<001F00007F8000FF8001E7 +8001C30001C00001C0007FFF00FFFF00FFFF0001C00001C00001C00001C00001C00001C0 +0001C00001C00001C00001C00001C00001C0003FFE007FFF003FFE0011197F9816>I<03 +E3C00FFFE01FFFE01E3CC03C1E00380E00380E00380E003C1E001E3C001FFC001FF8003B +E0003800003800001FFC001FFF003FFFC07803C0F001E0E000E0E000E0E000E0F001E07C +07C03FFF800FFE0003F800131C7F9116>I<7E0000FE00007E00000E00000E00000E0000 +0E00000E3C000EFF000FFF800F87800F03800F03800E03800E03800E03800E03800E0380 +0E03800E03800E03800E03807FC7F0FFE7F87FC7F01519809816>I<018003C003C00180 +00000000000000007FC07FC07FC001C001C001C001C001C001C001C001C001C001C001C0 +01C07FFFFFFF7FFF101A7D9916>I<003000780078003000000000000000001FF81FF81F +F80038003800380038003800380038003800380038003800380038003800380038003800 +3800386078F0F0FFE07FC03F800D237E9916>I<7E0000FE00007E00000E00000E00000E +00000E00000E7FE00E7FE00E7FE00E0F000E1E000E3C000E78000EF0000FF8000FF8000F +BC000F1E000E0E000E0F000E07807F87F0FFCFF07F87F01419809816>I<FFC000FFC000 +FFC00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C000 +01C00001C00001C00001C00001C00001C00001C00001C000FFFF80FFFF80FFFF8011197E +9816>I<F9C380FFEFC0FFFFE03E7CE03C78E03870E03870E03870E03870E03870E03870 +E03870E03870E03870E03870E0FE7CF8FE7CF8FE7CF81512809116>I<7E3C00FEFF007F +FF800F87800F03800F03800E03800E03800E03800E03800E03800E03800E03800E03800E +03807FC7F0FFE7F87FC7F01512809116>I<03E0000FF8001FFC003C1E00780F00700700 +E00380E00380E00380E00380E00380F00780700700780F003C1E001FFC000FF80003E000 +11127E9116>I<7E3E00FEFF807FFFC00F83E00F01E00E00F00E00F00E00700E00700E00 +700E00700E00F00F00E00F01E00F83C00FFFC00EFF000E3C000E00000E00000E00000E00 +000E00000E00007FC000FFE0007FC000141B809116>I<FF0FC0FF3FE0FF7FE007F04007 +E00007C000078000078000070000070000070000070000070000070000070000FFFC00FF +FC00FFFC0013127F9116>114 D<0FEC3FFC7FFCF03CE01CE01CF0007F801FF007FC003E +E00EE00EF00EF81EFFFCFFF8C7E00F127D9116>I<030000070000070000070000070000 +7FFF00FFFF00FFFF00070000070000070000070000070000070000070000070100070380 +07038007078007878003FF0003FE0000F80011177F9616>I<7E1F80FE3F807E1F800E03 +800E03800E03800E03800E03800E03800E03800E03800E03800E03800E07800F0F800FFF +F007FFF803E3F01512809116>I<FF1FE0FFBFE0FF1FE038038038038038038038038038 +E38019F30019F30019B3001DB7001DB7001DB7001DB7000F1E000F1E000F1E0013127F91 +16>119 D<7F1FC07F3FC07F1FC00F1C00073C0003B80003F00001F00000E00001E00001 +F00003B800073C00071C000E0E007F1FC0FF3FE07F1FC013127F9116>I<7F1FC0FF9FE0 +7F1FC01C07000E07000E0E000E0E00070E00071C00071C00039C00039C0003980001B800 +01B80000F00000F00000F00000E00000E00000E00001C00079C0007BC0007F80003F0000 +3C0000131B7F9116>I<3FFFC07FFFC07FFFC0700780700F00701E00003C0000F80001F0 +0003E00007C0000F00001E01C03C01C07801C0FFFFC0FFFFC0FFFFC012127F9116>I<00 +1F80007F8001FF8001E00001C00001C00001C00001C00001C00001C00001C00001C00001 +C00003C0007F8000FF0000FF00007F800003C00001C00001C00001C00001C00001C00001 +C00001C00001C00001C00001E00001FF80007F80001F8011207E9C16>I<E0E0E0E0E0E0 +E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E00320779C16>I<FC0000 +FF0000FFC00003C00001C00001C00001C00001C00001C00001C00001C00001C00001C000 +01E00000FF00007F80007F8000FF0001E00001C00001C00001C00001C00001C00001C000 +01C00001C00001C00003C000FFC000FF0000FC000011207E9C16>I +E /Fj 35 190 df<78FCFEFEFE7E0E0E0C1C3870C080070E7E840B>44 +D<FFFFF0FFFFF0FFFFF0003E0000F80001E00003C0000780000F00000E00001C00003C00 +003800003800003800003800003800003800003800001C00001C00000E00000F03E00787 +F003E7F001FFF0007FF0003FE0000FC0141D809912>60 D<F03FC0FC3FC0FE3FC00F3800 +03B80001F80000F800007800003800003800003800003800003800003800003800003800 +003800003800003800003800003800003800003800003800003800003800003800121B83 +990F>65 D<01F0000007F800000FFC00000FFC00001DFC000018FC000018780000180003 +F8180003F81C0003F81E0007800F801F8007E07F8001FFFB80007FF380001FC38000FF03 +8007FC03801FE00380FF000380FC000380FF8003801FE0038003F8038000FF0380001FC3 +800003F3800000FB8000003F8000000F800000078000000380000003801D217EA020>I< +FFFFFFFF00FFFFFFFF00FFFFFFFF001F0007F0000F800E700007800E700003C00FFE0001 +C007FF8001C003FFE000C000F1F003F80070780FFE0070381FEF8070F83CE3C071F83CE0 +E071F83FC0F871F81F83FC70F00F07FE7000000F377000000F33F000000FF1F0000007E0 +F0000003C07000000000700000000070000000007000251A7E9928>I<1FF800003FFF00 +00F80FC000E001F000FF803C007FFC0F0007FFC380000FF1C000007EE0000007E0000001 +F0000000F000000070000000700001FFFF0001FFFF0001FFFF0000007000000070000000 +700000007000000070000000700000007000000070000000700000007000000070000000 +700000007000000070000000700000007000000070000000700000007000000070000000 +700000007000000070202892A70F>73 D<FFFFFFF0FFFFFFF0FFFFFFF001C0000001E000 +0001F0000001FE000001DFF00001C7FC0001C31E0001C30F0001C3070001C3070001C707 +0001FE070000FC070000780E0000001E0000003C00000078000000F0000003E000001F80 +0000FF000000FF800000FFE000000FF8000000FE0000001F80000007C0000000F0000000 +3C0000000C1E217E9921>I<FFFFFFFCFFFFFFFCFFFFFFFC1E0001C00F0001C0078001C0 +03C001C000F001C0007C01C0003F01C0001F01C0003E01C0007801C000F001C001E001C0 +03C001C0078001C00F8001C00FF001C00FFF01C0007FE1C00003F9C000007FC000000FC0 +000003C0000F01C0001F8000001F8000001F8000000F00001E1E7C9927>79 +D<FFFFFFFF80FFFFFFFF80FFFFFFFF800001C000000001C000000001C000000001C00000 +0001C000000001C038001001C07C001001C0FC001001C1EE001800E78E001800FF060018 +007E06000C003806000E00000E000600000E000700000C000380001C00038000180001E0 +00380000F000700000FE03E000003FFFC000000FFF00000007FC00000000000000000000 +00000001F000000003F800000003F800000003F800000003F800000001F0000021237E99 +24>82 D<F8000007F0FF000007F0FFE0FC07F000FBFF0700003F8F8700007FC3E70001FF +E0F70003FFF03F00078C781F000F0C3C0F001E0C1E0F001E0C1E07001E1C1E07001F3F3E +07000FFFFC070007F1F8070001C070070000000007000000000700000000070000000007 +0000000007000000000700000000070000000007000000000700241A7E9927>I<FFFFFF +FFFFFFFFFFFFFFFFFF1F0000380780003803C0003801E0003800780038003C0038000F00 +380007E038000FFC38001C3FB8003807F8007000F800E0007801C0003803800038078000 +3807F0003807FF003803FFE038001FFC3800007F3800000FF8000001F800000078000000 +78201C7F9922>90 D<FFFFFFFFFEFFFFFFFFFEFFFFFFFFFE000FFF80E0001FE7C0E0001C +E1E0E0001CE0E0E0401FE070E0400FC030E060078030E060000030E030000030E0300000 +30E018000030E01C000030E00C000070E006000070E0070000F8E0038001FCE001E001CF +E000F80783E0003FFF01E0001FFE00E00007F800E000000000E000000000E0271A7E992A +>97 D<FFFFFFF8FFFFFFF8FFFFFFF8000007000000070000000F0000003F000001FF0000 +07E700003F870001FE07000FF007007F8007007C0007007C0007007F0007000FC0070001 +F00700007E0700000F87000003E7000000F70000003F0000001F0000000F00000007001D +1A7E9920>I<380C0000007C1E007F80FC1F007F80FC1F807F80F83BC07000E039C07000 +E071C07000F0F1C070007FE1C070003FC1C070000F01C070000003807000000780700000 +0F007000001E007000003C007000007800700001F000700003FC00700003FF80700003FF +F070000007FC700000003F700000000FF000000001F000000000F0000000007000211B7E +9A24>I<FFFFFFFEFFFFFFFEFFFFFFFE0700000007000000070000000700000007000000 +0700078007001FC007003FC007007FC00700F9C00701F1C00703E1C0070781C0070F01C0 +071E01C0073C00E0077800E007F8007007F0007007E0003003C00038000000180000001C +0000000C000000061F1C7E9922>I<80000000C0000000C0000000E0000000780000007F +FFF0003FFFFC000FFFFE0000001F0000000F000000070000000700FFFFFFF8FFFFFFF8FF +FFFFF801FFC00003FFF00007F87C00071C1E00071C0F0003FC070003F8070001F0070000 +0007000000070000000E0000001E0000007C000001F800000FE000007F800003FE000003 +FE000003FF8000000FE0000001F00000003C0000001E000000070000000380000001C01D +297EA520>I<07F803FC1FFE03FC3C0F83FC7003E380E000F380F0003B80FE001F803F80 +0F8003E0078000F007800038038000380380003803800070038000E0038003C003807F80 +03807F000380780003800000038000000380000003800000038000000380000003800000 +01801E1A7E9921>103 D<FFFFFFE0FFFFFFE0FFFFFFE007FFE0000F38F8000F383C000F +F81E0007F00E0003E007000000070000000700000007000000070000000E0000001E0000 +007C000001F800000FF00007FFC00007FF000007F8000007FF0000003FE0000007F80000 +007E0000000F80000001E0000000701C1C7E991F>I<003FF00000FFFC0003E00F000780 +03C00E0000F01C00003C3800000070000000E0000000E000000070000000380000001C00 +0000FFF00000FFF00000FFF000000E0000000E0000000E0000000E0000000E0000000E00 +00000E0000000E0000000E0000000E0000000E0000000E0000000E0000000E0000000E00 +00000E0000000E0000000E0000000E0000000E0000000E0000000E0000000E0000001E27 +80A60B>I<FFFFFFFFFFFFFFFFFFFFFFFF0F80007007C0007001E0007000700070003C00 +70000E0070000780700003C0700007C070000F0070001E0070003C007000F0007001E000 +7003C0007007F8007007FFC07003FFF8700003FF7000000FF0000001F0000000F0000000 +70201A7F9922>I<FFFFFFFFC0FFFFFFFFC0FFFFFFFFC000001C000000001E000000007F +80000001FFF0000007FCFC00003F1C1E0000FC1C070003F01C07801FC01C1F807F001C3F +807C001C3F807E001C3F801F801C3F0007E01C1E0001F81C0000007C1C0000001F1C0000 +0007DC00000001FC000000007C000000003C000000001C000000001C0000221A809923> +I<FFFFFFFFC0FFFFFFFFC0FFFFFFFFC00000001C000000001C000000001C000000001C00 +0000001C000000001C0001F0001C0007FC001C000FFE0F1C001E0F3FDC003C07FFFC0078 +03F0FC007803E07C00FE01E03C00FF01C03C00F380001C00F380001C00FF80001C007F80 +001C003F00001C001E00001C000000001C000000001C000000001C00221B7E9925>I<FF +FFFFFF80FFFFFFFF80FFFFFFFF8003E000380007C00038000780003800078000380007C0 +00380003E000380000F8003800003C003800000E0038000007003800000700380000FF00 +380003FFC0380007FFF038000787FC380007071F3800070F07B800078E01F80007FE00F8 +0003FC00780001F800380000000038000000003800211A7E9924>I<FFFFFFFEFFFFFFFE +FFFFFFFE000000E0000000E0000000E0000000E0000000E0000000E0000000E0003F00E0 +01FFE0E007FFF8E007C07CE00F801EE00FE00FE01FF007E01FF803E01E7801E01E7801E0 +1FF800E01FF800E00FF000E007E000E003C000E0000000E0000000E0000000E01F1C7E99 +22>I<00000007F80007E007F8003FFC07F801FFFF070007E00FC7000F8003E7003F0001 +F7007E0007FF00F7000F3F00E3803C1F0041C0F80F0000E1E00F000077C00700003F0007 +00003E000700007C00070000F000070000E0000700004000070000000007000000000700 +00000007000000000700000000070000000007000000000700251A7E9928>112 +D<FFFFFFFF80FFFFFFFF80FFFFFFFF800007FFE000000FFFF000000F38F800000F383C00 +000FF81C00000FF80C000007F00E002003E00E002000000E003000000E003000000E0018 +00000E001800000E000C00001C000E00003C000700007800078000F80003C001F00001F0 +03E00000FC0FC000007FFF8000003FFF0000000FFC0000211A7E9924>I<FFFFFFFCFFFF +FFFCFFFFFFFC000001C0000001C0000007C000001FC00000FFC00007F9C0003FC1C001FF +01C007F801C03FC001C03E0001C03F8001C03FE001C003FC01C0007F01C0000FC1C00001 +F1C000007DC000001FC0001E07C0003F03C0003F01C0003F01C0003F0000001E00001E1C +7E9921>I<FFFFFFFF80FFFFFFFF80FFFFFFFF8007C000380007800038000F000038001E +000038001C000038001E000038000F00003800078000380003C000380001F00038000078 +3C3800003C7E3800001EFF3800000FE7B8000007C3F800200781F800300780F800380700 +78001C070078001E0E0038000F1E00380007FC00380003F800380001F0003800211B7E99 +24>I<00001FF800001FF800001FF8000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000380001C0380007F078001FFC70003F3EE0007C +0FC000F807C000F003E000F007F000F81E78007FFC3C003FF80F000FE003C0000000F81D +2C949906>117 D<FFFFFFFFE0FFFFFFFFE0FFFFFFFFE00003F800000007FC00000007FC +0000000FFC0700000FF80F80400EF00F80400E001FC0600F003DC060078079C03007C1F1 +C03003FFE1C01801FFC1C018007F01C00C000003C00E0000038007000007800380000F00 +01C0001E0001F0007C0000FC01F800007FFFF000001FFFE0000007FF80000001FF000023 +1B7E9926>I<FFFFFFF8FFFFFFF8FFFFFFF803800000038000000380000003C0000003E0 +000003F0000003FC000003BFF800038FFF800380FFC0038003E0038001E0038001E00380 +01E0038003C0038003C00380078003C00F0001C01E0001E03C0000F07800007FF000003F +E000001F80001D1B7E9920>120 D<FFFFFFFFC0FFFFFFFFC0FFFFFFFFC00000FC000000 +01F800000003FC00000007FE0000000F8F8000000F07E380401E00FFC0401E003F80601E +000780600F000780300F8703803007FF83803803FFC3801800F9C1801C0001C1801C0001 +C1C00E0001C1C00F000380C007800780C003C00F00C001F03E00E000FFFC0060003FF800 +60001FE00020231B7E9926>122 D<FFFFFFFFE0FFFFFFFFE0FFFFFFFFE003F81F860007 +FE3FCF000FCF71DF001FE7E0FE001CE3C0FC001CE3C0F8001FE1C1F0000FC1C3F0000781 +C7F0000001CF70000001DE70000001FC70000001F870000003E038000003C03800000780 +1C00000F001C00001E000E00007C00070003F800038003F00001C003C00000E003000000 +30241A7F9926>165 D<FFFFFF80FFFFFF80FFFFFF800000000000000000000000000000 +000000000000001F8000007FE00001FFF80001F03E0003F80F0003FC038003FC00C003FC +000003FC000001F8000000F000001A13819914>182 D<FFFFFFFEFFFFFFFEFFFFFFFE00 +3FFFC00079E3E00079E0F0007FE070003FC070001F8070000000F000001FE000003FC010 +003FF010003FF818001E7C1800003C0800003C0C00003C0600003C070000380380007801 +E000F000F801E0007E07C0003FFF80000FFF000001F8001F1B7F991F>189 +D E /Fk 12 61 df<001FF0003FFC003F9E003F8E007F87007F87003F87001E07000007 +0000078000078000074000076000073000073000071800071C00070F000703FFF701FFFF +00003F00000F00000718187F9719>49 D<000003E000000E000000380000007000000070 +000000780000003E0000040F80007FE1C000FC78E000F83C7001F81C7001FC1C7001FC1C +E001FC1DE000F83FC00000FF800003FE00C003D800C003FE006001FF0020000F80300007 +8010000380180003801C0003800E0007000F000F0007C01E0003F07E0001FFFC00007FF8 +00000FE0001C217EA01E>I<0070000001FE000007FF9C003F8FDE007E01FF007800FF80 +70003FC03C0009C03F0001C01FE001C003F000E000E0F8E000E7FEE007E7FFE01FC707C0 +5F8E0780E80F0F80F007FFC07803FDE03C03F9C01E0001C00F0001C0078003C003C00380 +01E0078000F81F00007FFE00001FFC000007E0001B1D799A24>I<FFFFFFFF80FFFFFFFF +80FFFFFFFF8000000000000001E000000003F8000003E3FC000007FF1E00000FFF1E0000 +0F1F0F00001E060700001E000380001E000380000F3803800007FC03800001FC03800000 +0007000000000F00001C001E00001FE0FC00000FFFE0000003FF00000000FF800000001F +F000000003FE000000003F8000000007E000000000F8000000001800211D7A9924>I<FF +FFFFFFFEFFFFFFFFFFFFFFFFFFFE000003E00000000FE00000003FE0000000FCE0E00003 +F0E3F8000FC0E7F8003F00E71C00FC00E71C03F000E7FC0FC000E3FC1F0000E0FC1F0000 +F0380FC000FFF803F000FFF000FC00EFC0003F00E000000FC0E0000003F0E0000000FCE0 +00000E3FE000001F0FE000001F03E000001F00E000001F000000000E000000281C809924 +>I<3FDFF1007FFFFF80FFFFFFE0EFFF0FF01FFF87F03E73C3B87871C13870F0E01C70F0 +E01C70F0E01C79F9FF1C3FFFFFDC1FDFFFFC0E0FC0F81C01C0F01C01C1F00E00FFF80F00 +FFB807807E3803C0003801E0003800F00070007800F0003C00E0001F03C0000FFFC00003 +FF000000FC001E1C7C9822>I<0F003FE07FF073F8E7F8E7DCE71CE71CE7F873F878F03E +001F0007C003E000F000700038003800380038007000F001E007C00F800E000E1B7B9914 +>I<FFF8FFF8FFF81C0038003800380038001C001F000F00038003C001C001C001C001C0 +01C003800380038007000F000E001C003C0038000D1B81990A>I<FFFFE0FFFFE0FFFFE0 +1C07003807003807003807003807001C07001F07000F070003870003C70001C70001C700 +01C70001C70001C7000387000387000387000707000F07000E07001C07003C0700380700 +000700131C81990A>I<00003000003860F870E0F8F07807E07FFFC03FFF0007F8001508 +79A401>I<FFFFFFFFE0FFFFFFFFE0FFFFFFFFE000F81E000001E00E1E0061C0077F00E3 +8007FF0073BC07FF8073FE07FF8073FE07BF803BCE0FBF0039FE1FDE001DFC3FE0001CF0 +3EE0000E001C70000E0000700007000070000700007000038000E00003C000E00001E001 +E00000F801C000007E03C000001FFF80000007FF00000001FC0000231A809922>I<80C0 +E0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F070303010041677960F>I +E /Fl 1 14 df<0003FE0000001FFFC000007C01F00001E0003C000380000E0007000007 +000E000003801C000001C018000000C038000000E0300000006070000000706000000030 +6000000030E000000038C000000018C000000018C000000018C000000018C000000018C0 +00000018C000000018E00000003860000000306000000030700000007030000000603800 +0000E018000000C01C000001C00E0000038007000007000380000E0001E0003C00007C01 +F000001FFFC0000003FE000025257E9C2A>13 D E /Fm 13 117 +df<03CC063C0C3C181C3838303870387038E070E070E070E070E0E2C0E2C0E261E46264 +3C380F127B9115>97 D<01F007080C08181C3838300070007000E000E000E000E000E000 +E008E010602030C01F000E127B9113>99 D<001F80000380000380000700000700000700 +000700000E00000E00000E00000E0003DC00063C000C3C00181C00383800303800703800 +703800E07000E07000E07000E07000E0E200C0E200C0E20061E4006264003C3800111D7B +9C15>I<01E007100C1018083810701070607F80E000E000E000E000E000E00860106020 +30C01F000D127B9113>I<00F3018F030F06070E0E0C0E1C0E1C0E381C381C381C381C38 +3830383038187818F00F700070007000E000E0C0C0E1C0C3007E00101A7D9113>103 +D<0FC00001C00001C0000380000380000380000380000700000700000700000700000E78 +000E8C000F0E000E0E001C0E001C0E001C0E001C0E00381C00381C00381C003838007038 +80703880707080707100E03200601C00111D7D9C15>I<01800380010000000000000000 +000000000000001C002600470047008E008E000E001C001C001C00380038007100710071 +00720072003C00091C7C9B0D>I<1F800380038007000700070007000E000E000E000E00 +1C001C001C001C0038003800380038007000700070007000E400E400E400E40068003800 +091D7C9C0B>108 D<3C3C002646004687004707008E07008E07000E07000E07001C0E00 +1C0E001C0E001C1C00381C40381C40383840383880701900300E0012127C9117>110 +D<01E007180C0C180C380C300E700E700EE01CE01CE01CE018E038E030E06060C031801E +000F127B9115>I<07870004D98008E0C008E0C011C0E011C0E001C0E001C0E00381C003 +81C00381C00381800703800703000707000706000E8C000E70000E00000E00001C00001C +00001C00001C00003C0000FF8000131A7F9115>I<01F006080C080C1C18181C001F001F +C00FF007F0007800386030E030C030806060C01F000E127D9111>115 +D<00C001C001C001C00380038003800380FFE00700070007000E000E000E000E001C001C +001C001C00384038403840388019000E000B1A7D990E>I E /Fn +62 124 df<007E0001C1800301800703C00E03C00E01800E00000E00000E00000E00000E +0000FFFFC00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E +01C00E01C00E01C00E01C00E01C00E01C07F87F8151D809C17>12 +D<60F0F8680808081010204080050C7C9C0C>39 D<004000800100020006000C000C0018 +001800300030007000600060006000E000E000E000E000E000E000E000E000E000E000E0 +00E000600060006000700030003000180018000C000C00060002000100008000400A2A7D +9E10>I<800040002000100018000C000C000600060003000300038001800180018001C0 +01C001C001C001C001C001C001C001C001C001C001C00180018001800380030003000600 +06000C000C00180010002000400080000A2A7E9E10>I<60F0F070101010102020408004 +0C7C830C>44 D<FFE0FFE00B0280890E>I<60F0F06004047C830C>I<0003000300070006 +0006000E000C001C0018001800380030003000700060006000E000C000C001C001800380 +030003000700060006000E000C000C001C001800180038003000700060006000E000C000 +C00010297E9E15>I<07E00C301818300C700E60066006E007E007E007E007E007E007E0 +07E007E007E007E007E007E0076006700E700E300C18180C3007E0101B7E9A15>I<0300 +07003F00C700070007000700070007000700070007000700070007000700070007000700 +0700070007000700070007000F80FFF80D1B7C9A15>I<07E01838201C400EF00EF80FF8 +07F8077007000F000E000E001C001C00380070006000C00180030006010C01180110023F +FE7FFEFFFE101B7E9A15>I<07E01838201C781C781E780E381E001E001C001C00380060 +07E00038001C001E000E000F000F700FF80FF80FF80E701E401C30380FE0101B7E9A15> +I<000C00000C00001C00003C00003C00005C00009C00019C00011C00021C00061C00041C +00081C00101C00301C00201C00401C00C01C00FFFFC0001C00001C00001C00001C00001C +00001C00001C0001FFC0121B7F9A15>I<60F0F0600000000000000000000060F0F06004 +127C910C>58 D<003F800000C0600003001800040004000800020010000100201F008020 +70808040E0404040C0384041C03840818038208380382083803820838038208380382083 +8038208180382041C0382040C0384040E0784020709880201F0F00100000000800000004 +000000030001E000C01F80003FF0001B1D7E9C20>64 D<00060000000600000006000000 +0F0000000F0000000F000000178000001780000037C0000023C0000023C0000043E00000 +41E0000041E0000080F0000080F0000080F0000100780001FFF8000100780002003C0002 +003C0002003C0004001E0004001E000C001F001E001F00FF80FFF01C1C7F9B1F>I<FFFF +C00F00F00F00380F003C0F001C0F001E0F001E0F001E0F001E0F001C0F003C0F00780F01 +F00FFFE00F00780F003C0F001E0F000E0F000F0F000F0F000F0F000F0F000F0F001E0F00 +1E0F003C0F0078FFFFE0181C7E9B1D>I<001FC08000E0318003800B80070007800E0003 +801C0001803C000180380000807800008070000080F0000000F0000000F0000000F00000 +00F0000000F0000000F0000000F00000007000008078000080380000803C0001001C0001 +000E000200070004000380080000E03000001FC000191C7E9B1E>I<FFFFC0000F00F000 +0F003C000F000E000F0007000F0007000F0003800F0003C00F0001C00F0001C00F0001E0 +0F0001E00F0001E00F0001E00F0001E00F0001E00F0001E00F0001E00F0001C00F0001C0 +0F0003C00F0003800F0007800F0007000F000E000F001C000F007000FFFFC0001B1C7E9B +20>I<FFFFFC0F003C0F000C0F00040F00040F00060F00020F00020F02020F02000F0200 +0F02000F06000FFE000F06000F02000F02000F02000F02010F00010F00020F00020F0002 +0F00060F00060F000C0F003CFFFFFC181C7E9B1C>I<FFFFF80F00780F00180F00080F00 +080F000C0F00040F00040F02040F02000F02000F02000F06000FFE000F06000F02000F02 +000F02000F02000F00000F00000F00000F00000F00000F00000F00000F8000FFF800161C +7E9B1B>I<FFF3FFC00F003C000F003C000F003C000F003C000F003C000F003C000F003C +000F003C000F003C000F003C000F003C000F003C000FFFFC000F003C000F003C000F003C +000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C +000F003C00FFF3FFC01A1C7E9B1F>72 D<FFF00F000F000F000F000F000F000F000F000F +000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F00FF +F00C1C7F9B0F>I<FFF8000F80000F00000F00000F00000F00000F00000F00000F00000F +00000F00000F00000F00000F00000F00000F00000F00000F00000F00080F00080F00080F +00180F00180F00100F00300F00700F01F0FFFFF0151C7E9B1A>76 +D<FF8000FF800F8000F8000F8000F8000BC00178000BC00178000BC001780009E0027800 +09E002780008F004780008F004780008F004780008780878000878087800087808780008 +3C107800083C107800083C107800081E207800081E207800081E207800080F407800080F +40780008078078000807807800080780780008030078001C03007800FF8307FF80211C7E +9B26>I<FF007FC00F800E000F8004000BC0040009E0040009E0040008F0040008F80400 +08780400083C0400083C0400081E0400080F0400080F0400080784000807C4000803C400 +0801E4000801E4000800F40008007C0008007C0008003C0008003C0008001C0008000C00 +1C000C00FF8004001A1C7E9B1F>I<003F800001E0F0000380380007001C000E000E001C +0007003800038038000380780003C0700001C0F00001E0F00001E0F00001E0F00001E0F0 +0001E0F00001E0F00001E0F00001E0780003C0780003C0380003803C0007801C0007000E +000E0007001C000380380001E0F000003F80001B1C7E9B20>I<FFFF800F00E00F00780F +003C0F001C0F001E0F001E0F001E0F001E0F001E0F001C0F003C0F00780F00E00FFF800F +00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F0000FF +F000171C7E9B1C>I<FFFF00000F01E0000F0078000F003C000F001C000F001E000F001E +000F001E000F001E000F001C000F003C000F0078000F01E0000FFF00000F03C0000F00E0 +000F00F0000F0078000F0078000F0078000F0078000F0078000F0078000F0078100F0078 +100F0038100F001C20FFF007C01C1C7E9B1F>82 D<07E0801C1980300780700380600180 +E00080E00080E00080F00000F000007C00007FC0003FF8001FFE0007FF0000FF80000F80 +0003C00003C00001C08001C08001C08001C0C00180C00300F00300CC0E0083F800121C7E +9B17>I<7FFFFFC0700F01C0600F00C0400F0040400F0040C00F0020800F0020800F0020 +800F0020000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000 +000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000 +001F800003FFFC001B1C7F9B1E>I<FFF07FC00F000E000F0004000F0004000F0004000F +0004000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F +0004000F0004000F0004000F0004000F0004000F0004000F0004000F0004000700080003 +8008000380100001C020000060C000001F00001A1C7E9B1F>I<FFE0FFE0FF1F001F003C +1E001E00180F001F00100F001F00100F001F001007803F80200780278020078027802003 +C027C04003C043C04003C043C04001E043E08001E081E08001E081E08000F081E10000F1 +00F10000F100F100007900F200007A007A00007A007A00007E007E00003C003C00003C00 +3C00003C003C00001800180000180018000018001800281C7F9B2B>87 +D<7FF0FFC00FC03E000780180003C0180003E0100001E0200001F0600000F04000007880 +00007D8000003D0000001E0000001F0000000F0000000F8000000F80000013C0000023E0 +000021E0000041F00000C0F8000080780001007C0003003C0002001E0006001F001F003F +80FFC0FFF01C1C7F9B1F>I<FFF007FC0F8001E00780008007C0018003C0010003E00200 +01F0020000F0040000F8040000780800007C1800003C1000001E2000001F2000000F4000 +000FC0000007800000078000000780000007800000078000000780000007800000078000 +000780000007800000078000007FF8001E1C809B1F>I<1FC000307000783800781C0030 +1C00001C00001C0001FC000F1C00381C00701C00601C00E01C40E01C40E01C40603C4030 +4E801F870012127E9115>97 D<FC00001C00001C00001C00001C00001C00001C00001C00 +001C00001C00001C00001C7C001D86001E03001C01801C01C01C00C01C00E01C00E01C00 +E01C00E01C00E01C00E01C00C01C01C01C01801E030019060010F800131D7F9C17>I<07 +E00C301878307870306000E000E000E000E000E000E00060007004300418080C3007C00E +127E9112>I<003F00000700000700000700000700000700000700000700000700000700 +00070003E7000C1700180F00300700700700600700E00700E00700E00700E00700E00700 +E00700600700700700300700180F000C370007C7E0131D7E9C17>I<03E00C301818300C +700E6006E006FFFEE000E000E000E00060007002300218040C1803E00F127F9112>I<00 +F8018C071E061E0E0C0E000E000E000E000E000E00FFE00E000E000E000E000E000E000E +000E000E000E000E000E000E000E000E000E007FE00F1D809C0D>I<03C3800C3CC01C38 +80181800381C00381C00381C00381C001818001C38000C300013C0001000003000001800 +001FF8001FFF001FFF803003806001C0C000C0C000C0C000C06001803003001C0E0007F8 +00121B7F9115>I<FC00001C00001C00001C00001C00001C00001C00001C00001C00001C +00001C00001C7C001C87001D03001E03801C03801C03801C03801C03801C03801C03801C +03801C03801C03801C03801C03801C03801C0380FF9FF0141D7F9C17>I<18003C003C00 +18000000000000000000000000000000FC001C001C001C001C001C001C001C001C001C00 +1C001C001C001C001C001C001C00FF80091D7F9C0C>I<00C001E001E000C00000000000 +0000000000000000000FE000E000E000E000E000E000E000E000E000E000E000E000E000 +E000E000E000E000E000E000E000E060E0F0C0F1C061803E000B25839C0D>I<FC00001C +00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C3FC01C0F001C +0C001C08001C10001C20001C40001CE0001DE0001E70001C78001C38001C3C001C1C001C +0E001C0F001C0F80FF9FE0131D7F9C16>I<FC001C001C001C001C001C001C001C001C00 +1C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C00 +1C00FF80091D7F9C0C>I<FC7E07E0001C838838001D019018001E01E01C001C01C01C00 +1C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C +01C01C001C01C01C001C01C01C001C01C01C001C01C01C00FF8FF8FF8021127F9124>I< +FC7C001C87001D03001E03801C03801C03801C03801C03801C03801C03801C03801C0380 +1C03801C03801C03801C03801C0380FF9FF014127F9117>I<03F0000E1C001806003003 +00700380600180E001C0E001C0E001C0E001C0E001C0E001C06001807003803003001806 +000E1C0003F00012127F9115>I<FC7C001D86001E03001C01801C01C01C00C01C00E01C +00E01C00E01C00E01C00E01C00E01C01C01C01C01C01801E03001D06001CF8001C00001C +00001C00001C00001C00001C00001C0000FF8000131A7F9117>I<03C1000C3300180B00 +300F00700700700700E00700E00700E00700E00700E00700E00700600700700700300F00 +180F000C370007C700000700000700000700000700000700000700000700003FE0131A7E +9116>I<FCE01D301E781E781C301C001C001C001C001C001C001C001C001C001C001C00 +1C00FFC00D127F9110>I<1F9030704030C010C010E010F8007F803FE00FF000F8803880 +18C018C018E010D0608FC00D127F9110>I<04000400040004000C000C001C003C00FFE0 +1C001C001C001C001C001C001C001C001C001C101C101C101C101C100C100E2003C00C1A +7F9910>I<FC1F801C03801C03801C03801C03801C03801C03801C03801C03801C03801C +03801C03801C03801C03801C07800C07800E1B8003E3F014127F9117>I<FF07E03C0380 +1C01001C01000E02000E020007040007040007040003880003880003D80001D00001D000 +00E00000E00000E00000400013127F9116>I<FF3FCFE03C0F03801C0701801C0701001C +0B01000E0B82000E0B82000E1182000711C4000711C4000720C40003A0E80003A0E80003 +C0680001C0700001C0700001803000008020001B127F911E>I<7F8FF00F03800F030007 +020003840001C80001D80000F00000700000780000F800009C00010E00020E0006070004 +03801E07C0FF0FF81512809116>I<FF07E03C03801C01001C01000E02000E0200070400 +07040007040003880003880003D80001D00001D00000E00000E00000E000004000004000 +008000008000F08000F10000F300006600003C0000131A7F9116>I<7FFC703860384070 +40F040E041C003C0038007000F040E041C043C0C380870087038FFF80E127F9112>I<FF +FFF01401808B15>I E /Fo 32 119 df<000E00001E00007E0007FE00FFFE00FFFE00F8 +FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000 +FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000 +FE0000FE0000FE0000FE0000FE0000FE007FFFFE7FFFFE7FFFFE17277BA622>49 +D<00FF800003FFF0000FFFFC003F03FF007C00FF807C007FC0FE007FC0FF003FE0FF003F +E0FF003FE0FF001FE07E001FE03C003FE000003FE000003FC000003FC000007F8000007F +800000FF000001FE000001FC000003F0000007E000000FC000001F0000003E0000007C00 +E0007800E000F000E001E001C0038001C0070001C00FFFFFC01FFFFFC03FFFFFC07FFFFF +C0FFFFFF80FFFFFF80FFFFFF801B277DA622>I<007F800003FFF00007FFFC001F81FE00 +1F00FF003F80FF003F807F803FC07F803F807F803F807F801F007F800000FF800000FF00 +0000FF000001FE000003F8000007F00000FFC00000FFF0000001FC000000FF0000007F80 +00007FC000003FC000003FE000003FE000003FE03C003FE07E003FE0FF003FE0FF003FE0 +FF003FC0FF007FC0FE007F807C00FF803F01FF001FFFFC0007FFF00000FF80001B277DA6 +22>I<00000E0000001E0000003E0000007E000000FE000000FE000001FE000003FE0000 +077E00000E7E00000E7E00001C7E0000387E0000707E0000E07E0000E07E0001C07E0003 +807E0007007E000E007E000E007E001C007E0038007E0070007E00E0007E00FFFFFFF8FF +FFFFF8FFFFFFF80000FE000000FE000000FE000000FE000000FE000000FE000000FE0000 +00FE00007FFFF8007FFFF8007FFFF81D277EA622>I<0C0003000F803F000FFFFE000FFF +FE000FFFFC000FFFF8000FFFE0000FFFC0000FFE00000E0000000E0000000E0000000E00 +00000E0000000E0000000E7FC0000FFFF8000F80FE000E007F000C003F8000003F800000 +1FC000001FC000001FE000001FE018001FE07E001FE0FE001FE0FE001FE0FE001FE0FE00 +1FE0FE001FC078003FC078003F803C007F001F01FE000FFFFC0003FFF00000FF80001B27 +7DA622>I<0007F000003FFC0000FFFF0001FC0F0007F01F800FE03F800FC03F801FC03F +803F803F803F801F007F8000007F0000007F0000007F000000FF000000FF0FC000FF3FF8 +00FF70FE00FFE03F00FFC03F80FF801FC0FF801FC0FF801FC0FF001FE0FF001FE0FF001F +E0FF001FE07F001FE07F001FE07F001FE07F001FE03F801FC03F801FC01F803F800FC03F +8007E0FF0003FFFC0000FFF000003FC0001B277DA622>I<380000003E0000003FFFFFF0 +3FFFFFF03FFFFFF07FFFFFE07FFFFFC07FFFFFC07FFFFF8070000F0070001E0070003C00 +E0003800E0007800E000F0000001E0000003C0000003C0000007800000078000000F0000 +001F0000001F0000001F0000003F0000003F0000003E0000007E0000007E0000007E0000 +007E000000FE000000FE000000FE000000FE000000FE000000FE000000FE000000FE0000 +00FE0000003800001C297CA822>I<000003800000000007C00000000007C0000000000F +E0000000000FE0000000000FE0000000001FF0000000001FF0000000003FF8000000003F +F8000000003FF80000000073FC0000000073FC00000000F3FE00000000E1FE00000000E1 +FE00000001C0FF00000001C0FF00000003C0FF80000003807F80000007807FC000000700 +3FC0000007003FC000000E003FE000000E001FE000001E001FF000001C000FF000001FFF +FFF000003FFFFFF800003FFFFFF80000780007FC0000700003FC0000700003FC0000E000 +01FE0000E00001FE0001E00001FF0001C00000FF0001C00000FF00FFFE001FFFFEFFFE00 +1FFFFEFFFE001FFFFE2F297EA834>65 D<FFFFFFFFC0FFFFFFFFC0FFFFFFFFC003FC003F +C003FC000FE003FC0003E003FC0001E003FC0001E003FC0000E003FC0000E003FC0000E0 +03FC0000F003FC03807003FC03807003FC03807003FC03800003FC07800003FC07800003 +FC1F800003FFFF800003FFFF800003FFFF800003FC1F800003FC07800003FC07800003FC +03800003FC03800003FC03800003FC03800003FC00000003FC00000003FC00000003FC00 +000003FC00000003FC00000003FC00000003FC00000003FC000000FFFFFC0000FFFFFC00 +00FFFFFC000024297DA82B>70 D<FFFFFCFFFFFCFFFFFC01FE0001FE0001FE0001FE0001 +FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001 +FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001 +FE0001FE0001FE0001FE0001FE0001FE0001FE00FFFFFCFFFFFCFFFFFC16297EA81A>73 +D<FFFFFC0000FFFFFC0000FFFFFC000003FC00000003FC00000003FC00000003FC000000 +03FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003 +FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC +00000003FC00000003FC00000003FC0001C003FC0001C003FC0001C003FC0001C003FC00 +03C003FC00038003FC00038003FC00078003FC00078003FC000F8003FC000F8003FC001F +8003FC007F8003FC01FF00FFFFFFFF00FFFFFFFF00FFFFFFFF0022297DA829>76 +D<FFFE0000001FFFC0FFFE0000001FFFC0FFFF0000003FFFC003FF0000003FF00003FF00 +00003FF00003BF80000077F00003BF80000077F000039FC00000E7F000039FC00000E7F0 +00038FE00001C7F000038FE00001C7F0000387F0000387F0000387F0000387F0000387F0 +000387F0000383F8000707F0000383F8000707F0000381FC000E07F0000381FC000E07F0 +000380FE001C07F0000380FE001C07F0000380FF003807F00003807F003807F00003807F +003807F00003803F807007F00003803F807007F00003801FC0E007F00003801FC0E007F0 +0003800FE1C007F00003800FE1C007F00003800FE1C007F000038007F38007F000038007 +F38007F000038003FF0007F000038003FF0007F000038001FE0007F000038001FE0007F0 +00038000FC0007F000038000FC0007F000FFFE00FC01FFFFC0FFFE007801FFFFC0FFFE00 +7801FFFFC03A297DA841>I<7FFFFFFFFFC07FFFFFFFFFC07FFFFFFFFFC07F803FC03FC0 +7E003FC007C078003FC003C078003FC003C070003FC001C0F0003FC001E0F0003FC001E0 +E0003FC000E0E0003FC000E0E0003FC000E0E0003FC000E0E0003FC000E000003FC00000 +00003FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC00000 +00003FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC00000 +00003FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC00000 +00003FC0000000003FC0000000003FC00000007FFFFFE000007FFFFFE000007FFFFFE000 +2B287EA730>84 D<FFFFF001FFFCFFFFF001FFFCFFFFF001FFFC03FC0000070003FC0000 +070003FC0000070003FC0000070003FC0000070003FC0000070003FC0000070003FC0000 +070003FC0000070003FC0000070003FC0000070003FC0000070003FC0000070003FC0000 +070003FC0000070003FC0000070003FC0000070003FC0000070003FC0000070003FC0000 +070003FC0000070003FC0000070003FC0000070003FC0000070003FC0000070003FC0000 +070003FC0000070003FC00000F0001FC00000E0001FE00000E0000FE00001E0000FF0000 +3C00007F80007800003FC000F800001FF007E0000007FFFFC0000001FFFF000000001FF8 +00002E297DA835>I<FFFFE07FFFF007FFF0FFFFE07FFFF007FFF0FFFFE07FFFF007FFF0 +03FC0001FE00001C0003FC0001FE00001C0001FE0001FF0000380001FE0000FF00003800 +01FF0000FF0000780000FF0000FF8000700000FF0000FF8000700000FF8000FF8000F000 +007F8001FFC000E000007F8001FFC000E000003FC003FFE001C000003FC0039FE001C000 +003FE0039FE003C000001FE0070FF0038000001FE0070FF0038000001FF00F0FF0078000 +000FF00E07F8070000000FF00E07F80700000007F81E07FC0E00000007F81C03FC0E0000 +0007FC1C03FC1E00000003FC3801FE1C00000003FC3801FE1C00000001FE7801FF380000 +0001FE7000FF3800000001FE7000FF3800000000FFF000FFF000000000FFE0007FF00000 +0000FFE0007FF0000000007FC0003FE0000000007FC0003FE0000000003FC0003FC00000 +00003F80001FC0000000003F80001FC0000000001F80001F80000000001F00000F800000 +00001F00000F80000000000E00000700000044297FA847>87 D<7FFFF81FFFF07FFFF81F +FFF07FFFF81FFFF001FF0000780000FF8000F000007FC001E000007FC001C000003FE003 +C000001FF0078000000FF80F0000000FF80E00000007FC1E00000003FE3C00000003FE78 +00000001FF7000000000FFF0000000007FE0000000007FC0000000003FE0000000001FF0 +000000001FF0000000001FF8000000001FFC000000003FFE000000007BFE00000000F1FF +00000000E0FF80000001E0FFC0000003C07FC0000007803FE0000007001FF000000F001F +F000001E000FF800003C0007FC0000380003FE0000780003FE0000F00001FF0000E00000 +FF80FFFF801FFFFEFFFF801FFFFEFFFF801FFFFE2F297EA834>I<01FF800007FFF0000F +81FC001FC0FE001FC07F001FC07F001FC03F800F803F8000003F8000003F8000003F8000 +0FFF8000FFFF8007FC3F801FE03F803F803F807F803F807F003F80FE003F80FE003F80FE +003F80FE007F80FF007F807F00FFC03F83DFFC0FFF0FFC01FC03FC1E1B7E9A21>97 +D<FFE0000000FFE0000000FFE00000000FE00000000FE00000000FE00000000FE0000000 +0FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000F +E00000000FE1FE00000FE7FF80000FFE07E0000FF803F8000FF001FC000FE000FE000FE0 +00FE000FE0007F000FE0007F000FE0007F800FE0007F800FE0007F800FE0007F800FE000 +7F800FE0007F800FE0007F800FE0007F800FE0007F800FE0007F000FE000FF000FE000FE +000FF000FE000FF001FC000FF803F8000F9E07E0000F0FFF80000E01FC0000212A7EA926 +>I<001FF80000FFFE0003F01F000FE03F801FC03F803F803F803F803F807F801F007F00 +0000FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF00 +00007F0000007F8000003F8001C03FC001C01FC003C00FE0078003F01F0000FFFC00001F +E0001A1B7E9A1F>I<00003FF80000003FF80000003FF800000003F800000003F8000000 +03F800000003F800000003F800000003F800000003F800000003F800000003F800000003 +F800000003F800000003F800001FE3F80000FFFBF80003F03FF8000FE00FF8001FC007F8 +003F8003F8003F8003F8007F8003F8007F0003F800FF0003F800FF0003F800FF0003F800 +FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F8007F0003F8007F +0003F8003F8003F8003F8007F8001FC00FF8000FE01FF80003F03FFF8000FFF3FF80003F +C3FF80212A7EA926>I<003FE00001FFF80003F07E000FE03F001FC01F803F800FC03F80 +0FC07F000FC07F0007E0FF0007E0FF0007E0FF0007E0FFFFFFE0FFFFFFE0FF000000FF00 +0000FF000000FF0000007F0000007F8000003F8000E03F8001E01FC001C00FE003C003F8 +1F8000FFFE00001FF0001B1B7E9A20>I<0007F0003FFC00FE3E01FC7F03F87F03F87F07 +F07F07F03E07F00007F00007F00007F00007F00007F00007F000FFFFC0FFFFC0FFFFC007 +F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007 +F00007F00007F00007F00007F00007F00007F00007F00007F0007FFF807FFF807FFF8018 +2A7EA915>I<00FF81F003FFE7FC0FC1FE7C1F80FC7C3F80FE7C3F007E107F007F007F00 +7F007F007F007F007F007F007F007F007F003F007E003F80FE001F80FC000FC1F8001FFF +E00018FF8000380000003C0000003C0000003E0000003FFFF8003FFFFF001FFFFFC00FFF +FFE007FFFFF01FFFFFF07E0007F87C0001F8F80001F8F80000F8F80000F8F80000F8FC00 +01F87E0003F03F0007E00FC01F8003FFFE00007FF0001E287E9A22>I<07001FC01FE03F +E03FE03FE01FE01FC007000000000000000000000000000000FFE0FFE0FFE00FE00FE00F +E00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00F +E0FFFEFFFEFFFE0F2B7DAA14>105 D<FFE0FFE0FFE00FE00FE00FE00FE00FE00FE00FE0 +0FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE0 +0FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE0FFFEFFFEFFFE0F2A7DA914>108 +D<FFC07F0000FFC1FFC000FFC787E0000FCE07F0000FDC03F8000FF803F8000FF003F800 +0FF003F8000FF003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000F +E003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE0 +03F8000FE003F8000FE003F800FFFE3FFF80FFFE3FFF80FFFE3FFF80211B7D9A26>110 +D<003FE00001FFFC0003F07E000FC01F801F800FC03F800FE03F0007E07F0007F07F0007 +F07F0007F0FF0007F8FF0007F8FF0007F8FF0007F8FF0007F8FF0007F8FF0007F8FF0007 +F87F0007F07F0007F03F800FE03F800FE01F800FC00FC01F8007F07F0001FFFC00003FE0 +001D1B7E9A22>I<FFC1F0FFC7FCFFCE3E0FDC7F0FD87F0FF87F0FF07F0FF03E0FF0000F +E0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000F +E0000FE0000FE000FFFF00FFFF00FFFF00181B7E9A1C>114 D<03FE300FFFF03E03F078 +00F07000F0F00070F00070F80070FC0000FFE000FFFE007FFFC03FFFE01FFFF007FFF800 +FFFC0003FC0000FCE0007CE0003CF0003CF0003CF80078FC0078FF01F0F7FFC0C1FF0016 +1B7E9A1B>I<00700000700000700000700000F00000F00000F00001F00003F00003F000 +07F0001FFFF0FFFFF0FFFFF007F00007F00007F00007F00007F00007F00007F00007F000 +07F00007F00007F00007F00007F00007F03807F03807F03807F03807F03807F03807F038 +03F87001F8F000FFE0001F8015267FA51B>I<FFE03FF800FFE03FF800FFE03FF8000FE0 +03F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003 +F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8 +000FE003F8000FE003F8000FE007F8000FE007F8000FE00FF80007E01FF80003F03BFF80 +01FFF3FF80003FC3FF80211B7D9A26>I<FFFE03FF80FFFE03FF80FFFE03FF8007F00070 +0007F000700007F800F00003F800E00003FC01E00001FC01C00001FC01C00000FE038000 +00FE038000007F070000007F070000007F8F0000003F8E0000003FDE0000001FDC000000 +1FDC0000000FF80000000FF80000000FF800000007F000000007F000000003E000000003 +E000000001C00000211B7F9A24>I E /Fp 31 122 df<00200040008001000300060004 +000C000C00180018003000300030007000600060006000E000E000E000E000E000E000E0 +00E000E000E000E000E000E000E0006000600060007000300030003000180018000C000C +0004000600030001000080004000200B327CA413>40 D<800040002000100018000C0004 +00060006000300030001800180018001C000C000C000C000E000E000E000E000E000E000 +E000E000E000E000E000E000E000E000C000C000C001C001800180018003000300060006 +0004000C00180010002000400080000B327DA413>I<70F8FCFC74040404040808101020 +40060F7C840E>44 D<FFE0FFE00B027F8B10>I<70F8F8F87005057C840E>I<008003800F +80F380038003800380038003800380038003800380038003800380038003800380038003 +8003800380038003800380038003800380038007C0FFFE0F207C9F18>49 +D<007E0001C1000300800601C00C03C01C03C0380180380000780000700000700000F000 +00F0F800F30E00F40700F80380F80380F801C0F001C0F001E0F001E0F001E07001E07001 +E07001E07801C03801C03803801C03800C0700060C0001F80013207E9F18>54 +D<01F000060C001C06001803003803807003807001C0F001C0F001C0F001C0F001E0F001 +E0F001E07001E07003E03803E03803E01C05E00E19E003E1E00001E00001C00001C00003 +C0000380300380780700780600700C002018001030000FC00013207E9F18>57 +D<000FE00000701C0000800200030001800400004008000020080000201007C010201830 +08203008084060040440C0078441C0038481C00382838003828380038283800382838003 +8283800382838003828380038281C0038241C0038240C007824060078420300B84201831 +881007C0F00800000008000000040000000300000E00800078007007C0000FFC001F237D +A226>64 D<0001800000018000000180000003C0000003C0000007E0000005E0000005E0 +000009F0000008F0000008F00000107800001078000010780000203C0000203C0000603E +0000401E0000401E0000801F0000800F0000800F0001FFFF800100078001000780020003 +C0020003C0060003E0040001E0040001E00C0001F00C0000F03E0001F8FF800FFF20227E +A125>I<FFC00003FF0FC00003F007C00003E005E00005E005E00005E004F00009E004F0 +0009E004F00009E004780011E004780011E004780011E0043C0021E0043C0021E0043C00 +21E0041E0041E0041E0041E0040F0081E0040F0081E0040F0081E004078101E004078101 +E004078101E00403C201E00403C201E00401E401E00401E401E00401E401E00400F801E0 +0400F801E00400F801E004007001E00E007001E01F007003F0FFE0203FFF28227EA12D> +77 D<03F0200C0C601803E03000E07000E0600060E00060E00020E00020E00020F00000 +F000007800007F00003FF0001FFE000FFF0003FF80003FC00007E00001E00000F00000F0 +000070800070800070800070800070C00060C000E0E000C0F80180C6030081FC0014227D +A11B>83 D<0FE0001838003C0C003C0E0018070000070000070000070000FF0007C7001E +07003C0700780700700700F00708F00708F00708F00F087817083C23900FC1E015157E94 +18>97 D<0E0000FE00001E00000E00000E00000E00000E00000E00000E00000E00000E00 +000E00000E00000E00000E1F000E61C00E80600F00300E00380E003C0E001C0E001E0E00 +1E0E001E0E001E0E001E0E001E0E001E0E001C0E003C0E00380F00700C80600C41C0083F +0017237FA21B>I<01FE000703000C07801C0780380300780000700000F00000F00000F0 +0000F00000F00000F00000F000007000007800403800401C00800C010007060001F80012 +157E9416>I<0000E0000FE00001E00000E00000E00000E00000E00000E00000E00000E0 +0000E00000E00000E00000E001F8E00704E00C02E01C01E03800E07800E07000E0F000E0 +F000E0F000E0F000E0F000E0F000E0F000E07000E07800E03800E01801E00C02E0070CF0 +01F0FE17237EA21B>I<01FC000707000C03801C01C03801C07801E07000E0F000E0FFFF +E0F00000F00000F00000F00000F000007000007800203800201C00400E008007030000FC +0013157F9416>I<0E0000FE00001E00000E00000E00000E00000E00000E00000E00000E +00000E00000E00000E00000E00000E1F800E60C00E80E00F00700F00700E00700E00700E +00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E +0070FFE7FF18237FA21B>104 D<1C001E003E001E001C00000000000000000000000000 +000000000E00FE001E000E000E000E000E000E000E000E000E000E000E000E000E000E00 +0E000E000E000E00FFC00A227FA10E>I<01C003E003E003E001C0000000000000000000 +0000000000000001E00FE001E000E000E000E000E000E000E000E000E000E000E000E000 +E000E000E000E000E000E000E000E000E000E000E000E060E0F0C0F18061803E000B2C82 +A10F>I<0E0000FE00001E00000E00000E00000E00000E00000E00000E00000E00000E00 +000E00000E00000E00000E03FC0E01F00E01C00E01800E02000E04000E08000E10000E38 +000EF8000F1C000E1E000E0E000E07000E07800E03C00E01C00E01E00E00F00E00F8FFE3 +FE17237FA21A>I<0E00FE001E000E000E000E000E000E000E000E000E000E000E000E00 +0E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00 +0E000E00FFE00B237FA20E>I<0E1FC07F00FE60E183801E807201C00F003C00E00F003C +00E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800 +E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E0 +0E003800E0FFE3FF8FFE27157F942A>I<0E1F80FE60C01E80E00F00700F00700E00700E +00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E +00700E0070FFE7FF18157F941B>I<01FC000707000C01801800C03800E0700070700070 +F00078F00078F00078F00078F00078F00078F000787000707800F03800E01C01C00E0380 +07070001FC0015157F9418>I<0E1F00FE61C00E80600F00700E00380E003C0E001C0E00 +1E0E001E0E001E0E001E0E001E0E001E0E001E0E003C0E003C0E00380F00700E80E00E41 +C00E3F000E00000E00000E00000E00000E00000E00000E00000E00000E0000FFE000171F +7F941B>I<0E3CFE461E8F0F0F0F060F000E000E000E000E000E000E000E000E000E000E +000E000E000E000F00FFF010157F9413>114 D<0F8830786018C018C008C008E008F000 +7F803FE00FF001F8003C801C800C800CC00CC008E018D0308FC00E157E9413>I<020002 +00020002000600060006000E001E003E00FFF80E000E000E000E000E000E000E000E000E +000E000E000E040E040E040E040E040E040708030801F00E1F7F9E13>I<0E0070FE07F0 +1E00F00E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E0070 +0E00700E00700E00F00E00F006017003827800FC7F18157F941B>I<FFC1FE1E00780E00 +300E00200E002007004007004003808003808003808001C10001C10000E20000E20000E2 +00007400007400003800003800003800001000001000002000002000002000004000F040 +00F08000F180004300003C0000171F7F941A>121 D E /Fq 17 115 +df<00020004000800100030006000C000C0018001800300070006000E000E000C001C00 +1C001800380038003800700070007000700070007000F000F000E000E000E000E000E000 +E000E000E000E000E000E000E000E000F000F00070007000700070007000700038003800 +380018001C001C000C000E000E000600070003000180018000C000C00060003000100008 +000400020F497AB519>40 D<800040002000100018000C000600060003000300018001C0 +00C000E000E00060007000700030003800380038001C001C001C001C001C001C001E001E +000E000E000E000E000E000E000E000E000E000E000E000E000E001E001E001C001C001C +001C001C001C003800380038003000700070006000E000E000C001C00180030003000600 +06000C00180010002000400080000F497CB519>I<78FCFCFCFC7806067A8512>46 +D<00080000380000780001F8003FF800FE7800C078000078000078000078000078000078 +000078000078000078000078000078000078000078000078000078000078000078000078 +000078000078000078000078000078000078000078000078000078000078000078000078 +0000780000780000780000780000780000780000780000FC007FFFF87FFFF8152E7AAD21 +>49 D<007F800001FFF0000701FC000C007E0010001F0020000F80200007C0400007C040 +0007C0B00003E0F80003E0FC0003E0FC0003E0FC0003E0780003E0000003E0000007C000 +0007C00000078000000F8000000F0000001F0000001E0000003C00000078000000700000 +00E0000001C0000003800000070000000E0000000C000000180000003000000060000000 +C000200180002003000020060000400C00004008000040100000C03FFFFFC07FFFFF80FF +FFFF80FFFFFF801B2E7DAD21>I<00000300000000000300000000000300000000000780 +000000000780000000000FC0000000000FC0000000000FC00000000017E00000000013E0 +0000000013E00000000021F00000000021F00000000021F00000000040F80000000040F8 +0000000080FC00000000807C00000000807C00000001007E00000001003E00000001003E +00000002001F00000002001F00000006001F80000004000F80000004000F80000008000F +C00000080007C00000080007C00000100003E000001FFFFFE000001FFFFFE00000200001 +F00000200001F00000600001F80000400000F80000400000F80000800000FC0000800000 +7C00008000007C00010000003E00010000003E00030000003E00030000001F0007000000 +1F001F8000003F80FFE00003FFFCFFE00003FFFC2E317EB032>65 +D<00001FE000800001FFFC01800007F00F0180001F80018380003E000043800078000027 +8000F00000178001E000000F8003C0000007800780000007800F80000003800F00000003 +801E00000001801E00000001803E00000001803C00000000807C00000000807C00000000 +807C0000000000F80000000000F80000000000F80000000000F80000000000F800000000 +00F80000000000F80000000000F80000000000F80000000000F80000000000F800000FFF +FC7C00000FFFFC7C0000001FC07C0000000F803C0000000F803E0000000F801E0000000F +801F0000000F800F0000000F800F8000000F80078000000F8003C000000F8001E000000F +8000F000000F80007C00001780003E00002780001F8000E3800007F00383800001FFFE01 +8000001FF000802E317CB034>71 D<FFF00000007FF8FFF00000007FF807F00000007F00 +02F8000000BE0002F8000000BE0002F8000000BE00027C0000013E00027C0000013E0002 +3E0000023E00023E0000023E00023E0000023E00021F0000043E00021F0000043E00021F +0000043E00020F8000083E00020F8000083E00020F8000083E000207C000103E000207C0 +00103E000207C000103E000203E000203E000203E000203E000201F000403E000201F000 +403E000201F000403E000200F800803E000200F800803E000200F800803E0002007C0100 +3E0002007C01003E0002007C01003E0002003E02003E0002003E02003E0002003E02003E +0002001F04003E0002001F04003E0002000F88003E0002000F88003E0002000F88003E00 +020007D0003E00020007D0003E00020007D0003E00020003E0003E00020003E0003E0002 +0003E0003E00070001C0003E000F8001C0007F00FFF801C00FFFF8FFF800800FFFF83531 +7CB03D>77 D<FFE00007FFC0FFF00007FFC003F000007C0002F80000380002FC00001000 +027C00001000023E00001000023E00001000021F00001000021F80001000020F80001000 +0207C00010000207E00010000203E00010000203F00010000201F00010000200F8001000 +0200FC00100002007C00100002007E00100002003E00100002001F00100002001F801000 +02000F80100002000FC01000020007C01000020003E01000020003F01000020001F01000 +020000F81000020000F810000200007C10000200007E10000200003E10000200001F1000 +0200001F10000200000F90000200000FD00002000007D00002000003F00002000003F000 +02000001F00002000001F00002000000F0000200000070000700000070000F8000003000 +FFF800003000FFF8000010002A317CB032>I<00003FC000000003C03C0000000F000F00 +00001C0003800000780001E00000F00000F00001E00000780003C000003C00078000001E +00070000000E000F0000000F001E00000007801E00000007803E00000007C03C00000003 +C03C00000003C07C00000003E07C00000003E07800000001E0F800000001F0F800000001 +F0F800000001F0F800000001F0F800000001F0F800000001F0F800000001F0F800000001 +F0F800000001F0F800000001F0F800000001F07C00000003E07C00000003E07C00000003 +E03C00000003C03E00000007C03E00000007C01E00000007801F0000000F800F0000000F +00078000001E00078000001E0003C000003C0001E00000780000F00000F00000780001E0 +00001C00038000000F000F00000003C03C000000003FC000002C317CB034>I<007F8020 +01FFE06007C078600F001CE01C0006E03C0003E0380001E0780000E0700000E0F0000060 +F0000060F0000060F0000020F0000020F8000020F80000007C0000007C0000007F000000 +3FC000001FF800000FFF800007FFF80003FFFE0000FFFF00000FFF800000FFC000001FE0 +000007E0000003F0000001F0000000F0000000F8000000F8800000788000007880000078 +80000078C0000078C0000070C00000F0E00000F0F00000E0F80001C0EC0003C0E7000780 +C3E01E00C0FFFC00800FF0001D317CB025>83 D<00FE00000303C0000C00E00010007000 +100038003C003C003E001C003E001E003E001E0008001E0000001E0000001E0000001E00 +000FFE0000FC1E0003E01E000F801E001F001E003E001E003C001E007C001E00F8001E04 +F8001E04F8001E04F8003E04F8003E0478003E047C005E043E008F080F0307F003FC03E0 +1E1F7D9E21>97 D<003F800000E0E0000380380007003C000E001E001E001E001C000F00 +3C000F007C000F0078000F8078000780F8000780F8000780FFFFFF80F8000000F8000000 +F8000000F8000000F8000000F8000000780000007C0000003C0000003C0000801E000080 +0E0001000F0002000780020001C00C0000F03000001FC000191F7E9E1D>101 +D<007F00F801C1C71C0380E81C070070080F0078001E003C001E003C003E003E003E003E +003E003E003E003E003E003E003E003E001E003C001E003C000F007800070070000780E0 +0009C1C000087F000018000000180000001800000018000000180000001C0000000E0000 +000FFFF80007FFFF0003FFFF800E000FC0180001E0300000F070000070E0000038E00000 +38E0000038E0000038E00000387000007070000070380000E01C0001C00700070001C01C +00003FE0001E2E7E9E21>103 D<0780FE0000FF83078000FF8C03C0000F9001E00007A0 +01E00007A000F00007C000F00007C000F000078000F000078000F000078000F000078000 +F000078000F000078000F000078000F000078000F000078000F000078000F000078000F0 +00078000F000078000F000078000F000078000F000078000F000078000F000078000F000 +078000F000078000F0000FC001F800FFFC1FFF80FFFC1FFF80211F7E9E25>110 +D<001FC00000F0780001C01C00070007000F0007801E0003C01C0001C03C0001E03C0001 +E0780000F0780000F0780000F0F80000F8F80000F8F80000F8F80000F8F80000F8F80000 +F8F80000F8F80000F8780000F07C0001F03C0001E03C0001E01E0003C01E0003C00F0007 +8007800F0001C01C0000F07800001FC0001D1F7E9E21>I<0783E0FF8C18FF907C0F907C +07A07C07C03807C00007C00007C000078000078000078000078000078000078000078000 +078000078000078000078000078000078000078000078000078000078000078000078000 +0FC000FFFE00FFFE00161F7E9E19>114 D E end +%%EndProlog +%%BeginSetup +%%Feature: *Resolution 300dpi +TeXDict begin + +%%EndSetup +%%Page: 1 1 +1 0 bop 571 440 a Fq(AroSgaon)21 b(\(More)h(SGA)n(ON\))f(2.1)350 +585 y Fp(Muhammad)15 b(Masro)q(or)i(Ali)e(\(masro)q(or@h)o +(uman.is.kyush)o(u-u.ac.jp\))828 683 y(Septem)o(b)q(er,)f(1996)118 +838 y Fo(1)69 b(In)n(tro)r(duction)118 971 y Fn(The)11 +b(bangla)d(fon)o(t)i Fm(sgaon)h Fn(w)o(as)f(dev)o(elop)q(ed)g(b)o(y)g +(Anisur)118 1021 y(Rahman)e(and)i(it)g(has)g(found)g(application)f(in)g +(v)n(arious)118 1071 y(pac)o(k)n(ages)i(including)g(itrans)g(\()606 +1070 y(c)595 1071 y Fl(\015)o Fn(Avinash)g(Chop)q(de\).)118 +1121 y(P)o(erhaps)i(it)e(w)o(as)h(the)h(\014rst)f(and)g(only)f(bangla)g +(fon)o(t)g(in)118 1170 y(public)k(domain.)k(But)c(the)h(sgaon)e(fon)o +(t)h(lac)o(ks)f(some)118 1220 y(essen)o(tial)d(c)o(haracters.)19 +b(The)11 b(absen)o(t)h(mem)o(b)q(ers)d(com-)118 1270 +y(prise)j(of)f(notable)h(ones)g(lik)o(e)f Fk(2)p Fj(,)k +Fk(8)p Fj(,)f Fk(7)42 b Fm(etc)12 b Fn(plus)f(some)118 +1320 y(not)j(so)g(notable)f(ones.)160 1382 y(I)18 b(created)i(fon)o(t)d +(arosgn)i(out)f(of)f(p)q(ersonal)i(need.)118 1431 y(The)h(name)f +(arosgn)g(roughly)g(translates)i(to)f(more)118 1481 y(sonargaon.)160 +1543 y(Before)11 b(y)o(ou)f(pro)q(ceed)i(further,)g(please)f(b)q(e)g(w) +o(arned)118 1593 y(that)i(w)o(e)h(presume)f(that)g(y)o(ou)g(ha)o(v)o(e) +g(itrans)g(installed)118 1642 y(in)24 b(y)o(our)f(system.)49 +b(This)24 b(fon)o(t)f(set)i(w)o(as)f(created)118 1692 +y(merely)11 b(as)h(a)g(complemen)o(t)d(of)i(the)i(sgaon)e(fon)o(t.)17 +b(Y)m(ou)118 1742 y(need)g(to)f(use)i(the)e(itrans)h(pac)o(k)n(age)f +(for)g(translitera-)118 1792 y(tion)j(of)f(Roman)f(c)o(haracters.)35 +b(But)19 b(again,)g(if)f(y)o(ou)118 1842 y(w)o(an)o(t)i(to)g(see)h +(what)f(is)g(in)g(arosgn)g(without)g(using)118 1891 y(itrans,)h(go)e +(ahead.)35 b(Itrans)20 b(is)g(not)f(necessary)j(for)118 +1941 y(arosgn.)g(Simply)13 b(restrict)k(y)o(ourself)e(to)g(the)g +(macros)118 1991 y(de\014ned)g(in)f(arosgn.st)o(y)f(\(describ)q(ed)j +(in)d(section)i(3\).)160 2053 y(Itrans)9 b(is)h(a)o(v)n(ailable)d(from) +g Fi(ftp://chandra.cis.)118 2103 y(brown.edu/pub/itra)o(ns-4.)o(0)k +Fn(plus)j(a)g(n)o(um)o(b)q(er)f(of)118 2152 y(FTP)h(sites.)160 +2214 y(Recen)o(tly)m(,)h(a)g(commercial)d(v)o(ersion)j(of)g(the)h +(sgaon)118 2264 y(fon)o(t)f(has)g(b)q(een)i(released,)g(with)e(all)f +(the)i(c)o(haracters)118 2314 y(presen)o(t)d(in)e(v)n(arious)f(sizes)i +(and)f(st)o(yles.)18 b(The)11 b(original)118 2363 y(free)18 +b(v)o(ersion)f(is)h(still)e(a)o(v)n(ailable)f(at)i(a)g(considerable)118 +2413 y(n)o(um)o(b)q(er)f(of)h(sites,)g(simply)e(ask)i(arc)o(hie)g(to)g +(lo)q(ok)f(for)118 2463 y Fi(sgaon.zip)p Fn(.)i(The)d(latest)g(v)o +(ersion)g(of)e(itrans)i(comes)118 2513 y(equipp)q(ed)20 +b(with)f(the)g(necessary)i Fi(bn*.???pk)d Fn(\014les,)118 +2563 y(so)c(if)f(y)o(ou)g(ha)o(v)o(e)h(successfully)h(installed)e +(itrans,)g(y)o(ou)118 2612 y(do)h(not)g(need)g Fi(sgaon.zip)p +Fn(.)160 2674 y(All)d(the)h(fon)o(t)f(\014les)h(and)g(other)g +(necessary)i(\014les)e(are)118 2724 y(presen)o(t)18 b(in)e(the)g +(arosgn2.1)f(arc)o(hiv)o(e.)25 b(Y)m(ou)16 b(can)g(get)118 +2774 y(it)d(from)e(the)j(CT)m(AN)f(sites.)18 b(Ask)c(arc)o(hie)f(for)g +(details.)118 2824 y(If)g(y)o(ou)g(do)f(not)h(ha)o(v)o(e)g(ftp)g +(access,)i(please)f(send)g(me)e(a)118 2873 y(note,)i(I)h(will)d(b)q(e)j +(happ)o(y)f(to)h(mail)c(y)o(ou)j(a)g(uuenco)q(ded)118 +2923 y(v)o(ersion)g(of)f(the)i(tar)f(\014le.)p 1221 851 +495 2 v 1220 951 2 100 v 1332 921 a Fi(\\e)p 1487 951 +V 212 w Fk(1)p 1714 951 V 1221 953 495 2 v 1220 1052 +2 100 v 1321 1022 a Fi(\\au)p 1487 1052 V 199 w Fk(2)p +1714 1052 V 1221 1054 495 2 v 1220 1154 2 100 v 1321 +1124 a Fi(\\gu)p 1487 1154 V 196 w Fk(3)p 1714 1154 V +1221 1155 495 2 v 1220 1255 2 100 v 1321 1225 a Fi(\\hu)p +1487 1255 V 196 w Fk(4)p 1714 1255 V 1221 1257 495 2 +v 1220 1356 2 100 v 1321 1326 a Fi(\\ru)p 1487 1356 V +196 w Fk(5)p 1714 1356 V 1221 1358 495 2 v 1220 1457 +2 100 v 1310 1428 a Fi(\\shu)p 1487 1457 V 186 w Fk(6)p +1714 1457 V 1221 1459 495 2 v 1220 1559 2 100 v 1321 +1529 a Fi(\\th)p 1487 1559 V 204 w Fk(7)p 1714 1559 V +1221 1560 495 2 v 1220 1660 2 100 v 1321 1630 a Fi(\\ya)p +1487 1660 V 209 w Fk(8)p 1714 1660 V 1221 1662 495 2 +v 1220 1761 2 100 v 1246 1731 a Fi(\\yA)f Fh(or)g Fi(\\yaa)p +1487 1761 V 129 w Fk(9)p 1714 1761 V 1221 1763 495 2 +v 1220 1863 2 100 v 1321 1833 a Fi(\\cb)p 1487 1863 V +202 w Fk(:)p 1714 1863 V 1221 1864 495 2 v 1220 1964 +2 100 v 1310 1934 a Fi(\\kta)p 1487 1964 V 174 w Fk(;)p +1714 1964 V 1221 1966 495 2 v 1220 2065 2 100 v 1332 +2035 a Fi(\\|)p 1487 2065 V 217 w Fk(<)p 1714 2065 V +1221 2067 495 2 v 1045 2183 a Fn(T)m(able)h(1:)k(T)m(able)13 +b(sho)o(wing)g(the)i(commands)d(de\014ned)1045 2233 y(and)e(resp)q +(ectiv)o(e)i(outputs)f(in)e(st)o(yle)h(\014le)g Fi(arosgn.sty)p +Fn(.)1045 2415 y Fo(2)69 b(F)-6 b(on)n(ts)24 b(Av)l(ailable)1045 +2525 y Fn(The)14 b(pac)o(k)n(age)f(con)o(tains)g(a)g(total)f(of)h +(three)h(.tfm)d(fon)o(t)1045 2574 y(\014les)21 b(and)e(nine)h(corresp)q +(onding)h Fi(.pk)f Fn(fon)o(t)f(\014les)h(of)1045 2624 +y(three)15 b(DPI)f(v)n(alues.)j Fi(arosgnr)c Fn(\014les)h(are)g(for)f +(the)h(ba-)1045 2674 y(sic)d(bangla)e(fon)o(t,)g(while)h(the)h +Fi(arosgnc)d Fn(and)i Fi(arosgns)1045 2724 y Fn(ones)19 +b(are)f(the)h(compressed)g(and)f(slan)o(ted)g(v)o(ersions)1045 +2774 y(resp)q(ectiv)o(ely)m(.)h(These)12 b Fi(.pk)f Fn(\014les)h(w)o +(ere)h(generated)g(for)1045 2824 y(a)k Fg(OKI)g(Microline)h +Fn(prin)o(ter.)29 b(So)18 b(if)e(they)i(do)f(not)h(\014t)1045 +2873 y(y)o(our)g(prin)o(ter,)i(please)f(generate)g(new)g(pk)f(\014les)g +(us-)1045 2923 y(ing)13 b Ff(MET)l(AF)o(ONT)g Fn(from)f(the)i +Fi(.mf)f Fn(\014les)h(in)g(the)g Fg(mf)p eop +%%Page: 2 2 +2 1 bop 150 309 1709 2 v 149 408 2 100 v 175 379 a Fi(\\e\\gu)21 +b(lo)g(ki)g(axar)p 1158 408 V 659 w Fk(13)p Fj(<lA)15 +b(ik)f(aCr)p 1857 408 V 150 410 1709 2 v 149 510 2 100 +v 175 480 a Fi({\\bngls\\e\\gu)19 b(lo)i(ki)h(axar})p +1158 510 V 484 w Fe(13)p Fd(<lA)15 b(ik)h(aCr)p 1857 +510 V 150 511 1709 2 v 149 611 2 100 v 175 581 a Fi(\\cb)21 +b(chaadera)f(haasira)g(\\cb)i(baadha)e(bhengechhe)p 1158 +611 V 91 w Fk(:)p Fj(xA<dr)14 b(hAisr)h Fk(:)p Fj(bAB)e(<v<\245<J)p +1857 611 V 150 613 1709 2 v 149 712 2 100 v 175 682 a +Fi(kahe)21 b(sandh\\yaa)f(rabi)p 1158 712 V 593 w Fj(k<h)15 +b(s\266B)p Fk(9)7 b Fj(rib)p 1857 712 V 150 714 1709 +2 v 149 814 2 100 v 175 784 a Fi(\\shu)21 b(nifaa)g(jaga\\th\\)f(rahe)h +(ni\\ru)f(ttara)h(chhabi)p 1158 814 V 70 w Fk(6)p Fj(inOA)15 +b(zg)p Fk(7)f Fj(r<h)h(in)p Fk(5)p Fj(\275r)f(Jib)p 1857 +814 V 150 815 1709 2 v 149 915 2 100 v 175 885 a Fi(\\gu\\ru)20 +b(mashaa_i)g(taahale)h(\\shu\\ru\\)f(karaa)h(yaaka)p +1158 915 V 48 w Fk(35)p Fj(mSAe)14 b(qAh<l)g Fk(65)g +Fj(krA)g(jAk)p 1857 915 V 150 917 1709 2 v 149 1016 2 +100 v 175 986 a Fi(\\au)21 b(rangajiiba)f(ki)h(pada\\ya)f(likhatena)p +1158 1016 V 244 w Fk(2)p Fj(r\245zIb)15 b(ik)g(p)q(d)p +Fk(8)f Fj(ilc<qn)p 1857 1016 V 150 1018 1709 2 v 149 +1117 2 100 v 175 1088 a Fi({\\bnglc\\au)20 b(rangajiiba)f(ki)j +(pada\\ya)e(likhatena})p 1158 1117 V 69 w Fc(2)p Fb(r\245zIb)15 +b(ik)g(p)q(d)p Fc(8)f Fb(ilc<qn)p 1857 1117 V 150 1119 +1709 2 v 149 1219 2 100 v 175 1189 a Fi(\\hu)21 b(jurera)g(\\hu)g +(kuma,)f(\\hu)i(juga)f(tulabena)p 1158 1219 V 178 w Fk(4)p +Fj(zu<rr)14 b Fk(4)p Fj(k)-6 b(um,)14 b Fk(4)p Fj(zug)g(q)-6 +b(ul<bn)p 1857 1219 V 149 1283 V 175 1253 a Fi(naa,)21 +b(aara)g(\\gu)g(jabe)g(kaan)g(deben)g(naa,)p 1158 1283 +V 266 w Fj(nA,)15 b(aAr)f Fk(3)p Fj(z<b)g(kAn)g(<d<bn)g(nA,)p +1857 1283 V 149 1347 V 175 1317 a Fi(kokilera)20 b(ku\\hu)h(taana)f +(\\shu)h(nuna)p 1158 1347 V 354 w Fj(<kAik<lr)15 b(k)-6 +b(u)p Fk(4)p Fj(qAn)14 b Fk(6)p Fj(n)-6 b(un)p 1857 1347 +V 150 1349 1709 2 v 149 1448 2 100 v 175 1419 a Fi(\\e)21 +b(i)h(baake\\ya)e(ra)h(sheshhe)g(\\cb)g(daaRi)g(aachhe\\|)p +1158 1448 V 69 w Fk(1)p Fj(e)15 b(bA<k)p Fk(8)p Fj(r)g(<S<Z)f +Fk(:)p Fj(dAiR)g(aA<J)p Fk(<)p 1857 1448 V 150 1450 1709 +2 v 149 1550 2 100 v 175 1520 a Fi({\\bngls\\e)20 b(i)h(baake\\ya)f(ra) +i(sheshheo)e(aachhe\\|})p 1158 1550 V 91 w Fe(1)p Fd(e)c(bA<k)p +Fe(8)p Fd(r)f(<S<Zo)g(aA<J)p Fe(<)p 1857 1550 V 150 1551 +1709 2 v 282 1667 a Fn(T)m(able)e(2:)18 b(Examples)12 +b(of)i(bangla)e(texts)j(using)f(in)o(termixture)f(of)g(sgaon)h(and)f +(arosgn)h(fon)o(t.)118 1776 y(sub)q(directory)m(.)118 +1943 y Fo(3)69 b(T)-6 b(eX)23 b(In)n(terface)118 2049 +y Fn(St)o(yle)10 b(\014les)g Fi(sgaon.sty)f Fn(and)g +Fi(arosgn.sty)f Fn(has)i(b)q(een)118 2099 y(dev)o(elop)q(ed)20 +b(for)f(using)g(the)h(c)o(haracters)h(in)e(arosgn.)118 +2149 y(Please)k(refer)g(to)e(T)m(able)g(1)h(for)f(commands)f(a)o(v)n +(ail-)118 2198 y(able.)k(Y)m(ou)15 b(don't)h(need)g(to)g(w)o(orry)g(ab) +q(out)g(the)g(fon)o(t)118 2248 y(st)o(yle)10 b(\(normal,)e(slan)o(ted)i +Fm(etc)p Fn(\))f(c)o(hosen)i(b)o(y)e(these)i(com-)118 +2298 y(mands.)46 b(They)24 b(are)g(in)o(telligen)o(t)e(enough)i(to)f +(de-)118 2348 y(tect)15 b(the)f(curren)o(t)g(st)o(yle)g(b)q(eing)f +(used)i(for)e(sgaon)g(and)118 2398 y(use)23 b(the)f(same)f(for)g +(arosgn.)42 b(When)22 b(these)h(com-)118 2448 y(mands)10 +b(are)h(used)h(outside)f(the)g(range)g(of)f Fi(#bengali)p +Fn({)118 2497 y Fi(#endbengali)p Fn(,)f(normal)g(st)o(yle)j(is)f(used)h +(as)f(a)g(default.)118 2664 y Fo(4)69 b(Installation)118 +2770 y Fn(Installation)13 b(of)g(arosgn)h(is)f(fairly)g(simple,)148 +2873 y(1.)20 b(Cop)o(y)9 b(\014les)h Fi(sgaon.sty,)20 +b(arosgn.sty)8 b Fn(to)h(an)o(y)201 2923 y(directory)j(searc)o(hed)h(b) +o(y)e(L)606 2918 y Ff(a)625 2923 y Fn(T)648 2936 y(E)671 +2923 y(X)g(for)g(input)g(\014les.)1128 1776 y(F)m(or)i(Unix)f(users,)i +(displa)o(ying)d(the)i(v)n(alue)f(of)g(en-)1128 1826 +y(vironmen)o(t)19 b(v)n(ariable)g(TEXINPUTS)i(will)d(b)q(e)1128 +1876 y(helpful.)1075 1960 y(2.)i(Cop)o(y)f(\014les)g +Fi(arosgn*.tfm)d Fn(to)j(an)o(y)f(directory)1128 2010 +y(searc)o(hed)d(b)o(y)d(L)1362 2005 y Ff(a)1381 2010 +y Fn(T)1404 2023 y(E)1427 2010 y(X)h(for)f(fon)o(t)g(\014les.)18 +b(\(En)o(viron-)1128 2060 y(men)o(t)13 b(v)n(ariable,)g(TEXF)o(ONTS\).) +1075 2145 y(3.)20 b(Cop)o(y)j(\014les)g Fi(arosgn.*pk)e +Fn(to)i(an)o(y)g(directory)1128 2195 y(searc)o(hed)i(b)o(y)d(xdvi)g +(\(en)o(vironmen)o(t)g(v)n(ariable,)1128 2244 y(TEXF)o(ONTS\))i(or)e +(the)h(preview)o(er)g(y)o(ou)f(use.)1128 2294 y(DOS)15 +b(users)h(need)f(to)g(c)o(hange)g(the)g(\014les)g(exten-)1128 +2344 y(sions)f(from)e Fg(nnn)p Fi(pk)j Fn(to)f Fi(pk)p +Fn(.)1075 2429 y(4.)20 b(If)13 b(y)o(ou)g(are)h(going)f(to)g(use)h +(dvips/dvi2ps,)f(cop)o(y)1128 2479 y(the)19 b(pk)f(\014les)h(to)f(an)o +(y)g(directory)h(searc)o(hed)h(b)o(y)1128 2529 y(them)d(for)h(fon)o(t)g +(\014les.)30 b(There)19 b(is)f(a)g(v)o(ery)g(high)1128 +2578 y(probabilit)o(y)f(that)i(this)g(step)g(will)e(not)i(b)q(e)g(re-) +1128 2628 y(quired,)h(since)f(usually)e(the)i(searc)o(h)h(path)e(are) +1128 2678 y(the)d(same)e(as)h(that)g(for)f(the)i(preview)o(er.)1045 +2774 y(If)21 b(y)o(ou)g(are)g(not)g(sure)h(of)f(all)e(these)k(jargon,)e +(sim-)1045 2824 y(ply)g(cop)o(y)h(all)e(the)j(ab)q(o)o(v)o(e)e(\014les) +h(to)g(the)g(directory)1045 2873 y(where)14 b(y)o(ou)d(put)i(the)g +(.itx)e(\014le,)h(and)g(issue)h(the)g(L)1793 2868 y Ff(a)1812 +2873 y Fn(T)1835 2886 y(E)1859 2873 y(X)1045 2923 y(compile,)g +(xdvi/preview)h Fm(etc)h Fn(from)d(that)j(directory)m(.)994 +3048 y(2)p eop +%%Page: 3 3 +3 2 bop 118 307 a Fn(Most)17 b(of)f(the)h(applications)e(are)i(alw)o(a) +o(ys)f(taugh)o(t)g(to)118 357 y(searc)o(h)f(the)f(curren)o(t)h +(directory)f(for)f(necessary)j(\014les.)118 511 y Fo(5)69 +b(Usage)118 615 y Fn(If)22 b(y)o(ou)g(ha)o(v)o(e)h(sgaon)f(fon)o(ts)g +(and)h(itrans)f(installed)118 664 y(in)27 b(y)o(our)f(system,)k(use)e +Fi(sgaon)e Fn(and)h Fi(arosgn)e Fn(as)118 714 y(the)16 +b(optional)e(argumen)o(ts)g(of)g Fi(\\documentstyle)f +Fn(or)118 764 y Fi(\\usepackage)i Fn(\(for)j(L)470 759 +y Ff(a)489 764 y Fn(T)512 777 y(E)535 764 y(X)p Fa(\017)p +Fn(\))g(in)f(the)h Fi(.itx)f Fn(source)118 814 y(\014le.)33 +b(Please)20 b(remem)o(b)q(er)e(that)h(the)g(suggested)i(or-)118 +864 y(der)11 b(\()p Fi(sgaon)f Fn(\014rst)h(and)g(then)g +Fi(arosgn)p Fn(\))e(is)i(imp)q(ortan)o(t.)118 913 y(Then)k(use)f +(itrans)g(and)g(L)508 908 y Ff(a)527 913 y Fn(T)550 926 +y(E)573 913 y(X)g(as)g(usual.)160 975 y(If)24 b(y)o(ou)g(are)h(y)o(et)g +(to)f(install)f(sgaon)h(fon)o(ts)h(and)118 1025 y(itrans)19 +b(and)g(w)o(an)o(t)g(use)g(arosgn)g(on)g(a)g(stand)g(alone)118 +1075 y(basis,)25 b(use)f Fi(arosgn)f Fn(as)g(the)h(optional)e(argumen)o +(t)118 1125 y(of)51 b Fi(\\documentstyle)27 b Fn(or)52 +b Fi(\\usepackage)28 b Fn(\(for)118 1174 y(L)129 1169 +y Ff(a)148 1174 y Fn(T)171 1187 y(E)194 1174 y(X)p Fa(\017)p +Fn(\))11 b(in)e(the)i Fi(.tex)e Fn(source)i(\014le.)17 +b(Then)10 b(use)h(L)866 1169 y Ff(a)885 1174 y Fn(T)908 +1187 y(E)931 1174 y(X)118 1224 y(as)j(usual.)160 1286 +y(Sample)9 b(\014les)j(can)g(b)q(e)g(found)f(in)g(the)h +Fg(samples)d Fn(sub-)118 1336 y(directory)m(.)35 b(Please)20 +b(follo)o(w)d(instructions)j(giv)o(en)f(in)118 1385 y(the)c(header)f +(commen)o(t)e(lines)i(to)g(use)g(these)i(\014les.)160 +1447 y(T)m(able)d(2)h(sho)o(ws)g(a)g(n)o(um)o(b)q(er)f(of)g(bangla)g +(text)i(lines)118 1497 y(using)g(b)q(oth)h(the)g(fon)o(ts)f(sgaon)g +(and)g(arosgn.)22 b(When)118 1547 y(y)o(ou)16 b(use)i(the)f(macros)f +(for)g(arosgn,)h(please)h(k)o(eep)f(in)118 1596 y(mind)d(that)h(a)g(T) +376 1605 y(E)399 1596 y(X)h(command)c(gobbles)k(an)o(y)f(space)118 +1646 y(follo)o(wing)f(it.)27 b(So)17 b(if)f(y)o(ou)g(really)h(need)h(a) +e(space)i(af-)118 1696 y(ter,)c(sa)o(y)f Fk(9)7 b Fn(,)13 +b(either)h(put)f(the)h(command)c Fi(\\yaa)j Fn(inside)118 +1746 y(braces)k(follo)o(w)o(ed)e(b)o(y)h(a)f(space,)j(or)e(put)g(a)g +(slash)g(fol-)118 1796 y(lo)o(w)o(ed)d(b)o(y)h(a)g(space)h(after)f(the) +g(command.)118 1950 y Fo(6)69 b(Legal)23 b(Matters)118 +2053 y Fn(The)j(arosgn)f(fon)o(tset)h(and)f(accompan)o(ying)e(st)o(yle) +118 2103 y(\014les)16 b(and)f(in)o(tro)q(ductory)h(do)q(cumen)o(t)g +(\014le,)f(hereafter)118 2153 y(called)j(the)i(pac)o(k)n(age,)f(are)g +(b)q(eing)f(distributed)i(free)118 2203 y(for)c(public)g(use)i(with)e +(the)h(express)h(understanding)118 2253 y(that,)148 2350 +y(1.)i(The)g(dev)o(elop)q(er)h(of)e(the)h(pac)o(k)n(age)g(in)f(no)g(w)o +(a)o(y)201 2399 y(can)g(b)q(e)f(held)h(resp)q(onsible)g(for)f(an)o(y)f +(resulting)201 2449 y(mistak)o(es,)e(exp)q(enditure,)j(or)e(outcome)f +(of)h(an)o(y)201 2499 y(form.)148 2587 y(2.)k(Y)m(ou)14 +b(ma)o(y)e(cop)o(y)i(and)g(re-distribute)i(the)f(pac)o(k-)201 +2636 y(age)h(so)f(long)g(as)h(y)o(ou)f(do)h(not)f(c)o(harge)h(an)o(y)f +(fee,)201 2686 y(and)j(re-distribute)i(the)f(pac)o(k)n(age)f(as)h(a)f +(whole)201 2736 y(without)d(an)o(y)f(p)q(ortion)h(remo)o(v)o(ed)f(or)h +(added)h(or)201 2786 y(mo)q(di\014ed.)148 2873 y(3.)k(Y)m(ou)k(ma)o(y)f +(bundle)i(the)g(pac)o(k)n(age)g(with)f(an)o(y)201 2923 +y(other)e(soft)o(w)o(are)g(y)o(ou)f(lik)o(e,)h(so)g(long)f(as)g(that) +1128 307 y(soft)o(w)o(are)15 b(is)g(distributed)h(free)g(for)f(public)f +(use,)1128 357 y(and)g(so)g(long)f(as)h(the)h(pac)o(k)n(age)f(is)f(not) +h(c)o(hanged)1128 407 y(or)20 b(m)o(utilated)d(in)i(an)o(y)g(w)o(a)o(y) +m(,)g(and)g(so)g(long)g(as)1128 457 y(whole)13 b(the)g(pac)o(k)n(age)f +(is)g(included,)h(and)f(so)h(long)1128 506 y(as)j(the)f(name)f(of)h +(the)h(pac)o(k)n(age)e(and)i(its)f(dev)o(el-)1128 556 +y(op)q(er)j(is)f(clearly)g(men)o(tioned)f(in)h(an)g(in)o(tro)q(duc-) +1128 606 y(tory)k(article)f(accompan)o(ying)e(the)j(aforemen-)1128 +656 y(tioned)14 b(soft)o(w)o(are.)1075 739 y(4.)20 b(No)15 +b(p)q(ermission)e(will)g(b)q(e)i(required)g(for)f(includ-)1128 +789 y(ing)i(the)g(pac)o(k)n(age)g(to)g(a)f(soft)o(w)o(are,)h(but)h(a)e +(mail)1128 839 y(informing)c(the)k(matter)e(will)f(b)q(e)j +(appreciated.)1045 988 y Fo(7)69 b(Final)22 b(W)-6 b(ords)1045 +1090 y Fn(The)17 b(fon)o(tset)g(w)o(as)g(dev)o(elop)q(ed)g(in)f(haste)i +(solely)e(out)1045 1140 y(of)i(p)q(ersonal)h(needs.)33 +b(In)19 b(no)f(w)o(a)o(y)g(it)g(is)h(a)f Fm(p)n(olishe)n(d)1045 +1190 y Fn(pro)q(duct.)26 b(Sometimes)15 b(extra)h(spaces)i(ma)o(y)c +(app)q(ear)1045 1240 y(b)q(et)o(w)o(een)21 b(c)o(haracter)f(b)q(et)o(w) +o(een)g(a)f(sgaon)f(c)o(haracter)1045 1290 y(and)13 b(a)f(arosgn)h(c)o +(haracter)h(\(the)f(original)e(sgaon)h(fon)o(t)1045 1339 +y(is)17 b(not)g(free)h(from)e(this)h(defect\).)29 b(Y)m(ou)17 +b(ma)o(y)e(notice)1045 1389 y(that)f(with)g(resp)q(ect)i(to)e(app)q +(earance,)g(matc)o(hing)e(b)q(e-)1045 1439 y(t)o(w)o(een)f(the)g(300)f +(DPI)g(fon)o(t)f(supplied)i(with)f(the)h(itrans)1045 +1489 y(pac)o(k)n(age)k(and)g(300)g(DPI)g(arosgn)g(fon)o(ts)g(is)g(the)h +(b)q(est.)1045 1539 y(So)d(while)g(using)h(xdvi,)e(dvips)h(or)h(dvi2ps) +f(resolution)1045 1588 y(selection)j(options)e(ma)o(y)f(b)q(ecome)i +(useful.)20 b(F)m(on)o(ts)15 b(at)1045 1638 y(other)23 +b(DPI)e(v)n(alues)g(can)h(also)f(b)q(e)i(\014ne)f(tuned)g(for)1045 +1688 y(prop)q(er)15 b(matc)o(hing,)e(but)h(I)g(am)f(to)q(o)h(busy)g +(for)g(carry-)1045 1738 y(ing)h(out)h(suc)o(h)h(a)e(h)o(uge)h(matc)o +(hmaking)c(task.)24 b(Hop)q(e)1045 1788 y(I)14 b(can)g(\014nd)g(some)f +(free-time)g(in)h(near)g(future.)1087 1849 y(Please)i(direct)h(all)d +(commen)o(ts,)g(suggestions)i(and)1045 1899 y(rep)q(orts)g(to)d(masro)q +(or@h)o(uman.is.kyush)o(u-u.)o(ac.jp.)994 3048 y(3)p +eop +%%Trailer +end +userdict /end-hook known{end-hook}if +%%EOF diff --git a/language/bengali/arosgn/arosgn.sty b/language/bengali/arosgn/arosgn.sty new file mode 100644 index 0000000000..fc1511e9ce --- /dev/null +++ b/language/bengali/arosgn/arosgn.sty @@ -0,0 +1,156 @@ +% Style file characters not present in the original +% sgaon font. + +% $Header: /home/users/masroor/TeX/sty/RCS/arosgn.sty,v 2.7 1996/08/29 01:06:15 masroor Exp $ + +% $Log: arosgn.sty,v $ +% Revision 2.7 1996/08/29 01:06:15 masroor +% Updated the style file to be used for implementing +% only the characters defined in arosgn.sty. +% +% Revision 2.6 1996/02/21 10:55:47 masroor +% Font file names no longer contain 10 for tenpoint. +% +% Revision 2.5 1996/02/21 09:03:48 masroor +% Updated for hu. +% +% Revision 2.4 1996/02/16 06:11:13 masroor +% Fixed some minor bugs. +% +% Revision 2.3 1996/02/16 03:03:33 masroor +% Fixed some minor bugs. +% +% Revision 2.2 1996/02/16 02:32:42 masroor +% Fixed some minor bugs. +% +% Revision 2.1 1996/02/15 07:15:40 masroor +% Updated for slanted and compressed font. +% +% Revision 1.5 1996/02/14 07:38:49 masroor +% Used charcode rather than characters. +% +% Revision 1.4 1996/02/14 03:07:48 masroor +% Added lines for au. +% +% Revision 1.3 1996/02/13 07:49:20 masroor +% Added lines for chandrabindu and dnari. +% +% Revision 1.2 1996/02/13 06:19:39 masroor +% Automated charcode assignment. +% +% Revision 1.1 1996/02/09 07:27:39 masroor +% Initial revision +% + +% Fonts to be used. +\font\Aro@Sgaon@Normal = arosgnr +\font\Aro@Sgaon@Compressed = arosgnc +\font\Aro@Sgaon@Slanted = arosgns + +% We need to redefine the bengali font load commands in order to +% indentify bengali font used during runtime. Only newer versions of LaTeX +% support a command for fontname identification. Font for +% the macros defined in this file will be selected depending +% on the current bengali font. +\newtoks\@bengali@font@type +\@bengali@font@type={@Normal} % For cases when used outside the range + % of #bengali and #endbengali. +% We need to use this macro. +\def\ifundefined#1{\expandafter\ifx\csname#1\endcsname\relax} +% +% +\ifundefined{bnglr}\font\bnglr = cmr10 \else\relax\fi +\let\@temp@font=\bnglr +\edef\bnglr{\@bengali@font@type={@Normal}\the\@temp@font} +\ifundefined{bnglc}\font\bnglc = cmr10 \else\relax\fi +\let\@temp@font=\bnglc +\edef\bnglc{\@bengali@font@type={@Compressed}\the\@temp@font} +\ifundefined{bngls}\font\bngls = cmr10 \else\relax\fi +\let\@temp@font=\bngls +\edef\bngls{\@bengali@font@type={@Slanted}\the\@temp@font} + +% Character code. +\newcounter{@axar@code}\setcounter{@axar@code}{48} + +% Font selector +\def\@font@selector{\csname Aro@Sgaon\the\@bengali@font@type\endcsname} + +% e. No e without the upper line was available. +\stepcounter{@axar@code} +\edef\@define@next#1#2{\def#1{{#2\char\the@axar@code}}} +\@define@next\e\@font@selector + +% Au. +\stepcounter{@axar@code} +\edef\@define@next#1#2{\def#1{{#2\char\the@axar@code}}} +\@define@next\au\@font@selector + +% gaw e ukar +\stepcounter{@axar@code} +\edef\@define@next#1#2{\def#1{{#2\char\the@axar@code}}} +\@define@next\gu\@font@selector + +% haw e ukar +\stepcounter{@axar@code} +\edef\@define@next#1#2{\def#1{{#2\char\the@axar@code}}} +\@define@next\hu\@font@selector + +% raw e ukar +\stepcounter{@axar@code} +\edef\@define@next#1#2{\def#1{{#2\char\the@axar@code}}} +\@define@next\ru\@font@selector + +% shaw e ukar +\stepcounter{@axar@code} +\edef\@define@next#1#2{\def#1{{#2\char\the@axar@code}}} +\@define@next\shu\@font@selector + +% Khandatta +\stepcounter{@axar@code} +\edef\@define@next#1#2{\def#1{{#2\char\the@axar@code}}} +\@define@next\th\@font@selector + +% Jawfala +\stepcounter{@axar@code} +\edef\@define@next#1#2{\def#1{{#2\char\the@axar@code}}} +\@define@next\jafala\@font@selector + +% Jawfala akar +\stepcounter{@axar@code} +\edef\@define@next#1#2{\def#1{{#2\char\the@axar@code}}} +\@define@next\jafalaAkar\@font@selector + +\def\ya{\jafala} +\def\yA{\jafalaAkar\thinspace} +\def\yaa{\jafalaAkar\thinspace} + +% Chandra bindu +\stepcounter{@axar@code} +\edef\@define@next#1#2{\def#1{{#2\char\the@axar@code}}} +\@define@next\ChandraBindu\@font@selector +\def\cb{\ChandraBindu} + +% Kaw e taw +\stepcounter{@axar@code} +\edef\@define@next#1#2{\def#1{{#2\char\the@axar@code}}} +\@define@next\kta\@font@selector + +% Akar, ukar etc. to the above. +\def\ktaa{{\kta}A} +\def\ktA{{\kta}A} +\def\kti{i{\kta}} +\def\ktii{{\kta}I} +\def\ktI{{\kta}I} +\def\ktu{{\kta}u} +\def\ktuu{{\kta}U} +\def\ktU{{\kta}U} +\def\kte{{\char60}{\kta}} +\def\kto{{\char60}{\kta}A} + + + +% Dnari +\stepcounter{@axar@code} +\edef\@define@next#1#2{\def#1{{#2\char\the@axar@code}}} +\@define@next\Dnari\@font@selector +\def\|{\Dnari} diff --git a/language/bengali/arosgn/mf/arosgnc.mf b/language/bengali/arosgn/mf/arosgnc.mf new file mode 100644 index 0000000000..28eb6a9972 --- /dev/null +++ b/language/bengali/arosgn/mf/arosgnc.mf @@ -0,0 +1,577 @@ +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=48; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform xscaled(0.85); +% +% e.fig (char 49) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,1.969,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + cycleshade(0, false, + (1.350000, 1.750503), + (1.437500, 1.613003), + (1.450000, 1.475503), + (1.350000, 1.325503), + (1.150000, 1.238003), + (0.925000, 1.300503), + (0.787500, 1.450503), + (0.837500, 1.650503), + (0.887500, 1.850503), + (1.150000, 1.900503), + (1.512500, 1.900503), + (1.825000, 1.763003), + (1.950000, 1.538003), + (1.950000, 1.338003), + (1.950000, 0.225503), + (1.950000, -0.011997), + (1.725000, 0.000503), + (1.650000, 0.125503), + (1.400000, 0.238003), + (0.712500, 0.238003), + (0.550000, 0.338003), + (0.400000, 0.450503), + (0.225000, 0.675503), + (0.137500, 0.875503), + (0.062500, 1.150503), + (0.312500, 0.813003), + (0.512500, 0.600503), + (0.725000, 0.425503), + (1.450000, 0.425503), + (1.687500, 0.375503), + (1.750000, 0.275503), + (1.762500, 1.388003), + (1.725000, 1.475503), + (1.662500, 1.638003), + (1.550000, 1.700503), + (1.375000, 1.738003)); +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=49; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform xscaled(0.85); +% +% au.fig (char 50) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.362,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + cycleshade(0, true, + (1.225000, 2.013003), + (1.487500, 1.975503), + (1.787500, 1.825503), + (1.862500, 1.563003), + (1.787500, 1.338003), + (1.600000, 1.188003), + (1.825000, 1.113003), + (1.975000, 1.038003), + (2.087500, 0.813003), + (2.012500, 0.475503), + (1.862500, 0.250503), + (1.637500, 0.063003), + (1.412500, 0.025503), + (0.962500, 0.100503), + (0.625000, 0.325503), + (0.475000, 0.550503), + (0.362500, 0.813003), + (0.250000, 1.150503), + (0.437500, 0.813003), + (0.662500, 0.550503), + (1.000000, 0.325503), + (1.300000, 0.250503), + (1.712500, 0.400503), + (1.900000, 0.700503), + (1.787500, 0.888003), + (1.525000, 0.963003), + (1.337500, 1.000503), + (1.300000, 1.188003), + (1.600000, 1.375503), + (1.675000, 1.525503), + (1.600000, 1.713003), + (1.337500, 1.863003), + (1.187500, 1.713003), + (1.262500, 1.563003), + (1.112500, 1.375503), + (0.775000, 1.450503), + (0.775000, 1.750503), + (0.887500, 1.938003), + (1.225000, 2.013003)); + pickup pencircle scaled 0.50pt; + cycleshade(0, true, + (1.600000, 1.225503), + (1.787500, 1.300503), + (2.125000, 1.638003), + (2.012500, 1.863003), + (1.525000, 2.163003), + (1.637500, 2.425503), + (2.237500, 2.575503), + (1.900000, 2.425503), + (1.750000, 2.238003), + (2.012500, 2.050503), + (2.312500, 1.788003), + (2.350000, 1.675503), + (2.125000, 1.300503), + (1.862500, 1.150503), + (1.750000, 1.075503)); +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=50; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform xscaled(0.85); +% +% gu.fig (char 51) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.756,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.862500, 0.925503), + (1.212500, 1.000503), + (1.312500, 1.288003), + (0.775000, 1.488003), + (0.737500, 1.738003), + (1.225000, 1.988003), + (1.550000, 1.963003), + (2.100000, 1.625503), + (2.100000, 1.888003), + (2.400000, 1.600503), + (2.500000, 1.125503), + (2.225000, 0.813003), + (2.025000, 0.638003), + (1.700000, 0.650503), + (1.575000, 0.888003), + (1.650000, 1.075503), + (1.937500, 1.163003), + (2.212500, 1.075503), + (2.462500, 0.650503), + (2.337500, 0.225503), + (2.175000, 0.050503), + (1.875000, -0.049497), + (1.700000, -0.049497), + (1.462500, 0.013003), + (1.237500, 0.175503), + (1.075000, 0.338003), + (0.650000, 0.825503)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=51; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform xscaled(0.85); +% +% hu.fig (char 52) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.756,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + cycleshade(0, false, + (2.975000, 1.818623), + (0.462500, 1.818623), + (0.462500, 2.056123), + (2.975000, 2.056123), + (2.975000, 1.818623)); + cycleshade(0, true, + (1.475000, 1.481123), + (1.700000, 1.756123), + (2.125000, 1.581123), + (2.312500, 1.281123), + (2.362500, 0.956123), + (2.162500, 0.593623), + (1.825000, 0.431123), + (1.700000, 0.331123), + (2.112500, 0.181123), + (2.300000, 0.093623), + (2.662500, -0.068877), + (2.712500, -0.131377), + (2.687500, -0.206377), + (2.362500, -0.081377), + (2.162500, -0.031377), + (1.812500, 0.043623), + (1.512500, 0.168623), + (1.250000, 0.218623), + (0.987500, 0.331123), + (0.775000, 0.418623), + (0.712500, 0.593623), + (1.025000, 0.543623), + (1.262500, 0.493623), + (1.487500, 0.456123), + (1.875000, 0.581123), + (1.987500, 0.681123), + (2.112500, 0.831123), + (2.150000, 1.043623), + (2.150000, 1.093623), + (2.025000, 1.281123), + (1.762500, 1.493623), + (1.600000, 1.156123), + (1.337500, 1.281123), + (1.050000, 1.306123), + (1.012500, 1.056123), + (1.125000, 0.956123), + (1.312500, 1.043623), + (1.487500, 1.006123), + (1.525000, 0.943623), + (1.537500, 0.831123), + (1.462500, 0.768623), + (1.300000, 0.756123), + (1.162500, 0.756123), + (0.975000, 0.781123), + (0.762500, 0.918623), + (0.662500, 1.131123), + (0.712500, 1.356123), + (0.850000, 1.531123), + (1.025000, 1.593623), + (1.112500, 1.593623), + (1.475000, 1.481123)); +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=52; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform xscaled(0.85); +% +% ru.fig (char 53) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.756,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + circle((1.025000,0.079249),0.100000); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (1.950000, 1.966749), + (1.950000, 0.104249), + (0.312500, 0.954249), + (1.950000, 1.779249)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.087500, 1.966749), + (2.925000, 1.966749)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (1.987500, 0.891749), + (2.612500, 0.754249), + (2.825000, 1.204249), + (2.600000, 1.466749), + (2.325000, 1.291749), + (2.600000, 1.054249), + (2.762500, 1.266749)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=53; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform xscaled(0.85); +% +% shu.fig (char 54) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.638,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.550000, 1.850503), + (0.375000, 1.725503), + (0.662500, 1.863003), + (0.925000, 1.850503), + (1.125000, 1.788003), + (1.075000, 1.263003), + (1.025000, 1.075503), + (0.850000, 1.013003), + (0.737500, 0.975503), + (0.525000, 1.113003), + (0.500000, 1.250503), + (0.525000, 1.463003), + (0.725000, 1.613003), + (0.975000, 1.700503), + (1.225000, 1.725503), + (1.400000, 1.663003), + (1.575000, 1.563003), + (1.675000, 1.363003), + (1.612500, 1.125503), + (1.425000, 0.975503), + (1.262500, 1.000503), + (1.125000, 1.225503), + (1.100000, 1.388003), + (1.125000, 1.775503), + (1.275000, 1.850503), + (1.550000, 1.875503), + (1.750000, 1.850503), + (1.912500, 1.775503), + (2.100000, 1.563003), + (2.100000, 1.825503), + (2.312500, 1.688003), + (2.400000, 1.538003), + (2.500000, 1.300503), + (2.500000, 1.063003), + (2.412500, 0.900503), + (2.225000, 0.750503), + (2.025000, 0.575503), + (1.700000, 0.588003), + (1.575000, 0.825503), + (1.650000, 1.013003), + (1.937500, 1.100503), + (2.212500, 1.013003), + (2.375000, 0.813003), + (2.462500, 0.588003), + (2.462500, 0.413003), + (2.337500, 0.163003), + (2.175000, -0.011997), + (1.875000, -0.111997), + (1.700000, -0.111997), + (1.462500, -0.049497), + (1.237500, 0.113003), + (1.075000, 0.275503), + (0.650000, 0.763003)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=54; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform xscaled(0.85); +% +% khandta.fig (char 55) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,1.575,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (1.175000, 1.725503), + (1.062500, 1.713003), + (0.925000, 1.625503), + (0.962500, 1.400503), + (1.287500, 1.363003), + (1.412500, 1.638003), + (1.187500, 1.900503), + (0.637500, 1.888003), + (0.550000, 1.325503), + (0.950000, 1.000503), + (1.250000, 0.725503), + (1.237500, 0.400503), + (0.800000, 0.013003)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=55; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform xscaled(0.85); +% +% jafala.fig (char 56) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,0.787,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.012500, 1.913003), + (0.850000, 1.913003)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (0.387500, 1.888003), + (0.200000, 1.513003), + (0.575000, 0.950503), + (0.200000, 0.013003)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=56; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform xscaled(0.85); +% +% jafalaA.fig (char 57) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,0.787,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.012500, 1.913003), + (1.325000, 1.913003)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (1.025000, 1.875503), + (1.025000, -0.061997)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (0.387500, 1.888003), + (0.200000, 1.513003), + (0.575000, 0.950503), + (0.200000, 0.013003)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=57; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform xscaled(0.85); +% +% chndbndu.fig (char 58) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,0.039,0.000,0.787); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + circshade(0, (0.675000,2.690488),0.087500); + pickup pencircle scaled 0.70pt; + curve(true, false, + (0.350000, 2.652988), + (0.675000, 2.390488), + (1.025000, 2.790488)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=58; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform xscaled(0.85); +% +% kta.fig (char 59) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.638,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.087500, 1.950503), + (2.600000, 1.950503)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (0.662500, 1.250503), + (0.862500, 1.388003), + (1.012500, 1.363003), + (1.000000, 1.188003), + (0.687500, 1.138003), + (0.637500, 1.625503), + (1.037500, 1.888003), + (1.512500, 1.838003), + (1.725000, 1.525503), + (1.675000, 1.188003), + (1.562500, 1.013003), + (1.862500, 1.100503), + (2.062500, 0.838003), + (1.975000, 0.438003), + (1.812500, 0.188003), + (1.612500, 0.100503), + (1.237500, 0.113003), + (0.875000, 0.275503), + (0.562500, 0.550503), + (0.137500, 1.525503)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (1.575000, 1.013003), + (1.975000, 1.475503), + (2.287500, 1.600503), + (2.437500, 1.300503), + (2.212500, 1.188003), + (2.150000, 1.350503), + (2.375000, 1.525503)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=59; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform xscaled(0.85); +% +% dnari.fig (char 60) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,1.181,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + cycleshade(0, false, + (0.737500, 1.875503), + (0.737500, 0.425503), + (0.987500, 0.050503), + (0.987500, 1.563003), + (0.737500, 1.875503)); +endchar; +endmfpicenv; +end diff --git a/language/bengali/arosgn/mf/arosgnr.mf b/language/bengali/arosgn/mf/arosgnr.mf new file mode 100644 index 0000000000..3d6ac304c3 --- /dev/null +++ b/language/bengali/arosgn/mf/arosgnr.mf @@ -0,0 +1,565 @@ +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=48; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +% +% e.fig (char 49) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,1.969,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + cycleshade(0, false, + (1.350000, 1.750503), + (1.437500, 1.613003), + (1.450000, 1.475503), + (1.350000, 1.325503), + (1.150000, 1.238003), + (0.925000, 1.300503), + (0.787500, 1.450503), + (0.837500, 1.650503), + (0.887500, 1.850503), + (1.150000, 1.900503), + (1.512500, 1.900503), + (1.825000, 1.763003), + (1.950000, 1.538003), + (1.950000, 1.338003), + (1.950000, 0.225503), + (1.950000, -0.011997), + (1.725000, 0.000503), + (1.650000, 0.125503), + (1.400000, 0.238003), + (0.712500, 0.238003), + (0.550000, 0.338003), + (0.400000, 0.450503), + (0.225000, 0.675503), + (0.137500, 0.875503), + (0.062500, 1.150503), + (0.312500, 0.813003), + (0.512500, 0.600503), + (0.725000, 0.425503), + (1.450000, 0.425503), + (1.687500, 0.375503), + (1.750000, 0.275503), + (1.762500, 1.388003), + (1.725000, 1.475503), + (1.662500, 1.638003), + (1.550000, 1.700503), + (1.375000, 1.738003)); +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=49; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +% +% au.fig (char 50) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.362,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + cycleshade(0, true, + (1.225000, 2.013003), + (1.487500, 1.975503), + (1.787500, 1.825503), + (1.862500, 1.563003), + (1.787500, 1.338003), + (1.600000, 1.188003), + (1.825000, 1.113003), + (1.975000, 1.038003), + (2.087500, 0.813003), + (2.012500, 0.475503), + (1.862500, 0.250503), + (1.637500, 0.063003), + (1.412500, 0.025503), + (0.962500, 0.100503), + (0.625000, 0.325503), + (0.475000, 0.550503), + (0.362500, 0.813003), + (0.250000, 1.150503), + (0.437500, 0.813003), + (0.662500, 0.550503), + (1.000000, 0.325503), + (1.300000, 0.250503), + (1.712500, 0.400503), + (1.900000, 0.700503), + (1.787500, 0.888003), + (1.525000, 0.963003), + (1.337500, 1.000503), + (1.300000, 1.188003), + (1.600000, 1.375503), + (1.675000, 1.525503), + (1.600000, 1.713003), + (1.337500, 1.863003), + (1.187500, 1.713003), + (1.262500, 1.563003), + (1.112500, 1.375503), + (0.775000, 1.450503), + (0.775000, 1.750503), + (0.887500, 1.938003), + (1.225000, 2.013003)); + pickup pencircle scaled 0.50pt; + cycleshade(0, true, + (1.600000, 1.225503), + (1.787500, 1.300503), + (2.125000, 1.638003), + (2.012500, 1.863003), + (1.525000, 2.163003), + (1.637500, 2.425503), + (2.237500, 2.575503), + (1.900000, 2.425503), + (1.750000, 2.238003), + (2.012500, 2.050503), + (2.312500, 1.788003), + (2.350000, 1.675503), + (2.125000, 1.300503), + (1.862500, 1.150503), + (1.750000, 1.075503)); +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=50; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +% +% gu.fig (char 51) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.756,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.862500, 0.925503), + (1.212500, 1.000503), + (1.312500, 1.288003), + (0.775000, 1.488003), + (0.737500, 1.738003), + (1.225000, 1.988003), + (1.550000, 1.963003), + (2.100000, 1.625503), + (2.100000, 1.888003), + (2.400000, 1.600503), + (2.500000, 1.125503), + (2.225000, 0.813003), + (2.025000, 0.638003), + (1.700000, 0.650503), + (1.575000, 0.888003), + (1.650000, 1.075503), + (1.937500, 1.163003), + (2.212500, 1.075503), + (2.462500, 0.650503), + (2.337500, 0.225503), + (2.175000, 0.050503), + (1.875000, -0.049497), + (1.700000, -0.049497), + (1.462500, 0.013003), + (1.237500, 0.175503), + (1.075000, 0.338003), + (0.650000, 0.825503)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=51; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +% +% hu.fig (char 52) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.756,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + cycleshade(0, false, + (2.975000, 1.818623), + (0.462500, 1.818623), + (0.462500, 2.056123), + (2.975000, 2.056123), + (2.975000, 1.818623)); + cycleshade(0, true, + (1.475000, 1.481123), + (1.700000, 1.756123), + (2.125000, 1.581123), + (2.312500, 1.281123), + (2.362500, 0.956123), + (2.162500, 0.593623), + (1.825000, 0.431123), + (1.700000, 0.331123), + (2.112500, 0.181123), + (2.300000, 0.093623), + (2.662500, -0.068877), + (2.712500, -0.131377), + (2.687500, -0.206377), + (2.362500, -0.081377), + (2.162500, -0.031377), + (1.812500, 0.043623), + (1.512500, 0.168623), + (1.250000, 0.218623), + (0.987500, 0.331123), + (0.775000, 0.418623), + (0.712500, 0.593623), + (1.025000, 0.543623), + (1.262500, 0.493623), + (1.487500, 0.456123), + (1.875000, 0.581123), + (1.987500, 0.681123), + (2.112500, 0.831123), + (2.150000, 1.043623), + (2.150000, 1.093623), + (2.025000, 1.281123), + (1.762500, 1.493623), + (1.600000, 1.156123), + (1.337500, 1.281123), + (1.050000, 1.306123), + (1.012500, 1.056123), + (1.125000, 0.956123), + (1.312500, 1.043623), + (1.487500, 1.006123), + (1.525000, 0.943623), + (1.537500, 0.831123), + (1.462500, 0.768623), + (1.300000, 0.756123), + (1.162500, 0.756123), + (0.975000, 0.781123), + (0.762500, 0.918623), + (0.662500, 1.131123), + (0.712500, 1.356123), + (0.850000, 1.531123), + (1.025000, 1.593623), + (1.112500, 1.593623), + (1.475000, 1.481123)); +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=52; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +% +% ru.fig (char 53) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.756,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + circle((1.025000,0.079249),0.100000); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (1.950000, 1.966749), + (1.950000, 0.104249), + (0.312500, 0.954249), + (1.950000, 1.779249)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.087500, 1.966749), + (2.925000, 1.966749)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (1.987500, 0.891749), + (2.612500, 0.754249), + (2.825000, 1.204249), + (2.600000, 1.466749), + (2.325000, 1.291749), + (2.600000, 1.054249), + (2.762500, 1.266749)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=53; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +% +% shu.fig (char 54) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.638,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.550000, 1.850503), + (0.375000, 1.725503), + (0.662500, 1.863003), + (0.925000, 1.850503), + (1.125000, 1.788003), + (1.075000, 1.263003), + (1.025000, 1.075503), + (0.850000, 1.013003), + (0.737500, 0.975503), + (0.525000, 1.113003), + (0.500000, 1.250503), + (0.525000, 1.463003), + (0.725000, 1.613003), + (0.975000, 1.700503), + (1.225000, 1.725503), + (1.400000, 1.663003), + (1.575000, 1.563003), + (1.675000, 1.363003), + (1.612500, 1.125503), + (1.425000, 0.975503), + (1.262500, 1.000503), + (1.125000, 1.225503), + (1.100000, 1.388003), + (1.125000, 1.775503), + (1.275000, 1.850503), + (1.550000, 1.875503), + (1.750000, 1.850503), + (1.912500, 1.775503), + (2.100000, 1.563003), + (2.100000, 1.825503), + (2.312500, 1.688003), + (2.400000, 1.538003), + (2.500000, 1.300503), + (2.500000, 1.063003), + (2.412500, 0.900503), + (2.225000, 0.750503), + (2.025000, 0.575503), + (1.700000, 0.588003), + (1.575000, 0.825503), + (1.650000, 1.013003), + (1.937500, 1.100503), + (2.212500, 1.013003), + (2.375000, 0.813003), + (2.462500, 0.588003), + (2.462500, 0.413003), + (2.337500, 0.163003), + (2.175000, -0.011997), + (1.875000, -0.111997), + (1.700000, -0.111997), + (1.462500, -0.049497), + (1.237500, 0.113003), + (1.075000, 0.275503), + (0.650000, 0.763003)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=54; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +% +% khandta.fig (char 55) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,1.575,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (1.175000, 1.725503), + (1.062500, 1.713003), + (0.925000, 1.625503), + (0.962500, 1.400503), + (1.287500, 1.363003), + (1.412500, 1.638003), + (1.187500, 1.900503), + (0.637500, 1.888003), + (0.550000, 1.325503), + (0.950000, 1.000503), + (1.250000, 0.725503), + (1.237500, 0.400503), + (0.800000, 0.013003)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=55; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +% +% jafala.fig (char 56) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,0.787,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.012500, 1.913003), + (0.850000, 1.913003)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (0.387500, 1.888003), + (0.200000, 1.513003), + (0.575000, 0.950503), + (0.200000, 0.013003)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=56; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +% +% jafalaA.fig (char 57) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,0.787,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.012500, 1.913003), + (1.325000, 1.913003)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (1.025000, 1.875503), + (1.025000, -0.061997)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (0.387500, 1.888003), + (0.200000, 1.513003), + (0.575000, 0.950503), + (0.200000, 0.013003)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=57; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +% +% chndbndu.fig (char 58) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,0.039,0.000,0.787); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + circshade(0, (0.675000,2.690488),0.087500); + pickup pencircle scaled 0.70pt; + curve(true, false, + (0.350000, 2.652988), + (0.675000, 2.390488), + (1.025000, 2.790488)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=58; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +% +% kta.fig (char 59) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.638,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.087500, 1.950503), + (2.600000, 1.950503)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (0.662500, 1.250503), + (0.862500, 1.388003), + (1.012500, 1.363003), + (1.000000, 1.188003), + (0.687500, 1.138003), + (0.637500, 1.625503), + (1.037500, 1.888003), + (1.512500, 1.838003), + (1.725000, 1.525503), + (1.675000, 1.188003), + (1.562500, 1.013003), + (1.862500, 1.100503), + (2.062500, 0.838003), + (1.975000, 0.438003), + (1.812500, 0.188003), + (1.612500, 0.100503), + (1.237500, 0.113003), + (0.875000, 0.275503), + (0.562500, 0.550503), + (0.137500, 1.525503)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (1.575000, 1.013003), + (1.975000, 1.475503), + (2.287500, 1.600503), + (2.437500, 1.300503), + (2.212500, 1.188003), + (2.150000, 1.350503), + (2.375000, 1.525503)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=59; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +% +% dnari.fig (char 60) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,1.181,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + cycleshade(0, false, + (0.737500, 1.875503), + (0.737500, 0.425503), + (0.987500, 0.050503), + (0.987500, 1.563003), + (0.737500, 1.875503)); +endchar; +endmfpicenv; +end diff --git a/language/bengali/arosgn/mf/arosgns.mf b/language/bengali/arosgn/mf/arosgns.mf new file mode 100644 index 0000000000..8d489261aa --- /dev/null +++ b/language/bengali/arosgn/mf/arosgns.mf @@ -0,0 +1,577 @@ +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=48; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform slanted(0.25) xscaled(0.80); +% +% e.fig (char 49) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,1.969,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + cycleshade(0, false, + (1.350000, 1.750503), + (1.437500, 1.613003), + (1.450000, 1.475503), + (1.350000, 1.325503), + (1.150000, 1.238003), + (0.925000, 1.300503), + (0.787500, 1.450503), + (0.837500, 1.650503), + (0.887500, 1.850503), + (1.150000, 1.900503), + (1.512500, 1.900503), + (1.825000, 1.763003), + (1.950000, 1.538003), + (1.950000, 1.338003), + (1.950000, 0.225503), + (1.950000, -0.011997), + (1.725000, 0.000503), + (1.650000, 0.125503), + (1.400000, 0.238003), + (0.712500, 0.238003), + (0.550000, 0.338003), + (0.400000, 0.450503), + (0.225000, 0.675503), + (0.137500, 0.875503), + (0.062500, 1.150503), + (0.312500, 0.813003), + (0.512500, 0.600503), + (0.725000, 0.425503), + (1.450000, 0.425503), + (1.687500, 0.375503), + (1.750000, 0.275503), + (1.762500, 1.388003), + (1.725000, 1.475503), + (1.662500, 1.638003), + (1.550000, 1.700503), + (1.375000, 1.738003)); +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=49; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform slanted(0.25) xscaled(0.80); +% +% au.fig (char 50) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.362,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + cycleshade(0, true, + (1.225000, 2.013003), + (1.487500, 1.975503), + (1.787500, 1.825503), + (1.862500, 1.563003), + (1.787500, 1.338003), + (1.600000, 1.188003), + (1.825000, 1.113003), + (1.975000, 1.038003), + (2.087500, 0.813003), + (2.012500, 0.475503), + (1.862500, 0.250503), + (1.637500, 0.063003), + (1.412500, 0.025503), + (0.962500, 0.100503), + (0.625000, 0.325503), + (0.475000, 0.550503), + (0.362500, 0.813003), + (0.250000, 1.150503), + (0.437500, 0.813003), + (0.662500, 0.550503), + (1.000000, 0.325503), + (1.300000, 0.250503), + (1.712500, 0.400503), + (1.900000, 0.700503), + (1.787500, 0.888003), + (1.525000, 0.963003), + (1.337500, 1.000503), + (1.300000, 1.188003), + (1.600000, 1.375503), + (1.675000, 1.525503), + (1.600000, 1.713003), + (1.337500, 1.863003), + (1.187500, 1.713003), + (1.262500, 1.563003), + (1.112500, 1.375503), + (0.775000, 1.450503), + (0.775000, 1.750503), + (0.887500, 1.938003), + (1.225000, 2.013003)); + pickup pencircle scaled 0.50pt; + cycleshade(0, true, + (1.600000, 1.225503), + (1.787500, 1.300503), + (2.125000, 1.638003), + (2.012500, 1.863003), + (1.525000, 2.163003), + (1.637500, 2.425503), + (2.237500, 2.575503), + (1.900000, 2.425503), + (1.750000, 2.238003), + (2.012500, 2.050503), + (2.312500, 1.788003), + (2.350000, 1.675503), + (2.125000, 1.300503), + (1.862500, 1.150503), + (1.750000, 1.075503)); +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=50; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform slanted(0.25) xscaled(0.80); +% +% gu.fig (char 51) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.756,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.862500, 0.925503), + (1.212500, 1.000503), + (1.312500, 1.288003), + (0.775000, 1.488003), + (0.737500, 1.738003), + (1.225000, 1.988003), + (1.550000, 1.963003), + (2.100000, 1.625503), + (2.100000, 1.888003), + (2.400000, 1.600503), + (2.500000, 1.125503), + (2.225000, 0.813003), + (2.025000, 0.638003), + (1.700000, 0.650503), + (1.575000, 0.888003), + (1.650000, 1.075503), + (1.937500, 1.163003), + (2.212500, 1.075503), + (2.462500, 0.650503), + (2.337500, 0.225503), + (2.175000, 0.050503), + (1.875000, -0.049497), + (1.700000, -0.049497), + (1.462500, 0.013003), + (1.237500, 0.175503), + (1.075000, 0.338003), + (0.650000, 0.825503)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=51; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform slanted(0.25) xscaled(0.80); +% +% hu.fig (char 52) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.756,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + cycleshade(0, false, + (2.975000, 1.818623), + (0.462500, 1.818623), + (0.462500, 2.056123), + (2.975000, 2.056123), + (2.975000, 1.818623)); + cycleshade(0, true, + (1.475000, 1.481123), + (1.700000, 1.756123), + (2.125000, 1.581123), + (2.312500, 1.281123), + (2.362500, 0.956123), + (2.162500, 0.593623), + (1.825000, 0.431123), + (1.700000, 0.331123), + (2.112500, 0.181123), + (2.300000, 0.093623), + (2.662500, -0.068877), + (2.712500, -0.131377), + (2.687500, -0.206377), + (2.362500, -0.081377), + (2.162500, -0.031377), + (1.812500, 0.043623), + (1.512500, 0.168623), + (1.250000, 0.218623), + (0.987500, 0.331123), + (0.775000, 0.418623), + (0.712500, 0.593623), + (1.025000, 0.543623), + (1.262500, 0.493623), + (1.487500, 0.456123), + (1.875000, 0.581123), + (1.987500, 0.681123), + (2.112500, 0.831123), + (2.150000, 1.043623), + (2.150000, 1.093623), + (2.025000, 1.281123), + (1.762500, 1.493623), + (1.600000, 1.156123), + (1.337500, 1.281123), + (1.050000, 1.306123), + (1.012500, 1.056123), + (1.125000, 0.956123), + (1.312500, 1.043623), + (1.487500, 1.006123), + (1.525000, 0.943623), + (1.537500, 0.831123), + (1.462500, 0.768623), + (1.300000, 0.756123), + (1.162500, 0.756123), + (0.975000, 0.781123), + (0.762500, 0.918623), + (0.662500, 1.131123), + (0.712500, 1.356123), + (0.850000, 1.531123), + (1.025000, 1.593623), + (1.112500, 1.593623), + (1.475000, 1.481123)); +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=52; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform slanted(0.25) xscaled(0.80); +% +% ru.fig (char 53) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.756,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + circle((1.025000,0.079249),0.100000); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (1.950000, 1.966749), + (1.950000, 0.104249), + (0.312500, 0.954249), + (1.950000, 1.779249)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.087500, 1.966749), + (2.925000, 1.966749)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (1.987500, 0.891749), + (2.612500, 0.754249), + (2.825000, 1.204249), + (2.600000, 1.466749), + (2.325000, 1.291749), + (2.600000, 1.054249), + (2.762500, 1.266749)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=53; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform slanted(0.25) xscaled(0.80); +% +% shu.fig (char 54) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.638,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.550000, 1.850503), + (0.375000, 1.725503), + (0.662500, 1.863003), + (0.925000, 1.850503), + (1.125000, 1.788003), + (1.075000, 1.263003), + (1.025000, 1.075503), + (0.850000, 1.013003), + (0.737500, 0.975503), + (0.525000, 1.113003), + (0.500000, 1.250503), + (0.525000, 1.463003), + (0.725000, 1.613003), + (0.975000, 1.700503), + (1.225000, 1.725503), + (1.400000, 1.663003), + (1.575000, 1.563003), + (1.675000, 1.363003), + (1.612500, 1.125503), + (1.425000, 0.975503), + (1.262500, 1.000503), + (1.125000, 1.225503), + (1.100000, 1.388003), + (1.125000, 1.775503), + (1.275000, 1.850503), + (1.550000, 1.875503), + (1.750000, 1.850503), + (1.912500, 1.775503), + (2.100000, 1.563003), + (2.100000, 1.825503), + (2.312500, 1.688003), + (2.400000, 1.538003), + (2.500000, 1.300503), + (2.500000, 1.063003), + (2.412500, 0.900503), + (2.225000, 0.750503), + (2.025000, 0.575503), + (1.700000, 0.588003), + (1.575000, 0.825503), + (1.650000, 1.013003), + (1.937500, 1.100503), + (2.212500, 1.013003), + (2.375000, 0.813003), + (2.462500, 0.588003), + (2.462500, 0.413003), + (2.337500, 0.163003), + (2.175000, -0.011997), + (1.875000, -0.111997), + (1.700000, -0.111997), + (1.462500, -0.049497), + (1.237500, 0.113003), + (1.075000, 0.275503), + (0.650000, 0.763003)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=54; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform slanted(0.25) xscaled(0.80); +% +% khandta.fig (char 55) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,1.575,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (1.175000, 1.725503), + (1.062500, 1.713003), + (0.925000, 1.625503), + (0.962500, 1.400503), + (1.287500, 1.363003), + (1.412500, 1.638003), + (1.187500, 1.900503), + (0.637500, 1.888003), + (0.550000, 1.325503), + (0.950000, 1.000503), + (1.250000, 0.725503), + (1.237500, 0.400503), + (0.800000, 0.013003)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=55; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform slanted(0.25) xscaled(0.80); +% +% jafala.fig (char 56) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,0.787,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.012500, 1.913003), + (0.850000, 1.913003)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (0.387500, 1.888003), + (0.200000, 1.513003), + (0.575000, 0.950503), + (0.200000, 0.013003)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=56; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform slanted(0.25) xscaled(0.80); +% +% jafalaA.fig (char 57) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,0.787,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.012500, 1.913003), + (1.325000, 1.913003)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (1.025000, 1.875503), + (1.025000, -0.061997)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (0.387500, 1.888003), + (0.200000, 1.513003), + (0.575000, 0.950503), + (0.200000, 0.013003)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=57; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform slanted(0.25) xscaled(0.80); +% +% chndbndu.fig (char 58) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,0.039,0.000,0.787); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + circshade(0, (0.675000,2.690488),0.087500); + pickup pencircle scaled 0.70pt; + curve(true, false, + (0.350000, 2.652988), + (0.675000, 2.390488), + (1.025000, 2.790488)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=58; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform slanted(0.25) xscaled(0.80); +% +% kta.fig (char 59) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,2.638,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(false, false, + (0.087500, 1.950503), + (2.600000, 1.950503)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (0.662500, 1.250503), + (0.862500, 1.388003), + (1.012500, 1.363003), + (1.000000, 1.188003), + (0.687500, 1.138003), + (0.637500, 1.625503), + (1.037500, 1.888003), + (1.512500, 1.838003), + (1.725000, 1.525503), + (1.675000, 1.188003), + (1.562500, 1.013003), + (1.862500, 1.100503), + (2.062500, 0.838003), + (1.975000, 0.438003), + (1.812500, 0.188003), + (1.612500, 0.100503), + (1.237500, 0.113003), + (0.875000, 0.275503), + (0.562500, 0.550503), + (0.137500, 1.525503)); + pickup pencircle scaled 0.50pt; + pickup pencircle scaled 0.70pt; + curve(true, false, + (1.575000, 1.013003), + (1.975000, 1.475503), + (2.287500, 1.600503), + (2.437500, 1.300503), + (2.212500, 1.188003), + (2.150000, 1.350503), + (2.375000, 1.525503)); + pickup pencircle scaled 0.50pt; +endchar; +endmfpicenv; +% +% /home/users/masroor/MyOwn/bin/fig2MF version 0.04 --- Preamble +% +mag:=1000/1000; input graphbase.mf; code:=59; +mfpicenv; +interim hdwdr:=1; interim hdten:=1; +interim penwd:=0.50pt; +pickup pencircle scaled penwd; +currenttransform:=currenttransform slanted(0.25) xscaled(0.80); +% +% dnari.fig (char 60) +% +xscale:=0.043; yscale:=0.043; bounds(0.000,1.181,0.000,1.969); +beginchar(incr code,xscale*(xpos-xneg)*in#,yscale*(ypos-yneg)*in#,0); + setztr; + pickup pencircle scaled 0.50pt; + cycleshade(0, false, + (0.737500, 1.875503), + (0.737500, 0.425503), + (0.987500, 0.050503), + (0.987500, 1.563003), + (0.737500, 1.875503)); +endchar; +endmfpicenv; +end diff --git a/language/bengali/arosgn/samples/asgalone.tex b/language/bengali/arosgn/samples/asgalone.tex new file mode 100644 index 0000000000..d01a7342dc --- /dev/null +++ b/language/bengali/arosgn/samples/asgalone.tex @@ -0,0 +1,51 @@ +% This file is a sample for when you want to +% use arosgn on a stand-alone basis. + +% Use command, +% latex asgalone.tex +% to generate the .dvi file from this file. + +\documentclass[12pt]{article} +\usepackage{arosgn} + +% Comment out the above two lines and uncomment the +% following line for LaTeX 2.09. + +%\documentstyle[12pt,arosgn] + +\begin{document} + +{\large\bf Below, you are supposed to see some meaningless english +characters intermixed with bangla characters defined +in arosgn.sty.} + +\bigskip +\bigskip + + +\e\gu lo ki axar + + +{\bngls\e\gu lo ki axar} + + +\cb chaadera haasira \cb baadha bhengechhe + +kahe sandh\yaa rabi + +\shu nifaa jaga\th\ rahe ni\ru ttara chhabi + +\gu\ru mashaai taahale \shu\ru\ karaa yaaka + +\au rangajiiba ki pada\ya\ likhatena + + +{\bnglc\au rangajiiba ki pada\ya\ likhatena} + +\hu jurera \hu kuma, \hu juga tulabena +naa, aara \gu jabe kaan deben naa +kokilera ku\hu taana \shu nuna + +\e i baake\ya ra sheshhe \cb daaRi aachhe\| + +\end{document} diff --git a/language/bengali/arosgn/samples/itrsgasg.itx b/language/bengali/arosgn/samples/itrsgasg.itx new file mode 100644 index 0000000000..327ee4526d --- /dev/null +++ b/language/bengali/arosgn/samples/itrsgasg.itx @@ -0,0 +1,41 @@ +% This file is a sample for when you have sgaon fonts, +% itrans and arosgn installed in your system. + +% Use commands, +% itrans -i itrsgasg.itx -o itrsgasg.tex +% latex itrsgasg.tex +% to generate the .dvi file from this file. + +\documentclass[12pt]{article} +\usepackage{sgaon,arosgn} + +% Comment out the above two lines and uncomment the +% following line for LaTeX 2.09. + +%\documentstyle[12pt,sgaon,arosgn] + +#bengaliifm=sgaonpk.ifm +#bengalifont=\bnglr + +\begin{document} + +\noindent English text + +You know the great thing about TV? If something important happens +anywhere at all in the world, no matter what time of the day or night, +you can always change the channel. + +\bigskip + +\noindent #bengali bA.nlA lekhA + +\e kaTaa jinisera subipula uchchataa o tatadhika +bistR^iti dekhifaai kichhu \e\ bhaaba mane aase naa; +kaaraNa taa ha_ile himaalfera ye-kona angaprat\ya nga_i +ta yatheshhTa \| kintu \e i ye biraaTa b\yaa paara jiibantera +mata chhuTifaa aasitechhe sei aparimefa gatisha\kti ra +anubhuuti_i aamaake abhibhuuta karifaa phelifaachhila \| + +#endbengali + +\end{document} diff --git a/language/bengali/arosgn/sgaon.sty b/language/bengali/arosgn/sgaon.sty new file mode 100644 index 0000000000..8a55504e07 --- /dev/null +++ b/language/bengali/arosgn/sgaon.sty @@ -0,0 +1,15 @@ +% Headers required for using the sonar gaon font. + +% $Header: /home/users/masroor/TeX/sty/RCS/sgaon.sty,v 1.1 1996/02/01 03:26:04 masroor Exp $ + +% $Log: sgaon.sty,v $ +% Revision 1.1 1996/02/01 03:26:04 masroor +% Initial revision +% + +\newfont{\bnglr}{bng10rpn} % normal font +\newfont{\bngls}{bn100ipn} % slanted font +\newfont{\bnglc}{bn100rpn} % compressed font +\hyphenchar\bnglr=-1 % disable hyphenation using this font +\hyphenchar\bngls=-1 % disable hyphenation using this font +\hyphenchar\bnglc=-1 % disable hyphenation using this font diff --git a/language/bengali/arosgn/tfm/arosgnc.tfm b/language/bengali/arosgn/tfm/arosgnc.tfm Binary files differnew file mode 100644 index 0000000000..4e29bbc315 --- /dev/null +++ b/language/bengali/arosgn/tfm/arosgnc.tfm diff --git a/language/bengali/arosgn/tfm/arosgnr.tfm b/language/bengali/arosgn/tfm/arosgnr.tfm Binary files differnew file mode 100644 index 0000000000..4e29bbc315 --- /dev/null +++ b/language/bengali/arosgn/tfm/arosgnr.tfm diff --git a/language/bengali/arosgn/tfm/arosgns.tfm b/language/bengali/arosgn/tfm/arosgns.tfm Binary files differnew file mode 100644 index 0000000000..4e29bbc315 --- /dev/null +++ b/language/bengali/arosgn/tfm/arosgns.tfm diff --git a/language/bengali/bangtex/README.bangtex b/language/bengali/bangtex/README.bangtex new file mode 100644 index 0000000000..fb95bbceb5 --- /dev/null +++ b/language/bengali/bangtex/README.bangtex @@ -0,0 +1,7 @@ +The bangtex package contains font and class (style) files for +typesetting in Bangla and Assamese. Detailed information can be +obtained from the internet site + +http://tnp.saha.ernet.in/~pbpal + +under the section called `Software help'.
\ No newline at end of file diff --git a/language/bengali/bangtex/examples/manual.tex b/language/bengali/bangtex/examples/manual.tex new file mode 100644 index 0000000000..967e27f32a --- /dev/null +++ b/language/bengali/bangtex/examples/manual.tex @@ -0,0 +1,1265 @@ +\documentclass[12pt]{barticle} + + +\textwidth=16cm +\textheight=22cm +\oddsidemargin=0mm +\evensidemargin=0mm +\tolerance=10000 + + + + +\def\tex{{\rm\TeX}} +\def\latex{{\rm\LaTeX}} +\def\totype#1{{\tt #1}} +%\def\cinho#1{{\bng #1} & \totype{#1}} +\def\cinho#1{\totype{#1} & {\bng #1}} +\def\demo#1{\framebox{\framebox{\totype{#1}}$\Longrightarrow$\framebox{\bng #1}}} +\def\Demo#1#2{\framebox{\framebox{\totype{#1}}$ \Longrightarrow +$\framebox{\bng #2}}} + + +\makeindex + + +\begin{document} +\bng +\begin{titlepage} +\begin{center} + +{\Lbng {\Large \tex} ba {\Large \latex}-E baNNGla \*l*ekha} + +\vfill + +{\lbng polash boron pal} + +\vfill\vfill + +E\*pR*il 2001 + +\end{center} +\end{titlepage} +\setcounter{page}{2} + + +\tableofcontents + +\newpage + +%%%%%%%%%%%%%%%%%%%% +\section{shuru korar Aa\*g*e kii kii dorkar} +%%%%%%%%%%%%%%%%%%%% +\tex\ ba \latex\ phaI\*l*e baNNGla Horoph bYoboHar kor\*t*e Ho\*l*e +pRothomoto baNNGla Horophgu\*l*ea\*k*e Aapnar ko\*m/p*iUTa\*r*e +rakh\*t*e Ho\*b*e. ETa kii ko\*r*e kor\*t*e Ho\*b*e, ta Ekha\*n*e +Aa\*l*ea\*c*ito Ho\*b*e na. tar pRothom karoN, pRos/tu\*t*ir EI +ANNGsho\*T*i AAk AAk rokom ko\*m/p*iUTa\*r*e AAk AAk +rokom. \*dW*itiiyo karoN, EI ANNGsho\*T*i\*t*e ko\*m/p*iUTar +soNNGkRan/to po\*r*ibhaShar pRo\*y*eajon AA\*t*ea \*b*e\*sh*i Ho\*b*e +\*J*e Aa\*l*eacona INNG\*r*i\*j*i\*t*e Ho\*l*eI su\*b*i\*dh*e. E kotha +taI Aalada ko\*r*e Aa\*l*eacona kora Ho\*y*e\*ch*e \*b*i\*bh*in/no +rokom ko\*m/p*iUTa\*r*er jonYo, {\rm `How to install bangtex'} +shiir/Shok ANNG\*sh*e. + +\tex\ ba \latex\ Jo\*d*i Aap\*n*i Aa\*g*e kokho\*n*ea bYoboHar na +ko\*r*e tha\*k*en, taHo\*l*e EI \*n*i\*r/d*e\*sh*ika po\*rh*e Aapnar +khub Upokar Ho\*b*e bo\*l*e mo\*n*e Hoy na. Ar/that//, Aamar dharoNa, +pRotho\*m*eI baNNGla \*d*i\*y*e \tex\ ba \latex-E \*k*ichu \*l*ekhar +\*c*eSh/Ta kor\*b*en na. Jo\*d*i \tex\ ba \latex\ na ja\*n*en, +taHo\*l*e pRotho\*m*e INNG\*r*i\*j*i\*t*e \*k*ichu \*l*i\*kh*e EI +pod/dho\*t*i\*t*e AbhYos/to Ho\*y*e \*n*in. + + +%%%%%%%%%%%%%%%%%%%% +\section{phaI\*l*er goThon} +%%%%%%%%%%%%%%%%%%%% +EI ANNG\*sh*e pRotho\*m*e \latex\ phaI\*l*er goThon som/po\*r/k*e +bol\*ch*i. EI phaI\*l*er pRothom laIn\*T*i\*t*e +\verb!\documentclass!-Er Ek\*T*i \*gh*eaShoNa thak\*b*e. EI +\*gh*eaShoNa \*J*e \*J*e bha\*b*e kora \*J*e\*t*e +pa\*r*e, tar nomuna \*n*i\*c*e \*l*i\*kh*e \*d*ekha\*c/ch*i. +%% +\begin{quote} +\begin{minipage}{.4\textwidth} +\verb!\documentclass{bbook} ! \\ +\verb!\documentclass[11pt]{bbook} ! \\ +\verb!\documentclass[12pt]{bbook} ! +\end{minipage} +% +\framebox{\parbox{.4\textwidth}{\*J*e \*k*ea\*n*ea Ek\*T*i matRo. +\totype{bbook}-Er jaygay \totype{barticle} ba +\totype{bletter}-O \*d*eOya \*J*e\*t*e pa\*r*e. \*n*i\*c*e porhun. +}} +\end{quote} +%% +Er +\*J*e \*k*ea\*n*ea Ek\*T*i laIn \*l*i\*kh*e phaIl shuru kor\*t*e +pa\*r*en. Ekha\*n*e \totype{bbook} ma\*n*e Ho\*l*ea \totype{bangla +book}. Ar/that// EI phaIl\*T*i baNNGlay boI \*l*ekhar Upo\*J*eagii +ko\*r*e \*t*{oi}\*r*i kora Ho\*y*e\*ch*e. \*J*emon, pRo\*t*i\*T*i +AdhYa\*y*er shuru\*t*e AdhYa\*y*er nam\*T*i bo\*rh*ea Horo\*ph*e +bos\*b*e, porobor/tii patagu\*l*ear Opo\*r*e AdhYa\*y*er nam bos\*b*e +Aapna-Aap\*n*i, Jo\*d*i AboshYo \*s*eI AdhYa\*y*er namTa \latex-Er +\*b*idhan AnuJayii \verb!\chapter! \*d*i\*y*e \*l*ekha Hoy. E charhaO +\latex-Er \totype{book} bYoboHar kor\*l*e Ja Ja Hoy, \*m*eaTamu\*T*i +\*s*eI sob su\*b*idha paOya Ja\*b*e. \*t*em\*n*i \latex-Er +\totype{article} bYoboHar kor\*l*e Ja Ja Hoy, \*m*eaTamu\*T*i \*s*eI +sob su\*b*idha paOya Ja\*b*e \totype{barticle} bYoboHar +kor\*l*e. du\*T*ir mo\*dhY*e pRodhan tophat, \totype{barticle}-E +\verb!\chapter! bo\*l*e \*k*ea\*n*ea \*b*ibhag Hoy +na. \totype{bbook}-E Hoy, EboNNG EI \*b*ibhag\*T*i Ek\*T*i notun patay +shuru Hoy. Aar \totype{bletter} Ho\*l*e paOya Ja\*b*e \*c*i\*Th*i +\*l*ekhar su\*b*idha, \latex-Er \totype{letter}-E Ja tha\*k*e. nomunar +jonYo \*J*e sob phaIl Aa\*ch*e \totype{bangtex}-Er bhaN/Da\*r*e, tar +mo\*dhY*e Er nomuna pa\*b*en. + +U\*l/l*i\*kh*ito pRothom laIn\*T*ir por \latex\ phaI\*l*e Ja tha\*k*e, +ta\*k*e \latex-Er \*n*i\*r/d*e\*sh*ikay bo\*l*e \totype{preamble}, +baNNGlay bola \*J*e\*t*e pa\*r*e `\*g*eouroco\*n/dR*ika'. EI +ANNG\*sh*e thak\*t*e pa\*r*e \*l*ekha\*T*ir samo\*gR*ik ruup +som/po\*r/k*e \*k*ichu tothYo, \*J*emon dhora Jak \*sh*eSh Ab\*dh*i +chapa Ho\*l*e \*s*eI chapar \*d*{oi}r/ghYo pRos/tho ItYa\*d*i ko\*t*ea +Ho\*b*e, pa\*sh*er ma\*r/j*in ko\*t*ea Ho\*b*e ItYa\*d*i. EI +ANNGsho\*T*i\*t*e baNNGla \*l*ekhar jonYo \*b*i\*sh*iSh/To \*k*ichu +kor\*t*e Ho\*b*e na, taI E som/po\*r/k*e \*b*is/ta\*r*ito janbar jonYo +\latex\ \*n*i\*r/d*e\*sh*ika porhun. + + +phaI\*l*er ba\*k*i ANNG\*sh*er goThon Ho\*b*e EI rokom~:\\ +%% +\begin{minipage}{\textwidth} +\begin{quote} +\begin{verbatim} +\begin{document} +\bng +****** +\end{document} +\end{verbatim} +\end{quote} +\end{minipage} +%% +Er mo\*dhY*e tara \*c*in/Ho \*J*ekha\*n*e \*d*eOya Aa\*ch*e, +\*s*eIkha\*n*e Ja\*b*e \*l*ekhaTa. \*s*eI ANNGshoTa kii ko\*r*e +\*l*ekha Ho\*b*e, \*s*eITaI Aama\*d*er pRodhan Aa\*l*eacYo, \*s*eI +kothay Aas\*ch*i. + +tar Aa\*g*e shudhu EkTu bo\*l*e \*n*iI, \latex\ na Ho\*y*e \tex\ +Ho\*l*e kii kor\*t*e Ho\*b*e. \*s*e \*kK*e\*tR*e phaI\*l*er goThon +Ho\*b*e EI rokom:\\ +%% +\begin{minipage}{\textwidth} +\begin{quote} +\begin{verbatim} +\input bangfont +\bngx +****** +\bye +\end{verbatim} +\end{quote} +\end{minipage} +%% +\latex-Er mo\*t*ea EI \*kK*e\*tR*eO tara \*c*in/Hogu\*l*ir jaygay +bos\*b*e Aasol \*l*ekhaTa. \*sh*e\*Sh*er \verb \bye \ Ho\*l*ea phaIl +\*sh*eSh korar soNNG\*k*et. Aar pRothom laIn\*T*i Ho\*l*ea +baNNGla Horo\*ph*er \*gh*eaShoNa. EI \*gh*eaShoNar po\*r*e \*J*e +laIn\*T*i Aa\*ch*e, ta\*t*e \totype{$\backslash$bngx} \*l*ekhar +pho\*l*e \*l*ekha Ho\*b*e 10 po\*y*e\*n/T*er baNNGla Horo\*ph*e. +AnYo ma\*p*er HorophO pRo\*y*eajon Ho\*t*e pa\*r*e. ta kii +ko\*r*e \*p*e\*t*e Hoy, ta po\*r*e bol\*b*ea. +Aapatoto Horo\*ph*er ma\*p*er \*c*in/ta multu\*b*i \*r*e\*kh*e +kii \*l*ekha Ja\*b*e tar \*c*in/ta kora Jak. + +%%%%%%%%%%%%%%%%%%%% +\section{baNNGla \*l*ekha~: dha\*p*e dha\*p*e} +\subsection{pRothom dhap~: shud/dho sWor O bYoNJ/jon} +%%%%%%%%%%%%%%%%%%%% +baNNGla \*l*ekhar kotha UTh\*l*eI soko\*l*e bYo\*t*ibYos/to Ho\*y*e +pRosh/no ko\*r*en, `Juk/tobYoNJ/jon kii ko\*r*e \*l*ekha Ho\*b*e bolun +\*t*ea?' --- Aamar Anu\*r*eadh, E \*c*in/ta multu\*b*i +rakhun, tar Aa\*g*e Aa\*r*ea A\*n*ek kotha bolar Aa\*ch*e. + +sob\*c*e\*y*e Aa\*g*e bola Jak, shud/dho bYoNJ/jongu\*l*ea kiibha\*b*e +\*l*ekha Ho\*b*e. \ref{t:conso} nom/bor cho\*k*e Aa\*m*i +po\*r*i\*b*eshon kor\*ch*i EI tothYo. lom/balo\*m/b*i pNNac\*T*i +bo\*rh*ea bhag Aa\*ch*e chok\*T*i\*t*e. pRo\*t*i bha\*g*er mo\*dhY*e +du\*T*i ko\*r*e \*j*i\*n*is \*l*ekha --- tiir\*c*i\*n/H*er Dan +\*d*i\*k*e baNNGla bor/Nogu\*l*ea, bNNa\*d*i\*k*e Aa\*ch*e ta chapar +jonYo \tex\ ba \latex\ phaI\*l*e kii \*l*ikh\*t*e Ho\*b*e. EkI kayday +\ref{t:vow} nom/bor cho\*k*e \*d*eOya Ho\*l*ea sob ko\*T*i +\*b*ishud/dho sWorobor/No. +%% +%% +\begin{table}[hhh] +\begin{center} +\caption{baNNGla shud/dho bYoNJ/jon.\label{t:conso}} +\begin{tabular} +{||c|@{$\to$}|c||c|@{$\to$}|c||c|@{$\to$}|c||c|@{$\to$}|c||c|@{$\to$}|c||} +\hline +\cinho k & \cinho {kh} & \cinho g & \cinho{gh} & \cinho {NG} \\ +\hline +\cinho c & \cinho {ch} & \cinho j & \cinho{jh} & \cinho {NJ} \\ +\hline +\cinho T & \cinho {Th} & \cinho D & \cinho{Dh} & \cinho {N} \\ +\hline +\cinho t & \cinho {th} & \cinho d & \cinho{dh} & \cinho {n} \\ +\hline +\cinho p & \cinho {ph} & \cinho b & \cinho{bh} & \cinho {m} \\ +\hline +\cinho J & \cinho r & \cinho l & \cinho H & \cinho {kK} \\ +\hline +\cinho {sh} & \cinho {Sh} & \cinho s & \cinho{rh} & \cinho {rhh} \\ +\hline +\cinho y & \cinho {t//} & \cinho {NNG} & \cinho{h} & \cinho {NN} \\ +\hline +\end{tabular} +%% +\\ \bigskip +%% +\caption{baNNGla shud/dho sWorbor/No.\label{t:vow}} +\begin{tabular} +{||c|@{$\to$}|c||c|@{$\to$}|c||c|@{$\to$}|c||c|@{$\to$}|c||} +\hline +\cinho A & \cinho {Aa} & \cinho I & \cinho{II} \\ +\hline +\cinho U & \cinho {UU} & \cinho {RR} & \multicolumn{2}{|c||}{}\\ +\hline +\cinho E & \cinho {OI} & \cinho O & \cinho{OU} \\ +\hline +\end{tabular} +% +\end{center} +\end{table} +%% + +shudhu EI \*d*i\*y*e AboshYo khub \*b*e\*sh*i shob/do \*l*ekha Ja\*b*e +na, \*k*enona sWoro\*c*in/Hogu\*l*i \*sh*ekha Hoy\*n*i +Ekho\*n*ea. \*k*in/tu \ref{t:vow} nom/bor chok \*th*e\*k*eI Ek\*T*i +sWoro\*c*in/Ho jana Ja\*c/ch*e. jan\*t*e par\*ch*i, Aa-kar \*l*ekhar +jonYo phaI\*l*e bosa\*t*e Hoy `\verb!a!'. `\totype{A}' TaIp kor\*l*e +chapa Ho\*b*e `A'. tar Dan\*d*i\*k*e `\totype{a}' bosa\*l*e `A'-Er +Dan\*d*i\*k*e `Aa'-kar bo\*s*e \*t*{oi}\*r*i Ho\*c/ch*e `Aa'. EI +Ek\*T*i sWoro\*c*in/Ho\*k*e som/bol ko\*r*eI \*k*ichu kotha +\*l*i\*kh*e \*d*ekha Jak. Dan \*d*i\*k*e baNNGla, Aar ta \*l*ekhar +jonYo phaI\*l*e Ja TaIp kor\*t*e Ho\*b*e ta bNNa\*d*i\*k*e. + +%% +\begin{quote} +\begin{center} +\demo{EI} +\demo{Is} +\demo{Oh} +\demo{UT} +\demo{lal jama} +\demo{Dan-bNNa} +\demo{Aata na, AaTa} +\demo{Aakash-batas} +\demo{Aasa-JaOya} +\demo{Aam-jam-kNNaThal} +\demo{ma-baba} +\demo{dadabhaI calbhaja khaI} +\end{center} +\end{quote} +%% +EI por/Ja\*y*e UdaHoroN Aar ba\*rh*i\*y*e labh \*n*eI. tar \*c*e\*y*e +boroNNG AnYanYo sWoro\*c*in/Ho kii bha\*b*e \*l*ekha Jay ta \*sh*ekhar +\*c*eSh/Ta kora Jak. + + + +%%%%%%%%%%%%%%%%%%%% +\subsection{\*dW*itiiyo dhap~: sWor\*c*in/Ho} +%%%%%%%%%%%%%%%%%%%% +baNNGlay sWoro\*c*in/Ho \*m*eaT no\*T*i. \*s*egu\*l*ea chapabar jonYo +kii kii TaIp kor\*t*e Ho\*b*e, ta \*d*eOya Ho\*l*ea \ref{t:vow+} +nom/bor cho\*k*e. +%% +\begin{table}[htb] +\caption{baNNGla sWor\*c*in/Ho.\label{t:vow+}} +\begin{center} +\begin{tabular}{||c|@{$\to$}|c||c|@{$\to$}|c||c|@{$\to$}|c||} +\hline +\cinho a & \cinho i & \cinho { ii} \\ +\hline +\cinho u & \cinho { uu} & \cinho { rR} \\ +\hline +\cinho e & \cinho { oi} & \cinho { ou} \\ +\hline +\end{tabular} +\end{center} +\end{table} +%% +E\*d*er mo\*dhY*e Ek\*T*i Ho\*l*ea `Aa'-ka\*r*er \*c*in/Ho, tar kotha +Aa\*g*eI bola Ho\*y*e\*ch*e. tar po\*r*e Aa\*ch*e HRosWo-I Aar +diir/gho-II ka\*r*er \*c*in/Ho, Atohpor HRosWo-U O diir/gho-UU kar. Er +po\*r*er \*t*in\*T*i Ho\*l*ea JothakRo\*m*e RR-kar, E-kar, OI-kar. + +tar po\*r*e O-ka\*r*er jonYo \*k*ichu \*n*eI. karoNTa Aamra sobaI +ja\*n*i --- \*k*ea\*n*ea bYoNJ/jo\*n*e O-kar \*b*eajha\*t*e \*g*e\*l*e +Aamra tar bNNa\*d*i\*k*e EkTa E-ka\*r*er \*c*in/Ho bosaI, Aar +Dan\*d*i\*k*e bosaI Aa-ka\*r*er \*c*in/Ho. Aabar OU-kar \*b*eajha\*t*e +\*g*e\*l*eO bNNa\*d*i\*k*e EkTa E-ka\*r*er \*c*in/Ho la\*g*e, to\*b*e +E \*kK*e\*tR*e Dan\*d*i\*k*e Ja bo\*s*e \*s*e\*T*i Ek\*T*i Aalada +\*c*in/Ho, \ref{t:vow+} nom/bor cho\*k*e \*s*eITaI shudhu +\*d*ekha\*n*ea Ho\*y*e\*ch*e. Ja \*H*eak, \ref{t:vow+} nom/bor chok +Aama\*d*er Ha\*t*e E\*s*e JaOyar pho\*l*e Eba\*r*e boHu shob/do Aamra +\*l*ikh\*t*e par\*b*ea, ko\*y*ekTa UdaHoroN \*d*eOya Jak. +%% +\begin{quote} +\begin{center} +\demo{shudhu JaOya-Aasa} +\demo{suduur Atiit} +\demo{lal gan, niil sur} +\demo{rush ciin japan} +\end{center} +\end{quote} +%% + +EkTu lokKYo kor\*l*e bujh\*t*e par\*b*en, EI sob UdaHoro\*N*er +mo\*dhY*e HRosWo-I kar ba E-kar \*n*eI \*k*ea\*n*ea +sho\*b/d*e. I\*c/ch*e ko\*r*eI Aa\*m*i E\*rh*i\*y*e \*g*e\*ch*i EI +\*c*i\*n/H*er bYoboHar. tar karoN bol\*ch*i EkTu po\*r*e. tar Aa\*g*e +AnYo Ek\*T*i kotha bo\*l*e \*n*i\*t*e caI. + +dhora Jak Aamra \*l*ikh\*t*e caI `somoy' shob/doTa. kii TaIp kor\*t*e +Ho\*b*e? \ref{t:conso} nom/bor chok \*th*e\*k*e Er Ut/tor +po\*r*iSh/kar~: \totype{smy}. taHo\*l*eI +\totype{s}-Er jaygay chapa Ho\*b*e `s', \totype{m}-Er jaygay `m', +\totype{y}-Er jaygay `y' --- Ar/that// sob \*m*i\*l*i\*y*e `somoy'. + +E Ut/tor \*Th*ik. so\*tY*iI taI chapa Ho\*b*e. mush\*k*ilTa Ho\*l*ea, +TaIp kora phaIlTar \*d*i\*k*e Jo\*d*i po\*r*e takan, taHo\*l*e +\*s*ekha\*n*e \totype{smy} \*d*e\*kh*e OTa \*J*e `somoy' ta \*b*eajha +duhsadhYo Ho\*b*e. ko\*m/p*iUTa\*r*e \*l*ekhar sob\*c*e\*y*e bo\*rh*ea +su\*b*idhaI Ho\*l*ea EI \*J*e, Ekbar phaI\*l*e \*k*ichu \*l*ekhar +po\*r*eO barbar ta po\*rh*e tar po\*r*ibor/ton po\*r*imar/jon +po\*r*ibor/dhon ItYa\*d*i kora Jay. phaI\*l*e \*k*eathay kii Aa\*ch*e +ta-I Jo\*d*i \*b*eajha ko\*Th*in Hoy, taHo\*l*e EI sob kaj kor\*t*e +khubI \*b*eg \*p*e\*t*e Ho\*b*e. + +EI mush\*k*il Aa\*r*ea maratMok Ho\*b*e HRosWo-I kar ba E-ka\*r*er +kotha dhor\*l*e. Aamra ja\*n*i, EI sWoro\*c*in/Hogu\*l*ea bo\*s*e +soNNG\*sh/l*iSh/To bYoNJ/jo\*n*er Aa\*g*e. baNNGla totha AnYanYo +bharotiiyo bhaShar \*l*ikhonpod/dho\*t*ir E\*T*i Ek\*T*i \*b*i\*sh*eSh +dur/bolota, \*k*enona Uc/caro\*N*e sWorodhWo\*n*i\*T*i Aa\*s*e +po\*r*e. \*k*in/tu ta \*n*i\*y*e kNNadu\*n*i \*g*e\*y*e \*t*ea labh +\*n*eI, \*s*eI bha\*b*eI Aama\*d*erO \*l*ikh\*t*e Ho\*b*e. pRosh/no +Ho\*c/ch*e, kii kora Ho\*b*e? \totype{ik} ba \totype{es} TaIp kor\*l*e +`ik' ba `es' chapa Ho\*b*e bo\*T*e, \*k*in/tu muul phaI\*l*e po\*r*e +ta \*d*e\*kh*e \*c*ena Ja\*b*e \*k*i soHo\*j*e? poriikKa korar jonYo +\*n*i\*c*er bakYo ko\*T*ir pa\*Th*ead/dhar ko\*r*e \*d*ekhun, +E\*t*eakKon Ja Ja bola Ho\*y*e\*ch*e ta bYoboHar ko\*r*e: +%% +\begin{quote} +\totype{smy ker Jid Aaset par toeb edkha Heb.}\\%[4mm] +\totype{eraed ekhla na koraI bhaela.} +\end{quote} +%% +Hoy\*t*ea bol\*b*en, A\*bhY*es Ho\*y*e Ja\*b*e. Hoy\*t*ea +Ho\*b*e. tobuO su\*b*i\*dh*e ko\*r*e \*d*eOyar jonYo Aa\*m*i du\*T*i +bYobos/tha ko\*r*e \*r*e\*kh*e\*ch*i. Eba\*r*e \*s*egu\*l*ea \*d*ekha +Jak. + +pRothom\*T*i `somoy'-jatiiyo shob/do \*n*i\*y*e. \ref{t:vow} O +\ref{t:vow+} nom/bor cho\*k*e \*d*e\*kh*e\*ch*en, sWoro\*c*i\*n/H*er +jonYo bYoboHar kora Ho\*c/ch*e INNG\*r*i\*j*ir \*ch*ea\*T*ea Ha\*t*er +bor/No, shud/dho sWorodhWo\*n*ir jonYo bo\*rh*ea Ha\*t*er. \*J*emon +\demo{ u} EboNNG \demo{U}. \*t*em\*n*i \demo{O}, \*k*in/tu `O'-kar +\*l*ekhar jonYo Aalada \*k*ea\*n*ea \*c*in/Ho la\*g*e na bo\*l*e +\*ch*ea\*T*ea Ha\*t*er `\totype{o}' \*b*ekar. ETa\*k*eI Aa\*m*i +ka\*j*e la\*g*i\*y*e\*ch*i. TaIp korar somoy \*J*e \*k*ea\*n*ea jaygay +Jo\*d*i `\totype{o}' TaIp ko\*r*en, chapay \*s*ekha\*n*e \*k*ichuI +Aas\*b*e na. Ar/that// `somoy' chapa\*t*e \*g*e\*l*e \totype{smy} +\*l*ikh\*l*eO \*J*emon col\*b*e, \*t*em\*n*i \totype{somoy} +\*l*ikh\*l*eO kar/Jo\*s*i\*d/dh*i Ho\*b*e. \*k*in/tu \*dW*itiiyo +bha\*b*e \*l*ikh\*l*e A\*n*ek soHojpaThYo Ho\*b*e muul \tex\ ba +\latex\ phaIl. \*k*ichu UdaHoroN \*d*ekha Jak: +%% +\begin{quote} +\begin{center} +\demo{polash boron pal} +\demo{somoy Aamar naI} +\demo{kolkata moHanogorii} +\demo{bagbajar EboNNG bhobaniipur Elaka} +\end{center} +\end{quote} +%% +Aamar pRos/tab, EI bha\*b*eI \*l*ikhun, Hat \*p*e\*k*e JaOyar +po\*r*eO. Hoy\*t*ea mo\*n*e Ho\*t*e pa\*r*e, `\totype{o}' TaIp +kor\*t*e phaltu somoy noSh/To Ho\*b*e. \*b*ishWas korun, `\totype{o}' +TaIp na korar jonYo somoy noSh/To Ho\*b*e som/bhoboto Aa\*r*ea A\*n*ek +\*b*e\*sh*i. + +Ekhon \*k*eU bol\*t*e pa\*r*en, `\totype{o}' TaIp kor\*l*e Jo\*d*i +chapay \*k*ichuI na \*d*ekha Jay taHo\*l*e \totype{somoy} na +\*l*i\*kh*e \totype{somoyo} ba \totype{soomooooyo} TaIp kor\*l*eO +\*t*ea chapay tar phol EkI Ho\*b*e. Ut/tor Ho\*c/ch*e, `HNNYa +Ho\*b*e'. Jo\*t*eagu\*l*ea `\totype{o}' bosa\*l*e Aapnar porh\*t*e +su\*b*idha Hoy, to\*t*eagu\*l*eaI bosa\*b*en. + +EIbar porobor/tii pRos/tab. Aa\*g*eI bo\*l*e\*ch*i, `\totype{ik}' TaIp +kor\*l*e `ik' chapa Ho\*b*e. Aa\*m*i Ek\*T*i \*b*ikol/po pRos/tab +\*d*i\*c/ch*i. UdaHoro\*N*er saHa\*JY*e \*b*eajha Jak~: +%% +\begin{quote} +\begin{center} +\Demo{$\backslash$*k*i}{\*k*i} +\Demo{$\backslash$*HNN*e $\backslash$*HNN*e}{\*HNN*e \*HNN*e} +\Demo{tu$\backslash$*m*i +E$\backslash$*s*e$\backslash$*ch*i$\backslash$*l*e porshu} +{tu\*m*i E\*s*e\*ch*i\*l*e porshu} +\end{center} +\end{quote} +%% + + +\tex\ ba \latex\ bYoboHar korar suu\*tR*e Aapnara \*n*ish/coyI +ja\*n*en, EI pod/dho\*t*i\*t*e $\backslash$ \*c*in/Ho\*T*i \*d*i\*y*e +\*b*eajha\*n*ea Hoy \*k*ea\*n*ea \*n*i\*r/d*esh. baNNGla +Horophgu\*l*ear mo\*dhY*eI Aa\*m*i Emon EkTa bYobos/tha ko\*r*e +\*r*e\*kh*e\*ch*i Ja\*t*e `\totype{$\backslash$*a*b}' jatiiyo Ek\*T*i +\*j*i\*n*ish TaIp kora Ho\*l*e ko\*m/p*iUTa\*r*er ka\*ch*e Ek\*T*i +\*b*i\*sh*eSh \*n*i\*r/d*esh Ja\*c/ch*e. \*s*e\*T*i Ho\*l*ea, du\*T*ea +tara \*c*i\*n/H*er majhkha\*n*e Ja Aas\*b*e, ta \*n*i\*y*e Aapatoto +\*k*ichu \*k*ea\*r*ea na. \*dW*itiiyo tara \*c*i\*n/H*er po\*r*e Ja +Aas\*b*e, \*s*eTa\*k*e pRotho\*m*e \*ch*e\*p*e naO. tar po\*r*e +cha\*p*ea duI tarar modhYobor/tii ANNGsho. tar ma\*n*e +`\totype{$\backslash$*a*b}' TaIp kor\*l*e chapa Ho\*b*e `\totype{ba}', +`\totype{$\backslash$*abc*d}' TaIp kor\*l*e chapa Ho\*b*e +`\totype{dabc}'. taI `\*k*i' \*l*ikh\*t*e Ho\*l*e TaIp kora Jay +`\totype{$\backslash$*k*i}', `\*s*e' \*l*ikh\*t*e Ho\*l*e +`\totype{$\backslash$*s*e}'. + +E\*t*e su\*b*idha kii Ho\*l*ea ta \*b*eajhabar jonYo Aa\*g*e \*l*ekha +du\*T*i bakYo EI bha\*b*e \*l*i\*kh*e \*d*ekha\*c/ch*i. +%% +\begin{quote} +\totype{somoy ko$\backslash$*r*e Jo$\backslash$*d*i +Aas$\backslash$*t*e paro to$\backslash$*b*e $\backslash$*d*ekha +Ho$\backslash$*b*e.}\\ +\totype{$\backslash$*r*ea$\backslash$*d*e $\backslash$*kh*ela na koraI +bha$\backslash$*l*ea.} +\end{quote} +%% +Aasha ko\*r*i \*d*e\*kh*eI \*b*eajha Ja\*c/ch*e su\*b*idhaTa kii. EI +bha\*b*e \*l*ikh\*l*e phaI\*l*e porha soHoj. Jo\*d*i `$\backslash$' +EboNNG tara \*c*in/Hogu\*l*ea bad \*d*i\*y*e Jan porhar somoy, +taHo\*l*e pRay \*r*eamok bor/Nomalay \*l*ekha baNNGlar mo\*t*eaI +\*d*ekh\*t*e la\*g*e. + +`O'-kar \*d*i\*t*e Ho\*l*e bNNa\*d*i\*k*e Jay `E'-kar Aar +Dan\*d*i\*k*e `Aa'-kar, taI `r'-y `O'-kar \*d*i\*t*e Ho\*l*e TaIp +kor\*t*e Ho\*b*e `\totype{$\backslash$*r*ea}'. \*dW*itiiyo tarar +porobor/tii `\totype{e}' co\*l*e Ja\*b*e `r'-Er Aa\*g*e, tar po\*r*e +chapa Ho\*b*e `Aa'-ka\*r*er \*c*in/Ho. \*t*em\*n*i, `OU'-kar +\*d*i\*t*e Ho\*l*eO Ek\*T*i `E'-ka\*r*er \*c*in/Ho\*k*e paTha\*t*e +Ho\*b*e bYoNJ/jo\*n*er Aa\*g*e, taI \*dW*itiiyo tarar po\*r*e TaIp +kor\*t*e Ho\*b*e `\totype{eou}'. Aabar `OI'-kar \*d*i\*t*e \*g*e\*l*e +\*d*ekh\*ch*i, `OI'-ka\*r*er \*c*in/Ho\*T*i TaIp kor\*t*e Hoy +`\totype{oi}' \*l*i\*kh*e. E\*kK*e\*tR*e EI `\totype{o}' EboNNG +`\totype{i}' du\*T*ea\*k*eI co\*l*e Aas\*t*e Ho\*b*e bYoNJ/jo\*n*er +Aa\*g*e, taI O du\*T*i\*k*e \*g*eaSh/Thiibod/dho ko\*r*e \*d*i\*t*e +Ho\*b*e `\verb!{oi}!' \*l*i\*kh*e. E\*t*e TaI\*p*er \*b*eajha Aar +EkTu bha\*r*i Ho\*b*e bo\*T*e, \*k*in/tu `OI'-kar baNNGlay E\*t*eaI +kom bYoboHrRto Hoy \*J*e E \*n*i\*y*e matha ghamabar \*k*ea\*n*ea +Ar/tho Hoy na. ko\*y*ek\*T*i shob/do \*l*i\*kh*e mok\*sh*ea ko\*r*e +\*n*eOya Jak EI sob sWoro\*c*in/Ho. +%% +\begin{quote} +\begin{center} +\Demo{tu$\backslash$*m*i +bo$\backslash$*l*e$\backslash$*ch*i$\backslash$*l*e} {tu\*m*i +bo\*l*e\*ch*i\*l*e} +\Demo{$\backslash$*g*eoutom}{\*g*eoutom} +\Demo{$\backslash$*ch*eou nac}{\*ch*eou nac} +\Demo{$\backslash$*kh*$\{$oi$\}$ Aar $\backslash$*d*$\{$oi$\}$ khaO}{\*kh*{oi} +Aar \*d*{oi} khaO} +\Demo{$\backslash$*d*$\{$oi$\}\backslash$*b*e tu$\backslash$*m*i +kokhon} +{\*d*{oi}\*b*e tu\*m*i kokhon} +\end{center} +\end{quote} +%% +Ekha\*n*e EkTa kotha bola Jak. `OI'-kar \*l*ikh\*t*e \*g*i\*y*e +Aama\*d*er `\totype{oi}' TaIp ko\*r*e ta\*k*e bokRobon/dhoniir +mo\*dhY*e pu\*r*e \*d*i\*t*e Ho\*c/ch*e. Athoco `\*kh*{oi}' +\*l*ikh\*t*e \*g*i\*y*e `\totype{kh}' TaIp ko\*r*e ta\*k*e \*k*in/tu +\*k*ea\*n*ea bon/dhoniir mo\*dhY*e pur\*t*e Ho\*c/ch*e na. du\*T*ea +tara\*c*i\*n/H*er mo\*dhY*e Ja-I thak na \*k*eno, tar pu\*r*eaTaI +co\*l*e Ja\*b*e po\*r*e. + +E\*t*ea UdaHoroN EboNNG E\*t*ea Aa\*l*eaconar po\*r*e sabalok Ho\*y*e +\*g*e\*ch*i Aamra, taI Ebar shob/do ba \*ch*ea\*T*ea bakYo +\*ch*e\*rh*e Aa\*r*ea bo\*rh*easo\*rh*ea \*k*ichu \*l*ekhar \*c*eSh/Ta +kora Jak. bNNa\*y*e AtulpRosad \*s*e\*n*er Ek\*T*i gan baNNGla +Horo\*ph*e, DaI\*n*e muul \latex\ phaI\*l*e Ja TaIp ko\*r*e paOya +\*g*e\*l*ea EI ga\*n*er podgu\*l*ea. \latex\ na Ho\*y*e shudhu \tex\ +Ho\*l*e \verb!\begin{verse}! Aar \verb!\end{verse}! col\*b*e na, +\*k*enona Ogu\*l*ea \latex-ErI \*b*i\*sh*iSh/To \*n*i\*r/d*esh. + + + +%%%%%%%%%%%%%%%% +% +\begin{minipage}{.4\textwidth} +\begin{verse} +Jokhon tu\*m*i gaOyaO gan \\ +tokhon Aa\*m*i gaI.\\ +gan\*T*i Jokhon Hoy somapon \\ +\*t*eamar pa\*n*e caI.. + +Aa\*r*ea \*k*i \*m*ear gaI\*t*e Ho\*b*e\\ +noyonjo\*l*e naI\*t*e Ho\*b*e\\ +Aa\*r*ea \*k*i \*m*ear caI\*t*e Ho\*b*e \\ +\*d*i\*l*e na Ja taI.. + +\*J*e sur tu\*m*i \*g*e\*y*e\*ch*i\*l*e\\ +\*J*e kotha\*T*i ko\*y*e\*ch*i\*l*e\\ +ba\*r*e ba\*r*e Aa\*m*i ta\*r*e \\ +JaI \*J*e bhu\*l*e JaI. + +Ebar tu\*m*i \*b*ijon ra\*t*e\\ +gan\*T*i dho\*r*ea Aamar sa\*th*e\\ +\*t*eamar O{I} Ektara\*t*e \\ +sur\*T*i \*m*ear \*m*ilaI.. +\end{verse} +\end{minipage} +%% +%% +\begin{minipage}{.6\textwidth} +\begin{verbatim} +\begin{verse} +Jokhon tu\*m*i gaOyaO gan \\ +tokhon Aa\*m*i gaI.\\ +gan\*T*i Jokhon Hoy somapon \\ +\*t*eamar pa\*n*e caI.. + +Aa\*r*ea \*k*i \*m*ear gaI\*t*e Ho\*b*e\\ +noyonjo\*l*e naI\*t*e Ho\*b*e\\ +Aa\*r*ea \*k*i \*m*ear caI\*t*e Ho\*b*e \\ +\*d*i\*l*e na Ja taI.. + +\*J*e sur tu\*m*i \*g*e\*y*e\*ch*i\*l*e\\ +\*J*e kotha\*T*i ko\*y*e\*ch*i\*l*e\\ +ba\*r*e ba\*r*e Aa\*m*i ta\*r*e \\ +JaI \*J*e bhu\*l*e JaI. + +Ebar tu\*m*i \*b*ijon ra\*t*e\\ +gan\*T*i dho\*r*ea Aamar sa\*th*e\\ +\*t*eamar O{I} Ektara\*t*e \\ +sur\*T*i \*m*ear \*m*ilaI.. +\end{verse} +\end{verbatim} +\end{minipage}\bigskip + +Aabar mo\*n*e ko\*r*i\*y*e \*d*i\*c/ch*i, EI bha\*b*eI \*J*e TaIp +kor\*t*e Ho\*b*e Emon \*k*ea\*n*ea badhokota +\*n*eI. `\totype{noyonjo$\backslash$*l*e}' TaIp na ko\*r*e +`\totype{nynjel}' TaIp kor\*l*eO chapay po\*r*iNo\*t*i EkI +Ho\*t*ea. \*J*e bha\*b*e Opo\*r*e \*d*ekha\*n*ea Ho\*y*e\*ch*e, +tar su\*b*idha kii \*s*e kotha Aa\*g*eI bola Ho\*y*e\*ch*e. + +ga\*n*er EI podgu\*l*ea \*l*ikh\*t*e Aar Ek\*T*i notun \*j*i\*n*ish +bYoboHar kor\*t*e Ho\*y*e\*ch*e, \*s*e\*T*ir kotha Ebar +bo\*l*i. \ref{t:vow} nom/bor chok \*th*e\*k*e \*d*ekha Ja\*c/ch*e, +shudhu `\totype{O}' TaIp kor\*l*e chapa Ho\*b*e `O', shudhu +`\totype{I}' kor\*l*e chapa Ho\*b*e `I', Athoco pashapa\*sh*i +du\*T*eaI \*r*e\*kh*e `\totype{OI}' TaIp kora Aa\*ch*e \*d*ekh\*l*eI +ko\*m/p*iUTar du\*T*ea\*k*eI \*sh*i\*k*ey tu\*l*e chap\*b*e +`OI'. \*s*eI rokomI bola Aa\*ch*e ko\*m/p*iUTar\*k*e. pRosh/no +UTh\*t*e pa\*r*e, taHo\*l*e so\*tY*i so\*tY*iI Jo\*d*i Aa\*m*i `OoI' +chapa\*t*e caI, taHo\*l*e kii TaIp kor\*b*ea? Er Ek\*T*i Ut/tor +\*d*eOya Aa\*ch*e ga\*n*er mo\*dhY*e --- `\totype{O$\{$I$\}$}' ba +`\totype{$\{$O$\}$I}' TaIp kor\*l*eI muul phaI\*l*e `\totype{O}' EboNNG +`\totype{I}' Aar pashapa\*sh*i thak\*ch*e na, taI ko\*m/p*iUTarO +\*k*ichuI \*bh*e\*l/k*i \*d*ekha\*b*e na, `O' \*l*i\*kh*e tarpor `I' +chapa\*b*e, Opo\*r*er UdaHoro\*N*e \*J*emon +ko\*r*e\*ch*e. ko\*m/p*iUTar\*k*e du\*T*ea \*m*i\*sh*i\*y*e \*d*eOyar +EI \*bh*e\*l/k*i \*th*e\*k*e \*n*ibrRt/to kora Jay Aa\*r*ea Ek\*T*i +Upa\*y*e, ta Ho\*l*ea, majhkha\*n*e Ek\*T*i `\totype{o}' Dhu\*k*i\*y*e +`\totype{OoI}' TaIp ko\*r*e. + +Juk/tobYoNJ/jo\*n*er kotha Aa\*l*eacona korar Aa\*g*e Aar EkTu +\*l*ekha A\*bhY*es ko\*r*e \*n*eOya Jak. Eba\*r*e subhaSh +mu\*kh*eapadhYa\*y*er Ek\*T*i ko\*b*ita. ko\*b*itar nam `parapar'. + +%%%%%%%%%%%%%%%% +\bigskip +% +\begin{minipage}{.32\textwidth}\parskip=10pt +Aamra \*J*eno baNNGla \*d*e\*sh*er\\ +\*c*ea\*kh*er du\*T*i tara. +\end{minipage} +%% +\begin{minipage}{.62\textwidth} +\begin{verbatim} +Aamra \*J*eno baNNGla \*d*e\*sh*er\\ +\*c*ea\*kh*er du\*T*i tara. +\end{verbatim} +\end{minipage}\medskip + +% +\begin{minipage}{.32\textwidth} +majhkha\*n*e nak UNN\*c*i\*y*e Aa\*ch*e ---\\ +thakuk \*g*e paHara. +\end{minipage} +%% +%% +\begin{minipage}{.62\textwidth} +\begin{verbatim} +majhkha\*n*e nak UNN\*c*i\*y*e Aa\*ch*e ---\\ +thakuk \*g*e paHara. +\end{verbatim} +\end{minipage}\medskip + +% +\begin{minipage}{.32\textwidth} +du\*y*ea\*r*e \*kh*il.\\ +Tan \*d*i\*y*e taI\\ +khu\*l*e \*d*ilam jan:/la. +\end{minipage} +%% +\begin{minipage}{.62\textwidth} +\begin{verbatim} +du\*y*ea\*r*e \*kh*il.\\ +Tan \*d*i\*y*e taI\\ +khu\*l*e \*d*ilam jan:/la. +\end{verbatim} +\end{minipage}\medskip + +% +\begin{minipage}{.32\textwidth} +Opa\*r*e \*J*e baNNGla\*d*esh\\ +Epa\*r*eO \*s*eI baNNGla. +\end{minipage} +%% +%% +\begin{minipage}{.62\textwidth} +\begin{verbatim} +Opa\*r*e \*J*e baNNGla\*d*esh\\ +Epa\*r*eO \*s*eI baNNGla. +\end{verbatim} +\end{minipage} +\medskip + +%%%%%%%%%%%%%%%%%%%% +E\*T*i \*l*ikh\*t*e \*g*i\*y*e Ek\*T*i barh\*t*i pRa\*p/t*i +Ho\*y*e\*ch*e 7m laI\*n*e. \*s*ekha\*n*e \*d*ekha\*n*ea Ho\*y*e\*ch*e +Hoson/to \*c*in/Ho kii ko\*r*e TaIp kor\*t*e Hoy. +%% +\begin{quote} +\begin{center} +\demo{mon:/Ta Aamar} +\Demo{bak:/$\backslash$*d*ebii}{bak:/\*d*ebii} +\end{center} +\end{quote} +%% + +%%%%%%%%%%%%%%%%%%%% +\subsection{trRtiiyo dhap~: Juk/tbYoNJ/jon} +%%%%%%%%%%%%%%%%%%%% +Aamra Jo\*d*iO Juk/tobYoNJ/jon \*n*i\*y*e sob\*c*e\*y*e toTos/tho +tha\*k*i, EI \*kK*e\*tR*e \*s*egu\*l*ea boroNNG `I'-kar ba +`OI'-ka\*r*er \*c*e\*y*e A\*n*ek soHoj. ko\*y*ekTa UdaHoroN \*d*i\*l*e +kothaTa po\*r*iSh/kar Ho\*b*e Aasha kora Jay. +%% +\begin{quote} +\begin{center} +\demo{top/to} +\demo{mos/to} +\demo{puros/kar} +\demo{rok/tak/to} +\demo{gol/po} +\demo{bak/so} +\demo{koN/Tho} +\demo{Aac/cha} +\demo{Hod/do} +\demo{pol/lob} +\demo{ran/na} +\demo{Aanon/do} +\demo{boson/to} +\demo{Am/bor} +\demo{Aarom/bho} +\demo{Ap/sora} +\demo{mot/to} +\end{center} +\end{quote} +%% +somos/to som/bhabYo Juk/tobor/No UdaHoro\*N*e \*d*ilam na, \*k*enona +tar \*k*ea\*n*ea dorkar \*n*eI. UdaHoroNgu\*l*ea \*d*e\*kh*eI +bujh\*t*e par\*ch*en kii ko\*r*e Juk/tobor/No chapa Ja\*b*e. Ek +kothay bola Jay, \*J*e du\*T*i bYoNJ/jon Juk/to Ho\*c/ch*e bana\*n*e, +shud/dho bYoNJ/jon \*H*i\*s*e\*b*e \*s*e du\*T*i\*k*e \*l*ekhar jonYo +Ja TaIp korar kotha \*ch*i\*l*ea taI TaIp kor\*t*e Ho\*b*e, shudhu +majhkha\*n*e bosa\*t*e Ho\*b*e `/' \*c*in/Ho\*T*i. \*J*e sob jaygay EI +\*n*iyo\*m*er bYo\*t*ikRom Ho\*b*e ba EI \*n*iyom \*n*i\*y*e soNNGshoy +\*d*ekha \*d*i\*t*e pa\*r*e, \*s*eIgu\*l*eaI shudhu Aa\*l*eacona +kor\*b*ea. + +E rokom \*b*i\*sh*eSh \*kK*e\*tR*er mo\*dhY*e +pRothom Aa\*l*eacYo \*J*egu\*l*ea\*k*e `phola' bola Hoy +\*s*egu\*l*ea. `r'-phola, `J'-phola ItYa\*d*ir \*c*in/Ho +\*b*eajha Ja\*b*e porobor/tii UdaHoroNgu\*l*ea \*th*e\*k*e: +%% +\begin{quote} +\begin{center} +\demo{AatMo} +\demo{podMo} +\demo{sMoroN} +\demo{shMoshRu} +\demo{bakYo} +\demo{shoJYa} +\demo{soHYo} +\demo{HNNYa} +\demo{pRothom} +\demo{bokRo} +\demo{shRii} +\demo{matRa} +\demo{kLan/to} +\demo{pLabon} +\demo{shWas} +\demo{sWad} +\end{center} +\end{quote} +%% +Ar/that//, `r'-phola \*p*e\*t*e TaIp kor\*t*e Ho\*b*e `\totype{R}', +`J'-phola (Ja\*k*e Aaso\*l*e `y'-phola bola U\*c*it) \*p*e\*t*e +`\totype{Y}', `m'-phola \*p*e\*t*e `\totype{M}', `l'-phola \*p*e\*t*e +`\totype{L}', `b'-phola \*p*e\*t*e `\totype{W}'. Aa\*r*ea jo\*T*il +Juk/tobor/NoO kora \*J*e\*t*e pa\*r*e, \*J*emon +%% +\begin{quote} +\begin{center} +\demo{son/tRos/to} +\demo{som/pRodan} +\demo{dWon/dWo} +\demo{Uc/chWas} +\demo{tot/tWo} +\demo{puN/DRobor/dhon} +\end{center} +\end{quote} +%% +A\*n*ek somo\*y*e tolay `n'-O bo\*s*e, ta\*k*e `n'-phola bola Hoy Anek +somoy, \*k*in/tu chapar somo\*y*e E\*T*i\*k*e sadharoN +Juk/to\*c*i\*n/H*er mo\*t*ea `\totype{/n}' \*d*i\*y*eI \*l*ikh\*t*e +Ho\*b*e. Jotha~: +%% +\begin{quote} +\begin{center} +\demo{pRosh/no} +\demo{mog/no} +\demo{Jot/no} +\demo{krRtogh/no} +\end{center} +\end{quote} +%% +\*t*em\*n*i `N'-pholar kothaO bola \*J*e\*t*e pa\*r*e, Ja \*b*eadhHoy +shudhumatRo `kK'-Er so\*NG/g*eI bYoboHrRto Hoy. E\*T*iO \*p*e\*t*e +Ho\*b*e `\totype{/N}' TaIp ko\*r*e: +%% +\begin{quote} +\begin{center} +\demo{tiikK/No} +\end{center} +\end{quote} +%% + +EI `no'-pholar suutRo dho\*r*eI Aamra Ebar Juk/tobor/No \*l*ekhar +\*dW*itiiyo bYo\*t*ikRom\*T*ir kothay Aas\*ch*i. `n/H' +Juk/tobor/No\*T*i soNNGs/krR\*t*er mo\*t*e `H:/+n', \*k*in/tu baNNGlay +tar Uc/caroN Hoy `n:/H'-Er mo\*t*ea. Aa\*m*i EI \*c*in/Ho\*T*i\*k*e +baNNGlar Uc/caro\*N*er po\*r*i\*pR*e\*kK*i\*t*e `n:/+H'-Er +Juk/tobor/No \*H*i\*s*e\*b*eI bhaba soNG/goto mo\*n*e +ko\*r*i. \*t*em\*n*i `N/H'-\*k*eO `N:/+H' bhabaI soNG/goto. Egu\*l*ea +chap\*t*e caI\*l*e taI TaIp kor\*t*e Ho\*b*e JothakRo\*m*e +\totype{n/H} O \totype{N/H}. Aar `g/Y' EI \*c*in/Ho\*T*i\*k*eO `j+NJ' +bhaba Ju\*k/t*iHiin, taI ETa\*k*e Aa\*m*i `\totype{g/Y}' \*d*i\*y*e +\*n*i\*r/d*esh ko\*r*e\*ch*i. +%% +\begin{quote} +\begin{center} +\demo{sayan/Ho} +\demo{AporaN/Ho} +\demo{g/Yan} +\end{center} +\end{quote} +%% +\*k*in/tu `H'-Er so\*NG/g*e AnYanYo phola laga\*n*ear bYapa\*r*e +Aa\*m*i \*k*ea\*n*ea bYo\*t*ikRom ra\*kh*i\*n*i. +%% +\begin{quote} +\begin{center} +\demo{AaHLad} +\demo{AaHWan} +\demo{baHYo} +\end{center} +\end{quote} +%% + +EIbar trRtiiyo \*b*i\*sh*eSh mon/tobYo. bYo\*t*ikRom na Ho\*l*eO +\*k*ea\*n*ea \*k*ea\*n*ea Juk/tobor/No \*n*i\*y*e khoTka lag\*t*e +pa\*r*e paTho\*k*er mo\*n*e. \*J*emon dhora Jak, `\*r*eph' kii ko\*r*e +chapa\*n*ea Ja\*b*e? Er Ut/tor pRokaran/to\*r*e Aa\*g*eI \*d*eOya +Ho\*y*e \*g*e\*ch*e, \*k*enona \*r*eph-Juk/to bYoNJ/jon ma\*n*e +Aaso\*l*e ta Ek\*T*i Juk/tobYoNJ/jon Jar pRothom ANNGsho\*T*i `r'. taI +`\totype{r/k}' TaIp kor\*l*e chapa Ho\*b*e `r/k', ItYa\*d*i. + +E rokom Aa\*r*ea soNNGshoy Ho\*t*e pa\*r*e `Sh/N' \*l*ikh\*t*e +Ho\*l*e. Er jonYo TaIp kor\*t*e Ho\*b*e `\totype{Sh/N}'. E\*T*iO +bYo\*t*ikRom noy, pu\*r*eapu\*r*i \*n*iyom \*m*e\*n*e cola. tobu +U\*l/l*ekh korlam, \*k*enona Aa\*m*i \*d*e\*kh*e\*ch*i, A\*n*e\*k*erI +dharoNa \*J*e E\*T*i `Sh+NJ'-r Juk/toruup. E dharoNa \*Th*ik noy, +`Sh+NJ' Juk/tobor/No soNNGs/krR\*t*e \*ch*i\*l*ea na, baNNGlayO +\*n*eI. E\*T*i `Sh+N'. +%% +\begin{quote} +\begin{center} +\demo{gor/to} +\demo{porobor/tii} +\demo{krRSh/No} +%\demo{USh/NiiSh} +\end{center} +\end{quote} +%% + +%%%%%%%%%%%%%%%%%%%% +\subsection{\*k*ichu \*k*ichu bo\*r/N*er AakrR\*t*i} +%%%%%%%%%%%%%%%%%%%% +Ebar Aa\*r*ea ko\*y*ek\*T*i UdaHoroN \*d*ekha Jak. +%% +\begin{quote} +\begin{center} +\demo{loghu-guru} +\demo{poshu} +\demo{baHulYo} +\demo{bos/tu} +\demo{ruup} +\demo{HrRdoy} +\end{center} +\end{quote} +%% +pRothom laI\*n*e ro\*y*e\*ch*e `U'-kar Juk/to \*k*ichu bor/No. EI +\*c*in/Hogu\*l*ea baNNGlay AnYo bha\*b*eO chapa Hoy. pu\*r*ea\*n*ea +\*b*idYasagorii dhNNa\*c*er chapay `g+U' \*J*e bha\*b*e \*d*ekha Jay, +ta\*t*e `U'-karTa mu\*rh*e \*g*i\*y*e A\*n*ekTa baNNGla `3'-Er +mo\*t*ea \*d*ekhay. `sh', `r' ba `Ho'-y `U'-ka\*r*er jonYoO +\*t*em\*n*i \*b*i\*sh*eSh \*b*i\*sh*eSh \*c*in/Ho Aa\*ch*e. + +Ek kothay E\*d*er\*k*e bola Jay `AsWoc/cho' \*c*in/Ho. Ar/that// +`go'-Er \*c*i\*n/H*er sa\*th*e `U'-ka\*r*er \*c*in/Ho ju\*rh*e paOya +Ja\*b*e na `gu'-Er jonYo \*n*i\*r/d*iSh/To \*b*idYasagorii +\*c*in/Ho\*T*i. EkI kotha `ru' `Hu' ItYa\*d*i som/po\*r/k*eO. EI sob +\*c*in/Ho AkaroN baHulYo, taI E\*d*er\*k*e Aa\*m*i bor/jon +ko\*r*e\*ch*i. Ekhon boHu som/bhRan/to pRokashon soNNGs/thaO OoI +ruupgu\*l*ea bYoboHar ko\*r*en na, baNNGla Aaka\*d*e\*m*iO Egu\*l*ear +\*b*i\*r*eadhii. `\totype{ruu}' ba `\totype{HrR}' TaIp kor\*l*eO Ja +chapa Ho\*b*e, ta JothakRo\*m*e `ro'-Er \*n*i\*c*e po\*r*iSh/kar +Ek\*T*i diir/gho-UU kar EboNNG `Ho'-Er tolay po\*r*iSh/kar +Ek\*T*i `RR'-kar. + +Juk/tobYoNJ/jo\*n*er \*kK*e\*tR*eO AsWoc/cho \*c*in/Hogu\*l*i\*k*e +Jothasom/bhob bor/jon kora Ho\*y*e\*ch*e. UdaHoroN \*d*ekhun Ebar. +%% +\begin{quote} +\begin{center} +\demo{ANG/ko} +\demo{ANG/go} +\demo{pRobon/dho} +\demo{sus/tho} +\demo{pan/tho} +\demo{Aabod/dho} +\demo{lob/dho} +\demo{goN/Dar} +\end{center} +\end{quote} +%% +ko\*y*ek\*T*i AsWoc/cho \*c*in/Ho AboshYo Aa\*ch*e, \*J*emon `tR', +`bhR' ItYa\*d*i. Aamar AboshYo mot Ho\*l*ea \*J*e Egu\*l*ear mayaO +Jo\*t*ea tarhata\*rh*i ka\*T*i\*y*e OTha Jay to\*t*eaI moNG/gol. + +EI bha\*b*e Juk/to\*c*in/Ho korar EkTa su\*b*i\*dh*e Ho\*l*ea EI +\*J*e, dorkar porh\*l*e notun notun \*c*in/Ho \*t*{oi}\*r*i ko\*r*e +\*n*eOya Jay. ko\*y*ek\*T*i som/bhabYo UdaHoroN \*d*ekha Jak. +%% +\begin{quote} +\begin{center} +\demo{UIl/son} +\demo{Ish/kul} +\Demo{$\backslash$*H*el/th $\backslash$*s*en/Tar}{\*H*el/th \*s*en/Tar} +\end{center} +\end{quote} +%% +E kothagu\*l*ear EI rokom bananI \*l*ekha U\*c*it ta bol\*ch*i +na. \*k*in/tu Jo\*d*i EI rokomI banan can, taHo\*l*e ko\*m/p*iUTar +\*n*i\*j*eI tar jonYo Juk/tobor/No \*t*{oi}\*r*i ko\*r*e \*n*e\*b*e, E +sob Juk/tobor/No Aa\*g*e \*th*e\*k*e bana\*n*ea \*n*eI bo\*l*e +\*k*ea\*n*ea Asu\*b*idha Ho\*b*e na. + +EboNNG \*Th*ik EI karo\*N*eI JNNara EI \*n*i\*r/d*e\*sh*ikay somos/to +Juk/tobo\*r/N*er Ek\*T*i ta\*l*ika khNNuj\*b*en, tNNara ta pa\*b*en +na. \*k*enona Juk/tobor/No A\*n*ek Ho\*t*e pa\*r*e, \*J*e sob +Juk/tobor/No baNNGlay bYoboHrRto Hoy na taO \*l*ekha \*J*e\*t*e +pa\*r*e. + +%%%%%%%%%%%%%%%%%%%% +\subsection{AnYanYo \*c*in/Ho} +\subsubsection{soNNGkhYa\*c*in/Ho, Jo\*t*i\*c*in/Ho} +%%%%%%%%%%%%%%%%%%%% +E charhaO Aa\*r*ea \*c*in/Ho Aa\*ch*e. soNNGkhYa\*c*in/Ho +som/po\*r/k*e bolar dorkar \*n*eI. Jo\*t*i\*c*i\*n/H*er mo\*dhY*e AnYo +sobI pRay INNG\*r*i\*j*ir mo\*t*ea, tophat shudhu EI \*J*e +INNG\*r*i\*j*i\*t*e Ja TaIp kor\*l*e `phuls/Top' chapa Ho\*t*ea, +baNNGlar \*b*elay \*s*ekha\*n*e chapa Ho\*b*e dNNa\*rh*i. du\*T*i +`phuls/Top' TaIp kor\*l*e chapa Ho\*b*e Dobol dNNa\*rh*i. Aar porpor +\*t*in\*T*e `phuls/Top' TaIp kor\*l*e paOya Ja\*b*e \*t*in\*T*e +\*b*in/du, Ja A\*n*ek somo\*y*e baNNGla \*l*ekhay \*b*iram +\*c*i\*n/H*er mo\*t*ea bYoboHrRto Hoy. +%% +\begin{quote} +\begin{center} +\demo{.} +\demo{..} +\demo{...} +\end{center} +\end{quote} +%% +pRosh/no\*c*in/Ho, \*b*isMoy\*c*in/Ho, koma, \*s*e\*m*i\*k*ealon +ItYa\*d*i AnYanYo Jo\*t*i\*c*in/Ho \*t*ea baNNGlay INNG\*r*i\*j*i +\*th*e\*k*eI E\*s*e\*ch*e, \*s*egu\*l*ea INNG\*r*i\*j*ir mo\*t*eaI +chapa Ho\*b*e. \*t*em\*n*i INNG\*r*i\*j*i \*l*ekhar mo\*dhY*e \*J*eag +\*c*in/Ho, bon/dhonii, ItYa\*d*i chapar jonYo Ja TaIp kor\*t*e Hoy, +baNNGla \*l*ekhar mo\*dhY*eO \*s*eI EkI TaIp kor\*t*e Ho\*b*e. + +%%%%%%%%%%%%%%%%%%%% +\subsubsection{Asomiiya bhaSha} +%%%%%%%%%%%%%%%%%%%% +Asomiiya bhaShar \*l*i\*p*i baNNGlarI mo\*t*ea, shudhu du\*T*i tophat +Aa\*ch*e. Ek\*T*i Ho\*l*ea An/tohs/tho bo, Jar jonYo baNNGlay Aalada +\*k*ea\*n*ea \*c*in/Ho \*n*eI. AnYo\*T*i Ho\*l*ea `ro', ta AnYo +bha\*b*e \*l*ekha Hoy. E du\*T*iO paOya Ja\*b*e JothakRo\*m*e +`\totype{w}' EboNNG `\totype{rW}' TaIp kor\*l*e. Ar/that// AsomiiyaO +\*l*ekha Ja\*b*e EI soph:/TOyar \*d*i\*y*e. +%% +\begin{quote} +\begin{center} +\demo{guwaHaTii} +\Demo{$\backslash$*sh*ilcorW}{\*sh*ilcorW} +\end{center} +\end{quote} +%% + +%%%%%%%%%%%%%%%%%%%% +\subsubsection{bho\*b*iShYo\*t*er kotha \*bh*e\*b*e} +%%%%%%%%%%%%%%%%%%%% +E charha Aar Ek\*T*i notun \*c*in/Ho Aa\*m*i \*r*e\*kh*e\*ch*i, +bho\*b*iShYo\*t*e Er som/bhabYo bYoboHa\*r*er kotha +\*bh*e\*b*e. baNNGlay boHu\*d*in \*th*e\*k*eI `AYa' Uc/caroN +\*b*eajha\*n*ear jonYo Ek\*T*i bo\*r/N*er pRo\*y*eajoniiyotar kotha +bola Ho\*y*e Aas\*ch*e. Aa\*m*i Er jonYo Ek\*T*i \*p*eTkaTa `E' +(EboNNG \*p*eTkaTa `E'-kar) bYoboHa\*r*er pokKopatii. EI du\*T*ea +paOya Ja\*b*e JothakRo\*m*e `\totype{AA}' O `\totype{aa}' TaIp +kor\*l*e. UdaHoroN~: +%% +\begin{quote} +\begin{center} +\Demo{AAka $\backslash$*k*$\{$aa$\}$no E$\backslash$*l*e} +{AAka \*k*{aa}no E\*l*e} +\end{center} +\end{quote} +%% +\*c*in/Ho\*T*i Jo\*d*i pochon/do na Hoy, \*b*ico\*l*ito Ho\*b*en +na. Aap\*n*i bYoboHar kor\*b*en na, ta Ho\*l*eI Ho\*l*ea! + +%%%%%%%%%%%%%%%%%%%% +\subsubsection{phNNak} +%%%%%%%%%%%%%%%%%%%% +sob\*sh*e\*Sh*e Aar Ek\*T*i \*b*i\*sh*eSh \*c*i\*n/H*er kotha +bol\*b*ea. E\*T*i Ho\*l*ea `paIp' \*c*in/Ho, lom/ba Ek\*T*i dNNa\*rh*i +(`$\mid$') \*d*i\*y*e Ja \*l*ekha Hoy ko\*m/p*iUTar soNNGkRan/to +\*l*ekhay. baNNGla Horo\*ph*e \*l*ekhar somo\*y*e EI \*c*in/Ho\*T*i +TaIp kor\*l*e chapay \*s*ekha\*n*e Aas\*b*e kha\*n*ikTa phNNak, \tex\ +ba \latex-E \verb!\kern! \*d*i\*y*eO Ja kora Jay. baNNGla \*l*ekhar +somo\*y*e EI \*c*in/Ho\*T*i kiibha\*b*e ka\*j*e lag\*t*e pa\*r*e, ta +\*b*eajha\*c/ch*i \*n*i\*c*er UdaHoroNgu\*l*ear madhYo\*m*e~: +%% +\begin{quote} +\begin{center} +\demo{khoT|Wa} +\demo{IkK|Waku} +\end{center} +\end{quote} +%% +baNNGla bhaShay `To'-y `bo'-phola Hoy na khub EkTa, shudhu EI +soNNGs/krR\*t*er `khoT|Wa' shob/doTa ka\*l*ebho\*dR*e \*d*ekha Jay. Er +jonYo `To'-y `bo'-pholar EkTa Aalada \*c*in/Ho bana\*n*ea +batulota. Athoco soraso\*r*i \totype{TW} TaIp kor\*l*e `bo'-pholaTa +`To'-Er ga\*y*e \*Th*e\*k*e Jay. taI `T' Aar `\,\,W'-Er majhkha\*n*e +`paIp' Dhu\*k*i\*y*e `bo'-pholar \*c*in/Ho\*T*i\*k*e EkTu duu\*r*e +so\*r*i\*y*e \*d*eOya Ho\*y*e\*ch*e. to\*b*e E sob jaygay soraso\*r*i +`\totype{kern}' bYoboHar kor\*t*eO pa\*r*en --- ta\*t*e ko\*t*eaTa +sora\*b*en tar \*H*i\*s*eb Aapnar Ha\*t*eI thak\*b*e. + + +%%%%%%%%%%%%%%%%%%%% +\section{nana ma\*p*er, nana roko\*m*er Horoph} +%%%%%%%%%%%%%%%%%%%% +Er Aa\*g*e \totype{bangfont} bo\*l*e Ek\*T*i phaI\*l*er kotha bola +Ho\*y*e\*ch*e --- \tex-E \*l*ikh\*t*e \*g*e\*l*e Ja\*k*e Aalada +ko\*r*e bhor\*t*e Hoy, \latex-E Ja Aapna-Aap\*n*iI bhora Ho\*y*e Jay +\totype{bbook} ba \totype{barticle}-Er madhYo\*m*e. EI phaIl\*T*ir +pu\*r*ea nam \totype{bangfont.tex}, E\*T*i \totype{bangtex}-Er +AnYotomo phaIl. Er mo\*dhY*e nana baNNGla Horo\*ph*er soNNGg/Ya +\*s/th*ir ko\*r*e \*d*eOya Ho\*y*e\*ch*e. Horophgu\*l*i \*t*in\*T*i +\*shR*eNii\*t*e \*b*ibhok/to. pRothom\*T*i sadharoN Horoph, +\*dW*itiiyo\*T*i bNNaka ba \*H*ela\*n*ea, trRtiiyo\*T*i kha\*n*ikTa +coOrha Horoph. \*J*e \*J*e ma\*p*er Horoph Aa\*ch*e, ta cho\*k*er +Aaka\*r*e \*l*i\*kh*e \*d*i\*c/ch*i, ta\*d*er nam so\*m*et. +%% +\begin{center} +\begin{tabular}{|r|l|l|l|} +\hline +\multicolumn{1}{|c|}{map} & \*s*eaja Horoph & bNNaka Horoph & coOrha Horoph \\ +\hline\hline +6 po\*y*en/T & \verb+\bngvi+ & \verb+\bnsvi+ & \verb+\bnwvi+ \\ +7 po\*y*en/T & \verb+\bngvii+ & \verb+\bnsvii+ & \verb+\bnwvii+ \\ +8 po\*y*en/T & \verb+\bngviii+ & \verb+\bnsviii+ & \verb+\bnwviii+ \\ +9 po\*y*en/T & \verb+\bngix+ & \verb+\bnsix+ & \verb+\bnwix+ \\ +10 po\*y*en/T & \verb+\bngx+ & \verb+\bnsx+ & \verb+\bnwx+ \\ +11 po\*y*en/T & \verb+\bngxi+ & \verb+\bnsxi+ & \verb+\bnwxi+ \\ +12 po\*y*en/T & \verb+\bngxii+ & \verb+\bnsxii+ & \verb+\bnwxii+ \\ +14 po\*y*en/T & \verb+\bngxiv+ & \verb+\bnsxiv+ & \verb+\bnwxiv+ \\ +18 po\*y*en/T & \verb+\bngxviii+ & \verb+\bnsxviii+ & \verb+\bnwxviii+ \\ +22 po\*y*en/T & \verb+\bngxxii+ & \verb+\bnsxxii+ & \verb+\bnwxxii+ \\ +25 po\*y*en/T & \verb+\bngxxv+ & \verb+\bnsxxv+ & \verb+\bnwxxv+ \\ +30 po\*y*en/T & \verb+\bngxxx+ & \verb+\bnsxxx+ & \verb+\bnwxxx+ \\ +\hline +\end{tabular} +\end{center} +%% +namgu\*l*ea mo\*n*e rakha khub shok/to noy. sadharoN baNNGla +Horo\*ph*er nam sobI \verb!\bng! \*d*i\*y*e shuru, \*H*ela\*n*ea ({\rm +slanted}) Horo\*ph*er nam shuru \verb~\bns~ \*d*i\*y*e, Aar coOrha +({\rm wide}) Horo\*ph*er nam shuru \verb~\bnw~ +\*d*i\*y*e. Horophgu\*l*ear na\*m*e tar po\*r*e Ja Aa\*ch*e, ta +Ho\*l*ea Horo\*ph*er saIj, \*r*eamok soNNGkhYa\*l*ikhon +pod/dho\*t*i\*t*e \*l*ekha. phaI\*l*er \*J*e \*k*ea\*n*ea jaygay +Upo\*r*eak/to \*J*e \*k*ea\*n*ea Horo\*ph*er \*n*i\*r/d*esh Jo\*d*i +\*d*en, taHo\*l*eI tar por \*th*e\*k*e sob \*l*ekha Ho\*t*e thak\*b*e +\*s*eI Horo\*ph*e. Aar +khub Al/po somo\*y*er jonYo Ek\*T*i Horoph bYoboHar ko\*r*e Aabar Jo\*d*i +phaI\*l*er muul Horo\*ph*e \*ph*i\*r*e \*J*e\*t*e can, to\*b*e \*s*eI +Horo\*ph*er \*n*i\*r/d*esh\*T*i bokRobon/dhoniir mo\*dhY*e \*d*i\*l*eI +bha\*l*ea. UdaHoroN \*d*ekhun~: +%% +\begin{quote} +\begin{center} +\Demo{bRuTas, $\{\backslash$bnsxii tu$\backslash$*m*iO!$\}$ Hay!} +{bRuTas, {\bnsxii tu\*m*iO!} Hay!} +\end{center} +\end{quote} +%% +\tex\ phaI\*l*e Jo\*d*i \*g*earha \*th*e\*k*eI 10 +po\*y*e\*n/T*e na \*l*i\*kh*e 12 po\*y*e\*n/T*e \*l*ikh\*t*e +can, taHo\*l*e phaI\*l*er \*g*earhay \*J*ekha\*n*e \verb!\bngx! +\*l*ikh\*t*e bola Ho\*y*e\*ch*i\*l*ea, \*s*ekha\*n*e \verb!\bngxii! +\*l*i\*kh*e shuru kora Jay. + +\latex-Er Ju\*k/t*ir dhara EkTu AnYo rokom. Ekha\*n*e sob somo\*y*eI +shuru\*t*e \verb!\bng! TaIp ko\*r*e \*n*i\*t*e Ho\*b*e. \*k*in/tu +phaI\*l*er E\*k*eba\*r*e shuru\*t*e \verb!\documentclass! kothaTar +po\*r*e Jo\*d*i \verb![11pt]! tha\*k*e, taHo\*l*e \verb!\bng! +\*gh*eaShoNar pho\*l*e \*l*ekha shuru Ho\*b*e 11 +po\*y*e\*n/T*e. Jo\*d*i \verb![12pt]! tha\*k*e, taHo\*l*e \verb!\bng! +\*gh*eaShoNar pho\*l*e \*l*ekha shuru Ho\*b*e 12 po\*y*e\*n/T*e. Aar +Jo\*d*i \*k*ea\*n*ea po\*y*e\*n/T*er kothaI na bola tha\*k*e, +taHo\*l*e 10 po\*y*e\*n/T*er Horo\*ph*e \*l*ekha shuru Ho\*b*e. Er +po\*r*e \*ch*ea\*T*ea-bo\*rh*ea Horoph paOya Ja\*b*e \*J*e sob +\*n*i\*r/d*esh bYoboHar ko\*r*e, ta Eba\*r*e \*l*ikh\*ch*i cho\*k*er +Aaka\*r*e. +%% +\begin{center} +\begin{tabular}{|r|l|l|l|} +\hline +\multicolumn{1}{|c|}{Aanupa\*t*ik map} +& \*s*eaja Horoph & bNNaka Horoph & coOrha Horoph \\ +\hline\hline +{\rm tiny} & \verb+\tbng+ & \verb+\tbns+ & \verb+\tbnw+ \\ +{\rm small} & \verb+\sbng+ & \verb+\sbns+ & \verb+\sbnw+ \\ +{\rm normal} & \verb+\bng+ & \verb+\bns+ & \verb+\bnw+ \\ +{\rm large} & \verb+\lbng+ & \verb+\lbns+ & \verb+\lbnw+ \\ +{\rm Large} & \verb+\Lbng+ & \verb+\Lbns+ & \verb+\Lbnw+ \\ +{\rm LARGE} & \verb+\LBng+ & \verb+\LBns+ & \verb+\LBnw+ \\ +{\rm huge} & \verb+\hbng+ & \verb+\hbns+ & \verb+\hbnw+ \\ +{\rm Huge} & \verb+\Hbng+ & \verb+\Hbns+ & \verb+\Hbnw+ \\ +\hline +\end{tabular} +\end{center} +%% +AboshYo \tex-Er mo\*t*ea ko\*r*e \*n*i\*r/d*esh \*d*i\*l*eO +\latex-E kaj Ho\*b*e, \*k*in/tu EIbha\*b*e \*l*ekhar EkTu su\*b*idha +Aa\*ch*e. \*J*emon dhora Jak \verb+\Lbng+ +\*n*i\*r/d*esh\*T*i. phaI\*l*er shuru\*t*e \verb!\documentclass!-Er +laI\*n*e 10 na 11 na 12 po\*y*en/T \*d*i\*y*e \*l*ekha shuru +Ho\*y*e\*ch*e, tar Opor \*n*ir/bhor kor\*b*e EI Horoph\*T*ir +map. \*k*in/tu Ja \*d*i\*y*eI shuru \*H*eak, \verb+\Lbng+ bol\*l*e +ko\*m/p*iUTar Aanupa\*t*ikbha\*b*e Ek\*T*i bo\*rh*ea ma\*p*er Horoph +\*b*e\*ch*e \*n*e\*b*e. + +E\*t*e su\*b*i\*dh*eTa Ho\*l*ea EI \*J*e, \*g*eaTa phaIl\*T*i \*l*ekha +Ho\*y*e JaOyar po\*r*eO Jo\*d*i Horo\*ph*er map bodla\*t*e I\*c/ch*e +Hoy, taHo\*l*e shudhu \verb!\documentclass!-Er laI\*n*e +po\*y*e\*n/T*er mapTa bod\*l*e \*d*i\*l*eI col\*b*e. \*g*eaTa +phaI\*l*eI Horo\*ph*er saIj bod\*l*e Ja\*b*e ko\*m/p*iUTa\*r*er +\*H*i\*s*eb mo\*t*ea. + +to\*b*e \latex-E \verb!\chapter! ba \verb!\section! ItYa\*d*i +\*n*i\*r/d*esh \*d*i\*y*e \*J*e sob AdhYay ba \*b*ibha\*g*er nam +\*l*ekha Ho\*b*e, tar jonYo Horo\*ph*er ma\*p*er \*k*ea\*n*ea +\*n*i\*r/d*esh +\*d*i\*t*e Ho\*b*e na. dhora Jak EkTa AdhYa\*y*er nam `nana +kotha'. taHo\*l*e +%% +\begin{quote} +\begin{verbatim} +\chapter{nana kotha} +\end{verbatim} +\end{quote} +%% +\*l*ikh\*l*eI col\*b*e. ko\*m/p*iUTar \*n*i\*j*eI jan\*b*e Er jonYo +kii ma\*p*er Horoph \*n*i\*t*e Ho\*b*e. \latex-\*k*e Jo\*d*i +suu\*c*ipotRo bana\*t*e bo\*l*en \verb!\tableofcontents! +\*n*i\*r/d*e\*sh*er dWara, \*s*eI suu\*c*ipo\*tR*e EI AdhY\*y*er nam +\*k*ean ma\*p*er Horo\*ph*e Ja\*b*e, taO \totype{bangtex}-Er +An/tor/goto \*b*i\*b*idho phaI\*l*er +kolYa\*N*e ko\*m/p*iUTar \*n*i\*j*eI \*Th*ik ko\*r*e \*n*i\*t*e +par\*b*e. + +\*J*e \*J*e ma\*p*er Horo\*ph*er kotha Opo\*r*e bola Ho\*l*ea, ta +charha AnYo \*k*ea\*n*ea ma\*p*er HorophO dorkar Ho\*t*e +pa\*r*e. \*J*emon dhora Jak, Aap\*n*i 15 po\*y*e\*n/T*er Horoph +can. \*J*ekha\*n*e EI Horoph pRothom bYoboHrRto Ho\*b*e, tar Aa\*g*e +EI ko\*T*i kotha TaIp kor\*t*e Ho\*b*e taHo\*l*e~: +%% +\begin{quote} +\begin{verbatim} +\font\bngxv=bang10 scaled 1500 +\end{verbatim} +\end{quote} +%% +namTa Aa\*m*i \verb!\bngxv! \*d*ilam, ta na Ho\*l*eO col\*b*e. Aapnar +Ja I\*c/ch*e taI nam \*d*in. Er po\*r*e Jokhon \*s*eI Horoph bYoboHar +kor\*t*e can, tokhon \*s*eI na\*m*er \*n*i\*r/d*esh \*d*i\*y*e shuru +kor\*b*en. E som/po\*r/k*e Aa\*r*ea \*b*is/ta\*r*ito jan\*t*e Ho\*l*e +\tex\ \*n*i\*r/d*e\*sh*ika \*d*ekhun. + +\*m*eaTa ({\rm bold}) Horoph Ekho\*n*ea Aa\*m*i \*t*{oi}\*r*i ko\*r*e +UTh\*t*e pa\*r*i\*n*i. kRomosho kor\*b*ea. \*k*in/tu Aapatoto +du\*dh*er sWad \*gh*ea\*l*e \*m*eTa\*n*ear mo\*t*ea EkTa bYobos/tha +ko\*r*e \*r*e\*kh*e\*ch*i. \verb!\sh! \*l*i\*kh*e bokRobon/dhoniir +mo\*dhY*e Ja \*l*ekha Ja\*b*e, chapar somo\*y*e ta EkTu +Dan\*d*ik-bNN\*d*ik ko\*r*e khub kachaka\*ch*i \*t*inbar chapa +Ho\*b*e. ta\*t*e \*m*eaTa Horo\*ph*er mo\*t*eaI \*d*ekha\*b*e. +UdaHoroN \*d*i\*c/ch*i~: +%% +\begin{quote} +\begin{center} +\Demo{EI bon $\backslash$sh$\{$AtYon/to$\}$ ghono}{EI bon +\sh{AtYon/to} ghono} +\end{center} +\end{quote} +%% +to\*b*e EI \*T*eaTka\*T*ir Ek\*T*i Asu\*b*idha Aa\*ch*e. Ek\*T*i +\verb!\sh! \*n*i\*r/d*e\*sh*er An/tor/goto Jo\*t*eaTuku \*l*ekha +thak\*b*e, tar sobTaI EkI laI\*n*e chapa Ho\*b*e. \*b*e\*sh*i +po\*r*imaN \*l*ekha Ho\*y*e \*g*e\*l*e \verb!\sh! col\*b*e na. tokhon +pRo\*t*i\*T*i sho\*b/d*e Aalada ko\*r*e \verb!\sh! bosa\*t*e +Ho\*b*e. EI jonYoI Aaladabha\*b*e \*m*eaTa Horoph bana\*n*ea +dorkar. ta Aa\*m*i kor\*b*eaO bho\*b*iShYo\*t*e. Jo\*t*ea\*d*in ta na +Ho\*c/ch*e, to\*t*ea\*d*in EI koSh/To sWiikar kora charha Upay +\*n*eI. + + + +%%%%%%%%%%%%%%%%%%%% +\section{punosh/co} +%%%%%%%%%%%%%%%%%%%% +Aamar Aa\*g*e \tex\ O \latex-E baNNGla Horoph ko\*y*ekjon +\*t*{oi}\*r*i ko\*r*e\*ch*en. ENN\*d*er mo\*dhY*e A\*bh*i\*j*it// +da\*s*er Horoph Aa\*m*i khNNu\*T*i\*y*e \*d*e\*kh*e\*ch*i. +\*t*i\*n*i Ja Ja ko\*r*e\*ch*en, EboNNG Ja Ja kor\*t*e pa\*r*en\*n*i, +duI{I} Aama\*k*e Anu\*pR*eroNa ju\*g*i\*y*e\*ch*e. + +EI Horoph banabar somo\*y*e Aama\*k*e nana bha\*b*e saHaJYo +ko\*r*e\*ch*e Aamar bon/dhu A\*m*itabho la\*H*irhii EboNNG Aamar bhaI +pol/lob boron pal. E\*d*er saHaJYo charha E kaj Aa\*m*i \*sh*eSh +\*t*ea kor\*t*e partamI na, Hoy\*t*ea shuru kor\*t*eO partam na. EkTa +mush\*k*il \*th*e\*k*e Ud/dhar ko\*r*e\*ch*i\*l*ea Aamar bon/dhu +\*tR*is/tan Hub:/sh:/. E\*d*er ka\*ch*e Aa\*m*i krRtog/Yo. + +sob \*sh*e\*Sh*e \*d*i\*c/ch*i \*k*ean gho\*r*e kii bha\*b*e \*k*ean +\*c*in/Ho rakha Ho\*y*e\*ch*e tar ta\*l*ika. + +\def\showfont#1#2{% +\begin{center} +\begin{minipage}{.7\textwidth} +{\offinterlineskip +\halign{\strut\hfil\bf## && \vrule\enskip\hfil{\newfont{\char##}}\hfil\enskip\cr +&\multispan{16}\hfil {\large\tt #1~:} {\lbng #2}\hfil\cr +\noalign{\smallskip} +& \omit\bf\hfil0\hfil& \omit\bf\hfil1\hfil& \omit\bf\hfil2\hfil& \omit\bf\hfil3\hfil +& \omit\bf\hfil4\hfil& \omit\bf\hfil5\hfil& \omit\bf\hfil6\hfil& \omit\bf\hfil7\hfil +& \omit\bf\hfil8\hfil& \omit\bf\hfil9\hfil& \omit\bf\hfil10\hfil& \omit\bf\hfil11\hfil +& \omit\bf\hfil12\hfil& \omit\bf\hfil13\hfil& \omit\bf\hfil14\hfil& \omit\bf\hfil15\hfil\cr +\omit\hfil& \multispan{16}\hrulefill\cr +0& 0& 1& 2& 3& 4& 5& 6& 7& 8& 9& 10& 11& 12& 13& 14& \omit\vrule\enspace\hfil\newfont\char15\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +16& 16& 17& 18& 19& 20& 21& 22& 23& 24& 25& 26& 27& 28& 29& 30& \omit\vrule\enspace\hfil\newfont\char31\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +32& 32& 33& 34& 35& 36& 37& 38& 39& 40& 41& 42& 43& 44& 45& 46& \omit\vrule\enspace\hfil\newfont\char47\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +48& 48& 49& 50& 51& 52& 53& 54& 55& 56& 57& 58& 59& 60& 61& 62& \omit\vrule\enspace\hfil\newfont\char63\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +64& 64& 65& 66& 67& 68& 69& 70& 71& 72& 73& 74& 75& 76& 77& 78& \omit\vrule\enspace\hfil\newfont\char79\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +80& 80& 81& 82& 83& 84& 85& 86& 87& 88& 89& 90& 91& 92& 93& 94& \omit\vrule\enspace\hfil\newfont\char95\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +96& 96& 97& 98& 99& 100& 101& 102& 103& 104& 105& 106& 107& 108& 109& 110& \omit\vrule\enspace\hfil\newfont\char111\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +112& 112& 113& 114& 115& 116& 117& 118& 119& 120& 121& 122& 123& 124& 125& 126& \omit\vrule\enspace\hfil\newfont\char127\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +128& 128& 129& 130& 131& 132& 133& 134& 135& 136& 137& 138& 139& 140& 141& 142& \omit\vrule\enspace\hfil\newfont\char143\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +144& 144& 145& 146& 147& 148& 149& 150& 151& 152& 153& 154& 155& 156& 157& 158& \omit\vrule\enspace\hfil\newfont\char159\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +160& 160& 161& 162& 163& 164& 165& 166& 167& 168& 169& 170& 171& 172& 173& 174& \omit\vrule\enspace\hfil\newfont\char175\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +176& 176& 177& 178& 179& 180& 181& 182& 183& 184& 185& 186& 187& 188& 189& 190& \omit\vrule\enspace\hfil\newfont\char191\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +192& 192& 193& 194& 195& 196& 197& 198& 199& 200& 201& 202& 203& 204& 205& 206& \omit\vrule\enspace\hfil\newfont\char207\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +208& 208& 209& 210& 211& 212& 213& 214& 215& 216& 217& 218& 219& 220& 221& 222& \omit\vrule\enspace\hfil\newfont\char223\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +224& 224& 225& 226& 227& 228& 229& 230& 231& 232& 233& 234& 235& 236& 237& 238& \omit\vrule\enspace\hfil\newfont\char239\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +240& 240& 241& 242& 243& 244& 245& 246& 247& 248& 249& 250& 251& 252& 253& 254& \omit\vrule\enspace\hfil\newfont\char255\hfil\enspace\vrule\cr +\omit\hfil& \multispan{16}\hrulefill\cr +}}\end{minipage}\end{center}} + +\begin{center} +\def\newfont{\bng} +\showfont{\Large\tt bang10.mf}{\*s*eaja Horoph} +\bigskip + +\def\newfont{\bns} +\showfont{\Large\tt bangsl10.mf}{\*H*ela\*n*ea Horoph} +\bigskip + +\def\newfont{\bnw} +\showfont{\Large\tt bangwd10.mf}{coOrha Horoph} + +\end{center} + + + + +\end{document} diff --git a/language/bengali/bangtex/examples/samplett.tex b/language/bengali/bangtex/examples/samplett.tex new file mode 100644 index 0000000000..3453032211 --- /dev/null +++ b/language/bengali/bangtex/examples/samplett.tex @@ -0,0 +1,42 @@ +\documentclass[12pt]{bletter} + +\date{\today} +\makelabels + + +\begin{document} +\bng +\begin{letter}{bhojoHo\*r*i mu\*kh*eapadhYay\\ +som/padokiiyo \*b*ibhag\\ `Aakashkusum' sa\*H*itYo po\*tR*ika \\ 26 +AshWaN/Do \*s/TR*iT\\ kolkata 700001} +\address{72 bonomalii nos/kor \*l*en\\ kolkata 700999 \\[7pt] +\*ph*ean~: 123-4567} +\signature{narayoN laHa (nala)} + + +\opening{pRii\*t*ibhajo\*n*eShu,} + +boHukal Aa\*g*e Aapna\*d*er +po\*tR*ikay Aamar \*l*ekha Ek\*T*i pRobon/dho +pa\*Th*i\*y*e\*ch*ilam. pRobon/dho\*T*ir nam \*ch*i\*l*ea -- +`robiin/dRona\*th*er da\*rh*i \*ch*i\*l*ea \*k*ina'. socoracor +robiin/dRona\*th*er da\*rh*iOyala cho\*b*iI \*c*ea\*kh*e po\*rh*e +EboNNG ta \*th*e\*k*e A\*n*e\*k*erI dharoNa Hoy \*J*e +robiin/dRona\*th*er boraborI da\*rh*i \*ch*i\*l*ea. nanaruup +sakKYopRomaN soHo\*J*ea\*g*e EI pRobon/dho\*T*i\*t*e Aa\*m*i +\*d*e\*kh*i\*y*e\*ch*ilam \*J*e, E \*b*ishWas som/puur/No +Amuulok. bos/tuto, tNNar jiibo\*n*er pRothom dosh-ba\*r*ea bocho\*r*e +robiin/dRona\*th*er Aa\*d*eou da\*rh*iI \*ch*i\*l*ea na. Jo\*t*ea duur +ja\*n*i, E bYapar\*T*i Er Aa\*g*e \*k*eUI Aa\*l*eacona +ko\*r*en\*n*i. \*s*eI\*d*ik \*d*i\*y*e Aamar EI pRobon/dho\*T*i +robiin/dRocor/cay AtYon/to muulYoban Ek\*T*i soNNG\*J*eajon. + +Athoco \*l*ekhaTa Aaj Ab\*dh*i chapa Hoy\*n*i. \*k*eno, ta \*bh*e\*b*e +pa\*c/ch*i na. Aapna\*d*er po\*tR*ikay \*l*ekha chapa\*t*e \*g*e\*l*e +\*k*i ghuSh \*d*i\*t*e Hoy? Jo\*d*i Hoy, taHo\*l*e ghu\*Sh*er +po\*r*imaN ko\*t*ea, ta sotWor \*l*i\*kh*e janan doya ko\*r*e. + +\closing{nomos/kara\*n/t*e} + +\end{letter} +\end{document} diff --git a/language/bengali/bangtex/examples/samptex.tex b/language/bengali/bangtex/examples/samptex.tex new file mode 100644 index 0000000000..439cd7d22c --- /dev/null +++ b/language/bengali/bangtex/examples/samptex.tex @@ -0,0 +1,95 @@ +%% This is a plain TeX file. Please run tex on it. + + +\input bangfont +\bngxii +\baselineskip=5.6mm + +\centerline{\bngxxv ra\*g*er OShudh} +\centerline{\bngxviii sukumar ray} +\bigskip + +\*k*edarbabu borho bodragii \*l*eak. Jokhon \*r*e\*g*e bo\*s*en, +kaN/DakaN/Do g/Yan tha\*k*e na. + +Ek\*d*in \*t*i\*n*i mukhkhana \*b*iShoN/No ko'\*r*e bo\*s*e Aa\*ch*en, +Emon somoy Aama\*d*er mas/Tarbabu E\*s*e bol\*l*en, `\*k*i \*H*e +\*k*edar\*k*eSh/To, mukhkhana HNNa\*rh*i \*k*eno?' + +\*k*edarbabu bol\*l*en, `Aar moshaI, bol\*b*en na. Aamar \*s*eI +ru\*p*eabNNadha\*n*ea HNNu\*k*eaTa \*bh*e\*NG*e sat Tuk\*r*ea Ho\*y*e +\*g*elo --- mukh HNNa\*rh*ir moto Ho\*b*e na \*t*ea \*k*i bodnar moto +Ho\*b*e?' + +mas/TarmoshaI bol\*l*en, `bolo \*k*i \*H*e? E \*t*ea ka\*c*er bason +noy \*k*i ma\*T*ir putul noy --- Am\*n*i khamokha \*bh*e\*NG*e +\*g*elo? Er ma\*n*e \*k*i?' + +\*k*edarbabu bol\*l*en, `khamokha bhaNG\*t*e Ja\*b*e \*k*eno --- +kothaTa shunun na. Holo kii, --- kal ra\*tR*e Aamar bhalo ghum Hoy +\*n*i. sokal\*b*ela U\*Th*e\*ch*i, mukh Hat dhu\*y*e tamak \*kh*e\*t*e +bosbo, Emon somoy kol:/\*k*eTa kat Ho\*y*e Aamar phora\*s*er Upor +\*T*i\*k*er Aagun po'\*rh*e \*g*elo. Aa\*m*i tarhata\*rh*i \*J*eI +AagunTa sora\*t*e \*g*e\*ch*i Am\*n*i \*k*ina AaNGu\*l*e chNNYak:/ +ko\*r*e \*ph*eas/ka po'\*rh*e \*g*elo. Aac/cha, Aap\*n*iI bolun --- +E\*t*e kar na rag Hoy? Aa\*r*e, Aamar HNNu\*k*ea, Aamar kol:/\*k*e, +Aamar Aagun, Aamar phoras, Aabar Aamar Upo\*r*eI julum! taI Aa\*m*i +rag ko'\*r*e --- \*b*e\*sh*i \*k*ichu noy --- OI mugurkhana \*d*i\*y*e +pNNac dosh gha mar\*t*eI \*k*ina Hotobhaga HNNu\*k*eaTa \*bh*e\*NG*e +khan:/ khan:/!' + +mas/TarmoshaI bol\*l*en, `ta JaI bolo bapu, E rag borho coN/Dal --- +ra\*g*er mathay Emon kaN/Do ko'\*r*e boso, ragTa EkTu komaO.' + +`komaO \*t*ea bol\*l*en --- rag \*J*e mu\*kh*er kothay bag man\*b*e +--- E rag Aamar \*t*emon noy.' + +`\*d*e\*kh*ea, Aa\*m*i Ek Upay bo\*l*i. shu\*n*e\*ch*i, khub dhii\*r*e +dhii\*r*e Ek duI \*t*in ko'\*r*e dosh gun\*l*e --- ragTa na\*k*i +shan/to Ho\*y*e Aa\*s*e. \*k*in/tu \*t*eamar \*J*emon rag, ta\*t*e +dosh-ba\*r*ea\*t*e ku\*l*ea\*b*e na --- tu\*m*i E\*k*eba\*r*e +Ek\*sh*ea por/Jon/to gu\*n*e \*d*e\*kh*ea.' + +tarpor Ek\*d*in \*k*edarbabu Is/ku\*l*er sam\*n*e \*d*i\*y*e +Ja\*c/ch*en. tokhon chu\*T*ir somoy, \*ch*e\*l*era \*kh*ela +kor\*ch*e. HoThat// EkTa ma\*r/b*el chu\*T*e E\*s*e \*k*edarbabur +pa\*y*er Ha\*rh*e ThNNaI ko\*r*e laglo. Aar Jay \*k*eatha! +\*k*edarbabu cha\*t*er soman Ek laph \*d*i\*y*e la\*Th*i UNN\*c*i\*y*e +dNNa\*rh*i\*y*e\*ch*en. \*ch*e\*l*er dol \*J*e \*J*ekha\*n*e pa\*r*e +E\*k*eba\*r*e soTan com/poT:/. tokhon \*k*edarbabur mo\*n*e Holo +mas/Tarbabur kothaTa Ekbar poriikKa ko'\*r*e \*d*e\*kh*i. \*t*i\*n*i +Aarom/bho kor\*l*en, Ek-duI-\*t*in-car-pNNac--- + +Is/ku\*l*er majhkha\*n*e Ekjon \*l*eak dNNa\*rh*i\*y*e +\*b*irh:/\*b*irh:/ ko\*r*e ANG/ko bol\*ch*e, taI \*d*e\*kh*e Is/ku\*l*er +da\*r*eayan bYos/to Ho\*y*e ko\*y*ekjon \*l*eak \*D*e\*k*e +Aanlo. Ekjon bollo, `kii Ho\*y*e\*ch*e moshaI?' \*k*edarbabu +bol\*l*en, +`\*Sh*ea\*l*ea-so\*t*e\*r*ea-AaTha\*r*ea-U\*n*ish-ku\*rh*i---' + +soko\*l*e bollo, `E kii? \*l*eakTa pagol Holo na\*k*i? --- Aa\*r*e, O +moshaI, bo\*l*i Amondhara ko\*c/ch*en \*k*eno?' \*k*edarbabu mo\*n*e +mo\*n*e bhoyanok coT\*l*eO --- \*t*i\*n*i gu\*n*eI co\*l*e\*ch*en, +`\*tR*ish-Ek\*tR*ish-bo\*tR*ish-\*t*e\*tR*ish---' + +Aabar kha\*n*ik ba\*d*e Aar Ekjon \*j*ig/Yasa korlo, `moshaI, Aapnar +\*k*i Asukh ko\*r*e\*ch*e? kob\*r*ej moshaI\*k*e Dak\*t*e Ho\*b*e?' +\*k*edarbabu \*r*e\*g*e Aagun Ho\*y*e bol\*l*en, +`UUnoShaT-ShaT-EkSho\*T/T*i-baSho\*T/T*i-\*t*eSho\*T/T*i---' + +\*d*ekh\*t*e \*d*ekh\*t*e \*l*ea\*k*er \*bh*irh jo\*m*e \*g*elo --- +ca\*r*i\*d*i\*k*e \*g*ealmal, \*H*{oi} \*c*{oi}. taI shu\*n*e +mas/Tarbabu \*d*ekh\*t*e E\*l*en, bYaparkhana \*k*i! totokKo\*N*e +\*k*edarbabur \*g*eana pRay \*sh*eSh Ho\*y*e E\*s*e\*ch*e. \*t*i\*n*i +duI \*c*eakh lal ko\*r*e la\*Th*i \*gh*eara\*c/ch*en Aar bol\*ch*en, +`\*ch*iyanob/buI-satanob/buI-AaTanob/buI-\*n*i\*r*enob/buI-Ek\*sh*ea +--- \*k*ean:/ Hotobhaga lokKMiicharha \*m*ithYabadii bo\*l*e\*ch*ilo +Ek\*sh*ea gun\*l*e rag tha\*m*e?' bo\*l*eI DaI\*n*e bNNa\*y*e +dum:/dam:/ la\*Th*ir gha. + +\*l*eakjon sob chu\*T*e palalo. Aar mas/TarmoshaI Ek \*d*eou\*rh*e +\*s*eI \*J*e gho\*r*er mo\*dhY*e Dhuk\*l*en, Aar sara\*d*in +\*b*e\*r*ea\*l*en na. + +\bye + diff --git a/language/bengali/bangtex/latex/bangfont.tex b/language/bengali/bangtex/latex/bangfont.tex new file mode 100644 index 0000000000..ec3efb46a8 --- /dev/null +++ b/language/bengali/bangtex/latex/bangfont.tex @@ -0,0 +1,123 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% Defining the standard (normal, upright) bangla fonts +%% +\font\bngv=bang10 scaled 500 +\font\bngvi=bang10 scaled 600 +\font\bngvii=bang10 scaled 700 +\font\bngviii=bang10 scaled 800 +\font\bngix=bang10 scaled 900 +\font\bngx=bang10 +\font\bngxi=bang10 scaled 1100 +\font\bngxii=bang10 scaled 1200 +\font\bngxiv=bang10 scaled 1400 +\font\bngxviii=bang10 scaled 1800 +\font\bngxxii=bang10 scaled 2200 +\font\bngxxv=bang10 scaled 2500 +\font\bngxxx=bang10 scaled 3000 + +%% +%% Defining the slanted bangla fonts +%% +\font\bnsv=bangsl10 scaled 500 +\font\bnsvi=bangsl10 scaled 600 +\font\bnsvii=bangsl10 scaled 700 +\font\bnsviii=bangsl10 scaled 800 +\font\bnsix=bangsl10 scaled 900 +\font\bnsx=bangsl10 +\font\bnsxi=bangsl10 scaled 1100 +\font\bnsxii=bangsl10 scaled 1200 +\font\bnsxiv=bangsl10 scaled 1400 +\font\bnsxviii=bangsl10 scaled 1800 +\font\bnsxxii=bangsl10 scaled 2200 +\font\bnsxxv=bangsl10 scaled 2500 +\font\bnsxxx=bangsl10 scaled 3000 + +%% +%% Defining the wide bangla fonts +%% +\font\bnwv=bangwd10 scaled 500 +\font\bnwvi=bangwd10 scaled 600 +\font\bnwvii=bangwd10 scaled 700 +\font\bnwviii=bangwd10 scaled 800 +\font\bnwix=bangwd10 scaled 900 +\font\bnwx=bangwd10 +\font\bnwxi=bangwd10 scaled 1100 +\font\bnwxii=bangwd10 scaled 1200 +\font\bnwxiv=bangwd10 scaled 1400 +\font\bnwxviii=bangwd10 scaled 1800 +\font\bnwxxii=bangwd10 scaled 2200 +\font\bnwxxv=bangwd10 scaled 2500 +\font\bnwxxx=bangwd10 scaled 3000 + + +%% +%% Inhibiting linebreak within words +%% +\hyphenpenalty=10000 \pretolerance=-1 \tolerance=10000 + +%% +%% Defining the macro for e-kar, i-kar etc +%% +\def\*#1*#2{o\null{#2}{#1}} + +%% +%% Redefining some macros to make them consistent with bangla fonts +%% +\def\d#1{\oalign{\smash{#1}\crcr\hidewidth{$\!$\rm.}\hidewidth}} + + +%% +%% Page number in bangla +%% +%\footline{\hss\bngxi\folio\hss} +%\headline{\hfil} + +%% +%% Emulating the bold font +%% +\def\sh#1{\setbox0=\hbox{#1}% + \kern-.02em\copy0\kern-\wd0 + \kern.04em\copy0\kern-\wd0 + \kern-.02em\raise.0433em\box0 } + + +%% +%% Defining the bangla numerals for default in math mode +%% +%\textfont0=\bngx \scriptfont0=\bngvii \scriptscriptfont0=\bngv +%\textfont1=\bnsx \scriptfont1=\bnsvii \scriptscriptfont1=\bnsv +%\textfont2=\tensy \scriptfont2=\sevensy \scriptscriptfont2=\fivesy +%\textfont3=\tenex \scriptfont3=\tenex \scriptscriptfont3=\tenex +%\textfont4=\tenrm \scriptfont4=\sevenrm \scriptscriptfont4=\fiverm + diff --git a/language/bengali/bangtex/latex/barticle.cls b/language/bengali/bangtex/latex/barticle.cls new file mode 100644 index 0000000000..b7cf9a5e37 --- /dev/null +++ b/language/bengali/bangtex/latex/barticle.cls @@ -0,0 +1,732 @@ +%% +%% This is file `barticle.cls', +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Permission is granted to copy this file to another file with a +%% clearly different name and to customize the declarations in that +%% copy to serve the needs of your installation. +%% +%% However, NO PERMISSION is granted to generate or to distribute a +%% modified version of this file under its original name. +%% +%% You are NOT ALLOWED to change this file. +%% +%% +%% MODIFICATION ADVICE: +%% +%% If you want to customize this file, it is best to make a copy of +%% the source file(s) from which it was produced. Use a different +%% name for your copy(ies) and modify the copy(ies); this will ensure +%% that your modifications do not get overwritten when you install a +%% new release of the standard system. You should also ensure that +%% your modified source file does not generate any modified file with +%% the same name as a standard file. +%% +%% You can then easily distribute your modifications by distributing +%% the modified and renamed copy of the source file. This will ensure +%% that other users can safely use your modifications. +%% +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesClass{barticle} + [2001/04/15 v1.2 + LaTeX document class for bangtex] +\newcommand\@ptsize{} +\newif\if@restonecol +\newif\if@titlepage +\@titlepagefalse +\if@compatibility\else +\DeclareOption{a4paper} + {\setlength\paperheight {297mm}% + \setlength\paperwidth {210mm}} +\DeclareOption{a5paper} + {\setlength\paperheight {210mm}% + \setlength\paperwidth {148mm}} +\DeclareOption{b5paper} + {\setlength\paperheight {250mm}% + \setlength\paperwidth {176mm}} +\DeclareOption{letterpaper} + {\setlength\paperheight {11in}% + \setlength\paperwidth {8.5in}} +\DeclareOption{legalpaper} + {\setlength\paperheight {14in}% + \setlength\paperwidth {8.5in}} +\DeclareOption{executivepaper} + {\setlength\paperheight {10.5in}% + \setlength\paperwidth {7.25in}} +\DeclareOption{landscape} + {\setlength\@tempdima {\paperheight}% + \setlength\paperheight {\paperwidth}% + \setlength\paperwidth {\@tempdima}} +\fi +\if@compatibility + \renewcommand\@ptsize{0} +\else +\DeclareOption{10pt}{\renewcommand\@ptsize{0}} +\fi +\DeclareOption{11pt}{\renewcommand\@ptsize{1}} +\DeclareOption{12pt}{\renewcommand\@ptsize{2}} +\if@compatibility\else +\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse} +\fi +\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} +\DeclareOption{draft}{\setlength\overfullrule{5pt}} +\if@compatibility\else +\DeclareOption{final}{\setlength\overfullrule{0pt}} +\fi +\DeclareOption{titlepage}{\@titlepagetrue} +\if@compatibility\else +\DeclareOption{notitlepage}{\@titlepagefalse} +\fi +\if@compatibility\else +\DeclareOption{onecolumn}{\@twocolumnfalse} +\fi +\DeclareOption{twocolumn}{\@twocolumntrue} +\DeclareOption{leqno}{\input{leqno.clo}} +\DeclareOption{fleqn}{\input{fleqn.clo}} +\DeclareOption{openbib}{% + \AtEndOfPackage{% + \renewcommand\@openbib@code{% + \advance\leftmargin\bibindent + \itemindent -\bibindent + \listparindent \itemindent + \parsep \z@ + }% + \renewcommand\newblock{\par}}% +} +\ExecuteOptions{letterpaper,10pt,oneside,onecolumn,final} +\ProcessOptions +\input bangfont +\input{bsize1\@ptsize.clo} +\setlength\lineskip{1\p@} +\setlength\normallineskip{1\p@} +\renewcommand\baselinestretch{} +\setlength\parskip{0\p@ \@plus \p@} +\@lowpenalty 51 +\@medpenalty 151 +\@highpenalty 301 +\setcounter{topnumber}{2} +\renewcommand\topfraction{.7} +\setcounter{bottomnumber}{1} +\renewcommand\bottomfraction{.3} +\setcounter{totalnumber}{3} +\renewcommand\textfraction{.2} +\renewcommand\floatpagefraction{.5} +\setcounter{dbltopnumber}{2} +\renewcommand\dbltopfraction{.7} +\renewcommand\dblfloatpagefraction{.5} +\if@twoside + \def\ps@headings{% + \let\@oddfoot\@empty\let\@evenfoot\@empty + \def\@evenhead{\thepage\hfil\slshape\leftmark}% + \def\@oddhead{{\slshape\rightmark}\hfil\thepage}% + \let\@mkboth\markboth + \def\sectionmark##1{% + \markboth {{% + \ifnum \c@secnumdepth >\z@ + \thesection\quad + \fi + ##1}}{}}% + \def\subsectionmark##1{% + \markright {% + \ifnum \c@secnumdepth >\@ne + \thesubsection\quad + \fi + ##1}}} +\else + \def\ps@headings{% + \let\@oddfoot\@empty + \def\@oddhead{{\slshape\rightmark}\hfil\thepage}% + \let\@mkboth\markboth + \def\sectionmark##1{% + \markright {\MakeUppercase{% + \ifnum \c@secnumdepth >\m@ne + \thesection\quad + \fi + ##1}}}} +\fi +\def\ps@myheadings{% + \let\@oddfoot\@empty\let\@evenfoot\@empty + \def\@evenhead{\thepage\hfil\slshape\leftmark}% + \def\@oddhead{{\slshape\rightmark}\hfil\thepage}% + \let\@mkboth\@gobbletwo + \let\sectionmark\@gobble + \let\subsectionmark\@gobble + } + \if@titlepage + \newcommand\maketitle{\begin{titlepage}% + \let\footnotesize\small + \let\footnoterule\relax + \let \footnote \thanks + \null\vfil + \vskip 60\p@ + \begin{center}% + {\LARGE \@title \par}% + \vskip 3em% + {\large + \lineskip .75em% + \begin{tabular}[t]{c}% + \@author + \end{tabular}\par}% + \vskip 1.5em% + {\lbng \@date \par}% % Set date in \large size. + \end{center}\par + \@thanks + \vfil\null + \end{titlepage}% + \setcounter{footnote}{0}% + \global\let\thanks\relax + \global\let\maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\and\relax +} +\else +\newcommand\maketitle{\par + \begingroup + \renewcommand\thefootnote{\@fnsymbol\c@footnote}% + \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}% + \long\def\@makefntext##1{\parindent 1em\noindent + \hb@xt@1.8em{% + \hss\@textsuperscript{\normalfont\@thefnmark}}##1}% + \if@twocolumn + \ifnum \col@number=\@ne + \@maketitle + \else + \twocolumn[\@maketitle]% + \fi + \else + \newpage + \global\@topnum\z@ % Prevents figures from going at top of page. + \@maketitle + \fi + \thispagestyle{plain}\@thanks + \endgroup + \setcounter{footnote}{0}% + \global\let\thanks\relax + \global\let\maketitle\relax + \global\let\@maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\and\relax +} +\def\@maketitle{% + \newpage + \null + \vskip 2em% + \begin{center}% + \let \footnote \thanks + {\LBng \@title \par}% + \vskip 1.5em% + {\large + \lineskip .5em% + \begin{tabular}[t]{c}% + \Lbng\@author + \end{tabular}\par}% + \vskip 1em% + {\lbng \@date}% + \end{center}% + \par + \vskip 1.5em} +\fi +\setcounter{secnumdepth}{5} +\newcounter {part} +\newcounter {section} +\newcounter {subsection}[section] +\newcounter {subsubsection}[subsection] +\newcounter {paragraph}[subsubsection] +\newcounter {subparagraph}[paragraph] +\renewcommand \thepart {\@Roman\c@part} +\renewcommand \thesection {\@arabic\c@section} +\renewcommand\thesubsection {\thesection$\cdot$\@arabic\c@subsection} +\renewcommand\thesubsubsection{\thesubsection .\@arabic\c@subsubsection} +\renewcommand\theparagraph {\thesubsubsection.\@arabic\c@paragraph} +\renewcommand\thesubparagraph {\theparagraph.\@arabic\c@subparagraph} + + +\newcommand\part{% + \if@noskipsec \leavevmode \fi + \par + \addvspace{4ex}% + \@afterindentfalse + \secdef\@part\@spart} + +\def\@part[#1]#2{% + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{part}% + \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}% + \else + \addcontentsline{toc}{part}{#1}% + \fi + {\parindent \z@ \raggedright + \interlinepenalty \@M + \normalfont + \ifnum \c@secnumdepth >\m@ne + \Large\bfseries \partname~\thepart + \par\nobreak + \fi + \huge \bfseries #2% + \markboth{}{}\par}% + \nobreak + \vskip 3ex + \@afterheading} +\def\@spart#1{% + {\parindent \z@ \raggedright + \interlinepenalty \@M + \normalfont + \huge \bfseries #1\par}% + \nobreak + \vskip 3ex + \@afterheading} +\newcommand\section{\@startsection {section}{1}{\z@}% + {-25pt \@plus -10pt \@minus -2pt}% + {13pt \@plus2pt}% + {\LBng}} +\newcommand\subsection{\@startsection{subsection}{2}{\z@}% + {-15pt\@plus -8pt \@minus -2pt}% + {10pt \@plus 2pt}% + {\Lbng}} +\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% + {-10pt\@plus -5pt \@minus -1pt}% + {8pt \@plus 2pt}% + {\lbng}} +\newcommand\paragraph{\@startsection{paragraph}{4}{\z@}% + {-8pt \@plus 3pt \@minus 1pt}% + {-1em}% + {\lbng}} +\newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}% + {-8pt \@plus 3pt \@minus 1pt}% + {-1em}% + {\bng}} +\if@twocolumn + \setlength\leftmargini {2em} +\else + \setlength\leftmargini {2.5em} +\fi +\leftmargin \leftmargini +\setlength\leftmarginii {2.2em} +\setlength\leftmarginiii {1.87em} +\setlength\leftmarginiv {1.7em} +\if@twocolumn + \setlength\leftmarginv {.5em} + \setlength\leftmarginvi {.5em} +\else + \setlength\leftmarginv {1em} + \setlength\leftmarginvi {1em} +\fi +\setlength \labelsep {.5em} +\setlength \labelwidth{\leftmargini} +\addtolength\labelwidth{-\labelsep} +\@beginparpenalty -\@lowpenalty +\@endparpenalty -\@lowpenalty +\@itempenalty -\@lowpenalty +\renewcommand\theenumi{\@arabic\c@enumi} +\renewcommand\theenumii{\@alph\c@enumii} +\renewcommand\theenumiii{\@roman\c@enumiii} +\renewcommand\theenumiv{\@Alph\c@enumiv} +\newcommand\labelenumi{\theenumi.} +\newcommand\labelenumii{(\theenumii)} +\newcommand\labelenumiii{\theenumiii.} +\newcommand\labelenumiv{\theenumiv.} +\renewcommand\p@enumii{\theenumi} +\renewcommand\p@enumiii{\theenumi(\theenumii)} +\renewcommand\p@enumiv{\p@enumiii\theenumiii} +\newcommand\labelitemi{\textbullet} +\newcommand\labelitemii{\normalfont\bfseries \textendash} +\newcommand\labelitemiii{\textasteriskcentered} +\newcommand\labelitemiv{\textperiodcentered} +\newenvironment{description} + {\list{}{\labelwidth\z@ \itemindent-\leftmargin + \let\makelabel\descriptionlabel}} + {\endlist} +\newcommand*\descriptionlabel[1]{\hspace\labelsep + \normalfont\bfseries #1} +\if@titlepage + \newenvironment{abstract}{% + \titlepage + \null\vfil + \@beginparpenalty\@lowpenalty + \begin{center}% + \lbnw \abstractname + \@endparpenalty\@M + \end{center}}% + {\par\vfil\null\endtitlepage} +\else + \newenvironment{abstract}{% + \if@twocolumn + \section*{\abstractname}% + \else + \small + \begin{center}% + {\lbnw \abstractname\vspace{-.5em}\vspace{\z@}}% + \end{center}% + \quotation\sbng + \fi} + {\if@twocolumn\else\endquotation\fi} +\fi +\newenvironment{verse} + {\let\\\@centercr + \list{}{\itemsep \z@ + \itemindent -1.5em% + \listparindent\itemindent + \rightmargin \leftmargin + \advance\leftmargin 1.5em}% + \item\relax} + {\endlist} +\newenvironment{quotation} + {\list{}{\listparindent 1.5em% + \itemindent \listparindent + \rightmargin \leftmargin + \parsep \z@ \@plus\p@}% + \item\relax} + {\endlist} +\newenvironment{quote} + {\list{}{\rightmargin\leftmargin}% + \item\relax} + {\endlist} +\if@compatibility +\newenvironment{titlepage} + {% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse\newpage + \fi + \thispagestyle{empty}% + \setcounter{page}\z@ + }% + {\if@restonecol\twocolumn \else \newpage \fi + } +\else +\newenvironment{titlepage} + {% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse\newpage + \fi + \thispagestyle{empty}% + \setcounter{page}\@ne + }% + {\if@restonecol\twocolumn \else \newpage \fi + \if@twoside\else + \setcounter{page}\@ne + \fi + } +\fi +\newcommand\appendix{\par + \setcounter{section}{0}% + \setcounter{subsection}{0}% + \gdef\thesection{\@Alph\c@section}} +\setlength\arraycolsep{5\p@} +\setlength\tabcolsep{6\p@} +\setlength\arrayrulewidth{.4\p@} +\setlength\doublerulesep{2\p@} +\setlength\tabbingsep{\labelsep} +\skip\@mpfootins = \skip\footins +\setlength\fboxsep{3\p@} +\setlength\fboxrule{.4\p@} +\renewcommand \theequation {\@arabic\c@equation} +\newcounter{figure} +\renewcommand \thefigure {\@arabic\c@figure} +\def\fps@figure{tbp} +\def\ftype@figure{1} +\def\ext@figure{lof} +\def\fnum@figure{\bng\thefigure~noNNG~\figurename} +\newenvironment{figure} + {\@float{figure}} + {\end@float} +\newenvironment{figure*} + {\@dblfloat{figure}} + {\end@dblfloat} +\newcounter{table} +\renewcommand\thetable{\@arabic\c@table} +\def\fps@table{tbp} +\def\ftype@table{2} +\def\ext@table{lot} +\def\fnum@table{\bng\thetable~noNNG~\tablename} +\newenvironment{table} + {\@float{table}} + {\end@float} +\newenvironment{table*} + {\@dblfloat{table}} + {\end@dblfloat} +\newlength\abovecaptionskip +\newlength\belowcaptionskip +\setlength\abovecaptionskip{10\p@} +\setlength\belowcaptionskip{0\p@} +\long\def\@makecaption#1#2{% + \vskip\abovecaptionskip + \sbox\@tempboxa{#1~.. #2}% + \ifdim \wd\@tempboxa >\hsize + #1~.. #2\par + \else + \global \@minipagefalse + \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% + \fi + \vskip\belowcaptionskip} +\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} +\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} +\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} +\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} +\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} +\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} +\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} +\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal} +\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal} +\newcommand\@pnumwidth{1.55em} +\newcommand\@tocrmarg{2.55em} +\newcommand\@dotsep{4.5} +\setcounter{tocdepth}{3} +\newcommand\tableofcontents{% + \section*{\Lbng\contentsname + \@mkboth{% + \contentsname}{\contentsname}}% + \@starttoc{toc}% + } +\newcommand*\l@part[2]{% + \ifnum \c@tocdepth >-2\relax + \addpenalty\@secpenalty + \addvspace{2.25em \@plus\p@}% + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + {\leavevmode +% \large \bfseries + \LBng #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par + \nobreak + \if@compatibility + \global\@nobreaktrue + \everypar{\global\@nobreakfalse\everypar{}}% + \fi + \endgroup + \fi} +\newcommand*\l@section[2]{% + \ifnum \c@tocdepth >\z@ + \addpenalty\@secpenalty + \addvspace{1.0em \@plus\p@}% + \setlength\@tempdima{2.0em}% + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode %\bfseries + \advance\leftskip\@tempdima + \hskip -\leftskip + \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \endgroup + \fi} +%\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}} +\newcommand*\l@subsection[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 0.3em \@plus\p@ + \setlength\@tempdima{3.0em}% + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \bfseries + \advance\leftskip\@tempdima +% \hskip \leftskip + \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \penalty\@highpenalty + \endgroup + \fi} +%\newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}} +\newcommand*\l@subsubsection[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 0.2em \@plus\p@ + \setlength\@tempdima{4.5em}% + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \bfseries + \advance\leftskip\@tempdima +% \hskip \leftskip + \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \penalty\@highpenalty + \endgroup + \fi} +%\newcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}} +\newcommand*\l@paragraph[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 0.1em \@plus\p@ + \setlength\@tempdima{6.0em}% + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \bfseries + \advance\leftskip\@tempdima + \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \penalty\@highpenalty + \endgroup + \fi} +%\newcommand*\l@subparagraph{\@dottedtocline{5}{10em}{5em}} +\newcommand*\l@subparagraph[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 0.1em \@plus\p@ + \setlength\@tempdima{7.5em}% + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \bfseries + \advance\leftskip\@tempdima + \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \penalty\@highpenalty + \endgroup + \fi} +\newcommand\listoffigures{% + \section*{\listfigurename + \@mkboth{\MakeUppercase\listfigurename}% + {\MakeUppercase\listfigurename}}% + \@starttoc{lof}% + } +\newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}} +\newcommand\listoftables{% + \section*{\listtablename + \@mkboth{% + \MakeUppercase\listtablename}{\MakeUppercase\listtablename}}% + \@starttoc{lot}% + } +\let\l@table\l@figure +\newdimen\bibindent +\setlength\bibindent{1.5em} +\newenvironment{thebibliography}[1] + {\section*{\refname + \@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}}% + \list{\@biblabel{\@arabic\c@enumiv}}% + {\settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \@openbib@code + \usecounter{enumiv}% + \let\p@enumiv\@empty + \renewcommand\theenumiv{\@arabic\c@enumiv}}% + \sloppy + \clubpenalty4000 + \@clubpenalty \clubpenalty + \widowpenalty4000% + \sfcode`\.\@m} + {\def\@noitemerr + {\@latex@warning{Empty `thebibliography' environment}}% + \endlist} +\newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em} +\let\@openbib@code\@empty +\newenvironment{theindex} + {\if@twocolumn + \@restonecolfalse + \else + \@restonecoltrue + \fi + \columnseprule \z@ + \columnsep 35\p@ + \twocolumn[\section*{\indexname}]% + \@mkboth{\MakeUppercase\indexname}% + {\MakeUppercase\indexname}% + \thispagestyle{plain}\parindent\z@ + \parskip\z@ \@plus .3\p@\relax + \let\item\@idxitem} + {\if@restonecol\onecolumn\else\clearpage\fi} +\newcommand\@idxitem{\par\hangindent 40\p@} +\newcommand\subitem{\@idxitem \hspace*{20\p@}} +\newcommand\subsubitem{\@idxitem \hspace*{30\p@}} +\newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} +\renewcommand\footnoterule{% + \kern-3\p@ + \hrule\@width.4\columnwidth + \kern2.6\p@} +\newcommand\@makefntext[1]{% + \parindent 1em% + \noindent + \hb@xt@1.8em{\hss\@makefnmark}#1} +\newcommand\contentsname{suu\*c*i} +\newcommand\listfigurename{cho\*b*ir ta\*l*ika} +\newcommand\listtablename{cho\*k*er ta\*l*ika} +\newcommand\refname{U\*l/l*ekhpoNJ/jii} +\newcommand\indexname{bor/NokRo\*m*ik suu\*c*i} +\newcommand\figurename{cho\*b*i} +\newcommand\tablename{chok} +\newcommand\partname{bhag} +\newcommand\appendixname{po\*r*i\*sh*iSh/To} +\newcommand\abstractname{soNNG\*kK*ip/tosar} +\def\today{\number\day\space \ifcase\month\or + januya\*r*i\or \*f*ebRuya\*r*i\or mar/c\or E\*pR*il\or \*m*e\or jun\or + julaI\or Aagos/T\or \*s*e\*p/T*em/bor\or A\*k/T*eabor\or + no\*bh*em/bor\or \*D*i\*s*em/bor\fi \space + \number\year} +\setlength\columnsep{10\p@} +\setlength\columnseprule{0\p@} +\pagestyle{plain} +\pagenumbering{arabic} +\def\thepage{\bng\arabic{page}} +\if@twoside +\else + \raggedbottom +\fi +\if@twocolumn + \twocolumn + \sloppy + \flushbottom +\else + \onecolumn +\fi +\endinput +%% +%% End of file `barticle.cls'. diff --git a/language/bengali/bangtex/latex/bbk10.clo b/language/bengali/bangtex/latex/bbk10.clo new file mode 100644 index 0000000000..d69cee066a --- /dev/null +++ b/language/bengali/bangtex/latex/bbk10.clo @@ -0,0 +1,296 @@ +%% +%% This is file `bbk10.clo', +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Permission is granted to copy this file to another file with a +%% clearly different name and to customize the declarations in that +%% copy to serve the needs of your installation. +%% +%% However, NO PERMISSION is granted to generate or to distribute a +%% modified version of this file under its original name. +%% +%% You are NOT ALLOWED to change this file. +%% +%% +%% MODIFICATION ADVICE: +%% +%% If you want to customize this file, it is best to make a copy of +%% the source file(s) from which it was produced. Use a different +%% name for your copy(ies) and modify the copy(ies); this will ensure +%% that your modifications do not get overwritten when you install a +%% new release of the standard system. You should also ensure that +%% your modified source file does not generate any modified file with +%% the same name as a standard file. +%% +%% You can then easily distribute your modifications by distributing +%% the modified and renamed copy of the source file. This will ensure +%% that other users can safely use your modifications. +%% +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\ProvidesFile{bbk10.clo} + [2001/04/15 v1.2 + LaTeX document size file for bangtex] +\renewcommand\normalsize{% + \@setfontsize\normalsize\@xpt\@xiipt + \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@ + \belowdisplayskip \abovedisplayskip + \let\@listi\@listI} +\normalsize +\newcommand\small{% + \@setfontsize\small\@ixpt{11}% + \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@ + \abovedisplayshortskip \z@ \@plus2\p@ + \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 4\p@ \@plus2\p@ \@minus2\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\newcommand\footnotesize{% + \@setfontsize\footnotesize\@viiipt{9.5}% + \abovedisplayskip 6\p@ \@plus2\p@ \@minus4\p@ + \abovedisplayshortskip \z@ \@plus\p@ + \belowdisplayshortskip 3\p@ \@plus\p@ \@minus2\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 3\p@ \@plus\p@ \@minus\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\newcommand\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt} +\newcommand\tiny{\@setfontsize\tiny\@vpt\@vipt} +\newcommand\large{\@setfontsize\large\@xiipt{14}} +\newcommand\Large{\@setfontsize\Large\@xivpt{18}} +\newcommand\LARGE{\@setfontsize\LARGE\@xviipt{22}} +\newcommand\huge{\@setfontsize\huge\@xxpt{25}} +\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}} +% +\def\sbng{\bngviii} +\def\tbng{\bngvi} +\def\bng{\bngx} +\def\lbng{\bngxiv} +\def\Lbng{\bngxviii} +\def\LBng{\bngxxii} +\def\hbng{\bngxxv} +\def\Hbng{\bngxxx} +% +\def\sbns{\bnsviii} +\def\tbns{\bnsvi} +\def\bns{\bnsx} +\def\lbns{\bnsxiv} +\def\Lbns{\bnsxviii} +\def\LBns{\bnsxxii} +\def\hbns{\bnsxxv} +\def\Hbns{\bnsxxx} +% +\def\sbnw{\bnwviii} +\def\tbnw{\bnwvi} +\def\bnw{\bnwx} +\def\lbnw{\bnwxiv} +\def\Lbnw{\bnwxviii} +\def\LBnw{\bnwxxii} +\def\hbnw{\bnwxxv} +\def\Hbnw{\bnwxxx} +% +\if@twocolumn + \setlength\parindent{1em} +\else + \setlength\parindent{15\p@} +\fi +\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@} +\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@} +\setlength\headheight{12\p@} +\setlength\headsep {.25in} +\setlength\topskip {10\p@} +\setlength\footskip{.35in} +\if@compatibility \setlength\maxdepth{4\p@} \else +\setlength\maxdepth{.5\topskip} \fi +\if@compatibility + \if@twocolumn + \setlength\textwidth{410\p@} + \else + \setlength\textwidth{4.5in} + \fi +\else + \setlength\@tempdima{\paperwidth} + \addtolength\@tempdima{-2in} + \setlength\@tempdimb{345\p@} + \if@twocolumn + \ifdim\@tempdima>2\@tempdimb\relax + \setlength\textwidth{2\@tempdimb} + \else + \setlength\textwidth{\@tempdima} + \fi + \else + \ifdim\@tempdima>\@tempdimb\relax + \setlength\textwidth{\@tempdimb} + \else + \setlength\textwidth{\@tempdima} + \fi + \fi +\fi +\if@compatibility\else + \@settopoint\textwidth +\fi +\if@compatibility + \setlength\textheight{41\baselineskip} +\else + \setlength\@tempdima{\paperheight} + \addtolength\@tempdima{-2in} + \addtolength\@tempdima{-1.5in} + \divide\@tempdima\baselineskip + \@tempcnta=\@tempdima + \setlength\textheight{\@tempcnta\baselineskip} +\fi +\addtolength\textheight{\topskip} +\if@twocolumn + \setlength\marginparsep {10\p@} +\else + \setlength\marginparsep{7\p@} +\fi +\setlength\marginparpush{5\p@} +\if@compatibility + \setlength\oddsidemargin {.5in} + \setlength\evensidemargin {1.5in} + \setlength\marginparwidth {.75in} + \if@twocolumn + \setlength\oddsidemargin {30\p@} + \setlength\evensidemargin {30\p@} + \setlength\marginparwidth {48\p@} + \fi +\else + \if@twoside + \setlength\@tempdima {\paperwidth} + \addtolength\@tempdima {-\textwidth} + \setlength\oddsidemargin {.4\@tempdima} + \addtolength\oddsidemargin {-1in} + \setlength\marginparwidth {.6\@tempdima} + \addtolength\marginparwidth {-\marginparsep} + \addtolength\marginparwidth {-0.4in} + \else + \setlength\@tempdima {\paperwidth} + \addtolength\@tempdima {-\textwidth} + \setlength\oddsidemargin {.5\@tempdima} + \addtolength\oddsidemargin {-1in} + \setlength\marginparwidth {.5\@tempdima} + \addtolength\marginparwidth {-\marginparsep} + \addtolength\marginparwidth {-0.4in} + \addtolength\marginparwidth {-.4in} + \fi + \ifdim \marginparwidth >2in + \setlength\marginparwidth{2in} + \fi + \@settopoint\oddsidemargin + \@settopoint\marginparwidth + \setlength\evensidemargin {\paperwidth} + \addtolength\evensidemargin{-2in} + \addtolength\evensidemargin{-\textwidth} + \addtolength\evensidemargin{-\oddsidemargin} + \@settopoint\evensidemargin +\fi +\if@compatibility + \setlength\topmargin{.75in} +\else + \setlength\topmargin{\paperheight} + \addtolength\topmargin{-2in} + \addtolength\topmargin{-\headheight} + \addtolength\topmargin{-\headsep} + \addtolength\topmargin{-\textheight} + \addtolength\topmargin{-\footskip} % this might be wrong! + \addtolength\topmargin{-.5\topmargin} + \@settopoint\topmargin +\fi +\setlength\footnotesep{6.65\p@} +\setlength{\skip\footins}{9\p@ \@plus 4\p@ \@minus 2\p@} +\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\intextsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\@fptop{0\p@ \@plus 1fil} +\setlength\@fpsep{8\p@ \@plus 2fil} +\setlength\@fpbot{0\p@ \@plus 1fil} +\setlength\@dblfptop{0\p@ \@plus 1fil} +\setlength\@dblfpsep{8\p@ \@plus 2fil} +\setlength\@dblfpbot{0\p@ \@plus 1fil} +\setlength\partopsep{2\p@ \@plus 1\p@ \@minus 1\p@} +\def\@listi{\leftmargin\leftmargini + \parsep 4\p@ \@plus2\p@ \@minus\p@ + \topsep 8\p@ \@plus2\p@ \@minus4\p@ + \itemsep4\p@ \@plus2\p@ \@minus\p@} +\let\@listI\@listi +\@listi +\def\@listii {\leftmargin\leftmarginii + \labelwidth\leftmarginii + \advance\labelwidth-\labelsep + \topsep 4\p@ \@plus2\p@ \@minus\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep} +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii + \advance\labelwidth-\labelsep + \topsep 2\p@ \@plus\p@\@minus\p@ + \parsep \z@ + \partopsep \p@ \@plus\z@ \@minus\p@ + \itemsep \topsep} +\def\@listiv {\leftmargin\leftmarginiv + \labelwidth\leftmarginiv + \advance\labelwidth-\labelsep} +\def\@listv {\leftmargin\leftmarginv + \labelwidth\leftmarginv + \advance\labelwidth-\labelsep} +\def\@listvi {\leftmargin\leftmarginvi + \labelwidth\leftmarginvi + \advance\labelwidth-\labelsep} +\endinput +%% +%% End of file `bbk10.clo'. diff --git a/language/bengali/bangtex/latex/bbk11.clo b/language/bengali/bangtex/latex/bbk11.clo new file mode 100644 index 0000000000..c10349cb80 --- /dev/null +++ b/language/bengali/bangtex/latex/bbk11.clo @@ -0,0 +1,294 @@ +%% +%% This is file `bbk11.clo', +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Permission is granted to copy this file to another file with a +%% clearly different name and to customize the declarations in that +%% copy to serve the needs of your installation. +%% However, NO PERMISSION is granted to generate or to distribute a +%% modified version of this file under its original name. +%% You are NOT ALLOWED to change this file. +%% +%% +%% MODIFICATION ADVICE: +%% +%% If you want to customize this file, it is best to make a copy of +%% the source file(s) from which it was produced. Use a different +%% name for your copy(ies) and modify the copy(ies); this will ensure +%% that your modifications do not get overwritten when you install a +%% new release of the standard system. You should also ensure that +%% your modified source file does not generate any modified file with +%% the same name as a standard file. +%% +%% You can then easily distribute your modifications by distributing +%% the modified and renamed copy of the source file. This will ensure +%% that other users can safely use your modifications. +%% +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\ProvidesFile{bk11.clo} + [1999/01/07 v1.4a + Standard LaTeX file (size option)] +\renewcommand\normalsize{% + \@setfontsize\normalsize\@xipt{13.6}% + \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@ + \belowdisplayskip \abovedisplayskip + \let\@listi\@listI} +\normalsize +\newcommand\small{% + \@setfontsize\small\@xpt\@xiipt + \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 6\p@ \@plus2\p@ \@minus2\p@ + \parsep 3\p@ \@plus2\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\newcommand\footnotesize{% + \@setfontsize\footnotesize\@ixpt{11}% + \abovedisplayskip 8\p@ \@plus2\p@ \@minus4\p@ + \abovedisplayshortskip \z@ \@plus\p@ + \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 4\p@ \@plus2\p@ \@minus2\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\newcommand\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}} +\newcommand\tiny{\@setfontsize\tiny\@vipt\@viipt} +\newcommand\large{\@setfontsize\large\@xiipt{14}} +\newcommand\Large{\@setfontsize\Large\@xivpt{18}} +\newcommand\LARGE{\@setfontsize\LARGE\@xviipt{22}} +\newcommand\huge{\@setfontsize\huge\@xxpt{25}} +\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}} +% +\def\sbng{\bngviii} +\def\tbng{\bngvii} +\def\bng{\bngxi} +\def\lbng{\bngxiv} +\def\Lbng{\bngxviii} +\def\LBng{\bngxxii} +\def\hbng{\bngxxv} +\def\Hbng{\bngxxx} +% +\def\sbns{\bnsviii} +\def\tbns{\bnsvii} +\def\bns{\bnsxi} +\def\lbns{\bnsxiv} +\def\Lbns{\bnsxviii} +\def\LBns{\bnsxxii} +\def\hbns{\bnsxxv} +\def\Hbns{\bnsxxx} +% +\def\sbnw{\bnwviii} +\def\tbnw{\bnwvii} +\def\bnw{\bnwxi} +\def\lbnw{\bnwxiv} +\def\Lbnw{\bnwxviii} +\def\LBnw{\bnwxxii} +\def\hbnw{\bnwxxv} +\def\Hbnw{\bnwxxx} +% +\if@twocolumn + \setlength\parindent{1em} +\else + \setlength\parindent{17\p@} +\fi +\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@} +\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@} +\setlength\headheight{12\p@} +\setlength\headsep {.275in} +\setlength\topskip {11\p@} +\setlength\footskip{.38in} +\if@compatibility \setlength\maxdepth{4\p@} \else +\setlength\maxdepth{.5\topskip} \fi +\if@compatibility + \if@twocolumn + \setlength\textwidth{410\p@} + \else + \setlength\textwidth{5in} + \fi +\else + \setlength\@tempdima{\paperwidth} + \addtolength\@tempdima{-2in} + \setlength\@tempdimb{360\p@} + \if@twocolumn + \ifdim\@tempdima>2\@tempdimb\relax + \setlength\textwidth{2\@tempdimb} + \else + \setlength\textwidth{\@tempdima} + \fi + \else + \ifdim\@tempdima>\@tempdimb\relax + \setlength\textwidth{\@tempdimb} + \else + \setlength\textwidth{\@tempdima} + \fi + \fi +\fi +\if@compatibility\else + \@settopoint\textwidth +\fi +\if@compatibility + \setlength\textheight{38\baselineskip} +\else + \setlength\@tempdima{\paperheight} + \addtolength\@tempdima{-2in} + \addtolength\@tempdima{-1.5in} + \divide\@tempdima\baselineskip + \@tempcnta=\@tempdima + \setlength\textheight{\@tempcnta\baselineskip} +\fi +\addtolength\textheight{\topskip} +\if@twocolumn + \setlength\marginparsep {10\p@} +\else + \setlength\marginparsep{7\p@} +\fi +\setlength\marginparpush{5\p@} +\if@compatibility + \setlength\oddsidemargin {.25in} + \setlength\evensidemargin {1.25in} + \setlength\marginparwidth {1in} + \if@twocolumn + \setlength\oddsidemargin {30\p@} + \setlength\evensidemargin {30\p@} + \setlength\marginparwidth {48\p@} + \fi +\else + \if@twoside + \setlength\@tempdima {\paperwidth} + \addtolength\@tempdima {-\textwidth} + \setlength\oddsidemargin {.4\@tempdima} + \addtolength\oddsidemargin {-1in} + \setlength\marginparwidth {.6\@tempdima} + \addtolength\marginparwidth {-\marginparsep} + \addtolength\marginparwidth {-0.4in} + \else + \setlength\@tempdima {\paperwidth} + \addtolength\@tempdima {-\textwidth} + \setlength\oddsidemargin {.5\@tempdima} + \addtolength\oddsidemargin {-1in} + \setlength\marginparwidth {.5\@tempdima} + \addtolength\marginparwidth {-\marginparsep} + \addtolength\marginparwidth {-0.4in} + \addtolength\marginparwidth {-.4in} + \fi + \ifdim \marginparwidth >2in + \setlength\marginparwidth{2in} + \fi + \@settopoint\oddsidemargin + \@settopoint\marginparwidth + \setlength\evensidemargin {\paperwidth} + \addtolength\evensidemargin{-2in} + \addtolength\evensidemargin{-\textwidth} + \addtolength\evensidemargin{-\oddsidemargin} + \@settopoint\evensidemargin +\fi +\if@compatibility + \setlength\topmargin{.73in} +\else + \setlength\topmargin{\paperheight} + \addtolength\topmargin{-2in} + \addtolength\topmargin{-\headheight} + \addtolength\topmargin{-\headsep} + \addtolength\topmargin{-\textheight} + \addtolength\topmargin{-\footskip} % this might be wrong! + \addtolength\topmargin{-.5\topmargin} + \@settopoint\topmargin +\fi +\setlength\footnotesep{7.7\p@} +\setlength{\skip\footins}{10\p@ \@plus 4\p@ \@minus 2\p@} +\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\intextsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\@fptop{0\p@ \@plus 1fil} +\setlength\@fpsep{8\p@ \@plus 2fil} +\setlength\@fpbot{0\p@ \@plus 1fil} +\setlength\@dblfptop{0\p@ \@plus 1fil} +\setlength\@dblfpsep{8\p@ \@plus 2fil} +\setlength\@dblfpbot{0\p@ \@plus 1fil} +\setlength\partopsep{3\p@ \@plus 1\p@ \@minus 1\p@} +\def\@listi{\leftmargin\leftmargini + \parsep 4.5\p@ \@plus2\p@ \@minus\p@ + \topsep 9\p@ \@plus3\p@ \@minus5\p@ + \itemsep4.5\p@ \@plus2\p@ \@minus\p@} +\let\@listI\@listi +\@listi +\def\@listii {\leftmargin\leftmarginii + \labelwidth\leftmarginii + \advance\labelwidth-\labelsep + \topsep 4.5\p@ \@plus2\p@ \@minus\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep} +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii + \advance\labelwidth-\labelsep + \topsep 2\p@ \@plus\p@\@minus\p@ + \parsep \z@ + \partopsep \p@ \@plus\z@ \@minus\p@ + \itemsep \topsep} +\def\@listiv {\leftmargin\leftmarginiv + \labelwidth\leftmarginiv + \advance\labelwidth-\labelsep} +\def\@listv {\leftmargin\leftmarginv + \labelwidth\leftmarginv + \advance\labelwidth-\labelsep} +\def\@listvi {\leftmargin\leftmarginvi + \labelwidth\leftmarginvi + \advance\labelwidth-\labelsep} +\endinput +%% +%% End of file `bk11.clo'. diff --git a/language/bengali/bangtex/latex/bbk12.clo b/language/bengali/bangtex/latex/bbk12.clo new file mode 100644 index 0000000000..83c5ebc1dc --- /dev/null +++ b/language/bengali/bangtex/latex/bbk12.clo @@ -0,0 +1,296 @@ +%% +%% This is file `bbk12.clo', +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Permission is granted to copy this file to another file with a +%% clearly different name and to customize the declarations in that +%% copy to serve the needs of your installation. +%% +%% However, NO PERMISSION is granted to generate or to distribute a +%% modified version of this file under its original name. +%% +%% You are NOT ALLOWED to change this file. +%% +%% +%% MODIFICATION ADVICE: +%% +%% If you want to customize this file, it is best to make a copy of +%% the source file(s) from which it was produced. Use a different +%% name for your copy(ies) and modify the copy(ies); this will ensure +%% that your modifications do not get overwritten when you install a +%% new release of the standard system. You should also ensure that +%% your modified source file does not generate any modified file with +%% the same name as a standard file. +%% +%% You can then easily distribute your modifications by distributing +%% the modified and renamed copy of the source file. This will ensure +%% that other users can safely use your modifications. +%% +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\ProvidesFile{bk12.clo} + [1999/01/07 v1.4a + Standard LaTeX file (size option)] +\renewcommand\normalsize{% + \@setfontsize\normalsize\@xiipt{14.5}% + \abovedisplayskip 12\p@ \@plus3\p@ \@minus7\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@ + \belowdisplayskip \abovedisplayskip + \let\@listi\@listI} +\normalsize +\newcommand\small{% + \@setfontsize\small\@xipt{13.6}% + \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 9\p@ \@plus3\p@ \@minus5\p@ + \parsep 4.5\p@ \@plus2\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\newcommand\footnotesize{% + \@setfontsize\footnotesize\@xpt\@xiipt + \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 6\p@ \@plus2\p@ \@minus2\p@ + \parsep 3\p@ \@plus2\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\newcommand\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}} +\newcommand\tiny{\@setfontsize\tiny\@vipt\@viipt} +\newcommand\large{\@setfontsize\large\@xivpt{18}} +\newcommand\Large{\@setfontsize\Large\@xviipt{22}} +\newcommand\LARGE{\@setfontsize\LARGE\@xxpt{25}} +\newcommand\huge{\@setfontsize\huge\@xxvpt{30}} +\let\Huge=\huge +% +\def\sbng{\bngviii} +\def\tbng{\bngvii} +\def\bng{\bngxii} +\def\lbng{\bngxviii} +\def\Lbng{\bngxxii} +\def\LBng{\bngxxv} +\def\hbng{\bngxxx} +\def\Hbng{\bngxxx} +% +\def\sbns{\bnsviii} +\def\tbns{\bnsvii} +\def\bns{\bnsxii} +\def\lbns{\bnsxviii} +\def\Lbns{\bnsxxii} +\def\LBns{\bnsxxv} +\def\hbns{\bnsxxx} +\def\Hbns{\bnsxxx} +% +\def\sbnw{\bnwviii} +\def\tbnw{\bnwvii} +\def\bnw{\bnwxii} +\def\lbnw{\bnwxviii} +\def\Lbnw{\bnwxxii} +\def\LBnw{\bnwxxv} +\def\hbnw{\bnwxxx} +\def\Hbnw{\bnwxxx} +% +\if@twocolumn + \setlength\parindent{1em} +\else + \setlength\parindent{1.5em} +\fi +\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@} +\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@} +\setlength\headheight{12\p@} +\setlength\headsep {.275in} +\setlength\topskip {12\p@} +\setlength\footskip{30\p@} +\if@compatibility \setlength\maxdepth{4\p@} \else +\setlength\maxdepth{.5\topskip} \fi +\if@compatibility + \if@twocolumn + \setlength\textwidth{410\p@} + \else + \setlength\textwidth{5in} + \fi +\else + \setlength\@tempdima{\paperwidth} + \addtolength\@tempdima{-2in} + \setlength\@tempdimb{390\p@} + \if@twocolumn + \ifdim\@tempdima>2\@tempdimb\relax + \setlength\textwidth{2\@tempdimb} + \else + \setlength\textwidth{\@tempdima} + \fi + \else + \ifdim\@tempdima>\@tempdimb\relax + \setlength\textwidth{\@tempdimb} + \else + \setlength\textwidth{\@tempdima} + \fi + \fi +\fi +\if@compatibility\else + \@settopoint\textwidth +\fi +\if@compatibility + \setlength\textheight{36\baselineskip} +\else + \setlength\@tempdima{\paperheight} + \addtolength\@tempdima{-2in} + \addtolength\@tempdima{-1.5in} + \divide\@tempdima\baselineskip + \@tempcnta=\@tempdima + \setlength\textheight{\@tempcnta\baselineskip} +\fi +\addtolength\textheight{\topskip} +\if@twocolumn + \setlength\marginparsep {10\p@} +\else + \setlength\marginparsep{7\p@} +\fi +\setlength\marginparpush{7\p@} +\if@compatibility + \setlength\oddsidemargin {.25in} + \setlength\evensidemargin {1.25in} + \setlength\marginparwidth {1in} + \if@twocolumn + \setlength\oddsidemargin {30\p@} + \setlength\evensidemargin {30\p@} + \setlength\marginparwidth {48\p@} + \fi +\else + \if@twoside + \setlength\@tempdima {\paperwidth} + \addtolength\@tempdima {-\textwidth} + \setlength\oddsidemargin {.4\@tempdima} + \addtolength\oddsidemargin {-1in} + \setlength\marginparwidth {.6\@tempdima} + \addtolength\marginparwidth {-\marginparsep} + \addtolength\marginparwidth {-0.4in} + \else + \setlength\@tempdima {\paperwidth} + \addtolength\@tempdima {-\textwidth} + \setlength\oddsidemargin {.5\@tempdima} + \addtolength\oddsidemargin {-1in} + \setlength\marginparwidth {.5\@tempdima} + \addtolength\marginparwidth {-\marginparsep} + \addtolength\marginparwidth {-0.4in} + \addtolength\marginparwidth {-.4in} + \fi + \ifdim \marginparwidth >2in + \setlength\marginparwidth{2in} + \fi + \@settopoint\oddsidemargin + \@settopoint\marginparwidth + \setlength\evensidemargin {\paperwidth} + \addtolength\evensidemargin{-2in} + \addtolength\evensidemargin{-\textwidth} + \addtolength\evensidemargin{-\oddsidemargin} + \@settopoint\evensidemargin +\fi +\if@compatibility + \setlength\topmargin{.73in} +\else + \setlength\topmargin{\paperheight} + \addtolength\topmargin{-2in} + \addtolength\topmargin{-\headheight} + \addtolength\topmargin{-\headsep} + \addtolength\topmargin{-\textheight} + \addtolength\topmargin{-\footskip} % this might be wrong! + \addtolength\topmargin{-.5\topmargin} + \@settopoint\topmargin +\fi +\setlength\footnotesep{8.4\p@} +\setlength{\skip\footins}{10.8\p@ \@plus 4\p@ \@minus 2\p@} +\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\intextsep {14\p@ \@plus 4\p@ \@minus 4\p@} +\setlength\dblfloatsep {14\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\@fptop{0\p@ \@plus 1fil} +\setlength\@fpsep{10\p@ \@plus 2fil} +\setlength\@fpbot{0\p@ \@plus 1fil} +\setlength\@dblfptop{0\p@ \@plus 1fil} +\setlength\@dblfpsep{10\p@ \@plus 2fil} +\setlength\@dblfpbot{0\p@ \@plus 1fil} +\setlength\partopsep{3\p@ \@plus 2\p@ \@minus 2\p@} +\def\@listi{\leftmargin\leftmargini + \parsep 5\p@ \@plus2.5\p@ \@minus\p@ + \topsep 10\p@ \@plus4\p@ \@minus6\p@ + \itemsep5\p@ \@plus2.5\p@ \@minus\p@} +\let\@listI\@listi +\@listi +\def\@listii {\leftmargin\leftmarginii + \labelwidth\leftmarginii + \advance\labelwidth-\labelsep + \topsep 5\p@ \@plus2.5\p@ \@minus\p@ + \parsep 2.5\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep} +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii + \advance\labelwidth-\labelsep + \topsep 2.5\p@\@plus\p@\@minus\p@ + \parsep \z@ + \partopsep \p@ \@plus\z@ \@minus\p@ + \itemsep \topsep} +\def\@listiv {\leftmargin\leftmarginiv + \labelwidth\leftmarginiv + \advance\labelwidth-\labelsep} +\def\@listv {\leftmargin\leftmarginv + \labelwidth\leftmarginv + \advance\labelwidth-\labelsep} +\def\@listvi {\leftmargin\leftmarginvi + \labelwidth\leftmarginvi + \advance\labelwidth-\labelsep} +\endinput +%% +%% End of file `bbk12.clo'. diff --git a/language/bengali/bangtex/latex/bbook.cls b/language/bengali/bangtex/latex/bbook.cls new file mode 100644 index 0000000000..b0c1ac21c7 --- /dev/null +++ b/language/bengali/bangtex/latex/bbook.cls @@ -0,0 +1,814 @@ +%% +%% This is file `bbook.cls', +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Permission is granted to copy this file to another file with a +%% clearly different name and to customize the declarations in that +%% copy to serve the needs of your installation. +%% +%% However, NO PERMISSION is granted to generate or to distribute a +%% modified version of this file under its original name. +%% +%% You are NOT ALLOWED to change this file. +%% +%% +%% MODIFICATION ADVICE: +%% +%% If you want to customize this file, it is best to make a copy of +%% the source file(s) from which it was produced. Use a different +%% name for your copy(ies) and modify the copy(ies); this will ensure +%% that your modifications do not get overwritten when you install a +%% new release of the standard system. You should also ensure that +%% your modified source file does not generate any modified file with +%% the same name as a standard file. +%% +%% You can then easily distribute your modifications by distributing +%% the modified and renamed copy of the source file. This will ensure +%% that other users can safely use your modifications. +%% +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesClass{bbook} + [2001/04/15 v1.2 + LaTeX document class for bangtex] +\newcommand\@ptsize{} +\newif\if@restonecol +\newif\if@titlepage +\@titlepagetrue +\newif\if@openright +\newif\if@mainmatter \@mainmattertrue +\if@compatibility\else +\DeclareOption{a4paper} + {\setlength\paperheight {297mm}% + \setlength\paperwidth {210mm}} +\DeclareOption{a5paper} + {\setlength\paperheight {210mm}% + \setlength\paperwidth {148mm}} +\DeclareOption{b5paper} + {\setlength\paperheight {250mm}% + \setlength\paperwidth {176mm}} +\DeclareOption{letterpaper} + {\setlength\paperheight {11in}% + \setlength\paperwidth {8.5in}} +\DeclareOption{legalpaper} + {\setlength\paperheight {14in}% + \setlength\paperwidth {8.5in}} +\DeclareOption{executivepaper} + {\setlength\paperheight {10.5in}% + \setlength\paperwidth {7.25in}} +\DeclareOption{landscape} + {\setlength\@tempdima {\paperheight}% + \setlength\paperheight {\paperwidth}% + \setlength\paperwidth {\@tempdima}} +\fi +\if@compatibility + \renewcommand\@ptsize{0} +\else +\DeclareOption{10pt}{\renewcommand\@ptsize{0}} +\fi +\DeclareOption{11pt}{\renewcommand\@ptsize{1}} +\DeclareOption{12pt}{\renewcommand\@ptsize{2}} +\if@compatibility\else +\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse} +\fi +\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} +\DeclareOption{draft}{\setlength\overfullrule{5pt}} +\if@compatibility\else +\DeclareOption{final}{\setlength\overfullrule{0pt}} +\fi +\DeclareOption{titlepage}{\@titlepagetrue} +\if@compatibility\else +\DeclareOption{notitlepage}{\@titlepagefalse} +\fi +\if@compatibility +\@openrighttrue +\else +\DeclareOption{openright}{\@openrighttrue} +\DeclareOption{openany}{\@openrightfalse} +\fi +\if@compatibility\else +\DeclareOption{onecolumn}{\@twocolumnfalse} +\fi +\DeclareOption{twocolumn}{\@twocolumntrue} +\DeclareOption{leqno}{\input{leqno.clo}} +\DeclareOption{fleqn}{\input{fleqn.clo}} +\DeclareOption{openbib}{% + \AtEndOfPackage{% + \renewcommand\@openbib@code{% + \advance\leftmargin\bibindent + \itemindent -\bibindent + \listparindent \itemindent + \parsep \z@ + }% + \renewcommand\newblock{\par}}% +} +\ExecuteOptions{letterpaper,10pt,twoside,onecolumn,final,openright} +\ProcessOptions +\input bangfont +\input{bbk1\@ptsize.clo} +\setlength\lineskip{1\p@} +\setlength\normallineskip{1\p@} +\renewcommand\baselinestretch{} +\setlength\parskip{0\p@ \@plus \p@} +\@lowpenalty 51 +\@medpenalty 151 +\@highpenalty 301 +\setcounter{topnumber}{2} +\renewcommand\topfraction{.7} +\setcounter{bottomnumber}{1} +\renewcommand\bottomfraction{.3} +\setcounter{totalnumber}{3} +\renewcommand\textfraction{.2} +\renewcommand\floatpagefraction{.5} +\setcounter{dbltopnumber}{2} +\renewcommand\dbltopfraction{.7} +\renewcommand\dblfloatpagefraction{.5} +\if@twoside + \def\ps@headings{% + \let\@oddfoot\@empty\let\@evenfoot\@empty + \def\@evenhead{\bng\thepage\hfil\bng\leftmark}% + \def\@oddhead{{\bng\leftmark}\hfil\bng\thepage}% + \let\@mkboth\markboth + \def\chaptermark##1{% + \markboth {% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter +% \@chapapp\ \thechapter. \ % + \fi + \fi + ##1}{}}% + \def\sectionmark##1{% + \markright {% + \ifnum \c@secnumdepth >\z@ + \thesection. \ % + \fi + ##1}}} +\else + \def\ps@headings{% + \let\@oddfoot\@empty + \def\@oddhead{{\slshape\rightmark}\hfil\thepage}% + \let\@mkboth\markboth + \def\chaptermark##1{% + \markright {% + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter +% \@chapapp\ \thechapter. \ % + \fi + \fi + ##1}}} +\fi +\def\ps@myheadings{% + \let\@oddfoot\@empty\let\@evenfoot\@emptyhead + \def\@evenhead{\bng\thepage\hfil\slshape\leftmark}% + \def\@oddhead{{\slshape\rightmark}\hfil\bng\thepage}% + \let\@mkboth\@gobbletwo + \let\chaptermark\@gobble + \let\sectionmark\@gobble + } + \if@titlepage + \newcommand\maketitle{\begin{titlepage}% + \let\footnotesize\small + \let\footnoterule\relax + \let \footnote \thanks + \null\vfil + \vskip 60\p@ + \begin{center}% + {\LARGE \@title \par}% + \vskip 3em% + {\large + \lineskip .75em% + \begin{tabular}[t]{c}% + \@author + \end{tabular}\par}% + \vskip 1.5em% + {\large \@date \par}% % Set date in \large size. + \end{center}\par + \@thanks + \vfil\null + \end{titlepage}% + \setcounter{footnote}{0}% + \global\let\thanks\relax + \global\let\maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\and\relax +} +\else +\newcommand\maketitle{\par + \begingroup + \renewcommand\thefootnote{\@fnsymbol\c@footnote}% + \def\@makefnmark{\rlap{\@textsuperscript{\sbng\@thefnmark}}}% + \long\def\@makefntext##1{\parindent 1em\noindent + \hb@xt@1.8em{% + \hss\@textsuperscript{\sbng\@thefnmark}}##1}% + \if@twocolumn + \ifnum \col@number=\@ne + \@maketitle + \else + \twocolumn[\@maketitle]% + \fi + \else + \newpage + \global\@topnum\z@ % Prevents figures from going at top of page. + \@maketitle + \fi + \thispagestyle{plain}\@thanks + \endgroup + \setcounter{footnote}{0}% + \global\let\thanks\relax + \global\let\maketitle\relax + \global\let\@maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\and\relax +} +\def\@maketitle{% + \newpage + \null + \vskip 2em% + \begin{center}% + \let \footnote \thanks + {\LARGE \@title \par}% + \vskip 1.5em% + {\large + \lineskip .5em% + \begin{tabular}[t]{c}% + \@author + \end{tabular}\par}% + \vskip 1em% + {\large \@date}% + \end{center}% + \par + \vskip 1.5em} +\fi +\newcommand*\chaptermark[1]{} +\setcounter{secnumdepth}{5} +\newcounter {part} +\newcounter {chapter} +\newcounter {section}[chapter] +\newcounter {subsection}[section] +\newcounter {subsubsection}[subsection] +\newcounter {paragraph}[subsubsection] +\newcounter {subparagraph}[paragraph] +\renewcommand\thepart {\@arabic\c@part} +\renewcommand\thechapter {\@arabic\c@chapter} +\renewcommand\thesection {\thechapter.\@arabic\c@section} +\renewcommand\thesubsection {\thesection.\@arabic\c@subsection} +\renewcommand\thesubsubsection{\thesubsection .\@arabic\c@subsubsection} +\renewcommand\theparagraph {\thesubsubsection.\@arabic\c@paragraph} +\renewcommand\thesubparagraph {\theparagraph.\@arabic\c@subparagraph} +\newcommand\@chapapp{\chaptername} +\newcommand\frontmatter{% + \if@openright + \cleardoublepage + \else + \clearpage + \fi + \@mainmatterfalse + \pagenumbering{roman}} +\newcommand\mainmatter{% + \if@openright + \cleardoublepage + \else + \clearpage + \fi + \@mainmattertrue + \pagenumbering{arabic}} +\newcommand\backmatter{% + \if@openright + \cleardoublepage + \else + \clearpage + \fi + \@mainmatterfalse} +\newcommand\part{% + \if@openright + \cleardoublepage +% \clearpage + \else + \clearpage + \fi + \thispagestyle{plain}% + \if@twocolumn + \onecolumn + \@tempswatrue + \else + \@tempswafalse + \fi + \null\vfil + \secdef\@part\@spart} + +\def\@part[#1]#2{% + \ifnum \c@secnumdepth >-2\relax + \refstepcounter{part}% +% \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}% + \addcontentsline{toc}{part}{\lbng #1}% + \else + \addcontentsline{toc}{part}{\bng #1}% + \fi + \markboth{}{}% + {\centering + \interlinepenalty \@M + \normalfont + \ifnum \c@secnumdepth >-2\relax +% \huge\bfseries \partname~\thepart +% \par + \vskip 20\p@ + \fi + \hbng #2\par}% + \@endpart} +\def\@spart#1{% + {\centering + \interlinepenalty \@M + \normalfont + \Huge \bfseries #1\par}% + \@endpart} +\def\@endpart{\vfil%\newpage + \if@twoside + \null + \thispagestyle{empty}% + \newpage + \fi + \if@tempswa + \twocolumn + \fi} +\newcommand\chapter{\if@openright\clearpage\else\clearpage\fi + \thispagestyle{empty}% + \global\@topnum\z@ + \@afterindentfalse + \secdef\@chapter\@schapter} +\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\bng\thechapter}\quad\bng #1}% + \else + \addcontentsline{toc}{chapter}{\bng #1}% + \fi + \else + \addcontentsline{toc}{chapter}{\bng #1}% + \fi + \chaptermark{\bng #1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi} +\def\@makechapterhead#1{% + \vspace*{50\p@}% + {\parindent \z@ \raggedright \normalfont + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter +% \huge\bfseries \@chapapp\space \thechapter + \Lbng\thechapter + \par\nobreak + \vskip 20\p@ + \fi + \fi + \interlinepenalty\@M +% \Huge \bfseries #1\par\nobreak + \Lbng #1\par\nobreak + \vskip 40\p@ + }} +\def\@schapter#1{\if@twocolumn + \@topnewpage[\@makeschapterhead{#1}]% + \else + \@makeschapterhead{#1}% + \@afterheading + \fi} +\def\@makeschapterhead#1{% + \vspace*{50\p@}% + {\parindent \z@ \raggedright + \normalfont + \interlinepenalty\@M +% \Huge \bfseries #1\par\nobreak + \Lbng #1\par\nobreak + \vskip 20\p@ + }} +\newcommand\section{\@startsection {section}{1}{\z@}% + {-25pt \@plus -10pt \@minus -2pt}% + {13pt \@plus2pt}% + {\LBng}} +\newcommand\subsection{\@startsection{subsection}{2}{\z@}% + {-15pt\@plus -8pt \@minus -2pt}% + {10pt \@plus 2pt}% + {\Lbng}} +\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% + {-10pt\@plus -5pt \@minus -1pt}% + {8pt \@plus 2pt}% + {\lbng}} +\newcommand\paragraph{\@startsection{paragraph}{4}{\z@}% + {-8pt \@plus 3pt \@minus 1pt}% + {-1em}% + {\lbng}} +\newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}% + {-8pt \@plus 3pt \@minus 1pt}% + {-1em}% + {\bng}} +\if@twocolumn + \setlength\leftmargini {2em} +\else + \setlength\leftmargini {2.5em} +\fi +\leftmargin \leftmargini +\setlength\leftmarginii {2.2em} +\setlength\leftmarginiii {1.87em} +\setlength\leftmarginiv {1.7em} +\if@twocolumn + \setlength\leftmarginv {.5em} + \setlength\leftmarginvi {.5em} +\else + \setlength\leftmarginv {1em} + \setlength\leftmarginvi {1em} +\fi +\setlength \labelsep {.5em} +\setlength \labelwidth{\leftmargini} +\addtolength\labelwidth{-\labelsep} +\@beginparpenalty -\@lowpenalty +\@endparpenalty -\@lowpenalty +\@itempenalty -\@lowpenalty +\renewcommand\theenumi{\@arabic\c@enumi} +\renewcommand\theenumii{\@alph\c@enumii} +\renewcommand\theenumiii{\@roman\c@enumiii} +\renewcommand\theenumiv{\@Alph\c@enumiv} +\newcommand\labelenumi{\theenumi.} +\newcommand\labelenumii{(\theenumii)} +\newcommand\labelenumiii{\theenumiii.} +\newcommand\labelenumiv{\theenumiv.} +\renewcommand\p@enumii{\theenumi} +\renewcommand\p@enumiii{\theenumi(\theenumii)} +\renewcommand\p@enumiv{\p@enumiii\theenumiii} +\newcommand\labelitemi{$\m@th\bullet$} +\newcommand\labelitemii{\normalfont\bfseries --} +\newcommand\labelitemiii{$\m@th\ast$} +\newcommand\labelitemiv{$\m@th\cdot$} +\newenvironment{description} + {\list{}{\labelwidth\z@ \itemindent-\leftmargin + \let\makelabel\descriptionlabel}} + {\endlist} +\newcommand*\descriptionlabel[1]{\hspace\labelsep + \normalfont\bfseries #1} +\newenvironment{verse} + {\let\\\@centercr + \list{}{\itemsep \z@ + \itemindent -1.5em% + \listparindent\itemindent + \rightmargin \leftmargin + \advance\leftmargin 1.5em}% + \item\relax} + {\endlist} +\newenvironment{quotation} + {\list{}{\listparindent 1.5em% + \itemindent \listparindent + \rightmargin \leftmargin + \parsep \z@ \@plus\p@}% + \item\relax} + {\endlist} +\newenvironment{quote} + {\list{}{\rightmargin\leftmargin}% + \item\relax} + {\endlist} +\if@compatibility +\newenvironment{titlepage} + {% + \cleardoublepage + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse\newpage + \fi + \thispagestyle{empty}% + \setcounter{page}\z@ + }% + {\if@restonecol\twocolumn \else \newpage \fi + } +\else +\newenvironment{titlepage} + {% + \cleardoublepage + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse\newpage + \fi + \thispagestyle{empty}% + \setcounter{page}\@ne + }% + {\if@restonecol\twocolumn \else \newpage \fi + \if@twoside\else + \setcounter{page}\@ne + \fi + } +\fi +\newcommand\appendix{\par + \setcounter{chapter}{0}% + \setcounter{section}{0}% + \renewcommand\@chapapp{\appendixname}% + \renewcommand\thechapter{\@Alph\c@chapter}} +\setlength\arraycolsep{5\p@} +\setlength\tabcolsep{6\p@} +\setlength\arrayrulewidth{.4\p@} +\setlength\doublerulesep{2\p@} +\setlength\tabbingsep{\labelsep} +\skip\@mpfootins = \skip\footins +\setlength\fboxsep{3\p@} +\setlength\fboxrule{.4\p@} +\@addtoreset{equation}{chapter} +\renewcommand\theequation{\thechapter.\@arabic\c@equation} +\newcounter{figure}[chapter] +\renewcommand\thefigure{\thechapter.\@arabic\c@figure} +\def\fps@figure{tbp} +\def\ftype@figure{1} +\def\ext@figure{lof} +\def\fnum@figure{\bng\thefigure~noNNG~\figurename} +\newenvironment{figure} + {\@float{figure}} + {\end@float} +\newenvironment{figure*} + {\@dblfloat{figure}} + {\end@dblfloat} +\newcounter{table}[chapter] +\renewcommand\thetable{\thechapter.\@arabic\c@table} +\def\fps@table{tbp} +\def\ftype@table{2} +\def\ext@table{lot} +\def\fnum@table{\bng\thetable~noNNG~\tablename} +\newenvironment{table} + {\@float{table}} + {\end@float} +\newenvironment{table*} + {\@dblfloat{table}} + {\end@dblfloat} +\newlength\abovecaptionskip +\newlength\belowcaptionskip +\setlength\abovecaptionskip{10\p@} +\setlength\belowcaptionskip{0\p@} +\long\def\@makecaption#1#2{% + \vskip\abovecaptionskip + \sbox\@tempboxa{#1.. #2}% + \ifdim \wd\@tempboxa >\hsize + #1.. #2\par + \else + \global \@minipagefalse + \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% + \fi + \vskip\belowcaptionskip} +\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} +\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} +\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} +\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} +\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} +\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} +\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} +\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal} +\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal} +\newcommand\@pnumwidth{1.55em} +\newcommand\@tocrmarg{2.55em} +\newcommand\@dotsep{4.5} +\setcounter{tocdepth}{2} +\newcommand\tableofcontents{% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \chapter*{\Lbng\contentsname + \@mkboth{% +\contentsname}{\contentsname}}% + \@starttoc{toc}% + \if@restonecol\twocolumn\fi + } +\newcommand*\l@part[2]{% + \ifnum \c@tocdepth >-2\relax + \addpenalty{-\@highpenalty}% + \addvspace{2.25em \@plus\p@}% + \begingroup + \setlength\@tempdima{3em}% + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + {\leavevmode \bfseries + %\LARGE +\Lbng #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par + \nobreak + \global\@nobreaktrue + \everypar{\global\@nobreakfalse\everypar{}}% + \endgroup + \fi} +\newcommand*\l@chapter[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 1.0em \@plus\p@ + \setlength\@tempdima{1.5em}% + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \bfseries + \advance\leftskip\@tempdima + \hskip -\leftskip + #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \penalty\@highpenalty + \endgroup + \fi} +%\newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}} +\newcommand*\l@section[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 1.0em \@plus\p@ + \setlength\@tempdima{1.5em}% + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \bfseries + \advance\leftskip\@tempdima + \hskip -\leftskip + #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \penalty\@highpenalty + \endgroup + \fi} +\newcommand*\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}} +\newcommand*\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}} +\newcommand*\l@paragraph{\@dottedtocline{4}{10em}{5em}} +\newcommand*\l@subparagraph{\@dottedtocline{5}{12em}{6em}} +\newcommand\listoffigures{% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \chapter*{\Lbng\listfigurename + \@mkboth{\bns\listfigurename}% + {\bns\listfigurename}}% + \@starttoc{lof}% + \if@restonecol\twocolumn\fi + } +%\newcommand*\l@figure{\@dottedtocline{1}{0.5em}{2.3em}} +\newcommand*\l@figure[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 0.2em \@plus\p@ + \setlength\@tempdima{2.5em}% + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \bfseries + \advance\leftskip\@tempdima + \hskip -\leftskip + \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \penalty\@highpenalty + \endgroup + \fi} +\newcommand\listoftables{% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \chapter*{\Lbng\listtablename + \@mkboth{% + \bns\listtablename}{\bns\listtablename}}% + \@starttoc{lot}% + \if@restonecol\twocolumn\fi + } +\let\l@table\l@figure +\newdimen\bibindent +\setlength\bibindent{1.5em} +\newenvironment{thebibliography}[1] + {\chapter*{\bibname + \@mkboth{\bibname}{\bibname}}% + \list{\@biblabel{\@arabic\c@enumiv}}% + {\settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \@openbib@code + \usecounter{enumiv}% + \let\p@enumiv\@empty + \renewcommand\theenumiv{\@arabic\c@enumiv}}% + \sloppy\clubpenalty4000\widowpenalty4000% + \sfcode`\.\@m} + {\def\@noitemerr + {\@latex@warning{Empty `thebibliography' environment}}% + \endlist} +\newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em} +\let\@openbib@code\@empty +\newenvironment{theindex} + {\if@twocolumn + \@restonecolfalse + \else + \@restonecoltrue + \fi + \columnseprule \z@ + \columnsep 35\p@ + \twocolumn[\@makeschapterhead{\Lbng\indexname}]% + \@mkboth{\bns\indexname}% + {\bns\indexname}% + \thispagestyle{plain}\parindent\z@ + \parskip\z@ \@plus .3\p@\relax + \let\item\@idxitem} + {\if@restonecol\onecolumn\else\clearpage\fi} +\newcommand\@idxitem{\parsep=0pt\par\hangindent 20\p@} +\newcommand\subitem{\@idxitem \hspace*{7\p@}} +\newcommand\subsubitem{\@idxitem \hspace*{5\p@}} +\newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} +\renewcommand\footnoterule{% + \kern-3\p@ + \hrule\@width.4\columnwidth + \kern2.6\p@} +\@addtoreset{footnote}{chapter} +\newcommand\@makefntext[1]{% + \parindent 1em% + \noindent + \hb@xt@1.8em{\hss\@makefnmark}#1} +\newcommand\contentsname{suu\*c*ipotRo} +\newcommand\listfigurename{cho\*b*ir ta\*l*ika} +\newcommand\listtablename{cho\*k*er ta\*l*ika} +\newcommand\bibname{suutRo\*n*i\*r/d*esh} +\newcommand\indexname{bor/NokRo\*m*ik suu\*c*i} +\newcommand\figurename{\bng cho\*b*i} +\newcommand\tablename{\bng chok} +\newcommand\partname{bhag} +\newcommand\chaptername{AdhYay} +\newcommand\appendixname{po\*r*i\*sh*iSh/To} +% +\newcommand\today{} +\edef\today{\number\day\space \ifcase\month\or + januya\*r*i\or \*f*ebRuya\*r*i\or mar/c\or E\*pR*il\or \*m*e\or jun\or + julaI\or Aagos/T\or \*s*e\*p/T*em/bor\or A\*k/T*eabor\or + no\*bh*em/bor\or \*D*i\*s*em/bor\fi \space + \number\year} +\setlength\columnsep{10\p@} +\setlength\columnseprule{0\p@} +\pagestyle{headings} +\pagenumbering{arabic} +\if@twoside +\else + \raggedbottom +\fi +\if@twocolumn + \twocolumn + \sloppy + \flushbottom +\else + \onecolumn +\fi +\endinput +%% +%% End of file `bbook.cls'. diff --git a/language/bengali/bangtex/latex/bletter.cls b/language/bengali/bangtex/latex/bletter.cls new file mode 100644 index 0000000000..a3dd6db9a9 --- /dev/null +++ b/language/bengali/bangtex/latex/bletter.cls @@ -0,0 +1,439 @@ +%% +%% This is file `bletter.cls', +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Permission is granted to copy this file to another file with a +%% clearly different name and to customize the declarations in that +%% copy to serve the needs of your installation. +%% +%% However, NO PERMISSION is granted to generate or to distribute a +%% modified version of this file under its original name. +%% +%% You are NOT ALLOWED to change this file. +%% +%% +%% MODIFICATION ADVICE: +%% +%% If you want to customize this file, it is best to make a copy of +%% the source file(s) from which it was produced. Use a different +%% name for your copy(ies) and modify the copy(ies); this will ensure +%% that your modifications do not get overwritten when you install a +%% new release of the standard system. You should also ensure that +%% your modified source file does not generate any modified file with +%% the same name as a standard file. +%% +%% You can then easily distribute your modifications by distributing +%% the modified and renamed copy of the source file. This will ensure +%% that other users can safely use your modifications. +%% +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\NeedsTeXFormat{LaTeX2e}[1996/06/01] +\ProvidesClass{bletter} + [2001/04/15 v1.2 + LaTeX document class for bangtex] +\newcommand\@ptsize{} +\DeclareOption{a4paper} + {\setlength\paperheight {297mm}% + \setlength\paperwidth {210mm}} +\DeclareOption{a5paper} + {\setlength\paperheight {210mm}% + \setlength\paperwidth {148mm}} +\DeclareOption{b5paper} + {\setlength\paperheight {250mm}% + \setlength\paperwidth {176mm}} +\DeclareOption{letterpaper} + {\setlength\paperheight {11in}% + \setlength\paperwidth {8.5in}} +\DeclareOption{legalpaper} + {\setlength\paperheight {14in}% + \setlength\paperwidth {8.5in}} +\DeclareOption{executivepaper} + {\setlength\paperheight {10.5in}% + \setlength\paperwidth {7.25in}} +\DeclareOption{landscape} + {\setlength\@tempdima {\paperheight}% + \setlength\paperheight {\paperwidth}% + \setlength\paperwidth {\@tempdima}} +\DeclareOption{10pt}{\renewcommand\@ptsize{0}} +\DeclareOption{11pt}{\renewcommand\@ptsize{1}} +\DeclareOption{12pt}{\renewcommand\@ptsize{2}} +\if@compatibility + \DeclareOption{twoside}{\@latexerr{No `twoside' layout for letters}% + \@eha} +\else + \DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} +\fi +\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse} +\DeclareOption{draft}{\setlength\overfullrule{5pt}} +\DeclareOption{final}{\setlength\overfullrule{0pt}} +\DeclareOption{leqno}{\input{leqno.clo}} +\DeclareOption{fleqn}{\input{fleqn.clo}} +\ExecuteOptions{letterpaper,10pt,oneside,onecolumn,final} +\ProcessOptions +\input bangfont +\input{bsize1\@ptsize.clo} +\setlength\lineskip{1\p@} +\setlength\normallineskip{1\p@} +\renewcommand\baselinestretch{} +\setlength\parskip{0.7em} +\setlength\parindent{0\p@} +\@lowpenalty 51 +\@medpenalty 151 +\@highpenalty 301 +\setlength\headheight{12\p@} +\setlength\headsep {45\p@} +\setlength\footskip{25\p@} +\if@compatibility + \setlength\textwidth{365\p@} + \setlength\textheight{505\p@} +\fi +\if@compatibility + \setlength\oddsidemargin{53pt} + \setlength\evensidemargin{53pt} + \setlength\marginparwidth{90pt} +\else + \setlength\@tempdima{\paperwidth} + \addtolength\@tempdima{-2in} + \addtolength\@tempdima{-\textwidth} + \setlength\oddsidemargin {.5\@tempdima} + \setlength\evensidemargin {\oddsidemargin} + \setlength\marginparwidth {90\p@} +\fi +\setlength\marginparsep {11\p@} +\setlength\marginparpush{5\p@} +\setlength\topmargin{27pt} +\setlength\footnotesep{12\p@} +\setlength{\skip\footins}{10\p@ \@plus 2\p@ \@minus 4\p@} +\if@twoside + \def\ps@headings{% + \let\@oddfoot\@empty\let\@evenfoot\@empty + \def\@oddhead{\slshape\headtoname{} \ignorespaces\toname + \hfil \@date + \hfil \pagename{} \thepage}% + \let\@evenhead\@oddhead} +\else + \def\ps@headings{% + \let\@oddfoot\@empty + \def\@oddhead{\slshape\headtoname{} \ignorespaces\toname + \hfil \@date + \hfil \pagename{} \thepage}} +\fi +\def\ps@empty{% + \let\@oddfoot\@empty\let\@oddhead\@empty + \let\@evenfoot\@empty\let\@evenhead\@empty} +\def\ps@firstpage{% + \let\@oddhead\@empty + \def\@oddfoot{\raisebox{-45\p@}[\z@]{% + \hb@xt@\textwidth{\hspace*{100\p@}% + \ifcase \@ptsize\relax + \normalsize + \or + \small + \or + \footnotesize + \fi + \fromlocation \hfill \telephonenum}}\hss}} +\def\ps@plain{% + \let\@oddhead\@empty + \def\@oddfoot{\normalfont\hfil\thepage\hfil}% + \def\@evenfoot{\normalfont\hfil\thepage\hfil}} +\newcommand*{\name}[1]{\def\fromname{#1}} +\newcommand*{\signature}[1]{\def\fromsig{#1}} +\newcommand*{\address}[1]{\def\fromaddress{#1}} +\newcommand*{\location}[1]{\def\fromlocation{#1}} +\newcommand*{\telephone}[1]{\def\telephonenum{#1}} +\name{} +\signature{} +\address{} +\location{} +\telephone{} +\newcommand*{\makelabels}{% + \AtBeginDocument{% + \let\@startlabels\startlabels + \let\@mlabel\mlabel + \if@filesw + \immediate\write\@mainaux{\string\@startlabels}\fi}% + \AtEndDocument{% + \if@filesw\immediate\write\@mainaux{\string\clearpage}\fi}} +\@onlypreamble\makelabels +\newenvironment{letter}[1] + {\newpage + \if@twoside \ifodd\c@page + \else\thispagestyle{empty}\null\newpage\fi + \fi + \c@page\@ne + \c@footnote\@ne + \interlinepenalty=200 % smaller than the TeXbook value + \@processto{\leavevmode\ignorespaces #1}} + {\stopletter\@@par\pagebreak\@@par + \if@filesw + \begingroup + \let\\=\relax + \let\protect\@unexpandable@protect + \immediate\write\@auxout{% + \string\@mlabel{\returnaddress}{\toname\\\toaddress}}% + \endgroup + \fi} +\long\def\@processto#1{% + \@xproc #1\\@@@% + \ifx\toaddress\@empty + \else + \@yproc #1@@@% + \fi} +\long\def\@xproc #1\\#2@@@{\def\toname{#1}\def\toaddress{#2}} +\long\def\@yproc #1\\#2@@@{\def\toaddress{#2}} +\newcommand*{\stopbreaks}{% + \interlinepenalty\@M + \def\par{\@@par\nobreak}% + \let\\\@nobreakcr + \let\vspace\@nobreakvspace} +\DeclareRobustCommand\@nobreakvspace + {\@ifstar\@nobreakvspacex\@nobreakvspacex} +\def\@nobreakvspacex#1{% + \ifvmode + \nobreak\vskip #1\relax + \else + \@bsphack\vadjust{\nobreak\vskip #1}\@esphack + \fi} +\def\@nobreakcr{\@ifstar{\@normalcr*}{\@normalcr*}} +\newcommand*{\startbreaks}{% + \let\\\@normalcr + \interlinepenalty 200% + \def\par{\@@par\penalty 200\relax}} +\newdimen\longindentation +\longindentation=.5\textwidth +\newdimen\indentedwidth +\indentedwidth=\textwidth +\advance\indentedwidth -\longindentation +\newcommand*{\opening}[1]{\ifx\@empty\fromaddress + \thispagestyle{firstpage}% + {\raggedleft\@date\par}% + \else % home address + \thispagestyle{empty}% + {\raggedleft\begin{tabular}{l@{}}\ignorespaces + \fromaddress \\*[2\parskip]% + \@date \end{tabular}\par}% + \fi + \vspace{2\parskip}% + {\raggedright \toname \\ \toaddress \par}% + \vspace{2\parskip}% + #1\par\nobreak} +\newcommand{\closing}[1]{\par\nobreak\vspace{\parskip}% + \stopbreaks + \noindent + \ifx\@empty\fromaddress\else + \hspace*{\longindentation}\fi + \parbox{\indentedwidth}{\raggedright + \ignorespaces #1\\[6\medskipamount]% + \ifx\@empty\fromsig + \fromname + \else \fromsig \fi\strut}% + \par} +\medskipamount=\parskip +\newcommand*{\cc}[1]{% + \par\noindent + \parbox[t]{\textwidth}{% + \@hangfrom{\normalfont\ccname: }% + \ignorespaces #1\strut}\par} +\newcommand*{\encl}[1]{% + \par\noindent + \parbox[t]{\textwidth}{% + \@hangfrom{\bng\enclname: }% + \ignorespaces #1\strut}\par} +\newcommand*{\ps}{\par\startbreaks} +\newcommand*{\stopletter}{} +\newcommand*{\returnaddress}{} +\newcount\labelcount +\newcommand*{\startlabels}{\labelcount\z@ + \pagestyle{empty}% + \let\@texttop\relax + \topmargin -50\p@ + \headsep \z@ + \oddsidemargin -35\p@ + \evensidemargin -35\p@ + \textheight 10in + \@colht\textheight \@colroom\textheight \vsize\textheight + \textwidth 550\p@ + \columnsep 26\p@ + \ifcase \@ptsize\relax + \bng + \or + \sbng + \fi + \baselineskip \z@ + \lineskip \z@ + \boxmaxdepth \z@ + \parindent \z@ + \twocolumn\relax} +\let\@startlabels=\relax +\newcommand*{\mlabel}[2]{% + \parbox[b][2in][c]{262\p@}{\strut\ignorespaces #2}% + } +\let\@mlabel=\@gobbletwo +\setlength\leftmargini {2.5em} +\setlength\leftmarginii {2.2em} +\setlength\leftmarginiii {1.87em} +\setlength\leftmarginiv {1.7em} +\setlength\leftmarginv {1em} +\setlength\leftmarginvi {1em} +\setlength\leftmargin {\leftmargini} +\setlength \labelsep {5\p@} +\setlength \labelwidth{\leftmargini} +\addtolength\labelwidth{-\labelsep} +\setlength\partopsep{0\p@} +\@beginparpenalty -\@lowpenalty +\@endparpenalty -\@lowpenalty +\@itempenalty -\@lowpenalty +\def\@listI{\setlength\leftmargin{\leftmargini}% + \setlength\parsep {0\p@}% + \setlength\topsep {.4em}% + \setlength\itemsep{.4em}} +\let\@listi\@listI +\@listi +\def\@listii {\setlength \leftmargin{\leftmarginii}% + \setlength \labelwidth{\leftmarginii}% + \addtolength\labelwidth{-\labelsep}} +\def\@listiii{\setlength \leftmargin{\leftmarginiii}% + \setlength \labelwidth{\leftmarginiii}% + \addtolength\labelwidth{-\labelsep}% + \setlength \topsep {.2em}% + \setlength \itemsep {\topsep}} +\def\@listiv {\setlength \leftmargin{\leftmarginiv}% + \setlength \labelwidth{\leftmarginiv}% + \addtolength\labelwidth{-\labelsep}} +\def\@listv {\setlength \leftmargin{\leftmarginv}% + \setlength \labelwidth{\leftmarginv}% + \addtolength\labelwidth{-\labelsep}} +\def\@listvi {\setlength \leftmargin{\leftmarginvi}% + \setlength \labelwidth{\leftmarginvi}% + \addtolength\labelwidth{-\labelsep}} +\renewcommand\theenumi{\@arabic\c@enumi} +\renewcommand\theenumii{\@alph\c@enumii} +\renewcommand\theenumiii{\@roman\c@enumiii} +\renewcommand\theenumiv{\@Alph\c@enumiv} +\newcommand\labelenumi{\theenumi.} +\newcommand\labelenumii{(\theenumii)} +\newcommand\labelenumiii{\theenumiii.} +\newcommand\labelenumiv{\theenumiv.} +\renewcommand\p@enumii{\theenumi} +\renewcommand\p@enumiii{\theenumi(\theenumii)} +\renewcommand\p@enumiv{\p@enumiii\theenumiii} +\newcommand\labelitemi{\textbullet} +\newcommand\labelitemii{\normalfont\bfseries \textendash} +\newcommand\labelitemiii{\textasteriskcentered} +\newcommand\labelitemiv{\textperiodcentered} +\newenvironment{description} + {\list{}{\labelwidth\z@ \itemindent-\leftmargin + \let\makelabel\descriptionlabel}} + {\endlist} +\newcommand*{\descriptionlabel}[1]{\hspace\labelsep + \normalfont\bfseries #1} +\newenvironment{verse} + {\let\\=\@centercr + \list{}{\setlength\itemsep{\z@}% + \setlength\itemindent{-15\p@}% + \setlength\listparindent{\itemindent}% + \setlength\rightmargin{\leftmargin}% + \addtolength\leftmargin{15\p@}}% + \item[]} + {\endlist} +\newenvironment{quotation} + {\list{}{\setlength\listparindent{1.5em}% + \setlength\itemindent{\listparindent}% + \setlength\rightmargin{\leftmargin}}% + \item[]} + {\endlist} +\newenvironment{quote} + {\list{}{\setlength\rightmargin{\leftmargin}}% + \item[]} + {\endlist} +\setlength\arraycolsep{5\p@} +\setlength\tabcolsep{6\p@} +\setlength\arrayrulewidth{.4\p@} +\setlength\doublerulesep{2\p@} +\setlength\tabbingsep{\labelsep} +\skip\@mpfootins = \skip\footins +\setlength\fboxsep{3\p@} +\setlength\fboxrule{.4\p@} +\renewcommand\theequation{\@arabic\c@equation} +\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} +\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} +\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} +\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} +\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} +\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\relax} +\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\relax} +\DeclareRobustCommand*{\cal}{\@fontswitch{\relax}{\mathcal}} +\DeclareRobustCommand*{\mit}{\@fontswitch{\relax}{\mathnormal}} +\renewcommand\footnoterule{% + \kern-\p@ + \hrule \@width .4\columnwidth + \kern .6\p@} +\long\def\@makefntext#1{% + \noindent + \hangindent 5\p@ + \hb@xt@5\p@{\hss\@makefnmark}#1} +\newcommand*{\ccname}{cc} +\newcommand*{\enclname}{encl} +\newcommand*{\pagename}{prR} +\newcommand*{\headtoname}{} +\newcommand*{\today}{\number\day\space\ifcase\month\or + januya\*r*i\or \*ph*ebRuya\*r*i\or mar/c\or E\*pR*il\or \*m*e\or jun\or + julaI\or Aagos/T\or \*s*e\*p/T*em/bor\or A\*k/T*eabor\or + no\*bh*em/bor\or \*D*i\*s*em/bor\fi, + \number\year} +\setlength\columnsep{10\p@} +\setlength\columnseprule{0\p@} +\pagestyle{plain} +\pagenumbering{arabic} +\raggedbottom +\def\@texttop{\ifnum\c@page=1\vskip \z@ plus.00006fil\relax\fi} +\onecolumn +\endinput +%% +%% End of file `letter.cls'. diff --git a/language/bengali/bangtex/latex/bsize10.clo b/language/bengali/bangtex/latex/bsize10.clo new file mode 100644 index 0000000000..b9b69dfebb --- /dev/null +++ b/language/bengali/bangtex/latex/bsize10.clo @@ -0,0 +1,303 @@ +%% +%% This is file `bsize10.clo', +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Permission is granted to copy this file to another file with a +%% clearly different name and to customize the declarations in that +%% copy to serve the needs of your installation. +%% +%% However, NO PERMISSION is granted to generate or to distribute a +%% modified version of this file under its original name. +%% +%% You are NOT ALLOWED to change this file. +%% +%% +%% MODIFICATION ADVICE: +%% +%% If you want to customize this file, it is best to make a copy of +%% the source file(s) from which it was produced. Use a different +%% name for your copy(ies) and modify the copy(ies); this will ensure +%% that your modifications do not get overwritten when you install a +%% new release of the standard system. You should also ensure that +%% your modified source file does not generate any modified file with +%% the same name as a standard file. +%% +%% You can then easily distribute your modifications by distributing +%% the modified and renamed copy of the source file. This will ensure +%% that other users can safely use your modifications. +%% +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\ProvidesFile{bsize10.clo} +\ProvidesClass{barticle} + [2001/04/15 v1.2 + LaTeX document for bangtex] +\renewcommand\normalsize{% + \@setfontsize\normalsize\@xpt\@xiipt + \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@ + \belowdisplayskip \abovedisplayskip + \let\@listi\@listI} +\normalsize +\newcommand\small{% + \@setfontsize\small\@ixpt{11}% + \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@ + \abovedisplayshortskip \z@ \@plus2\p@ + \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 4\p@ \@plus2\p@ \@minus2\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\newcommand\footnotesize{% + \@setfontsize\footnotesize\@viiipt{9.5}% + \abovedisplayskip 6\p@ \@plus2\p@ \@minus4\p@ + \abovedisplayshortskip \z@ \@plus\p@ + \belowdisplayshortskip 3\p@ \@plus\p@ \@minus2\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 3\p@ \@plus\p@ \@minus\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\newcommand\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt} +\newcommand\tiny{\@setfontsize\tiny\@vpt\@vipt} +\newcommand\large{\@setfontsize\large\@xiipt{14}} +\newcommand\Large{\@setfontsize\Large\@xivpt{18}} +\newcommand\LARGE{\@setfontsize\LARGE\@xviipt{22}} +\newcommand\huge{\@setfontsize\huge\@xxpt{25}} +\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}} +% +\def\sbng{\bngviii} +\def\tbng{\bngvi} +\def\bng{\bngx} +\def\lbng{\bngxiv} +\def\Lbng{\bngxviii} +\def\LBng{\bngxxii} +\def\hbng{\bngxxv} +\def\Hbng{\bngxxx} +% +\def\sbns{\bnsviii} +\def\tbns{\bnsvi} +\def\bns{\bnsx} +\def\lbns{\bnsxiv} +\def\Lbns{\bnsxviii} +\def\LBns{\bnsxxii} +\def\hbns{\bnsxxv} +\def\Hbns{\bnsxxx} +% +\def\sbnw{\bnwviii} +\def\tbnw{\bnwvi} +\def\bnw{\bnwx} +\def\lbnw{\bnwxiv} +\def\Lbnw{\bnwxviii} +\def\LBnw{\bnwxxii} +\def\hbnw{\bnwxxv} +\def\Hbnw{\bnwxxx} +% +\if@twocolumn + \setlength\parindent{1em} +\else + \setlength\parindent{15\p@} +\fi +\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@} +\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@} +\setlength\headheight{12\p@} +\setlength\headsep {25\p@} +\setlength\topskip {10\p@} +\setlength\footskip{30\p@} +\if@compatibility \setlength\maxdepth{4\p@} \else +\setlength\maxdepth{.5\topskip} \fi +\if@compatibility + \if@twocolumn + \setlength\textwidth{410\p@} + \else + \setlength\textwidth{345\p@} + \fi +\else + \setlength\@tempdima{\paperwidth} + \addtolength\@tempdima{-2in} + \setlength\@tempdimb{345\p@} + \if@twocolumn + \ifdim\@tempdima>2\@tempdimb\relax + \setlength\textwidth{2\@tempdimb} + \else + \setlength\textwidth{\@tempdima} + \fi + \else + \ifdim\@tempdima>\@tempdimb\relax + \setlength\textwidth{\@tempdimb} + \else + \setlength\textwidth{\@tempdima} + \fi + \fi +\fi +\if@compatibility\else + \@settopoint\textwidth +\fi +\if@compatibility + \setlength\textheight{43\baselineskip} +\else + \setlength\@tempdima{\paperheight} + \addtolength\@tempdima{-2in} + \addtolength\@tempdima{-1.5in} + \divide\@tempdima\baselineskip + \@tempcnta=\@tempdima + \setlength\textheight{\@tempcnta\baselineskip} +\fi +\addtolength\textheight{\topskip} +\if@twocolumn + \setlength\marginparsep {10\p@} +\else + \setlength\marginparsep{11\p@} +\fi +\setlength\marginparpush{5\p@} +\if@compatibility + \if@twoside + \setlength\oddsidemargin {44\p@} + \setlength\evensidemargin {82\p@} + \setlength\marginparwidth {107\p@} + \else + \setlength\oddsidemargin {63\p@} + \setlength\evensidemargin {63\p@} + \setlength\marginparwidth {90\p@} + \fi + \if@twocolumn + \setlength\oddsidemargin {30\p@} + \setlength\evensidemargin {30\p@} + \setlength\marginparwidth {48\p@} + \fi +\else + \if@twoside + \setlength\@tempdima {\paperwidth} + \addtolength\@tempdima {-\textwidth} + \setlength\oddsidemargin {.4\@tempdima} + \addtolength\oddsidemargin {-1in} + \setlength\marginparwidth {.6\@tempdima} + \addtolength\marginparwidth {-\marginparsep} + \addtolength\marginparwidth {-0.4in} + \else + \setlength\@tempdima {\paperwidth} + \addtolength\@tempdima {-\textwidth} + \setlength\oddsidemargin {.5\@tempdima} + \addtolength\oddsidemargin {-1in} + \setlength\marginparwidth {.5\@tempdima} + \addtolength\marginparwidth {-\marginparsep} + \addtolength\marginparwidth {-0.4in} + \addtolength\marginparwidth {-.4in} + \fi + \ifdim \marginparwidth >2in + \setlength\marginparwidth{2in} + \fi + \@settopoint\oddsidemargin + \@settopoint\marginparwidth + \setlength\evensidemargin {\paperwidth} + \addtolength\evensidemargin{-2in} + \addtolength\evensidemargin{-\textwidth} + \addtolength\evensidemargin{-\oddsidemargin} + \@settopoint\evensidemargin +\fi +\if@compatibility + \setlength\topmargin{27pt} +\else + \setlength\topmargin{\paperheight} + \addtolength\topmargin{-2in} + \addtolength\topmargin{-\headheight} + \addtolength\topmargin{-\headsep} + \addtolength\topmargin{-\textheight} + \addtolength\topmargin{-\footskip} % this might be wrong! + \addtolength\topmargin{-.5\topmargin} + \@settopoint\topmargin +\fi +\setlength\footnotesep{6.65\p@} +\setlength{\skip\footins}{9\p@ \@plus 4\p@ \@minus 2\p@} +\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\intextsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\@fptop{0\p@ \@plus 1fil} +\setlength\@fpsep{8\p@ \@plus 2fil} +\setlength\@fpbot{0\p@ \@plus 1fil} +\setlength\@dblfptop{0\p@ \@plus 1fil} +\setlength\@dblfpsep{8\p@ \@plus 2fil} +\setlength\@dblfpbot{0\p@ \@plus 1fil} +\setlength\partopsep{2\p@ \@plus 1\p@ \@minus 1\p@} +\def\@listi{\leftmargin\leftmargini + \parsep 4\p@ \@plus2\p@ \@minus\p@ + \topsep 8\p@ \@plus2\p@ \@minus4\p@ + \itemsep4\p@ \@plus2\p@ \@minus\p@} +\let\@listI\@listi +\@listi +\def\@listii {\leftmargin\leftmarginii + \labelwidth\leftmarginii + \advance\labelwidth-\labelsep + \topsep 4\p@ \@plus2\p@ \@minus\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep} +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii + \advance\labelwidth-\labelsep + \topsep 2\p@ \@plus\p@\@minus\p@ + \parsep \z@ + \partopsep \p@ \@plus\z@ \@minus\p@ + \itemsep \topsep} +\def\@listiv {\leftmargin\leftmarginiv + \labelwidth\leftmarginiv + \advance\labelwidth-\labelsep} +\def\@listv {\leftmargin\leftmarginv + \labelwidth\leftmarginv + \advance\labelwidth-\labelsep} +\def\@listvi {\leftmargin\leftmarginvi + \labelwidth\leftmarginvi + \advance\labelwidth-\labelsep} +\endinput +%% +%% End of file `bsize10.clo'. diff --git a/language/bengali/bangtex/latex/bsize11.clo b/language/bengali/bangtex/latex/bsize11.clo new file mode 100644 index 0000000000..ede54f2927 --- /dev/null +++ b/language/bengali/bangtex/latex/bsize11.clo @@ -0,0 +1,302 @@ +%% +%% This is file `bsize11.clo', +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Permission is granted to copy this file to another file with a +%% clearly different name and to customize the declarations in that +%% copy to serve the needs of your installation. +%% +%% However, NO PERMISSION is granted to generate or to distribute a +%% modified version of this file under its original name. +%% +%% You are NOT ALLOWED to change this file. +%% +%% +%% MODIFICATION ADVICE: +%% +%% If you want to customize this file, it is best to make a copy of +%% the source file(s) from which it was produced. Use a different +%% name for your copy(ies) and modify the copy(ies); this will ensure +%% that your modifications do not get overwritten when you install a +%% new release of the standard system. You should also ensure that +%% your modified source file does not generate any modified file with +%% the same name as a standard file. +%% +%% You can then easily distribute your modifications by distributing +%% the modified and renamed copy of the source file. This will ensure +%% that other users can safely use your modifications. +%% +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\ProvidesFile{bsize11.clo} + [2001/04/15 v1.2 + LaTeX document for bangtex] +\renewcommand\normalsize{% + \@setfontsize\normalsize\@xipt{13.6}% + \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@ + \belowdisplayskip \abovedisplayskip + \let\@listi\@listI} +\normalsize +\newcommand\small{% + \@setfontsize\small\@xpt\@xiipt + \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 6\p@ \@plus2\p@ \@minus2\p@ + \parsep 3\p@ \@plus2\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\newcommand\footnotesize{% + \@setfontsize\footnotesize\@ixpt{11}% + \abovedisplayskip 8\p@ \@plus2\p@ \@minus4\p@ + \abovedisplayshortskip \z@ \@plus\p@ + \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 4\p@ \@plus2\p@ \@minus2\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\newcommand\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}} +\newcommand\tiny{\@setfontsize\tiny\@vipt\@viipt} +\newcommand\large{\@setfontsize\large\@xiipt{14}} +\newcommand\Large{\@setfontsize\Large\@xivpt{18}} +\newcommand\LARGE{\@setfontsize\LARGE\@xviipt{22}} +\newcommand\huge{\@setfontsize\huge\@xxpt{25}} +\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}} +% +\def\sbng{\bngviii} +\def\tbng{\bngvii} +\def\bng{\bngxi} +\def\lbng{\bngxiv} +\def\Lbng{\bngxviii} +\def\LBng{\bngxxii} +\def\hbng{\bngxxv} +\def\Hbng{\bngxxx} +% +\def\sbns{\bnsviii} +\def\tbns{\bnsvii} +\def\bns{\bnsxi} +\def\lbns{\bnsxiv} +\def\Lbns{\bnsxviii} +\def\LBns{\bnsxxii} +\def\hbns{\bnsxxv} +\def\Hbns{\bnsxxx} +% +\def\sbnw{\bnwviii} +\def\tbnw{\bnwvii} +\def\bnw{\bnwxi} +\def\lbnw{\bnwxiv} +\def\Lbnw{\bnwxviii} +\def\LBnw{\bnwxxii} +\def\hbnw{\bnwxxv} +\def\Hbnw{\bnwxxx} +% +\if@twocolumn + \setlength\parindent{1em} +\else + \setlength\parindent{17\p@} +\fi +\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@} +\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@} +\setlength\headheight{12\p@} +\setlength\headsep {25\p@} +\setlength\topskip {11\p@} +\setlength\footskip{30\p@} +\if@compatibility \setlength\maxdepth{4\p@} \else +\setlength\maxdepth{.5\topskip} \fi +\if@compatibility + \if@twocolumn + \setlength\textwidth{410\p@} + \else + \setlength\textwidth{360\p@} + \fi +\else + \setlength\@tempdima{\paperwidth} + \addtolength\@tempdima{-2in} + \setlength\@tempdimb{360\p@} + \if@twocolumn + \ifdim\@tempdima>2\@tempdimb\relax + \setlength\textwidth{2\@tempdimb} + \else + \setlength\textwidth{\@tempdima} + \fi + \else + \ifdim\@tempdima>\@tempdimb\relax + \setlength\textwidth{\@tempdimb} + \else + \setlength\textwidth{\@tempdima} + \fi + \fi +\fi +\if@compatibility\else + \@settopoint\textwidth +\fi +\if@compatibility + \setlength\textheight{38\baselineskip} +\else + \setlength\@tempdima{\paperheight} + \addtolength\@tempdima{-2in} + \addtolength\@tempdima{-1.5in} + \divide\@tempdima\baselineskip + \@tempcnta=\@tempdima + \setlength\textheight{\@tempcnta\baselineskip} +\fi +\addtolength\textheight{\topskip} +\if@twocolumn + \setlength\marginparsep {10\p@} +\else + \setlength\marginparsep{10\p@} +\fi +\setlength\marginparpush{5\p@} +\if@compatibility + \if@twoside + \setlength\oddsidemargin {36\p@} + \setlength\evensidemargin {74\p@} + \setlength\marginparwidth {100\p@} + \else + \setlength\oddsidemargin {54\p@} + \setlength\evensidemargin {54\p@} + \setlength\marginparwidth {83\p@} + \fi + \if@twocolumn + \setlength\oddsidemargin {30\p@} + \setlength\evensidemargin {30\p@} + \setlength\marginparwidth {48\p@} + \fi +\else + \if@twoside + \setlength\@tempdima {\paperwidth} + \addtolength\@tempdima {-\textwidth} + \setlength\oddsidemargin {.4\@tempdima} + \addtolength\oddsidemargin {-1in} + \setlength\marginparwidth {.6\@tempdima} + \addtolength\marginparwidth {-\marginparsep} + \addtolength\marginparwidth {-0.4in} + \else + \setlength\@tempdima {\paperwidth} + \addtolength\@tempdima {-\textwidth} + \setlength\oddsidemargin {.5\@tempdima} + \addtolength\oddsidemargin {-1in} + \setlength\marginparwidth {.5\@tempdima} + \addtolength\marginparwidth {-\marginparsep} + \addtolength\marginparwidth {-0.4in} + \addtolength\marginparwidth {-.4in} + \fi + \ifdim \marginparwidth >2in + \setlength\marginparwidth{2in} + \fi + \@settopoint\oddsidemargin + \@settopoint\marginparwidth + \setlength\evensidemargin {\paperwidth} + \addtolength\evensidemargin{-2in} + \addtolength\evensidemargin{-\textwidth} + \addtolength\evensidemargin{-\oddsidemargin} + \@settopoint\evensidemargin +\fi +\if@compatibility + \setlength\topmargin{27pt} +\else + \setlength\topmargin{\paperheight} + \addtolength\topmargin{-2in} + \addtolength\topmargin{-\headheight} + \addtolength\topmargin{-\headsep} + \addtolength\topmargin{-\textheight} + \addtolength\topmargin{-\footskip} % this might be wrong! + \addtolength\topmargin{-.5\topmargin} + \@settopoint\topmargin +\fi +\setlength\footnotesep{7.7\p@} +\setlength{\skip\footins}{10\p@ \@plus 4\p@ \@minus 2\p@} +\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\intextsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\@fptop{0\p@ \@plus 1fil} +\setlength\@fpsep{8\p@ \@plus 2fil} +\setlength\@fpbot{0\p@ \@plus 1fil} +\setlength\@dblfptop{0\p@ \@plus 1fil} +\setlength\@dblfpsep{8\p@ \@plus 2fil} +\setlength\@dblfpbot{0\p@ \@plus 1fil} +\setlength\partopsep{3\p@ \@plus 1\p@ \@minus 1\p@} +\def\@listi{\leftmargin\leftmargini + \parsep 4.5\p@ \@plus2\p@ \@minus\p@ + \topsep 9\p@ \@plus3\p@ \@minus5\p@ + \itemsep4.5\p@ \@plus2\p@ \@minus\p@} +\let\@listI\@listi +\@listi +\def\@listii {\leftmargin\leftmarginii + \labelwidth\leftmarginii + \advance\labelwidth-\labelsep + \topsep 4.5\p@ \@plus2\p@ \@minus\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep} +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii + \advance\labelwidth-\labelsep + \topsep 2\p@ \@plus\p@\@minus\p@ + \parsep \z@ + \partopsep \p@ \@plus\z@ \@minus\p@ + \itemsep \topsep} +\def\@listiv {\leftmargin\leftmarginiv + \labelwidth\leftmarginiv + \advance\labelwidth-\labelsep} +\def\@listv {\leftmargin\leftmarginv + \labelwidth\leftmarginv + \advance\labelwidth-\labelsep} +\def\@listvi {\leftmargin\leftmarginvi + \labelwidth\leftmarginvi + \advance\labelwidth-\labelsep} +\endinput +%% +%% End of file `bsize11.clo'. diff --git a/language/bengali/bangtex/latex/bsize12.clo b/language/bengali/bangtex/latex/bsize12.clo new file mode 100644 index 0000000000..752e42fa41 --- /dev/null +++ b/language/bengali/bangtex/latex/bsize12.clo @@ -0,0 +1,302 @@ +%% +%% This is file `bsize12.clo', +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Permission is granted to copy this file to another file with a +%% clearly different name and to customize the declarations in that +%% copy to serve the needs of your installation. +%% +%% However, NO PERMISSION is granted to generate or to distribute a +%% modified version of this file under its original name. +%% +%% You are NOT ALLOWED to change this file. +%% +%% +%% MODIFICATION ADVICE: +%% +%% If you want to customize this file, it is best to make a copy of +%% the source file(s) from which it was produced. Use a different +%% name for your copy(ies) and modify the copy(ies); this will ensure +%% that your modifications do not get overwritten when you install a +%% new release of the standard system. You should also ensure that +%% your modified source file does not generate any modified file with +%% the same name as a standard file. +%% +%% You can then easily distribute your modifications by distributing +%% the modified and renamed copy of the source file. This will ensure +%% that other users can safely use your modifications. +%% +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\ProvidesFile{bsize12.clo} + [2001/04/15 v1.2 + LaTeX document for bangtex] +\renewcommand\normalsize{% + \@setfontsize\normalsize\@xiipt{14.5}% + \abovedisplayskip 12\p@ \@plus3\p@ \@minus7\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@ + \belowdisplayskip \abovedisplayskip + \let\@listi\@listI} +\normalsize +\newcommand\small{% + \@setfontsize\small\@xipt{13.6}% + \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 9\p@ \@plus3\p@ \@minus5\p@ + \parsep 4.5\p@ \@plus2\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\newcommand\footnotesize{% + \@setfontsize\footnotesize\@xpt\@xiipt + \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 6\p@ \@plus2\p@ \@minus2\p@ + \parsep 3\p@ \@plus2\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\newcommand\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}} +\newcommand\tiny{\@setfontsize\tiny\@vipt\@viipt} +\newcommand\large{\@setfontsize\large\@xivpt{18}} +\newcommand\Large{\@setfontsize\Large\@xviipt{22}} +\newcommand\LARGE{\@setfontsize\LARGE\@xxpt{25}} +\newcommand\huge{\@setfontsize\huge\@xxvpt{30}} +\let\Huge=\huge +% +\def\sbng{\bngviii} +\def\tbng{\bngvii} +\def\bng{\bngxii} +\def\lbng{\bngxviii} +\def\Lbng{\bngxxii} +\def\LBng{\bngxxv} +\def\hbng{\bngxxx} +\def\Hbng{\bngxxx} +% +\def\sbns{\bnsviii} +\def\tbns{\bnsvii} +\def\bns{\bnsxii} +\def\lbns{\bnsxviii} +\def\Lbns{\bnsxxii} +\def\LBns{\bnsxxv} +\def\hbns{\bnsxxx} +\def\Hbns{\bnsxxx} +% +\def\sbnw{\bnwviii} +\def\tbnw{\bnwvii} +\def\bnw{\bnwxii} +\def\lbnw{\bnwxviii} +\def\Lbnw{\bnwxxii} +\def\LBnw{\bnwxxv} +\def\hbnw{\bnwxxx} +\def\Hbnw{\bnwxxx} +% +\if@twocolumn + \setlength\parindent{1em} +\else + \setlength\parindent{1.5em} +\fi +\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@} +\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@} +\setlength\headheight{12\p@} +\setlength\headsep {25\p@} +\setlength\topskip {12\p@} +\setlength\footskip{30\p@} +\if@compatibility \setlength\maxdepth{4\p@} \else +\setlength\maxdepth{.5\topskip} \fi +\if@compatibility + \if@twocolumn + \setlength\textwidth{410\p@} + \else + \setlength\textwidth{390\p@} + \fi +\else + \setlength\@tempdima{\paperwidth} + \addtolength\@tempdima{-2in} + \setlength\@tempdimb{390\p@} + \if@twocolumn + \ifdim\@tempdima>2\@tempdimb\relax + \setlength\textwidth{2\@tempdimb} + \else + \setlength\textwidth{\@tempdima} + \fi + \else + \ifdim\@tempdima>\@tempdimb\relax + \setlength\textwidth{\@tempdimb} + \else + \setlength\textwidth{\@tempdima} + \fi + \fi +\fi +\if@compatibility\else + \@settopoint\textwidth +\fi +\if@compatibility + \setlength\textheight{36\baselineskip} +\else + \setlength\@tempdima{\paperheight} + \addtolength\@tempdima{-2in} + \addtolength\@tempdima{-1.5in} + \divide\@tempdima\baselineskip + \@tempcnta=\@tempdima + \setlength\textheight{\@tempcnta\baselineskip} +\fi +\addtolength\textheight{\topskip} +\if@twocolumn + \setlength\marginparsep {10\p@} +\else + \setlength\marginparsep{10\p@} +\fi +\setlength\marginparpush{7\p@} +\if@compatibility + \if@twoside + \setlength\oddsidemargin {21\p@} + \setlength\evensidemargin {59\p@} + \setlength\marginparwidth {85\p@} + \else + \setlength\oddsidemargin {39.5\p@} + \setlength\evensidemargin {39.5\p@} + \setlength\marginparwidth {68\p@} + \fi + \if@twocolumn + \setlength\oddsidemargin {30\p@} + \setlength\evensidemargin {30\p@} + \setlength\marginparwidth {48\p@} + \fi +\else + \if@twoside + \setlength\@tempdima {\paperwidth} + \addtolength\@tempdima {-\textwidth} + \setlength\oddsidemargin {.4\@tempdima} + \addtolength\oddsidemargin {-1in} + \setlength\marginparwidth {.6\@tempdima} + \addtolength\marginparwidth {-\marginparsep} + \addtolength\marginparwidth {-0.4in} + \else + \setlength\@tempdima {\paperwidth} + \addtolength\@tempdima {-\textwidth} + \setlength\oddsidemargin {.5\@tempdima} + \addtolength\oddsidemargin {-1in} + \setlength\marginparwidth {.5\@tempdima} + \addtolength\marginparwidth {-\marginparsep} + \addtolength\marginparwidth {-0.4in} + \addtolength\marginparwidth {-.4in} + \fi + \ifdim \marginparwidth >2in + \setlength\marginparwidth{2in} + \fi + \@settopoint\oddsidemargin + \@settopoint\marginparwidth + \setlength\evensidemargin {\paperwidth} + \addtolength\evensidemargin{-2in} + \addtolength\evensidemargin{-\textwidth} + \addtolength\evensidemargin{-\oddsidemargin} + \@settopoint\evensidemargin +\fi +\if@compatibility + \setlength\topmargin{27pt} +\else + \setlength\topmargin{\paperheight} + \addtolength\topmargin{-2in} + \addtolength\topmargin{-\headheight} + \addtolength\topmargin{-\headsep} + \addtolength\topmargin{-\textheight} + \addtolength\topmargin{-\footskip} % this might be wrong! + \addtolength\topmargin{-.5\topmargin} + \@settopoint\topmargin +\fi +\setlength\footnotesep{8.4\p@} +\setlength{\skip\footins}{10.8\p@ \@plus 4\p@ \@minus 2\p@} +\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\intextsep {14\p@ \@plus 4\p@ \@minus 4\p@} +\setlength\dblfloatsep {14\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\@fptop{0\p@ \@plus 1fil} +\setlength\@fpsep{10\p@ \@plus 2fil} +\setlength\@fpbot{0\p@ \@plus 1fil} +\setlength\@dblfptop{0\p@ \@plus 1fil} +\setlength\@dblfpsep{10\p@ \@plus 2fil} +\setlength\@dblfpbot{0\p@ \@plus 1fil} +\setlength\partopsep{3\p@ \@plus 2\p@ \@minus 2\p@} +\def\@listi{\leftmargin\leftmargini + \parsep 5\p@ \@plus2.5\p@ \@minus\p@ + \topsep 10\p@ \@plus4\p@ \@minus6\p@ + \itemsep5\p@ \@plus2.5\p@ \@minus\p@} +\let\@listI\@listi +\@listi +\def\@listii {\leftmargin\leftmarginii + \labelwidth\leftmarginii + \advance\labelwidth-\labelsep + \topsep 5\p@ \@plus2.5\p@ \@minus\p@ + \parsep 2.5\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep} +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii + \advance\labelwidth-\labelsep + \topsep 2.5\p@\@plus\p@\@minus\p@ + \parsep \z@ + \partopsep \p@ \@plus\z@ \@minus\p@ + \itemsep \topsep} +\def\@listiv {\leftmargin\leftmarginiv + \labelwidth\leftmarginiv + \advance\labelwidth-\labelsep} +\def\@listv {\leftmargin\leftmarginv + \labelwidth\leftmarginv + \advance\labelwidth-\labelsep} +\def\@listvi {\leftmargin\leftmarginvi + \labelwidth\leftmarginvi + \advance\labelwidth-\labelsep} +\endinput +%% +%% End of file `bsize12.clo'. diff --git a/language/bengali/bangtex/mf/bang10.mf b/language/bengali/bangtex/mf/bang10.mf new file mode 100644 index 0000000000..0f7afb2251 --- /dev/null +++ b/language/bengali/bangtex/mf/bang10.mf @@ -0,0 +1,100 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bang10.mf: METAFONT file that defines the Bengali alphabet (regular) +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +def makebox(text rule) = + for y=0,h,matra_f*h,matra_f*h/2,-d: + rule((0,y)t_,(w,y)t_); + endfor % horizontals + for x=0,w: + rule((x,-d)t_,(x,h)t_); + endfor % verticals + for rv=1 upto floor(w/1pt): + for x=1pt*rv: + rule((x,-d)t_,(x,h)t_); + endfor + endfor% more verticals +enddef; + + + +mode_setup; +font_size 10pt#; +u# = 1/3pt#; +s# = 1/3pt#; +em# := 20pt#; cap# := 20pt#; +thin# := 1/3pt#; thick# := 5/6pt#; +o# := 1/5pt#; +define_pixels(em,cap); +define_blacker_pixels(thin,thick); +define_corrected_pixels(o); +numeric stwd, stht, stdp, penth; +numeric stem_width, stem_slope; +numeric matra_thickness, matra_f, matra_h,matra_t, matra_slope; +numeric dot_diam, ball_hang, ha_dip; +numeric lindent, rindent; +numeric xmag; xmag = 1; +%%%%%%%%%%%%%%%%%%%%%%%%% +%% matra_thickness should be removed at the end +%%%%%%%%%%%%%%%%%%%%%%%%% +stwd# = 10pt#; stht# = 8pt#; stdp# = 2pt#; +penth# = 0.4pt; dflt_pen := savepen; +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +stem_width = xmag*.55pt; +stem_slope = 45; +dot_diam = 1pt; % diameter of dots in "ra", "ya" etc. +matra_thickness = .75pt; +matra_slope = 115; +matra_f = .75; % fraction of h where normally the top end of matras rest +matra_t = 3/50; % thickness of matras as a fraction of matra_f +matra_h = matra_f-.5matra_t; +ball_hang = .7pt; +ha_dip = .7pt; % the depth by which the end of "ha" dips below baseline +lindent = 1.5stem_width; +rindent = 1.5stem_width; +numball_one = 9/50*8pt; % large balls used in numerals +numball_two = 0.8*numball_one; % small balls used in numerals +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +font_quad 18u#+2s#; +font_normal_space 9u#+3s#; +font_normal_stretch 3u#; +font_normal_shrink 2u#; +numeric slantval; slantval = 0; + + + +input bangbase; +end; + +%%% End of bang10.mf diff --git a/language/bengali/bangtex/mf/bangbase.mf b/language/bengali/bangtex/mf/bangbase.mf new file mode 100644 index 0000000000..183e369856 --- /dev/null +++ b/language/bengali/bangtex/mf/bangbase.mf @@ -0,0 +1,49 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bangbase.mf: METAFONT file that calls the base files +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +input bangmac; +input bangdefs; + +input bangvow; +input bangkaar; +input bangconso; +input bangfala; +input bangnum; +input bangpunc; +input banghalf; +input bangjuk; +input banglig; + +%% End of the file bangbase.mf diff --git a/language/bengali/bangtex/mf/bangconso.mf b/language/bengali/bangtex/mf/bangconso.mf new file mode 100644 index 0000000000..e9990517a7 --- /dev/null +++ b/language/bengali/bangtex/mf/bangconso.mf @@ -0,0 +1,483 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bangconso.mf: METAFONT file that defines bangla consonants +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +beginchar("k", 19u#, stht#,stdp#); "The letter ka"; + numeric wba; wba = 14/19w; + ka(0,0,wba,h); + matra(0,w); +endchar; + + +beginchar("x", 16u#, stht#,stdp#); "The letter kha"; + numeric xstem,height,balld,phi; + xstem=w-rindent; height=matra_f*h; balld=.18h; phi=-90; + matra(xstem,w); + z2l = (7.5/43w,43/50height); + z2r = z2l + .5balld * dir(phi) + .02w * dir(phi+90); + z3l = (.5w,matra_f*h); + z3r = (.52w,.63h); + z4r = (26.5/43w,41/50height); + z4l = (30/43w,38/50height); + z5r = (6/43w,30/50height); + z6l = (13/43w,22/50height); + z5l = .7[z5r,z6l]; + z6r = z5r; + z7 = (xstem,height); + fill fullcircle scaled balld shifted (z2l); + penstroke z2e{right}..z3e; + penstroke z3e..z4e{down}..{left}z5e; + hookstem(z6r,z6l,z7,0,0); + penlabels(1,2,3,4,5,6,7); +endchar; + +beginchar("g", 14u#, stht#,stdp#); "The letter ga"; + numeric xstem,hh,hrise; hh = .9h; hrise = matra_f*(h-hh); + xstem=w-rindent; + stem(xstem); + matra(xstem,w); + ga_(0,hrise,xstem,hh); +endchar; + +beginchar("G", 15u#, stht#,stdp#); "The letter gha"; + numeric xstem,height; xstem = w-rindent; height = matra_f*h; + matra(0,w); stem(xstem); +% The upper left portion + z1l = (4/42w,matra_h*h); penpos1(11/42w,0); + z2l = (22/42w,37/50height); + z2r = (28/42w,34/50height); + z3 = (12.5/42w,20/50height); + fill z1l..{z2r-z3}z2r--z2l{z3-z2r}..z1r--cycle; +% The portion going towards lower left + cwbar(z2l,z2r,z3,angle(z1r-z2r)); +% The hook and the stem + z4 = 7/21[z3,z2r]; + z5 = (xstem,matra_h*h); + hookstem(z4,z3,z5,0,angle(z2r-z2l)); + penlabels(1,2,3,4,5); +endchar; + +beginchar(130, 17u#, stht#,stdp#); "The letter unga"; + unga(0,0,w,matra_f*h); +endchar; + +beginchar("c", 13u#, stht#,stdp#); "The letter ca"; + ca(0,0,w,h); + matra(0,w); +endchar; + +beginchar("q",15.5u#,stht#,stdp#); "The letter cha"; + numeric hh,hrise; hh=h; + hrise = matra_f*(h-hh); + cha(0,hrise,w,hh); + currenttransform := identity slanted slantval; + matra(0,w); +endchar; + +beginchar("j", 20u#, stht#,stdp#); "The letter ja"; + ja_full(0,0,w,h); + matra(0,w); +endchar; + +beginchar("C", 18u#, stht#,stdp#); "The letter jha"; + numeric wba,xstem; wba = 14/18w; xstem = wba-rindent; + ba(0,0,xstem,h); + matra(0,xstem); +% Now the part to the right + z6 = (.87w,.14h); + z7 = (xstem,.43h); + z8 = (x7,.35h); + hookjt(z8,z7,z6,.07h,.4,90); + halfstem(x6,matra_f*h,.13h); + matra(x6,w); + penlabels (1,2,3,4,5,6,7,8); +endchar; + +beginchar(131, 26u#, stht#,stdp#); "The letter ina"; + ina(0,0,w,h); +endchar; + +beginchar("T", 13u#, stht#,stdp#); "The letter Ta"; + numeric balld; balld = .19h; + matra(0,w); + Dha(0,0,w,h); +% The Tiki + Tiki (.9w,.1w); +endchar; + +beginchar("F", 13u#, stht#,stdp#); "The letter Tha"; + numeric width; width = .13w; +% The bag + z1 = (.61w,matra_f*h-.5matra_thickness); penpos1(width,0); + z2 = (.23w,.3h); penpos2(1.4width,-45); + z3l= (.5w,.06h); penpos3(.8width,90); + z4l= (.93w,.32h); penpos4(.8width,180); + z5 = z1; z5l = z1r; z5r = z1l; + penstroke z1e..{left}z2e; + penstroke z2e..{right}z3e; + penstroke z3e{right}..z4e{up}..z5e; +% The antenna + numeric antwid; antwid = length(z1l-z1r); + z6 = (x1l,h); + pickup pencircle xscaled antwid yscaled 1.4antwid rotated 0; + draw z1{z1-z4}..{dir 45}z6; + picture shape_Tha; shape_Tha = currentpicture; +% matra + matra(0,w); + penlabels(1,2,3,4,5,6); +endchar; + +beginchar("D", 18u#, stht#,stdp#); "The letter Da"; + numeric height; height = matra_f*h; + matra(0,w); + Da(0,0,w,height,.88); +endchar; + +beginchar("Z", 13u#, stht#,stdp#); "The letter Dha"; + matra(0,w); + Dha(0,0,w,h); +endchar; + +beginchar("N", 13.5u#, stht#,stdp#); "The letter murdhanya na"; + numeric xstem; + xstem = w - rindent; + matra (xstem,w); + stem(xstem); + Na_(0,0,xstem,h); +endchar; + +beginchar("t", 19u#, stht#,stdp#); "The letter ta"; + numeric height; height = matra_f*h; + ta(0,0,w,height); + matra(0,w); +endchar; + +beginchar("Q", 15u#, stht#,stdp#); "The letter tha"; + numeric xstem,balld,phi,height; + xstem=w-rindent; balld=.18h; height = matra_f*h; + matra(xstem,w); + z1l = (.5lindent,.6h); penpos1(.5balld,0); + z2r = (.4w,.68h); + z2l = (.33w,height); + z3r = (23.5/42w,36/50height); penpos3(3.5/42w,180); + z4r = (5/42w,27/50height); + z4l = (8.5/42w,20/50height); + z5 = (xstem,height); + fill fullcircle scaled balld shifted (z1r); + penstroke z1e{up}..{right}z2e..{down}z3e..tension1.2..{left}z4e; + hookstem(z4r,z4l,z5,0,0); + penlabels(1,2,3,4,5); +endchar; + + +beginchar("d", 14u#, stht#,stdp#); "The letter da"; + matra(0,w); + da(0,0,w,h); +endchar; + +beginchar("z", 14u#, stht#,stdp#); "The letter dha"; + numeric xstem,height,theta; + xstem = w - rindent; height = matra_f*h; theta = 20; + ba(0,0,xstem,h); + matra(xstem,w); + z8l = point 16/34 of ba_pl; + z8r = point 22/34 of ba_pl; + z9l = (10.5/39w,43/50height); + z9r = (7/39w,43/50height); + z10l = (17/39w,(matra_f-matra_t)*h); penpos10(.5dot_diam,theta); + fill fullcircle scaled dot_diam shifted z10l; + fill z10r{dir (theta+90)}..z9r..{right}z8r--z8l{left}..z9l..z10l--cycle; + picture shape_dha; + currentpicture = shape_dha; + penlabels(8,9,10); +endchar; + + +beginchar("n", 15.5u#, stht#,stdp#); "The letter na"; + numeric ww,xstem,height; xstem = ww = w-rindent; height = matra_f*h; + na(0,0,w,height,1); + matra(0,w); +endchar; + +beginchar("p", 17u#, stht#,stdp#); "The letter pa"; + numeric xstem,height; xstem=w-rindent; height = matra_f*h; + matra(xstem,w); + stem(xstem); + pa_(0,0,xstem,h); +endchar; + +beginchar("f", 18.5u#, stht#,stdp#); "The letter pha"; + numeric xstem,wJa,balld,fracrise; + wJa = 28/37w; xstem = wJa-rindent; balld = .16h; fracrise=.8; + matra(0,w); +% The upper left portion + Ja(0,0,wJa,h,fracrise); + z6r = (xstem+.5stem_width,fracrise*matra_h*h); penpos6(stem_width,90); +% This part is for the ball at the end of the hook + z7 = (.83w,.38h); + fill fullcircle scaled balld shifted (z7); +% The hook + z8r = z7 + .5balld * dir(0); penpos8(.2balld,0); + penstroke z6e{right}..{down}z8e; + penlabels(6,7,8); + picture shape_pha; shape_pha = currentpicture; +endchar; + +beginchar("b", 14u#, stht#,stdp#); "The letter ba"; + numeric xstem; xstem = w - rindent; + matra(0,w); + ba(0,0,xstem,h); +endchar; + +beginchar("v", 20u#, stht#,stdp#); "The letter bha"; + numeric balld; balld = .25h; + matra(0,w); + bha(0,0,w,matra_f*h); +endchar; + +beginchar("m", 15.5u#, stht#,stdp#); "The letter ma"; + numeric xstem,theta,balld,height; + xstem = w-rindent; theta = -30; balld = .25h; height = matra_f*h; + matra(0,w); +% The part leading to the dot + z1l = (4/43w,matra_h*h); penpos1(7/43w,0); + z2l = (21.5/43w,31/50height); + z2r = (26/43w,28/50height); + z3l = (16/43w,21/50height); penpos3(.5balld,theta); + fill z1l{down}..{down}z2l{down}..z3l--z3r{dir (theta+90)}..z2r..tension1.3..z1r--cycle; +% The dot + fill fullcircle scaled balld shifted z3l; +% The part to the lower right of the dot + z4r = z3l; + z4l = z3l + .5balld * dir 90; + z5 = (xstem,matra_h*h); + hookstem(z4l,z4r,z5,0,0); + penlabels(1,2,3,4,5); +endchar; + + +beginchar("J",15u#,stht#,stdp#); "The letter antasthya ja"; + Ja(0,0,w,h,1); +% The matra + matra(0,w); +endchar; + +beginchar("r",14u#,stht#,stdp#); "The letter ra"; + numeric xstem; xstem = w-rindent; + matra(0,w); + z6 = (.32w,.15h); + fill fullcircle scaled dot_diam shifted (z6); + ba(0,0,xstem,h); + penlabels (1,2,3,4,5,6); +endchar; + +beginchar("l",18u#,stht#,stdp#); "The letter la"; + numeric xstem; xstem = w - rindent; + la_(0,0,xstem,h); + stem(xstem); + matra(0,w); +endchar; + +beginchar("H",14.5u#,stht#,stdp#); "The letter ha"; + numeric height; height = matra_f*h; + Ha(0,0,w,height); + matra(0,w); +endchar; + +beginchar("X",22u#,stht#,stdp#); "The letter khiyo"; + khiyo(0,0,w,h); + matra(0,w); +endchar; + +beginchar("S", 18u#, stht#,stdp#); "The letter talabya sha"; + numeric xstem; xstem = w-rindent; + stem(xstem); + matra(xstem,w); + sha_(0,0,xstem,h); +endchar; + + +beginchar("P", 15u#, stht#,stdp#); "The letter murdhanya sha"; + numeric xstem; xstem = w-rindent; +% The upper left portion + z1l = (4/42w,matra_h*h); penpos1(11/42w,0); + z2l = (22/42w,37.5/50height); + z2r = (28/42w,34/50height); + fill z1l{down}..{z2l-z1l}z2l--z2r--z1r--cycle; +% The portion going towards lower left + z3 = (12.5/42w,20/50height); + cwbar(z2l,z2r,z3,angle(z1r-z2r)); +% The hook + z4 = .33[z3,z2r]; + z5 = (xstem,matra_h*h); + hookstem(z4,z3,z5,0,angle(z2r-z2l)); +% The cross through the belly + x6 = xstem; + y6 = (y1r*(x2r-x6) - y2r*(x1r-x6))/(x2r-x1r); + z7 = .13[z2r,z3]; + cwbar (z7,z2r,z6,90); + penlabels(1,2,3,4,5,6,7); + picture shape_Sha; shape_Sha = currentpicture; + matra(0,w); +endchar; + +beginchar("s",17.5u#,stht#,stdp#); "The letter dantya-sa"; + numeric xstem,height; xstem = w-rindent; height=matra_h*h; + matra(0,w); + stem(xstem); + sa_(0,0,xstem,height); +endchar; + +beginchar(136, 16u#, stht#,stdp#); "The letter Da-y shunyo Ra"; + numeric height; height = matra_f*h; + Da(0,0,w,height,.88); + matra(0,w); +% The dot + z9 = (.61w,-ha_dip); + fill fullcircle scaled dot_diam shifted (z9); + penlabels(9); +endchar; + +beginchar(137, 13u#, stht#,stdp#); "The letter Dha-y shunyo Ra"; + numeric balld; balld = .19h; + matra(0,w); + z1 = (lindent-.5stem_width,matra_f*h-.5matra_thickness); + z2 = (lindent+.5stem_width,matra_f*h-.5matra_thickness); + z3 = (x1,.25h); + z4 = (x2,y3); + z5 = (.35w,.09h); + z6 = (.39w,.2h); + z8 = (.69w,.41h); + z7 = (max(.88w,x8+.5balld),.43h); + fill z1{down}..{down}z3..z5{right}..tension1.5..z7--z8{down}..z6..z4{up}--z2--cycle; + z9 = (x8,y8+.5balld); + hookcirc(z9,z7,z8,balld,30); +% The dot at the bottom + z10= (x6,-ha_dip); + fill fullcircle scaled dot_diam shifted (z10); + penlabels (1,2,3,4,5,6,7,8,9,10); +endchar; + +beginchar("y",14u#,stht#,stdp#); "The letter antasthya ya"; + matra(0,w); + Ja(0,0,w,h,1); +% The ball + z8 = (.42w,.13h); + fill fullcircle scaled dot_diam shifted (z8); + penlabels(8); +endchar; + +beginchar(133,14u#,stht#,stdp#); "The letter khanda ta"; +% The dot + z1r = (.5w,matra_f*h); penpos1(.09h,90); + z2r = (.3w,.59h); penpos2(.04h,-150); + z3r = (.54w,.39h); penpos3(.1h,-90); + z4r = (.75w,.54h); penpos4(.06h,0); + penstroke z1e..z2e..z3e..z4e..cycle; +% The hanging part + z5r = (.7lindent,.48h); penpos5(.08h,180); + z6l = (x1,.3h); + z6r= (.5w,.19h); + z7l = (w,0); penpos7(.1w,180); + z8l = (.2[x7l,x7r],-ha_dip); + z8r = z7r; + penstroke z1e..z5e..z6e..{down}z7e..z8e; + penlabels(1,2,3,4,5,6,7,8); +endchar; + + +beginchar("K",9u#,stht#,stdp#); "The letter anuswar"; + numeric vdiam; vdiam = .3h; + x1 = .5w; y1= matra_f*h - .5vdiam; + golla (z1,vdiam); + z9l = (.07w,.41h); z9r = (.24w,.23h); + z10 = (.96w,-.04h); + hookjt(z9r,z9l,z10,.03h,.1,45); + penlabels(1,2,3,4,5,6,7,8,9,10); +endchar; + +beginchar("h",9u#,stht#,stdp#); "The letter bisargo"; + numeric balld; balld = .3h; + z1 = (.5w,.6h); + z2 = (x1,matra_f*h-y1); + golla (z1,balld); + golla (z2,balld); + penlabels(1,2,3,4,5,6,7,8,9,10); +endchar; + +beginchar(132,0stwd#,stht#,stdp#); "The letter candra-bindu"; + rt z1 = (w,h); + z1'= (x1+8,y1); + z2 = (-2rindent,matra_f*h+.5matra_thickness); + z3 = (-4rindent,h); +% baTi(z1,z1',z2,z3); + pickup Tiki_pen; draw flex(z1,z2,z3); + z5 = (x2,h); + fill fullcircle scaled dot_diam shifted (z5); + penlabels(1,1',2,3,4,5); +endchar; + +beginchar("B",14u#,stht#,stdp#); "The Asamiya letter ra"; + numeric wba; wba = w - rindent; + z1l = (4/39wba,29/50height); + z3r = (8.5/39wba,23.5/50height); + z2l = (wba,43/50height); penpos2(5.5/50height,-90); + z1r = z1l + length(z2r-z2l) * dir angle(z3r-z1l); + path rra_pr; rra_pr = z1r{z2l-z1r}..z2r; + path rra_pl; rra_pl = z2l..{z1r-z2l}z1l; + penstroke z1e{z2l-z1r}..z2e; + z3l = point .2 of rra_pr; + fill z1l--z3l--z3r--cycle; + z4 = (wba,height); + hookstem(z3l,z3r,z4,angle(z3l-z1l),2*angle(z3l-z1l)); + pickup pencircle scaled .6length(z3l-z3r); + lft top z5 = point .65 of rra_pl; + rt z6 = (wba,.35h); + draw z5--z6; + matra(0,w); + penlabels (1,2,3,4,5,6); +endchar; + +beginchar("w", 14u#, stht#,stdp#); "The Asamiya letter wa"; + numeric xstem; xstem = w - rindent; + matra(0,w); + ba(0,0,xstem,h); + pickup pencircle xscaled 0.1pt yscaled 0.4pt; + z6 = (.14w,.22h); + z7 = (w-2rindent, 0); + draw z6{right}..z7; + penlabels(6,7); +endchar; + +%%% End of bangconso.mf
\ No newline at end of file diff --git a/language/bengali/bangtex/mf/bangdefs.mf b/language/bengali/bangtex/mf/bangdefs.mf new file mode 100644 index 0000000000..fb97135357 --- /dev/null +++ b/language/bengali/bangtex/mf/bangdefs.mf @@ -0,0 +1,914 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bangdefs.mf: METAFONT file that defines various shapes +% for use in various bangla fonts +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + + +def E(expr xoff,yoff,w,h) = + begingroup + save x,y,balld,ypen,currenttransform; transform currenttransform; + currenttransform := identity shifted (xoff,yoff) slanted slantval; + numeric balld,ypen,height,theta; + balld = .3w; ypen = .9pt; height = matra_f*h; theta = 220; +% The circle + z1l = (.5w,.43h); penpos1(.5balld,theta); + fill fullcircle scaled balld shifted (z1l); +% The connector between the circle and the stem + z2r = (.7w,height); penpos2(matra_t*h,90); + z3 = (w-rindent,.6h); penpos3 (stem_width,0); + fill z1r{dir (theta-90)}..tension1.3..{right}z2r..tension1.2..{down}z3r--z3l{up}..{left}z2l..tension1.6..{dir (theta+90)}z1l--cycle; +% The wavy line + x4= w-rindent-.5stem_width; + y4 = ypen; penpos4(.07h,90); + z5 = (.51w,.18h); penpos5(6/50height,90); + z6 = (.27w,.21h); penpos6(6/50height,90); + z7 = (4/48w,26/50height); penpos7(3/50height,0); + z8 = (6.5/48w,36/50height); penpos8(2/50height,-30); + penstroke z5e{left}..z6e..z7e..tension1.2..z8e; +% The stem + hookstem(z5r,z5l,z3,0,0); + penlabels(1,2,3,4,5,6,7,8); + endgroup +enddef; + +def Estem(expr xoff,yoff,w,h) = + begingroup + save x,y,balld,currenttransform; transform currenttransform; + currenttransform := identity shifted (xoff,yoff) slanted slantval; + numeric balld,height,theta; + balld = .7(w-.5stem_width); height = matra_f*h; theta = 180; +% The circle + z1r = (0,.6height); penpos1(.5balld,theta); + fill fullcircle scaled balld shifted (z1l); +% The connector between the circle and the stem + x2r = .75[x1l,x3l]; y2r = height; + penpos2(matra_t*h,90); + z3 = (w,.8height); penpos3 (stem_width,0); + z4 = (x3,0); penpos4(stem_width,0); + fill z1r{dir (theta-90)}..{right}z2r..tension1.2..{down}z3r--z4r--z4l--z3l{up}..z2l..tension1.6..{dir (theta+90)}z1l--cycle; + penlabels(1,2,3,4); + endgroup +enddef; + +def O(expr xoff,yoff,w,h) = + begingroup + save x,y,balld,smalld,phia,phib,currenttransform; + transform currenttransform; + currenttransform := identity shifted (xoff,yoff) slanted slantval; + numeric balld,phia,phib,height,rballx,rbally; + phia=150; phib=-45; height = matra_f*h; % smalld,balld defined later +% The two circles + z1r = (21/52w,33/50height); + z4r = z5l = (37/52w,29/50height); + balld = .7 * length(z1r-z4r); + smalld = .9balld; + fill fullcircle scaled smalld shifted (z1r); + fill fullcircle scaled balld shifted (z4r); +% Line between the two circles + z2l = (44/52w,45/50height); + z3l = (45/52w,36/50height); + z3r = (43/52w,40/50height); + z2r = (37/52w,46/50height); + z1l= z1r + .5smalld * dir (phia); + z4l= z4r + .5balld * dir (phib); + fill z1l{dir (phia-90)}..z2l..z3l..z4l--z4r..z3r..z2r..tension1.5..z1r--cycle; +%% The line connecting to the cup + z5r= z5l + .5balld * dir (phib+90); + z6l = (45/52w,20/50height); + z6r = (47.5/52w,19/50height); + fill z5l..{down}z6l--z6r{up}..z5r--cycle; +%% The cup + z7r = (35/52w,6.5/50height); penpos7(6/50height,-90); + z8r = (2.5/52w,45/50height); + z8l = (5.2/52w,43/50height); + z9 = (0,63/50height); + penstroke z6e{down}..{left}z7e..{z9-z8l}z8e; + penlabels(1,2,3,4,5,6,7,8,9); +%% We now define the x and y co-ordinates for the right ball. +%% These are not protected. They need to be used sometimes. + rballx = x4r; rbally = y4r; + endgroup +enddef; + + +def ka(expr xoff,yoff,wba,h) = + begingroup + save x,y,xstem,theta,balld,wbar,currenttransform; + numeric xstem,theta,balld,height; + xstem=wba-rindent; theta=-30; balld=.2height; height = matra_f*h; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; +% The first part is equivalent to the definition of "ba" + ba(xoff,yoff,xstem,h); + z2l = (xstem,43/50height); penpos2(5.5/50height,-90); +% This part is for the ball at the end of the hook + z6 = (43/32xstem,21/50height); + fill fullcircle scaled balld shifted (z6); +% This part is the hook + z7l = z6 + .5balld * dir(theta); + z7r = z6 + .5balld * dir(theta+70); + penstroke z2e{right}..z7e; + penlabels(1,2,3,3',4,5,6,7,8,8',9,10); + endgroup +enddef; + +def ga_(expr xoff, yoff, w, h) = + begingroup + numeric xstem,height; + xstem=w-rindent; height = matra_f*h; + save x,y,currenttransform; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + z1l = (11/35w,18/50height); + z1r = (15.5/35w,15/50height); + z2l = (19/35w,30/50height); + z2r = (24/35w,29/50height); + z3l = (19/35w,34/50height); + z3r = (21/35w,37/50height); + z4l = (16/35w,35.5/50height); + z4r = (13.5/35w,39/50height); + z5l = (4/35w,31/50height); + z5r = (8/35w,38/50height); + z6l = (1.5/35w,38/50height); + z6r = z5r; + z7l = (17/35w,height); + z7r = (18/35w,46/50height); + z8l = (w,35/50height); penpos8(stem_width,-90); + fill z1l..z2l..z3l..z4l{left}..tension1.2..{left}z5l..tension2..{up}z6l--z6r--z5r{z4l-z5l}..z4r..z3r..z2r..tension1.3..z1r--cycle; + fill z6l{up}..{right}z7l..tension1.5..z8l--z8r..tension1.42..z7r..z6r--cycle; + penlabels (1,2,3,4,5,6,7,8); + endgroup +enddef; + + +def unga(expr xoff,yoff,w,h) = + begingroup + save x,y,currenttransform; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; +% The vertical part + z2 = (18.5/47w,36/50h); penpos2(stem_width,0); + z3l = (25.5/47w,18/50h); + z3r= (23/47w,23/50h); + z3 = .5[z3l,z3r]; +% The part going up + z4l = (36/47w,26/50h); + z4r = (34/47w,33/50h); + fill z2l{down}..tension0.8..{right}z3l{right}..tension1.5..z4l--z4r..tension1.8..{left}z3r..{up}z2r--cycle; +% The lower cup + z5l = (40/47w,22/50h); penpos5(3/47w,-10); + z6l = (28/47w,10/50h); + z6r = (29/47w,3/50h); + z7l = (6/47w,42/50h); + z7r = (4/47w,43/50h); + z8 = (0,63/50h); + fill z4l..{down}z5l..{left}z6l{left}..{z8-z7l}z7l--z7r{z7r-z8}..{right}z6r{right}..z5r{up}..z4r--cycle; +% The upper part with the dot + z9l = (31/47w,h); penpos9(stem_width,-90); + z10l = (38/47w,43/50h); penpos10(.6stem_width,180); + z11l = z2r; penpos11(stem_width,90); + x12l = x7l; y12r = h; penpos12(.12w,10); + penstroke z2e{up}..{right}z9e..z10e{down}..z11e..{z12-z3}z12e; + penlabels(1,2,3,4,5,6,7,8,9,10,11,12); + endgroup +enddef; + +def ca(expr xoff,yoff,w,h) = + begingroup + save x,y,height,currenttransform; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric height; height = matra_f*h; + z1 = (lindent,matra_h*h); penpos1(stem_width,180); + z2r = (x1r,41.5/50height); penpos2(stem_width,180); + z3r = (x1r,.24h); + z3l = (x2l,.26h); + z5r = (33/37w,29/50height); + z5l = (27/37w,26.5/50height); + z4r = (.3[x3r,x5r],4/50height); + z4l = (.3[x3l,x5l],9/50height); + z6r = (x1l,.45[y1,y2]); + z6l = z2r; z6 = .5[z6l,z6r]; + penstroke z1e--z2e--z3e{down}..{right}z4e; + penstroke z4e{right}..{up}z5e; + penstroke z5e{up}..{up}z6e; + penlabels(1,2,3,4,5,6); + endgroup +enddef; + + +def cha(expr xoff,yoff,w,h) = + begingroup + save x,y,currenttransform,ww,hh,hrise; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric ww,hh,hrise,height; + height = matra_f*h; +% The rounded part + z7r = (25/44w,39/50height); + z7l = (x7r,y7r-matra_t*height); + z8l = (35/44w,30/50height); + z8r = (39/44w,28/50height); + z9l = (16.5/44w,15/50height); + z9r = (x9l,11/50height); + z10l = (7/44w,17/50height); + z10r = (12/44w,10/50height); + penstroke z7e{right}..{down}z8e{down}..{left}z9e..z10e; +% The part that goes down + z11= (w,-ha_dip); + hookjt(z10r,z10l,z11,.06h,.2,45); +% The part that looks like a small "ca" + ww = x7l+.8rindent; hrise - y10l = y10l - y9l; +% hrise = matra_h*(h-hh); + hh = h-(hrise/matra_h); + ca(xoff,hrise+yoff,ww,hh); + penlabels(7,8,9,10); + endgroup +enddef; + +def ja_bare(expr xoff,yoff,w,h) = + begingroup + save x,y,currenttransform; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric height; + height = matra_f*h; +% The upper part + z1 = (27/37w,matra_h*h); penpos1(10/37w,0); + z2l = (13/37w,35/50height); + z2r = (16/37w,32/50height); + z3l = (23.5/37w,23/50height); + z3r = (20/37w,28/50height); + z4r = (30/37w,33.5/50height); + z4l = (32.5/37w,28/50height); + penstroke z1e{z2l-z1r}..{down}z2e{down}..{right}z3e..z4e; +% The lower cup + z5r = (w,y3l); penpos5(2.5/37w,0); + z6r = (26/37w,9/50height); penpos6(7/50height,-90); + z7r = (4.5/37w,43/50height); + z7l = (6/37w,42/50height); + penstroke z5e{down}..{left}z6e..{up}z7e; +% The part joining the above two parts + penstroke z5e{up}..z4e; + penlabels(1,2,3,4,5,6,7); +% The hook +% NONE FOR THIS VERSION +% Definitions to export + numeric topl_ja,topr_ja,midlx_ja,midrx_ja,midly_ja,midry_ja; + topl_ja = x1l; topr_ja = x1; + z91 = .5[z4r,z5r]; penpos91(.3length(z4l-z5r), angle(z5r-z4l)); + midlx_ja = x91r; midrx_ja = x91l; + midly_ja = y91r; midry_ja = y91l; + endgroup +enddef; + +def ja_(expr xoff,yoff,w,h) = + begingroup + save x,y,currenttransform; + numeric wbare,height; + wbare = 37/53w; height = matra_f*h; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + ja_bare(xoff,yoff,wbare,h); + z8l = (topl_ja,matra_h*h); + z8r = (topr_ja,matra_h*h); + z9l = (w,35/50height); + z9r = (47/53w,40/50height); + z3' = (midlx_ja,midly_ja); + penstroke z8e{z3'-z8l}..{right}z9e; + penlabels(3',8,9); +% Definitions to export + numeric tiplx,tiply,tiprx,tipry; + tiplx = x9l; tiply = y9l; + tiprx = x9r; tipry = y9r; + endgroup +enddef; + +def ja_full(expr xoff,yoff,w,h) = + begingroup + save x,y,currenttransform,width,thiv; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric height; height = matra_f*h; + ja_(xoff,yoff,w-.5rindent,h); + z9l = (tiplx,tiply); + z9' = (tiprx,tipry); z9r = .7[z9l,z9']; + z10l = (x9r,0); + z10r = (x10l-2/56w,1/50height); + penstroke z9e{z9r-(w,height)}..z10e; + penlabels(10); + endgroup +enddef; + +def ina(expr xoff,yoff,w,h) = + begingroup + save x,y,currenttransform,theta,wE; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric theta,wE; theta = 60; wE=18.5/26w; + z1 = (wE-rindent,.41h) + (xoff,yoff); + E(xoff,yoff,wE,h); + clover(z1,w-wE,.25h,.08h); + endgroup +enddef; + +def Da(expr xoff,yoff,w,h,fracrise) = + begingroup + save x,y,xstem,currenttransform; transform currenttransform; + currenttransform := identity shifted (xoff,yoff) slanted slantval; + numeric xstem; xstem = .5w; +% The vertical part + z1 = (xstem,h); penpos1(stem_width,0); + z2 = (x1,31/50h); penpos2(stem_width,0); + z3l = (27.5/49w,21.5/50h); + z3r= (x3l+1/49w,28/50h); + fill z1l..{down}z2l..{right}z3l--z3r{left}..{up}z2r--z1r--cycle; +% The part going up + z4l = (42.5/49w,30/50h); + z4r = (40/49w,38/50h); + fill z3l{right}..tension1.5..z4l--z4r..tension1.8..{left}z3r--cycle; +% The lower cup + z5l = (44/49w,27/50h); penpos5(3/50w,0); + z6l = (29.5/49w,12/50h); + z6r = (31/49w,5/50h); + z7l = (7/49w,(fracrise-.02)*h); + z7r = (5/49w,fracrise*h); + z8 = (0,(63/44)*fracrise*h); + fill z4l..{down}z5l..{left}z6l{left}..{z8-z7l}z7l--z7r{z7r-z8}..{right}z6r{right}..z5r{up}..z4r--cycle; + penlabels(1,2,3,4,5,6,7,8); + endgroup +enddef; + +def Dha(expr xoff,yoff,w,h) = + begingroup + save x,y,balld,currenttransform; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric balld; balld = .19h; + z1 = (lindent,matra_f*h); penpos1(stem_width,0); + z2 = (lindent,.27h); penpos2(stem_width,0); + z3l = (.35w,.08h); + z3r = (.39w,.2h); + z4r = (.69w,.41h); + z4l = (max(.88w,x4r+.5balld),.47h); + penstroke z1e{down}..{down}z2e..tension1.2..z3e{right}..tension1.2..{up}z4e; + z5 = (x4l-.5balld,y4l); + fill fullcircle scaled (balld) shifted (z5); + penlabels (1,2,3,4,5); + endgroup +enddef; + +def Na_(expr xoff,yoff,w,h) = + begingroup + save x,y,xstem,balld,currenttransform; + numeric xstem,balld,height; + xstem = w - rindent; height = matra_f*h; balld = max(9/50height,.3w); + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) xscaled(w/xstem) slanted slantval; + z1r = (16.5/37w,31/50height); + fill fullcircle scaled balld xscaled(xstem/w) shifted (z1r); + penpos1(.5balld * xstem/w,180); + z2l = z1r - (0,.75balld); + penpos2(.5balld,90); + z3l = (3.5/37w,36/50height); penpos3(6/37w,0); + z4l = (15.5/37w,height); + z4r = (17/37w,45/50height); + z5r = (xstem,y3); penpos5(.08h,-90); + penstroke z1e{down}..z2e..{up}z3e..z4e{right}..{z5l-z4l}z5e; + penlabels(1,2,3,4,5); + endgroup +enddef; + +def ta(expr xoff,yoff,ww,hh) = + begingroup + save x,y,balld,currenttransform; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric balld; balld = 14/50hh; +% The ball + z1l = (30/52ww,32/50hh); penpos1(.5balld,180); + fill fullcircle scaled balld shifted (z1l); +% Joining the ball and the cup + z2r = (33.5/52ww,43/50hh); + z2l = z1l + .5balld * dir(45); +% The cup at the bottom + z3l = (47/52ww,27/50hh); + z3r = (50/52ww,26/50hh); + z4l = (33/52ww,13.5/50hh); + z4r = (35/52ww,7/50hh); + z5l = (6/52ww,43/50hh); + z5r = (4/52ww,44/50hh); + z6 = (0,62/50hh); + fill z1l..z2l{right}..{down}z3l{down}..z4l{left}..tension1.2..{z6-z5l}z5l--z5r{z5r-z6}..tension1.2..{right}z4r{right}..{up}z3r{up}..{left}z2r..z1r--cycle; + penlabels(1,2,3,4,5,6); +% Definitions to export + numeric top_ta; + top_ta = y2l; + endgroup +enddef; + +def da(expr xoff,yoff,w,h) = + begingroup + save x,y,height,currenttransform; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric height; height=matra_f*h; +%% The vertical bar at the left + z1 = (lindent,height); penpos1(stem_width,0); + z2l = (x1l,20/50height); + z2r = (x1r,15/50height); + penstroke z1e..z2e; +%% The diagonal line + y4r = .52h; + y4l-y4r=y2l-y2r; + x4r-x4l=stem_width; + .5[x4r,x4l] = w - rindent; + z3 = (x4l,height); + penstroke z2e{z3-z2l}..z4e; +%% Calculation for the upper end of the diagonal line + x5r = x4l; + y5 = y2r; + penpos5(.6*length(z4r-z4l),0); + x6r = x4r; y6r = 0; + penpos6(.4*length(z4r-z4l),-25); + penstroke z4e..z5e..z6e; + penlabels(1,2,3,4,5,6); +% Co-ordinates to export + numeric da_tiplx, da_tiply, da_tiprx, da_tipry; + da_tiplx = x6l; da_tiply = y6l; da_tiprx = x6r; da_tipry = y6r; + endgroup +enddef; + + +def na(expr xoff,yoff,w,h,frach) = + begingroup + save x,y,xstem,balld,currenttransform; + numeric xstem,balld; xstem=w-rindent; + balld = max(15/50h,1/3w); + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + z1r = (13/42w,21.5/50h); penpos1(.5balld,0); + z2r = z1r + .5balld * dir 45; + z2l = z1r + .5balld * (.4 dir 0 + 1.5 dir 90); + fill fullcircle scaled balld shifted (z1r); + fill z1l{up}..{right}z2l--z2r{left}..z1r--cycle; + if frach>0: + z3 = (xstem,frach*h); + hookstem(z2l,z2r,z3,0,0); + else: + z3 = (w,0); + hookjt(z2r,z2l,z3,0.2h,1,90); + fi; + penlabels(1,2,3,4); + endgroup +enddef; + + +def na_(expr xoff,yoff,w,h) = + begingroup + save x,y,xstem,vdiam,ecc,currenttransform; + numeric xstem,balld; + xstem=w-rindent; balld = .25h; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + z1r = (13/32w,21.5/50h); penpos1(.5balld,0); + z2r = z1r + .5balld * dir 45; + z2l = z1r + .5balld * (.4 dir 0 + 1.5 dir 90); + z3l = (w,y1); penpos3(.5*length(z2l-z2r),-90); + fill fullcircle scaled balld shifted (z1r); + fill z1l{up}..{right}z2l--z2r{left}..z1r--cycle; + penstroke z2e{right}..tension1.2..z3e; + penlabels(1,2,3,4); + endgroup +enddef; + +def pa_(expr xoff,yoff,w,h) = +begingroup + save x,y,height,full_w,currenttransform; transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric height; + height = matra_f*h; +% The upper curve + z1l = (3/39w,35/50height); + z1r= (11/39w,38/50height); + z2l = (20/39w,matra_h*h); + z2r = (22/39w,43/50height); + z3l = (w-.5stem_width,34/50height); + z3r = (x3l,y3l+y2r-y2l); + path p; p = z3r{z2l-z3r}..z2r..z1r; + penstroke z1e{up}..z2e..tension1.1..z3e; +% The lower bar + z4l = (10.5/39w,21/50height); + z4r = (17/39w,19/50height); + z5= p intersectionpoint (z4l--(w,matra_f*h)); + cwbar(z4r,z4l,z5,angle(z3l-z5)); +% The connector + z6l= (6.5/39w,32/50height); + z6r = z1r; + z7r = (16.3/39w,34/50height); + z7l = (14.5/39w,33/50height); + z8r = .4[z4l,z5]; + y8l = y8r; + x8r - x8l = length(z7r - z7l); + penstroke z1e{down}..{right}z6e; + penstroke z6e{right}..z7e..{down}z8e; + fill z8l..{z4l-z8r}z4l--z4r--z8r--cycle; + penlabels (1,2,3,4,5,6,7,8); +endgroup +enddef; + +def ba(expr xoff,yoff,w,h) = + begingroup + save x,y,height,currenttransform; + numeric height; height = matra_f*h; + transform currenttransform; + currenttransform := identity shifted (xoff,yoff) slanted slantval; + z1l = (4/39w,29/50height); + z3r = (8.5/39w,23.5/50height); + z2l = (w,43/50height); penpos2(5.5/50height,-90); + z1r = z1l + length(z2r-z2l) * dir angle(z3r-z1l); + path ba_pr; ba_pr = z1r{z2l-z1r}..z2r; + path ba_pl; ba_pl = z2l..{z1r-z2l}z1l; + penstroke z1e{z2l-z1r}..z2e; + z3l = point .2 of ba_pr; + fill z1l--z3l--z3r--cycle; + z4 = (w,height); + hookstem(z3l,z3r,z4,angle(z3l-z1l),2*angle(z3l-z1l)); + penlabels (1,2,3,4); + currenttransform := identity slanted slantval; + numeric ba_topxl, ba_topxr, ba_topy; + ba_topxl = x4 - .5stem_width + xoff; + ba_topxr = x4 + .5stem_width + xoff; + ba_topy = height + yoff; + endgroup +enddef; + +def ba_remove(expr xoff,yoff,w,h) = + begingroup + save x,y,height,currenttransform; + numeric height; height = matra_f*h; + transform currenttransform; + currenttransform := identity shifted (xoff,yoff) slanted slantval; + z1l = (4/39w,29/50height); + z3r = (8.5/39w,23.5/50height); + z2l = (w,43/50height); penpos2(5.5/50height,-90); + z1r = z1l + length(z2r-z2l) * dir angle(z3r-z1l); + path ba_pr; ba_pr = z1r{z2l-z1r}..z2r; + path ba_pl; ba_pl = z2l..{z1r-z2l}z1l; + z3l = point .2 of ba_pr; + z4r = (w+.5stem_width,0); penpos4(.5stem_width,-stem_slope); + z5 = z2 + (.5stem_width,0); penpos5(5.5/50height,-90); + z7 = (x5,0); + unfill z5l--ba_pl--z3r{z3l-z1l}..{down}z4l--z4r--cycle; + unfill z5l--ba_pl--z3r{z3l-z1l}..{down}z4l--z4r--cycle; + endgroup +enddef; + + + +def ba_(expr xoff,yoff,w,h) = + begingroup + save x,y; + z1l = (4/39w,29/50height); + z3r = (8.5/39w,23.5/50height); + z2l = (w,43/50height); penpos2(5.5/50height,-90); + z1r = z1l + length(z2r-z2l) * dir angle(z3r-z1l); + path ba_pr; ba_pr = z1r{z2l-z1r}..z2r; + path ba_pl; ba_pl = z2l..{z1r-z2r}z1l; + penstroke z1e{z2l-z1r}..z2e; + z3l = point .2 of ba_pr; + fill z1l--z3l--z3r--cycle; + z4 = (w,height); + hookstem(z3l,z3r,z4,angle(z3l-z1l),2*angle(z3l-z1l)); + penlabels (1,2,3,4,5); + endgroup +enddef; + +def ba_(expr xoff,yoff,w,h) = + begingroup + save x,y,xstem,currenttransform; + numeric wba,xstem; wba = w; xstem = w-rindent; + transform currenttransform; + currenttransform := identity xscaled (wba/xstem) shifted (xoff,yoff) slanted slantval; + z1 = (.07wba,.45h); + z2 = (.14wba,.35h); + z3 = (xstem,.53h); + z4 = (xstem,.03h); + z5 = z2 + .23wba * (cosd angle(z3-z2), sind angle(z3-z2)); + cwbar(z1,z2,z3,90); + hookjt(z2,z5,z4,.1h,.2,90); + penlabels (1,2,3,4,5); + currenttransform := identity slanted slantval; + endgroup +enddef; + +def bha(expr xoff,yoff,w,h) = + begingroup + save x,y,balld,currenttransform; + numeric balld; balld = 12/54w; + transform currenttransform; + currenttransform := identity shifted (xoff,yoff) slanted slantval; +% The cup at the bottom + z4l = (48/54w,28/50h); z4r = (51/54w,25/50h); + z5l = (33/54w,13/50h); z5r = (34/54w,6/50h); + z6l = (7/54w,43/50h); z6r = (5/54w,44/50h); +% The ball + z1r = (26/54w,34/50h); penpos1(.5balld,0); + fill fullcircle scaled balld shifted z1r; +% Joining the ball and the cup + z2l = (31/54w,24/50h); z2r = (32/54w,30/50h); + z3l = (45.5/54w,32.5/50h); z3r = (42/54w,39.5/50h); + fill z1r..z2r{right}..z3r--z3l..{left}z2l..{up}z1l--cycle; + fill z3r..z4r{down}..{left}z5r..tension1.4..{(0,63/50h)-z6r}z6r--z6l{z6l-(0,63/50h)}..tension1.4..z5l{right}..{up}z4l..z3l--cycle; + penlabels(1,2,3,4,5,6,7,8); + endgroup +enddef; + + +def ma_(expr xoff,yoff,w,h) = + begingroup + save x,y,xstem,theta,balld,height, currenttransform; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric xstem,theta,balld,height; + xstem = w-rindent; theta = -30; balld = .25h; height = matra_f*h; +% The part leading to the dot + z1l = (4/43w,matra_h*h); penpos1(7/43w,0); + z2l = (21.5/43w,31/50height); + z2r = (26/43w,28/50height); + z3l = (16/43w,21/50height); penpos3(.5balld,theta); + fill z1l{down}..{down}z2l{down}..z3l--z3r{dir (theta+90)}..z2r..tension1.3..z1r--cycle; +% The dot + fill fullcircle scaled balld shifted z3l; +% The part to the lower right of the dot + z4r = z3l; + z4l = z3l + .5balld * dir 90; + z5 = (xstem,matra_h*h); + hookstem(z4l,z4r,z5,0,0); + penlabels(1,2,3,4,5); + endgroup +enddef; + + + +def Ja(expr xoff,yoff,w,h,topfrac) = + begingroup + save x,y,xstem,currenttransform; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric xstem,height; xstem = w-rindent; height = matra_f*h; +% The upper left portion + z1l = (4/42w,matra_h*h); penpos1(11/42w,0); + z2l = (22/42w,37/50height); + z2r = (28/42w,34/50height); + fill z1l{down}..{z2l-z1l}z2l--z2r--z1r--cycle; + z3 = (12.5/42w,20/50height); +% The portion going towards lower left + cwbar(z2l,z2r,z3,angle(z1r-z2r)); +% The hook and the stem + z4 = 7/21[z3,z2r]; + z5 = (xstem,topfrac*matra_h*h); + hookstem(z4,z3,z5,0,angle(z2r-z2l)); + penlabels(1,2,3,4,5); + endgroup +enddef; + + +def la_(expr xoff,yoff,w,h) = + begingroup + save x,y,xstem,balld,xecc,currenttransform; + numeric xstem,balld,xecc,height; + height = matra_f*h; + xstem = w-rindent; balld = 13/50height; xecc = xstem/w; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) xscaled (1/xecc) slanted slantval; +% The ball + z1 = (.41w,.33h); + fill fullcircle scaled balld xscaled (xecc) shifted (z1); +% The first wavy line coming out of the ball + z2l = z1 + .5balld * dir (-90); penpos2(.3balld,90); + z3l = (5.8/50w,28/50height); + z3r = (9/50w,26/50height); + z4l = (16/50w,41.5/50height); + z4r = (18/50w,36/50height); + z5l = (26.5/50w,36/50height); + z5r = (29/50w,27/50height); + penstroke z2e..z3e{up}..{right}z4e..{z5r-z4l}z5e; +% The second wavy line connecting to the stem + z6l = (33/50w,y4l-1/100height); + z6r= (35/50w,y4r); + z7l = (xstem,31/50height); + z7r= (xstem,26/50height); + penstroke z5e{up}..z6e..tension1.4..{z6r-z6l}z7e; + penlabels(1,2,3,4,5,6,7); + endgroup +enddef; + + +def sha_(expr xoff,yoff,w,h) = + begingroup + save x,y,height,currenttransform; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric height; height = matra_f*h; +% The balls + z1l = (14.5/40w,40/50height); + z1r = (17/40w,42/50height); + z2 = (5.5/40w,30/50height); + z3 = (11.5/40w,25/50height); + z4 = (19/40w,y2); + x5 -x4 = x4 - x3; y5 = y3; + x6 - x4 = x4 - x2; y6=y2; + z7l = z1r; + x7r - x4 = x4 - x1l; y7r = y1l; + fill z1r--z1l..tension1.4..{down}z2{down}..z3{right}..z4--cycle; + fill z7l--z7r..tension1.4..{down}z6{down}..z5{left}..z4--cycle; +% The antenna to the left + z8r = (0,matra_f*h); + x8l = abs(cosd(matra_slope))*matra_t*h; + y8r-y8l = matra_t*h; + penstroke z8e{right}..tension0.9..{z4-z1l}z1e; +% The line connecting the balls with the stem + z9l = (27/40w,y8r); + z9r = (29/40w,44.5/50height); + z10l = (w,40/50height); + z10r = (w,35/50height); + penstroke z7e..{right}z9e{right}..tension1.5..{z10r-z9r}z10e; + penlabels(1,2,3,4,5,6,7,8,9,10); + endgroup +enddef; + + +def Sha_(expr xoff,yoff,w,h) = + begingroup + save x,y,xstem, currenttransform; + numeric xstem,height; xstem = w-rindent; height=matra_f*h; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) xscaled (w/xstem) slanted slantval; +% The upper left portion + z1l = (4/42w,matra_h*h); penpos1(11/42w,0); + z2l = (22/42w,37.5/50height); + z2r = (28/42w,34/50height); + fill z1l{down}..{z2l-z1l}z2l--z2r--z1r--cycle; +% The portion going towards lower left + z3 = (12.5/42w,20/50height); + cwbar(z2l,z2r,z3,angle(z1r-z2r)); +% The hook + z4 = .33[z3,z2r]; + z5 = (xstem,.5stem_width*sind(stem_slope)); + hookjt(z3,z4,z5,.05h,.5,90); +% The cross through the belly + x6 = xstem; + y6 = (y1r*(x2r-x6) - y2r*(x1r-x6))/(x2r-x1r); + z7 = .13[z2r,z3]; + cwbar (z7,z2r,z6,90); + penlabels(1,2,3,4,5,6,7); + endgroup +enddef; + + + + +def sa_(expr xoff,yoff,w,h) = + begingroup + save x,y,currenttransform; + numeric xstem; xstem = w-rindent; + numeric midxl_sa,midyl_sa,midxr_sa,midyr_sa; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) xscaled(w/xstem) slanted slantval; +% The wavy line + z5l = (5/46w,26/50h); + z5r = (7/46w,27/50h); + z6l = (14.5/46w,15/50h); + z6r = (12/46w,22/50h); + z8r= (xstem,28/50h); + z8l= (x8r,22.5/50h); + x7r = 2/3[x6r,x8r]; y7r = 38.5/50h; + x7l = 2/3[x6l,x8l]; y7l = 31.5/50h; + path pr; pr = z7r{left}..tension2..{left}z6r{left}..tension5..z5r; + path pl; pl = z5l..tension5..{right}z6l{right}..tension2..{right}z7l; + fill pl--pr--cycle; + penstroke z7e{right}..{z8l-z7r}z8e; +% The upper left part + z1l = (3.5/46w,h); penpos1(12.5/46w,0); + z2 = (11/46w,43/50h); + z3l = ((21/46w,0)--(21/46w,h)) intersectionpoint pr; + z3r = ((23/46w,0)--(23/46w,h)) intersectionpoint pr; + fill z1l{down}..{right}z2{right}..{down}z3l--z3r{up}..tension1.2..z1r--cycle; +% Exporting co-ordinates + midxl_sa = (x3l+xoff)*(w/xstem); midyl_sa = y3l+yoff; + midxr_sa = (x3r+xoff)*(w/xstem); midyr_sa = y3r+yoff; + penlabels(1,2,3,4,5,6,7,8); + endgroup +enddef; + +def Ha(expr xoff,yoff,w,h) = + begingroup + save x,y,currenttransform; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric balld,phi; balld = 13/50h; phi=-60; +%% The ball + z1r = (14.5/40w,34/50h); penpos1(.5balld,phi); + fill fullcircle scaled balld shifted z1r; +%% The connector + z2 = (16/40w,h); penpos2(6.5/40w,0); + z3l = (19.5/40w,42/50h); + z3r = (23/40w,42/50h); + z4 = z1r + .5balld * dir(-90); + fill z4{right}..{up}z3r..z2r--z2l..{down}z3l..z1r--cycle; + z5 = (26/40w,37/50h); + z6l = (37/40w,31/50h); + z6r = (34/40w,32.5/50h); + z7l = (19/40w,13.5/50h); + z7r = (16.5/40w,19/50h); + fill z1l..{right}z3l..{down}z6l--z6r{up}..{left}z5..z1r--cycle; +%% The swordlike line at the bottom + z9l = (10.5/40w,13/50h); + z9r = (5/40w,23/50h); + z10 = (46/40w,-ha_dip); + fill z6l{down}..{left}z7l..z9l--z9r..{right}z7r..{up}z6r--cycle; + hookjt(z9l,z9r,z10,.08h,.5,angle(z9r-z9l)); + penlabels(1,2,3,4,5,6,7,9,10); + endgroup +enddef; + +def khiyo(expr xoff,yoff,w,h) = + begingroup + save x,y,currenttransform; + transform currenttransform; + currenttransform = identity shifted (xoff,yoff) slanted slantval; + numeric xstem,balld,thinness,height,theta; + xstem=42/63w; thinness=.45; height = matra_f*h; balld=11/50height; + theta = -60; +% The two balls + z0 = (xstem,height); + z1= (11/63w,34.5/50height); + z2= (24/63w,20/50height); + fill fullcircle scaled balld shifted (z1); + fill fullcircle scaled balld shifted (z2); +% Points on the two circles + z1a = z1 + .5 * balld * dir(0); + z1b = thinness[z1a,z1]; + z1c = z1 + .5balld * dir(90); + z2a = z2 + .5balld * dir(0); + z2b = thinness[z2a,z2]; + z2c = z2 + .5balld * dir(90); +% The line from the matra to the first dot + z6l = (7/63w,matra_h*h); penpos6(6.5/63w,0); + fill z6l..{down}z1b--z1a{up}..z6r--cycle; +% The line between the two dots + fill z1c{right}..{down}z2a--z2b{up}..tension0.8..{left}z1b--cycle; +% The stem + hookstem(z2c,z2a,z0,0,0); +% This part is for the ball at the end of the hook + z3 = (51/63w,23/50height); + fill fullcircle scaled balld shifted z3; +% The hook + z4l = (xstem,34.5/50height); penpos4(.5balld,90); + z5 = (x3,y4); penpos5(.45balld,90);; + z7 = (24/63w,matra_h*h); penpos7(4/63w,0); + z3a = z3 + .5balld * dir(theta); + z3b = thinness[z3a,z3]; + fill z3a{dir (theta+90)}..tension1.4..{left}z5r..z4r{left}..tension0.8..{up}z7r--z7l..{right}z4l..z5l{right}..{dir (theta-90)}z3--cycle; + penlabels (0,1,1a,1b,1c,2,2a,2b,2c,3,3',3a,3b,4,5,6,7); +% definitions to export + numeric ballx, bally; + ballx = x3; bally = y3; + endgroup +enddef; + + + +%%% End of bangdefs.mf diff --git a/language/bengali/bangtex/mf/bangfala.mf b/language/bengali/bangtex/mf/bangfala.mf new file mode 100644 index 0000000000..cf6b2220b4 --- /dev/null +++ b/language/bengali/bangtex/mf/bangfala.mf @@ -0,0 +1,133 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bangfala.mf: METAFONT file that defines various "fala"s that +% typically go below another consonant +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +beginchar(175,0u#,stht#,stdp#); "ref"; + z1l = (4lindent,matra_f*h+.5matra_thickness); + penpos1(1.4stem_width,145); + z2l = (6.5lindent,h); + penpos2(.7stem_width,70); + penstroke z1e--z2e; + penlabels(1,2); +endchar; + +beginchar("R", 0, stht#,stdp#); "ra-fala"; + numeric Ewidth; Ewidth = .06h; + x1 = -rindent; y1=0; + z3 = (-5.5rindent,.2h); + Ebase(z1,z3,Ewidth); + halfstem(x1,y3,y1-.5Ewidth); +endchar; + + +beginchar("Y", 7.3u#, stht#,stdp#); "Ja-fala"; + matra(0,w); + z1 = (14/20w,matra_h*h); penpos1(4/20w,0); + z2l = (8/20w,matra_f*35/50h); + z2r = (13/20w,matra_f*38/50h); + z3l = (11/20w,matra_f*10/50h); penpos3(4.7/20w,0); + z4l = (0,0); z4r = (1.5/20w,-matra_h*2/50h); + pickup penrazor scaled 1.3stem_width rotated 40; + fill z1l..{down}z2l..{down}z3l..tension1.2..z4l--z4r..tension1.2..z3r{up}..{up}z2r..{(w,y1)-z2l}z1r--cycle; + penlabels(1,2,3,4); +endchar; + +beginchar("W",0u#, stht#,stdp#); "Ba-fala, or Wa-fala"; + numeric ww,hh,xstem,xshift; + ww=3rindent; hh=.6h; xstem=ww; xshift = ww+rindent; + ba(-xshift,0,ww,hh); +endchar; + +beginchar(153,6u#, stht#,stdp#); "Ba-fala, or Wa-fala (with matra)"; + numeric ww,hh,xstem,xshift; + ww=2.5rindent; hh=.5h; xstem=ww; xshift = ww+rindent-w; + ba(-xshift,-ha_dip,ww,hh); + matra(0,w); +endchar; + +beginchar("M", 9u#, stht#, stdp#); "Ma-fala"; + numeric xstem,balld; + xstem = w - rindent; balld = .5w; + matra(0,w); + z1 = (lindent,.3h); + x2 = x1 + .5(stem_width - balld); y2 = y1; + z3 = z2 + .5balld * dir(90); + z4 = (xstem,matra_f*h); + halfstem(x1,matra_f*h,y1); + fill fullcircle scaled balld shifted z2; + hookstem(z3,z2,z4,0,0); + penlabels(1,2,3,4); +endchar; + +beginchar("L", 0u#, stht#,stdp#); "la-fala"; + numeric ww,hh; ww=5rindent; hh=.7h; + la_(-ww,-.15h,ww,hh); + halfstem(-rindent,.2h,0); +endchar; + +beginchar(25, 0u#, stht#,stdp#); "murdhanya na-fala"; + numeric ww,hh; ww=3rindent; hh=.5h; + Na_(-4rindent,-.15h,ww,hh); +endchar; + +beginchar(26, 0u#, stht#,stdp#); "na-fala"; + numeric ww,hh; ww = 5rindent; hh = .25h; + na(-ww,0,ww,hh,.7); +endchar; + +beginchar(27, 5u#, stht#, stdp#); "special form for Ma-fala"; + numeric xstem,balld,ww,lshift; lshift = 2rindent; ww = w + lshift; + xstem = ww - rindent; balld = .4ww; + z1 = (lindent,.27h); + x2 = x1 + .5(stem_width - balld); y2 = y1; + z3 = z2 + .5balld * dir(90); + z4 = (xstem,matra_f*h); + fill fullcircle scaled balld shifted z2; + hookstem(z3,z2,z4,0,0); + matra(0,ww); + picture sp_ma_fala; sp_ma_fala = currentpicture; + currentpicture := currentpicture shifted (-lshift,0); + penlabels(1,2,3,4); +endchar; + +beginchar(13,0stwd#, stht#, stdp#); "hass (consonant) sign"; + numeric width; width = stem_width/abs(sind(stem_slope)); + z1r = (-rindent,0); penpos1(.8width,stem_slope); + z2r = (+1.1rindent,-d); penpos2(.5width,-20); + penstroke z1e..z2e; + penlabels(1,2); +endchar; + +%%% End of bangfala.mf
\ No newline at end of file diff --git a/language/bengali/bangtex/mf/banghalf.mf b/language/bengali/bangtex/mf/banghalf.mf new file mode 100644 index 0000000000..285fa1b6cc --- /dev/null +++ b/language/bengali/bangtex/mf/banghalf.mf @@ -0,0 +1,198 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% banghalf.mf: METAFONT file that defines the broken form for +% consonants to be used in conjuncts +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + + +beginchar(160,12u#,stht#,stdp#); "k+"; + numeric hh,hrise; hh=.6h; + hrise = matra_f*h-.75hh; + ka(0,hrise,w-rindent,hh); + matra(0,w); +endchar; + +beginchar(161,8u#,stht#,stdp#); "g+"; + numeric hh,hrise; hh = .75h; hrise = matra_f*(h-hh); + ga_(0,hrise,w+lindent,hh); +endchar; + +beginchar(162,9u#,stht#,stdp#); "unga+"; + numeric ww,hh,hrise; ww=w+lindent; hh=.5h; + hrise = (matra_f+.5matra_t)*h-hh; + unga(0,hrise,ww,hh); +endchar; + +beginchar(163,7u#,stht#,stdp#); "c+"; + numeric ww,hh,hrise; ww = w+lindent; hh=.65h; + hrise = matra_h*(h-hh); + matra(0,w); + ca(0,hrise,ww,hh); +endchar; + +beginchar(164,10u#,stht#,stdp#); "j+"; + numeric hh,hrise; hh=.7h; hrise=matra_f*(h-hh); + ja_(0,hrise,w+lindent,hh); + matra(0,w); +endchar; + +beginchar(165,12u#,stht#,stdp#); "ina+"; + numeric hE,hrise; hE=.5h; hrise = matra_f*(h-hE); + ina(0,hrise,w+lindent,hE); +endchar; + +beginchar(166,12u#,stht#,stdp#); "T+"; + numeric hh,hrise; hh = .9h; hrise = matra_f*(h-hh); + Dha(0,hrise,w,hh); + matra(0,w); + Tiki(.9w,.1w); +endchar; + +beginchar(167,14u#,stht#,stdp#); "D+"; + numeric hrise,hh; hh = .75matra_f*h; hrise = matra_f*h-hh; + Da(0,hrise,w,hh,.88); + matra(0,w); +endchar; + +beginchar(168,6u#,stht#,stdp#); "N+"; + numeric hrise,hh; hh = .7h; hrise = matra_f*(h - hh)-matra_thickness; + Na_(.001w,hrise,w+lindent,hh); +endchar; + +beginchar(169,14u#,stht#,stdp#); "t+"; + numeric hrise,hta; hta = .65h; hrise = matra_f*(h - hta); + ta(.04w,hrise,.9w,matra_f*hta); + matra(0,w); +endchar; + +beginchar(170,8u#,stht#,stdp#); "d+"; + numeric hh,hrise; hh = .7h; hrise = matra_f*(h-hh); + matra(0,w); + da(0,hrise,w+lindent,hh); +endchar; + +beginchar(171,5u#,stht#,stdp#); "n+"; + numeric ww,hh,hrise; ww = w+lindent; hh=.8h; + matra(0,w); + hrise = matra_f*(h-hh); + na_(0,1.5hrise,ww,matra_f*hh); +endchar; + +beginchar(172,10u#,stht#,stdp#); "p+"; + numeric hh,hrise; hh = .8h; hrise = matra_h*(h-hh); + pa_(0,hrise,w+lindent,hh); +endchar; + +beginchar(173,9u#,stht#,stdp#); "b+"; + numeric hh,hrise,ww; + hh = .7h; hrise = matra_f*(h-hh); ww = w - .5stem_width; + ba(0,hrise,ww,hh); + matra(0,w); +endchar; + +beginchar(174,11u#,stht#,stdp#); "m+"; + numeric balld,height; + balld = .35w; height = matra_f*h; + y1 = matra_h*h; x1r = x2l; + penpos1(.3balld,0); + z2l = (16/43w,37/50height); penpos2(.5balld,0); + fill z1l..{down}z2--z2r{up}..z1r--cycle; +% The dot + fill fullcircle scaled balld shifted z2l; +% The part to the right of the dot + pickup pencircle xscaled .5balld yscaled .25balld rotated -50; + top z3 = z2l + .5balld*dir 90; + z4 = (.75[x2l,w],30/50height); + rt z5 = (w+lindent,y3); + top z6 = (w,height); + draw z3{right}..{right}z4..{up}z5..z6; + penlabels(1,2,3,4,5,6); + picture shape_halfma; shape_halfma = currentpicture; + matra(0,w); +endchar; + +beginchar(176,10u#,stht#,stdp#); "l+"; + numeric hh,hrise; hh=.8h; + hrise = matra_f*h-.75hh; + matra(0,w); + la_(0,hrise,w+lindent,hh); +endchar; + +beginchar(177,9u#,stht#,stdp#); "sh+"; + numeric hh,hrise; hh = .8h; hrise = matra_f*(h-hh); + sha_(0,hrise,w+lindent,hh); +endchar; + +beginchar(178,8u#,stht#,stdp#); "Sh+"; + numeric balld; balld = w; + z1 = (w+rindent-.5balld,matra_f*h-.5balld); + golla(z1,balld); + matra(0,w); + pickup pencircle scaled .1w; + lft top z2 = z1 + .5balld * dir (135); + rt bot z3 = z1 + .5balld * dir (-45); + draw z2--z3; + penlabels(1,2,3); +endchar; + +beginchar(179,9u#,stht#,stdp#); "s+"; + numeric ww,hh,hrise; ww = w+lindent; hh=.55h; + hrise = matra_h*h-hh; + sa_(0,hrise,ww,hh); + matra(0,w); +endchar; + +beginchar(154,13u#,stht#,stdp#); "small bha"; + numeric ww,hh,hrise; ww = w; hh=.7h; + hrise = matra_f*(h-hh); + bha(0,hrise,ww,matra_f*hh); + matra(0,w); +endchar; + +beginchar(155,14u#,stht#,stdp#); "small ma"; + numeric hh,hrise; + hh=.85h; hrise = matra_f*(h-hh); + ma_(0,hrise,w,hh); + matra(0,w); +endchar; + +beginchar(156,14u#,stht#,stdp#); "small sa"; + numeric hh,hrise,xstem; + hh=.5h; hrise = matra_h*h-hh; xstem = w - rindent; + sa_(0,hrise,xstem,hh); + matra(0,w); + stem(w-rindent); +endchar; + + +%%% End of banghalf.mf diff --git a/language/bengali/bangtex/mf/bangjuk.mf b/language/bengali/bangtex/mf/bangjuk.mf new file mode 100644 index 0000000000..dee644361a --- /dev/null +++ b/language/bengali/bangtex/mf/bangjuk.mf @@ -0,0 +1,800 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bangjuk.mf: METAFONT file that defines jukto byanjons +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +beginchar(22,16u#, stht#,stdp#); "d+R"; + numeric wda; wda = 14/16w; + da(w-wda,0,wda,h); + z1 = (da_tiplx+w-wda,da_tiply); + z2 = (.05w,.25h); + Ebase(z1,z2,.06h); + matra(0,w); +endchar; + + +beginchar(23,18u#, stht#,stdp#); "p+R"; + numeric xstem,wpa; wpa = 17/18w; xstem = w-rindent; + stem(xstem); + matra(xstem,w); + pa_(w-wpa,0,wpa-rindent,h); + z1 = (xstem+.5stem_width,0); + z2 = (.05w,.3h); + Ebase(z1,z2,.06h); +endchar; + + +beginchar(24,18u#, stht#,stdp#); "sh+R"; + numeric xstem,wsha; wsha=w; xstem = w-rindent; + sha_(w-wsha,0,wsha-rindent,h); + stem(xstem); + matra(xstem,w); + z1 = (xstem+.5stem_width,0); z2 = (.05w,.3h); + Ebase(z1,z2,.06h); + z3r = (0,matra_f*h); penpos3(matra_t*h,90); + z4r = z3r + (w-wsha,0); penpos4(matra_t*h,matra_slope); + penstroke z3e--z4e; +endchar; + +beginchar(180,17u#, stht#,stdp#); "k+k"; + numeric hrise,hh,xstem; + xstem = .75w; hh = .75h; hrise = matra_f*(h-hh); + ka(0,hrise,xstem,hh); + ba_remove(0,0,xstem-rindent,hh); + ka(0,0,xstem,hh); + ka(0,0,xstem,hh); + ka(0,0,xstem,hh); + matra(0,w); +endchar; + +beginchar(181,16u#, stht#,stdp#); "k+t"; + numeric hka,wka,rise_ka,hta,wta,rise_ta; + hka = .65h; rise_ka = matra_f*(h - hka); wka = .7w; + hta = .65matra_f*h; wta = .9w; rise_ta = -.035h; + ka(.05w,rise_ka,wka,hka); + ta(-.04w,rise_ta,wta,hta); + unfill (0,0)--(0,top_ta)--(w,top_ta)--(w,0)--cycle; + unfill (0,0)--(0,top_ta)--(w,top_ta)--(w,0)--cycle; + ta(-.04w,rise_ta,wta,hta); + ta(-.04w,rise_ta,wta,hta); + matra(0,w); +endchar; + +beginchar(182,14u#, stht#,stdp#); "k+t+r"; + numeric hka,wka,hrise; + hka = .55h; hrise = matra_f*(h - hka); wka = .75w; + ka(0,hrise,wka,hka); + E(.04w,-.02h,.9w,.6h); + matra(0,w); +endchar; + +beginchar(183,19u#, stht#,stdp#); "k+n"; + numeric xstem,hh,hrise,nashift; + xstem = 14/19w; hh = .9h; hrise = matra_f*(h-hh); + z1 = (xstem-rindent+.5stem_width,0); + nashift = 0.2x1; + ka(0,hrise,xstem,hh); + na(nashift,0,xstem-nashift,.3h,1); + matra(0,w); +endchar; + +beginchar(184,19u#, stht#,stdp#); "k+r"; + numeric xstem,hh,hrise; + xstem = 14/19w; hh = h; hrise = matra_f*(h-hh); + z1 = (xstem-rindent+.5stem_width,0); z2 = (.02w,.23h); + ka(0,hrise,xstem,hh); + Ebase(z1,z2,.06h); + matra(0,w); + stem(x1-.5stem_width); +endchar; + +beginchar(185,19u#, stht#,stdp#); "k+l"; + numeric xstem,hh,hrise; + xstem = 14/19w; hh = .86h; hrise = matra_f*(h-hh); + z1 = (xstem-rindent,0); + ka(0,hrise,xstem,hh); + la_(-.03w,-.18h,x1+.5stem_width,.7h); + matra(0,w); + stem(x1); +endchar; + +beginchar(186,17u#, stht#,stdp#); "k+w"; + numeric hrise,hh,xstem; + xstem = 13/17w; hh = .75h; hrise = matra_f*(h-hh); + ka(0,hrise,xstem,hh); + ba_remove(0,0,xstem-rindent,hh); + ba(0,0,xstem-rindent,hh); + ba(0,0,xstem-rindent,hh); + ba(0,0,xstem-rindent,hh); + matra(0,w); +endchar; + +beginchar(187,18u#, stht#,stdp#); "k+s"; + numeric xstem; + xstem = w-rindent; + matra(0,w); + stem(xstem); +% The wavy line + sa_(0,-.15h,xstem,.75matra_f*h); + z11l = (midxl_sa,midyl_sa); + z11r = (midxr_sa,midyr_sa); + unfill z11l--z11r--(x11r,(matra_f-matra_t)*h)--(0,(matra_f-matra_t)*h)--(0,y11l)--cycle; + numeric ww,hh,hrise; + ww=x11l+rindent; hh=h-y11r; hrise = matra_f*(h-hh); + ka(0,hrise,ww,hh); + ka(0,hrise,ww,hh); + penlabels(11); +endchar; + +beginchar(189,27u#,stht#,stdp#); "khiyo + m"; + numeric ww,th; ww = 22/27w; th = 60; + khiyo(0,0,ww,h); + matra(0,w); + z11l = (ballx,bally); penpos11(.5balld,th); + z12 = (w-rindent,matra_h*h); + hookstem(z11r,z11l,z12,th-70,th-90); + penlabels(11,12); +endchar; + + +beginchar(190,13u#,stht#,stdp#); "g + g"; + numeric xstem,ww,hh,hrise; + xstem = ww = w-rindent; hh = .67h; hrise = matra_h*(h-hh); + matra(xstem,w); + stem(xstem); + ga_(0,hrise,ww,hh); + ga_(0,-.1h,ww,hh); +endchar; + +beginchar(192,14u#,stht#,stdp#); "ch + r"; + numeric hh,hrise; hh=.8h; + hrise = matra_f*(h-hh); + cha(0,hrise,w,hh); + matra(0,w); + z1 = (w-rindent,0); z2 = (0,.2h); + Ebase(z1,z2,.06h); + halfstem(x1,0,.18h); +endchar; + +beginchar(193,13u#,stht#,stdp#); "ch + W"; + numeric hh,hrise,hb,wb,shxb; + hh=.7h; hrise = matra_f*(h-hh); + hb = .4h; wb = .5w; shxb = .15w; + cha(0,hrise,w,hh); + matra(0,w); + ba(shxb,0,wb,hb); +endchar; + +beginchar(194,24u#, stht#,stdp#); "j+j"; + numeric hrise,hha,hhb,ww,width,xshift,yshift; + ww = .7w; hha = .6h; hrise = matra_h*(h-hha); width = .18ww; + xshift = .31w; hhb = .8h; yshift = matra_f*(h-hhb); + ja_bare(0,hrise,7/8*37/56ww,hha); + z1'l = (topl_ja,matra_h*h); + z1'r = (topr_ja,matra_h*h); + ja_full(xshift,0,ww,hhb); + z2'l = (topl_ja+xshift,matra_h*hhb); + z2'r = (topr_ja+xshift,matra_h*hhb); + matra(0,w); + penstroke z1'e..tension1.2..{right}z2'e; + penlabels(1',2'); +endchar; + +beginchar(195,24u#, stht#,stdp#); "j+j+W"; + numeric hrise,hha,hhb,ww,width,xshift,yshift; + ww = .7w; hha = .6h; hrise = matra_f*(h-hha); width = .18ww; + xshift = .25w; hhb = .8h; yshift = matra_f*(h-hhb); + ja_bare(0,hrise,7/8*37/56ww,hha); + ja_full(xshift,yshift,ww,3/4hhb); + matra(0,w); + z11r = (.5ww,matra_f*h-.5matra_thickness); penpos11(.5width,0); + z12 = z11 + (xshift,-yshift); penpos12(width,0); + z13 = .5[z11,z12] + (0,-.04h); penpos13(.8width,0); + penstroke z11e..z13e..z12e; + ba_(.45w,0,.35w,.35h); + halfstem(.8w,.3h,0); + penlabels(11,12,13); +endchar; + +beginchar(196,20u#, stht#,stdp#); "j+ina"; + numeric ww; ww = 37/56w; + ja_bare(0,0,ww,h); + matra(0,w); + z11l = (topl_ja,matra_h*h); + z11r = (topr_ja,matra_h*h); + z12r = (midlx_ja,midly_ja); + z12l = (midrx_ja,midry_ja); z12 = .5[z12l,z12r]; + penstroke z11e..z12e; + clover(z12,w-ww,.23h,.08h); + penlabels(11,12,13); +endchar; + +beginchar(197,18u#, stht#,stdp#); "j+r"; + numeric width,hrise,hh,ww; + hh = .84h; hrise = matra_f*(h-hh); width = .18w; + ja_bare(0,hrise,37/56w,hh); + matra(0,w); + z7r = (.5w,matra_f*h-.5matra_thickness); penpos7(.5width,0); + z8 = (.68w,.54hh+hrise); penpos8(.5width,90); + z9 = (.84w,.54hh+hrise); penpos9(.7width,80); + penstroke z7e..z8e..z9e; + z10= (.79w,.18h); penpos10(.5length(z9l-z9r),-45); + z11= (.84w,0);penpos11(.5length(z9l-z9r),-30); + x12r = .96w; y12r = y9l; + z12l = z9r; + penstroke z12e..z10e{down}..z11e; + z13 = (.03w,.22h); + Ebase(z11,z13,.07h); + penlabels(7,8,9,10,11,12,13); +endchar; + +beginchar(198,18u#, stht#,stdp#); "j+W"; + numeric width,hrise,hj,hb,wb,ofxb; + hj = .8h; hrise = matra_f*(h-hj); width = .18w; + hb = .5h; wb = .4w; ofxb = x10-wb; + ja_bare(0,hrise,37/56w,hj); + matra(0,w); + z7r = (.5w,matra_f*h-.5matra_thickness); penpos7(.5width,0); + z8 = (.68w,.54hj+hrise); penpos8(.5width,90); + z9 = (.84w,.54hj+hrise); penpos9(.7width,80); + penstroke z7e..z8e..z9e; + z10= (w-1.3rindent,matra_f*hb); penpos10(stem_width,0); + x11r = .96w; y11r = y9l; + z11l = z9r; + penstroke z11e..z10e{down}; + ba(x10-wb,0,wb,hb); + penlabels(7,8,9,10,11); +endchar; + +beginchar(199,17u#, stht#,stdp#); "ina+ca"; + numeric hrise,hh,xstem,ww,clovh; + xstem = .35w; hh = .4h; hrise = matra_f*(h-hh); ww = w-xstem; + clovh = .18h; + Estem(lindent,hrise,xstem,hh); + ca(xstem,0,ww,matra_f*h); + z11 = (xstem+lindent,matra_f*h-clovh); + clover(z11,.6ww,clovh,.13hh); + penlabels(11); +endchar; + +beginchar(200,16u#, stht#,stdp#); "ina+cha"; + numeric hrise,hh,xstem,ww,clovh; + xstem = .3w; hh = .4h; hrise = matra_f*(h-hh); ww = w-xstem; + clovh = .2h; + Estem(lindent,hrise,xstem,hh); + cha(xstem,0,ww,matra_f*(h-hh)/matra_h); + z11 = (xstem+lindent,matra_f*h-clovh); + clover(z11,.6ww,clovh,.12hh); + penlabels(11); +endchar; + +beginchar(201,18u#, stht#,stdp#); "ina+ja"; + numeric hrise,hh,hja,xshift,clovh; + xshift = .1w; clovh = .18h; + hh = .35h; hrise = matra_f*(h-hh); + hja = hrise/matra_h; wina = xstem-xshift; +% The ja at the bottom + ja_full(0,0,w,hja); +% The E-like stem at the top + numeric xstem,wina; + xstem = .5[topl_ja,topr_ja]; + wina = xstem - xshift; + Estem(xshift,hrise,wina,hh); +% The clover + z11 = (xstem,matra_f*h-.5hh); + clover(z11,.65(w-xstem),clovh,.12hh); + penlabels(11); +endchar; + +beginchar(202,16u#, stht#,stdp#); "ina+jha"; +% I decided not to use a separate form for this. +endchar; + +beginchar(203,12u#, stht#,stdp#); "Ta+Ta"; + numeric hh,hrise; hh = .9h; hrise = matra_f*(h-hh); + Dha(0,hrise,w,hh); + matra(0,w); + Tiki(.9w,.1w); + z11 = (.65w,.3h); + z12 = (.4w,0); + z13 = (.05w,.1h); + pickup pencircle xscaled stem_width yscaled .6stem_width rotated 120; + draw z11..z12..z13; + penlabels(11,12,13); +endchar; + +beginchar(204,20u#, stht#,stdp#); "Na+Ta"; + numeric wNa,wTa,hh,hrise; + wNa=9/20w; hh = .7h; hrise = matra_f*(h-hh); wTa = 13/20w; + Dha(wNa-lindent,0,wTa,h); + Na_(0,hrise,wNa,hh); + pickup penrazor scaled matra_thickness rotated matra_slope; + draw (wNa-.5stem_width,matra_f*h)..(w,matra_f*h); + Tiki(.9w,.3w); +endchar; + +beginchar(205,15u#, stht#,stdp#); "Na+Tha"; + numeric ww,hh,hrise; ww=.65w; hh = .7h; hrise = matra_f*(h-hh); + currentpicture := currentpicture + shape_Tha; + currentpicture := currentpicture shifted (.1w,0); + Na_(0,hrise,ww,hh); + pickup penrazor scaled matra_thickness rotated matra_slope; + draw (ww,matra_f*h)..(w,matra_f*h); +endchar; + +beginchar(206,18u#, stht#,stdp#); "N+D"; + numeric hh,hrise; + hh = .65h; hrise = matra_f*(h-hh); + Da(0,0,w,matra_f*h,.6); + Na_(0,hrise,.5w,hh); + matra(.5w,w); +endchar; + +beginchar(207,17u#, stht#,stdp#); "N+D+R"; + numeric wDa,hDa,hNa,Darise,Narise; + hNa = .65h; wDa = w; hDa = .9h; + Narise = matra_f*(h-hNa); Darise = matra_f*(h-hDa); + numeric Ewidth; Ewidth = .05h; + Da(w-wDa,Darise,wDa,matra_f*hDa,.6); + Na_(0,Narise,.5w,hNa); + x1 = w-rindent; y1=0; + z3 = (.05w,.15h); + Ebase(z1,z3,Ewidth); + halfstem(x1,.28h,y1-.5Ewidth); + matra(.5wDa,w); +endchar; + +beginchar(208,13u#, stht#,stdp#); "N+N"; + numeric ww,hh,hrise; ww = w-rindent; hh=.8h; hrise = matra_f*(h-hh); + matra(ww,w); + stem(ww); + Na_(0,hrise,ww,hh); + Na_(0,-.18h,ww,hh); +endchar; + +beginchar(209,17u#, stht#,stdp#); "t+t"; + O(0,0,w,h); + matra(0,w); +endchar; + +beginchar(210,14u#, stht#,stdp#); "t+t+W"; + numeric hh,hrise,wba,hba,shiftba; + hh = .6h; hrise = (matra_h-matra_t)*(h-hh); + wba = .5w; hba = .48h; shiftba = .2w; + O(0,hrise,w,hh); + ba(shiftba,0,wba,hba); + matra(0,w); +endchar; + +beginchar(211,15u#, stht#,stdp#); "t+th"; + numeric xstem,balld,phi,height; + balld = .18h; phi=65; xstem=w-rindent; height = matra_f*h; + z1 = (.17w,.56h); + fill fullcircle scaled balld shifted (z1); + z2l = z1 + .5balld * dir (-179); z2r = z1; + z3l = (.05w,.63h); + z3r = (.1w,.6h); + z4l = (.28w,matra_h*h); penpos4(.08h,-90); + z6l = (.56w,y4l); penpos6(length(z4r-z4l),-90); + y5l = y4l-.5balld; x5l = .5[x4l,x6l]; penpos5(.09h,-90); + penstroke z2e{up}..{right}z4e..{dir -phi}z5e; +% + z7r = (.64w,.52h); penpos7(.08w,180); + z8r = (5/42w,27/50height); + z8l = (8.5/42w,20/50height); + penstroke z5e{dir phi}..z6e{right}..z7e..{left}z8e; + z9 = (xstem,height); + hookstem(z8r,z8l,z9,0,0); + matra(xstem,w); + penlabels(1,2,3,4,5,6,7,8,9,10); +endchar; + +beginchar(212,15u#, stht#,stdp#); "t+n"; + numeric xstem,xshift,hh,hrise,nafrac; + xstem = w-rindent; xshift = .15w; hh = .7h; hrise = matra_f*(h-hh); + nafrac = .42; + matra(0,w); + ta(.05w,hrise,.9w,matra_f*hh); + na(xshift,0,.9w-xshift,nafrac*h,.35/nafrac); +endchar; + +beginchar(213,17.5u#, stht#,stdp#); "t+r"; + E(0,0,w,.94h); + matra(0,w); +endchar; + +beginchar(214,16u#, stht#,stdp#); "d+d"; + numeric wbar; +%% Initial definitions + z1 = (lindent,matra_f*h); penpos1(stem_width,0); + z2l = (x1l,.43h); + z2r = (x1r,.35h); + wbar = length(z2r-z2l); +%% The first diagonal line + z3l = (.5w,.65h); z3l-z3r=z2l-z2r; z3 = .5[z3l,z3r]; + penstroke z2e..z3e; +%% The first hanging line + x4 = .1[x3l,x2l]; y4 = .5y2l; + penpos4(.4wbar,angle(z3l-z2l)); + penstroke z3e..{down}z4e; + currentpicture := currentpicture + currentpicture shifted (z4l-z2l - ((y2l/h)*slantval*w,0)); +%% The vertical bar at the left + penstroke z1e..z2e; + matra(0,w); + penlabels(1,2,3,4,5); +endchar; + +beginchar(215,12u#, stht#,stdp#); "d+bh"; + numeric hh,hrise; hh = .65h; hrise = matra_f*(h-hh); + da(0,hrise,w,hh); + bha(0,-.1hh,w,matra_f*hh); + matra(0,w); +endchar; + +beginchar(216,12u#, stht#,stdp#); "d+W"; + matra(0,w); +%% The vertical bar at the left + z1 = (lindent,matra_f*h); penpos1(stem_width,0); + z2l = (x1l,.4h); + z2r = (x1r,.32h); + penstroke z1e..z2e; +%% The diagonal line + y3r = .52h; + y3l-y3r=y2l-y2r; + x3r-x3l=stem_width; + z3 = .5[z3l,z3r]; + x3 = w - rindent; + penstroke z2e{z3-z2r}..z3e; +%% The "ba" + ba(x2l,0,w-rindent-lindent,.55h); +% Connecting the ba-part and the da-part + z4l = (ba_topxl,ba_topy); + z4r = (ba_topxr,ba_topy); + penstroke z3e..{down}z4e; + penlabels(1,2,3,4,5); +endchar; + +beginchar(217,14u#, stht#,stdp#); "dh+W"; + numeric hh,ba_shift; hh = .7h; ba_shift = 2/14w; + currentpicture := currentpicture + shape_dha; + ba_remove(ba_shift,0,w-rindent-ba_shift,hh); + ba(ba_shift,0,w-rindent-ba_shift,hh); + ba(ba_shift,0,w-rindent-ba_shift,hh); + ba(ba_shift,0,w-rindent-ba_shift,hh); +endchar; + +beginchar(218,15u#, stht#,stdp#); "n+t"; + numeric xstem,xshift,hh,hrise,fracrise,wna; + xstem = w-rindent; xshift = .1w; hh = .5h; hrise = .3h; + fracrise = (matra_f*h-hh)/hrise; wna = .8w; + matra(0,w); + na(xshift,hrise,wna-xshift,hh,fracrise); + ta(.1w,-.03h,xstem,.7matra_f*h); +endchar; + +beginchar(219,13u#, stht#,stdp#); "n+t+r"; + numeric xshift,hna,hrise,stem_frac; + xshift = .06w; hna = .6h; + hrise = matra_f*h-(hna*stem_frac); stem_frac = .8; + matra(0,w); + na(xshift,hrise,w-xshift,hna,stem_frac); + E(0,0,w,.6h); +endchar; + +beginchar(220,13u#, stht#,stdp#); "n+t+W"; + numeric hh,hrise,xstem,xshift,bashift; + hh = .8h; hrise = matra_f*(h-hh); xstem = w-rindent; xshift = .06w; + bashift = .3w; + matra(0,w); + na(xshift,.25hh+hrise,w-xshift,.6hh,.8); + ta(0,hrise,xstem+.1w,.5hh); + ba(.7bashift,-.05h,xstem-bashift,.4h); +endchar; + +beginchar(221,21u#, stht#,stdp#); "n+d"; + numeric wna,hna,hrise; + wna=1/3w; hna = 33/50matra_f*h; + hrise = matra_f*h-hna; + matra(0,w); + na(0,hrise,wna+lindent+rindent,hna,1); + da(wna,0,w-wna,h); + matra(0,w); + picture shape_nd; shape_nd = currentpicture; +endchar; + +beginchar(222,21u#, stht#,stdp#); "n+d+R"; + currentpicture := currentpicture + shape_nd; + z1 = (w-rindent+.5stem_width,0); z2 = (.04w,.3h); + Ebase(z1,z2,.06h); +endchar; + + +beginchar(223,14.5u#, stht#,stdp#); "n+n"; + numeric xstem,ww,hh; xstem = ww = w-rindent; hh=.6h; + matra(0,w); + na(0,0,w,hh,.8); + na(0,.25h,w,hh,.8); +endchar; + +beginchar(224,13u#, stht#,stdp#); "n+W"; + numeric xstem,ww,hh,hrise,bashift; + xstem = ww = w-rindent; hh=.5h; hrise = matra_f*h-hh; bashift = .15w; + matra(0,w); + na(0,hrise,w,hh,1); + ba(bashift,0,ww-bashift,.6h); +endchar; + +beginchar(225,14u#, stht#,stdp#); "p+t"; + numeric hrise,hh,xstem,xshift; xstem = w-rindent; xshift = .08xstem; + hh = .68h; hrise = matra_f*(h-hh); + pa_(xshift,hrise,xstem-xshift,hh); + ta(.09w,-.03h,.9w,.49h); + halfstem(xstem,matra_f*h,.33h); + matra(xstem,w); +endchar; + +beginchar(226,14u#, stht#,stdp#); "p+p"; + numeric ww,hh,hrise; ww=w-rindent; hh=.7h; + hrise = matra_f*(h-hh); + pa_(0,hrise,ww,hh); + pa_(0,-.08h,ww,hh); + matra(ww,w); + stem(ww); +endchar; + +beginchar(227,18.5u#, stht#,stdp#); "ph+r"; + numeric wpha; wpha = 28/37w; + currentpicture := currentpicture + shape_pha; + z1 = (wpha-rindent+.5stem_width,0); + z2 = (0,.2h); + Ebase(z1,z2,.06h); +endchar; + +beginchar(228,18.5u#, stht#,stdp#); "ph+l"; + numeric wpha; wpha = 28/37w; + currentpicture := currentpicture + shape_pha; + z1 = (wpha-rindent,0); + z2 = (0,.2h); + la_(0,-.2h,wpha-rindent,.6h); +endchar; + +beginchar(229,20u#, stht#,stdp#); "b+j"; + numeric ww, hh, hrise; ww = .4w; hh = .54h; hrise = matra_f*(h-hh); + ja_full(0,0,w,h); + ba_remove(0,hrise,ww,hh); + ba(0,hrise,ww,hh); + ba(0,hrise,ww,hh); + ba(0,hrise,ww,hh); + matra(0,w); +endchar; + + + +beginchar(230,14u#, stht#,stdp#); "b+b"; + numeric xstem,hh,hrise; + xstem = w - rindent; hh = .75h; hrise = matra_f*(h-hh); + ba(0,hrise,xstem,hh); + ba_remove(0,0,xstem,hh); + ba(0,0,xstem,hh); + ba(0,0,xstem,hh); + ba(0,0,xstem,hh); + matra(0,w); +endchar; + +beginchar(231,17.5u#, stht#,stdp#); "bh+r"; + numeric balld,height; + balld = .25w; height=matra_f*h; +% The circle + z4 = (w-rindent,25/50height); penpos4(stem_width,0); + x1r = .5x4; y1r = 34/50height; penpos1(.5balld,60); + fill fullcircle scaled balld shifted (z1r); +% The connector between the circle and the stem + z2l = (.7x4,26/50height); z2r = (32/54w,31/50height); + x3r = 42/54w; y3r = 39.5/50height; penpos3(stem_width,100); + penstroke z1e..z2e..z3e; + fill z3r{right}..{down}z4r--z4l{up}..z3l--cycle; +% The wavy line + z5 = (.51w,.18h); penpos5(6/50height,90); + z6 = (.27w,.21h); penpos6(6/50height,90); + z7 = (4/48w,24/50height); penpos7(3/50height,0); + z8 = (6.5/48w,33/50height); penpos8(2/50height,-30); + penstroke z5e{left}..z6e..z7e..tension1.2..z8e; + hookstem(z5r,z5l,z4,0,0); + penlabels(1,2,3,4,5,6,7,8); + matra(0,w); +endchar; + +beginchar(232,13u#, stht#,stdp#); "m+b"; + numeric xstem,hh,hrise,bashift; + xstem = w - rindent; hh = .65h; hrise = matra_f*(h-hh); bashift = .1w; + ba(bashift,0,xstem-bashift,hh); + ma_(0,hrise,xstem+rindent,hh); + matra(0,w); +endchar; + +beginchar(233,16u#, stht#,stdp#); "m+bh"; + numeric hh; hh = .52h; + bha(0,0,w,hh); + currentpicture := currentpicture + shape_halfma shifted (.08w,0); + matra(0,w); +endchar; + +beginchar(234,17u#, stht#,stdp#); "l+l"; + numeric hh,xstem; + xstem = w-rindent; hh = .85h; + la_(0,.15h,xstem,hh); + la_(0,-.2h,xstem,hh); + stem(xstem); + matra(0,w); +endchar; + +beginchar(235,20u#, stht#,stdp#); "Sh+T"; + numeric hh,hrise,Tashift; + hh = .75h; hrise = matra_f*(h-hh); Tashift = .4w; + Sha_(0,hrise,Tashift+lindent-.5stem_width,hh); + Dha(Tashift,0,w-Tashift,h); + matra(0,w); + Tiki(.9w,Tashift); +endchar; + +beginchar(236,15u#, stht#,stdp#); "Sh+Th"; + numeric hh,hrise; + hh = .65h; hrise = matra_f*(h-hh); + Sha_(0,hrise,.55w,hh); + currentpicture := currentpicture + shape_Tha shifted (.08w,0); + matra(0,w); +endchar; + +beginchar(237,22u#, stht#,stdp#); "Sh+N"; + numeric wSha; wSha = 15/22w; + currentpicture := currentpicture + shape_Sha; + matra(0,wSha-rindent+.5stem_width); + z1 = (wSha-rindent+.25stem_width,.5h); + clover(z1,w-wSha,matra_f*h-y1,.08h); +endchar; + +beginchar(238,16u#, stht#,stdp#); "s+k"; + numeric hrise,hh,xstem,xshift; + xstem = w-2rindent; hh = .5h; hrise = matra_h*h-hh; xshift=.2w; + halfstem(xstem,matra_f*h,.35h); + sa_(0,hrise,xstem,hh); + ka(xshift,0,xstem+2rindent-xshift,.65h); + matra(0,w); +endchar; + +beginchar(239,15u#, stht#,stdp#); "s+t"; + numeric hrise,hh,xstem,xshift; + xstem = w-rindent; hh = .45h; hrise = matra_h*h-hh; + xshift=0w; + halfstem(xstem,matra_f*h,.33h); + sa_(xshift,hrise,xstem-xshift,hh); + ta(.09w,-.03h,.9w,.65matra_f*h); + matra(0,w); +endchar; + +beginchar(240,14u#, stht#,stdp#); "s+t+r"; + numeric hrise,hh,xstem,xshift; + xstem = w-rindent; hh = .45h; hrise = matra_h*h-hh; xshift=-.04w; + halfstem(xstem,matra_f*h,.33h); + sa_(xshift,hrise,xstem-xshift,hh); + E(0,0,w,.6h); + matra(0,w); +endchar; + +beginchar(241,14u#, stht#,stdp#); "H+N"; + numeric ww,shiftNa,hHa,hrise; + ww = .6w; shiftNa = .1w; hHa = .85h; hrise = matra_f*(h-hHa); + Na_(shiftNa,-.22h,ww,.6h); + Ha(0,hrise,w,matra_f*hHa); + halfstem(ww+shiftNa,.25h,-ha_dip); + matra(0,w); +endchar; + +beginchar(242,21u#, stht#,stdp#); "H+n"; + numeric ww,hh; + ww = .4w; hh = .7h; + na_(-.0w,.2h,ww,hh); + currentpicture := currentpicture reflectedabout ((w/2,0),(w/2,h)) shifted (1.2w*slantval,0); + Ha(0,0,14.5/21w,matra_f*h); + matra(0,w); +endchar; + +beginchar(243,22u#, stht#,stdp#); "H+m"; + numeric xstem,balld,thinness,height,theta; + xstem=42/63w; thinness=.45; height = matra_f*h; balld=11/50height; + theta = -60; + matra(0,w); +% The two balls + z0 = (xstem,height); + z1= (11/63w,34.5/50height); + z2= (24/63w,20/50height); + fill fullcircle scaled balld shifted (z1); + fill fullcircle scaled balld shifted (z2); +% Points on the two circles + z1a = z1 + .5 * balld * dir(0); + z1b = thinness[z1a,z1]; + z1c = z1 + .5balld * dir(90); + z2a = z2 + .5balld * dir(0); + z2b = thinness[z2a,z2]; + z2c = z2 + .5balld * dir(90); +% The line from the matra to the first dot + z6l = (7/63w,matra_h*h); penpos6(6.5/63w,0); + fill z6l..{down}z1b--z1a{up}..z6r--cycle; +% The line between the two dots + fill z1c{right}..{down}z2a--z2b{up}..tension0.8..{left}z1b--cycle; +% The stem + hookstem(z2c,z2a,z0,0,0); +% This part is for the ball at the end of the hook + z3r = (w-rindent,0); + x3l = x5l; + y3l = stem_width/sind(stem_slope); +% The hook + z4l = (xstem,34.5/50height); penpos4(.5balld,90); + z5r = (w-rindent,.9[y3l,y4l]); penpos5(stem_width,0); + z7 = (24/63w,matra_h*h); penpos7(4/63w,0); + penstroke z3e{up}..{up}z5e..z4e{left}; + fill z4l--z1a--z1c--z4r--cycle; + penlabels (0,1,1a,1b,1c,2,2a,2b,2c,3,4,5,6,7); +endchar; + +beginchar(244,14u#, stht#,stdp#); "H+r"; + numeric hHa,hrise; + hHa = .85h; hrise = matra_f*(h-hHa); + Ha(0,hrise,w,matra_f*hHa); + z1 = (w-rindent,0); z2 = (.02w,.23h); + Ebase(z1,z2,.06h); + halfstem(x1-.5stem_width,.2h,0); + matra(0,w); +endchar; + +beginchar(245,14u#, stht#,stdp#); "H+l"; + numeric ww,hh,hHa,hrise,lashift; + ww = w-rindent; hh = .6h; hHa = .85h; hrise = matra_f*(h-hHa); + lashift = -.07w; + la_(lashift,-.18h,ww-lashift,hh); + Ha(0,hrise,w,matra_f*hHa); + halfstem(ww,.2h,-ha_dip); + matra(0,w); +endchar; + +beginchar(246,14u#, stht#,stdp#); "H+W"; + numeric hrise,hHa; + hHa = .85h; hrise = matra_f*(h-hHa); + matra(0,w); + Ha(0,hrise,w,matra_f*hHa); + ba(.13w,0,.5w,.42h); +endchar; + + +%%% End of bangjuk.mf + diff --git a/language/bengali/bangtex/mf/bangkaar.mf b/language/bengali/bangtex/mf/bangkaar.mf new file mode 100644 index 0000000000..b890e9fc7f --- /dev/null +++ b/language/bengali/bangtex/mf/bangkaar.mf @@ -0,0 +1,146 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bangkaar.mf: METAFONT file that defines the Bangla conjunct vowels +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + + +beginchar("a",7u#, stht#,stdp#); "A-kar"; + numeric xstem; xstem=.45w; + matra(0,w); + stem(xstem); +endchar; + + +beginchar("i",7u#, stht#, stdp#); "hraswa i-kar"; + numeric xstem,height; xstem = .5w; height = matra_f*h; + matra(0,w); + stem(xstem); + pickup pencircle xscaled 0.2pt yscaled 0.6pt rotated 45; + z1 = (xstem,matra_h*h); + bot z6 = (25/20w,70/50*matra_f*h); + lft x5 = 0; y5=.3[y1,y6]; + z7 = (53/20w,57/50height); + draw z1..tension1.5..z5..{right}z6..tension1.2..z7; + penlabels(1,2,3,4,5,6,7); +endchar; + +beginchar(140, 6u#,stht#,stdp#); "dirgha i-kar"; + numeric xstem,height; xstem = w-rindent; height = matra_f*h; + matra(-rindent,w); + stem(xstem); + pickup pencircle xscaled 0.2pt yscaled 0.6pt rotated 45; + z3 = (xstem,matra_h*h); + z5 = (-20/17w,73/50height); + z6 = (-33/17w,65/50height); + z7 = (-21/17w,59/50height); + lft z8 = (-rindent,matra_h*h); + draw z3{up}..{left}z5{left}..{down}z6{down}..z7{right}..{dir -120}z8; + penlabels(1,2,3,4,5,6,7,8); +endchar; + +beginchar("u",0stwd#,stht#,stdp#); "hraswa-u-kar"; + numeric width; width = stem_width/abs(sind(stem_slope)); + z1l = (-rindent-.5stem_width,stem_width*sind(stem_slope)); + z1r = (-rindent+.5stem_width,0); + z2r = (-rindent,-.25d); penpos2(.5width,0); + z3 = (-2rindent,-.6d); penpos3(.5width,-90); + z4 = (-3rindent,-.3d); penpos4(.5width,180); + z5 = (-2.2rindent,0); penpos5(.8width,90); + z6 = (+1.1rindent,-d); penpos6(.5width,0); + fill z1r{down}..{left}z3r..z4r..{right}z5r{right}..z2r..tension 2..z6r--z6l--z2l..{up}z1l--cycle; + unfill z3l..z4l..{right}z5l..{dir -30}z2l{dir -130}..cycle; + penlabels(1,2,3,4,5,6); +endchar; + +beginchar(142,0stwd#,stht#,stdp#); "dirgha-u-kar"; + numeric width; width = stem_width/abs(sind(stem_slope)); + z1r = (-rindent-.5stem_width,stem_width*sind(stem_slope)); + z1l = (-rindent+.5stem_width,0); + z2r = (0,-.25d); penpos2(.5width,0); + z3 = (-1.5rindent,-.6d); penpos3(.6width,-90); + z4 = (-2.7rindent,-.3d); penpos4(.6width,180); + z5 = (-2.2rindent,0); penpos5(.5width,90); + z6 = (+1.5rindent,-d); penpos6(.5width,0); + fill z1r..z5r..z4r..z3r..z2r--z2l..z3l..z4l..z5l..{right}z1l--cycle; + penstroke z2e--z6e; + penlabels(1,2,3,4,5,6); +endchar; + +beginchar(144,0stwd#,stht#,stdp#); "ri-kar"; +z1 = (w-0.9pt,0); z2 = (w-2.1pt,-1/3d); z3 = (w,-d); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1--z2--z3; +endchar; + +beginchar(146,8u#,stht#,stdp#); "ae-kar"; + numeric balld; balld = 1.5dot_diam; + z1 = (w-.5balld,.5balld); + fill fullcircle scaled balld shifted z1; + z3l = (.5w,matra_f*h-.5matra_thickness); z3r = (w,y3l); + z4l = (.15w,.5matra_f*h); z4r = z4l + (.15w,0); + z5l = (x1,0); z5r = z1; + penstroke z3e..{down}z4e..{right}z5e; + picture shape_ekar; shape_ekar = currentpicture; + matra(0,w); + z9 = (0,.4h); z10 = (.8w,y9); + pickup penrazor xscaled 1.5stem_width rotated 90; + draw z9--z10; + matra(0,w); + penlabels (1,3,4,5,9,10); +endchar; + +beginchar("e",8u#,stht#,stdp#); "e-kar"; + currentpicture := shape_ekar; + matra(0,w); +endchar; + +beginchar(148,8u#,stht#,stdp#); "oi-kar"; + currentpicture := shape_ekar; + Tiki(.9w,0); + matra(0,w); +endchar; + + +beginchar("o",0,stht#,stdp#); "o-kar"; +endchar; + +beginchar(150,6u#,stht#,stdp#); "ou-kar"; + numeric xstem; xstem=.5w; + Tiki(xstem,-3rindent); + matra(0,w); + stem(xstem); +endchar; + + +%%% End of bangkaar.mf + diff --git a/language/bengali/bangtex/mf/banglig.mf b/language/bengali/bangtex/mf/banglig.mf new file mode 100644 index 0000000000..9b621c68bc --- /dev/null +++ b/language/bengali/bangtex/mf/banglig.mf @@ -0,0 +1,183 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% banglig.mf: METAFONT file defining ligature tables for Bangla +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +%% double dNNarhi +ligtable ".": "." =: 14; + +%% dot dot dot +ligtable 14 : "." =: 15; + +%% peT-kaTa "e" +ligtable "a": "a" =: 146; +ligtable "A": "A" =: 147; + +%% bha +ligtable "b": "h" =: "v", "/" =: 173; + +%% cha +ligtable "c": "h" =: "q", "/" =: 163; + +%% dha, da + (fala) +ligtable "d": "h" =: "z", "R" =: 22, "W" =: 216, "M"=:| 170, "/" =: 170; + +%% Dha, Da + (fala) +ligtable "D": "h" =: "Z", "/" =: 167, "L" =:| 167, "R" =:| 167, "W" =:| 167; + +%% pha + (fala) +ligtable "f": "R" =: 227, "L" =: 228; + +%% gha +ligtable "g": "h" =: "G", "/" =: 161; + +%% Ha + (fala) +ligtable "H": "R" =: 244, "W" =: 246, "M" =: 243, "L" =: 245; + +%% dirgha-i +ligtable "i": "i" =: 140; +ligtable "I": "I" =: 141; + +%% jha, ja + (fala) +ligtable "j": "h" =: "C", "R" =: 197, "W" =: 198, "/" =: 164; + +%% kha, khiyo, ka + (fala) +ligtable "k": "h" =: "x", "K" =: "X", "W" =: 186, "R" =: 184, "L" =: 185, "M" =:| 160, "/" =: 160; + +%% la + +ligtable "l": "/" =: 176, "M" =:| 176; + +%% ma + +ligtable "m": "/" =: 174, "M" =:| 174, "L" =:| 155, "W" =: 232; + +%% anuswar, unga, ina, candro-bindu +ligtable "N": "G" =: 130, "J" =: 131, "N" =: 132, "/" =: 168; + +%% na + +ligtable "n": "/" =: 171, "M" =:| 171, "W" =: 224; + +%% OI, OU +ligtable "o": "i" =: 148, "u" =: 150; +ligtable "O": "I" =: 149, "U" =: 151; + +%% pha, pa + (fala) +ligtable "p": "R" =: 23, "h" =: "f", "/" =: 172, "M" =:| 172; + +%% murdhanya Sha + +ligtable "P": "/" =: 178; + +%% cha + (fala) +ligtable "q": "R" =: 192, "W" =: 193; + +%% ref, day-shunyo ra, ri, asamiya ra +ligtable "r": "/" =: 175, "h" =: 136, "R" =: 144, "W" =: "B"; +ligtable "R": "R" =: 145; + +%% talabya sha, dantyo sa + (fala) +ligtable "s": "h" =: "S", "/" =: 179, "M" =:| 179, "L" =:| 156, "W" =:| 156, "|" =:| 156; + +%% sha + (fala), murdhonyo sha +ligtable "S": "R" =: 24, "h" =: "P", "/" =: 177, "M" =:| 177, "|" =: "S"; + +%% tha, ta + (fala) +ligtable "t": "h" =: "Q", "R" =: 213, "W" =:| 169, "L" =:| 169, "M" =:| 169, "/" =: 169; + +%% Tha, Ta + (fala) +ligtable "T": "h" =: "F", "R" =:| 166, "W" =:| 166, "/" =: 166, "i" kern 3u#; + +%% dirgho-u +ligtable "u": "u" =: 142; +ligtable "U": "U" =: 143; + +%% bha + (fala) +ligtable "v": "R" =: 231, "L" =:| 154, "W" =:| 154; + +%% khiyo + (fala) +ligtable "X": "M" =: 189; + +%% dha + wa +ligtable "z": "W" =: 217; + +%% double quotation +ligtable "`": "`" =: 2; +ligtable "'": "'" =: 1; + +%% endash, emdash +ligtable "-": "-" =: 8; +ligtable 8: "-" =: 9; + +ligtable 47: "n" =: 26, "N" =:25; +ligtable 58: "/" =: 13; +ligtable 124: "W" =: 153; +ligtable 130: "/" =: 162; +ligtable 131: "/" =: 165; +ligtable 132: "G" =: "K"; +ligtable 136: "h" =: 137, "u" kern 5u#; +ligtable 137: "u" kern 5u#; +ligtable 155: "n" |=: 26; +ligtable 160: "k" =: 180, "t" =: 181, "T" kern -7u#, "n" =: 183, "M" kern -7u#, "s"=: 187; +ligtable 161: "g" =: 190, "Y" =: 196, "m" |=: "M", "n" |=: 26, 26 =:| "g"; +ligtable 164: "j" =: 194; +ligtable 165: "c" =: 199, "j" =: 201; +ligtable 166: "T" =: 203, "W" kern 4.5u#; +ligtable 167: "D" kern -3u#; +ligtable 168: "T" =: 204, "D" =: 206, "N" =: 208, "H" =: 241; +ligtable 169: "t" =: 209, "n" =: 212, "r" =: 213, "M" |=: 27, +27 kern -1u#, "/" =: 133; +ligtable 170: "d" =: 214, "b" =: 216, "M" |=: 27, 27 kern1u#, "h" |=: 122; +ligtable 171: "H" =: 242, "t" =: 218, "d" =: 221, "n" =: 223, "h" |=: "Q"; +ligtable 172: "t" =: 225, "p" =: 226, "l" |=: "L", "L" =:| "p", "n" |=: 26, 26 =:| "p"; +ligtable 173: "j" =: 229, "d" kern -3u#, "b" =: 230; +ligtable 174: "b" =: 232, "n" |=: 26, 26 =:| 155, "m" |=: 77, "l" |=: "L", "L" =:| 155; +ligtable 176: "l" =: 234, "g" kern 1.5u#, "p" kern .5u#, "m" |=: "M"; +ligtable 177: "l" |=: "L", "L" =:| "S", "n" |=: 26, 26 =:| "S", "m" |=: "M"; +ligtable 178: "T" =: 235, "N" =:237, "m" |=: 77; +ligtable 179: "t" =: 239, "h" |=: "Q", "k" =: 238, "n" |=: 26, 26 =:| 156; +ligtable 181: "R" =: 182; +ligtable 194: "W" =: 195; +ligtable 199: "h" =: 200; +ligtable 201: "h" |=: 67, 67 =:| 165; +ligtable 204: "h" =: 205; +ligtable 206: "R" =: 207; +ligtable 209: "W" =: 210, "h" =: 211; +ligtable 214: "h" =:| 170; +ligtable 216: "h" =: 215; +ligtable 218: "R" =: 219, "W" =: 220, "h" =:| 171; +ligtable 221: "h" |=: 122, 122 =:| 171, "R" =: 222, "W" |=: 216, 216 =:| 171; +ligtable 232: "h" =: 233; +ligtable 233: "R" |=: 231, 231 =:| 174; +ligtable 235: "h" =: 236; +ligtable 238: "h" |=: "x", "x" =:| 179, "R" |=: 184, 184 =:| 179; +ligtable 239: "h" =:| 179, "R" =: 240; + +%%% End of banglig.mf diff --git a/language/bengali/bangtex/mf/bangmac.mf b/language/bengali/bangtex/mf/bangmac.mf new file mode 100644 index 0000000000..684ca8d6b1 --- /dev/null +++ b/language/bengali/bangtex/mf/bangmac.mf @@ -0,0 +1,267 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bangmac.mf: METAFONT file that defines various macros +% for use in bangla fonts +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + + +def matra(expr wa,wb) = + begingroup + save x,y,lslope,rslope; + lslope = matra_slope; + rslope = matra_slope; + z1'r = (wa,matra_f*h); + z2'r = (wb,matra_f*h); + if wa>0: x1'r := x1'r - 0.5*stem_width; lslope := 90; + x12=x1'r + stem_width; + y12 = matra_h*h + .5matra_t*h/sind(lslope); + x13=x1'r; + y13=y12; + x11=x1'r; + y11 = y12 + stem_width/sind(lslope); + fill z13--z11--z12--cycle; + fi + if wb<w: x2' := x2' + 0.5*stem_width; rslope := 90; fi + penpos1'(matra_t*h/sind(lslope),lslope); + penpos2'(matra_t*h/sind(rslope),rslope); + penstroke z1'e--z2'e; + penlabels(11,12,13); + endgroup +enddef; + + +def stem(expr xstem) = + begingroup + save x,y; + z1' = (xstem,matra_f*h); + penpos1'(stem_width,0); + x2'r = x1'r; y2'r = 0; + x2'l = x1'l; y2'l = y2'r + stem_width * sind(stem_slope); + penstroke z1'e--z2'e; + penlabels(1',2'); + endgroup +enddef; + + +def halfstem(expr xstem,a,b) = + begingroup + save x,y; + z1 = (xstem,a); + penpos1(stem_width,0); + x2r = x1r; y2r = b; + x2l = x1l; y2l = b + stem_width * sind(stem_slope); + fill z1l--z2l--z2r--z1r--cycle; + endgroup +enddef; + + +def cwbar(expr za,zb,zc,th) = + begingroup + save x,y,phiab,phibc,width,lab,lcd; + phiab = angle(za-zb); + phibc = angle(zb-zc); + lab = length(za-zb); + width = lab * sind(abs(phibc - phiab)); + lcd = width / sind(abs(th - phibc)); + z4' = zc + dir(th) * lcd; + z1l = za; z1r = zb; z2l = z4'; z2r = zc; + penstroke z1e--z2e; + endgroup +enddef; + + +%% Macro for a hook hanging from two points, with a curvature at the +%% middle. The two upper points are za and zb. +def hookjt(expr za,zb,zc,lift,thinness,thf) = + begingroup + save x,y,lab,lcd,thab,thcd,lmid,thmid,dist; + dist = 0.8; + z4 = zc + thinness*length(za-zb) * dir(thf); + z11' = .5[za,zb]; z12' = .5[zc,z4]; + lab = length(za-zb); lcd = length(zc-z4); + thab = angle(zb-za); thcd = angle(z4-zc); + lmid = (1-dist)*lab + dist*lcd; + thmid = (1-dist)*thab + dist*thcd; + penpos11'(lab,thab); penpos12'(lcd,thcd); + z13'l = dist[za,zc] + (0,dist*lift); + penpos13'(lmid,thmid); + penstroke z11'e..z13'e..z12'e; + penlabels(11',12',13'); + endgroup +enddef; + +%%%%%%%%%%%%%%%%%%%%%%%%% +%% macro for a hook with a stem attached to it. + +def hookstem(expr za,zb,zc,phia,phib) = + begingroup + save x,y; + z1r = za; + z1l = zb; + zc = z3; penpos3(stem_width,0); + z2l = (x3,.5stem_width*sind(stem_slope)); + z2r = (x3+.5stem_width,0); + path hs_pl; hs_pl = z1l{dir phia}..tension1.2..{down}z2l; + path hs_pr; hs_pr = z2r{up}..tension1.2..{dir (180+phib)}z1r; + fill hs_pl--hs_pr--cycle; + z4r = z2r; + z4l = hs_pl intersectionpoint (z3l--(x3l,0)); + penstroke z3e--z4e; + penlabels(1,2,3,4); + endgroup +enddef; + + +%%%%%%%%%%%%%%%%%%%%%%%%% +% macro for a ball with a hook attached to it. The ball is centered at +% za, with radius rad. The points zb and zc are the two end points of +% the hook. The angle `th' is the angular co-ordinate of the point on +% the circumference of the circle where the hook attaches to the +% circle. + +def hookcirc(expr za,zb,zc,rad,th) = + begingroup + save x,y,phi,psi,chdir,thickness; + z1 = za; + fill fullcircle scaled rad shifted (z1); + thickness = length(zb-zc); + z5 = z1 + .5rad * dir(th); + z4 = z5 - thickness * dir(th); + z2=zb; z3=zc; + chdir:=1; + if angle(z5-z1)>angle(z2-z1): chdir:=-1; fi + phi = th + chdir*90; + if phi>0: psi=phi-180; else: psi=phi+180; fi + fill z2--z3..{dir psi}z4--z5{dir phi}..cycle; + endgroup +enddef; + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% macro for the Tiki to be used for the letters "Ta", hraswa i and u +%% etc. xa is the x-coordinate of the right end of the Tiki and xb is +%% the same for the left end. + +def Tiki(expr xa,xb) = + begingroup + save x,y; + bot z1 = (xa,matra_f*h); + z2 = (xb,h); + z1'= (.5[x1,x2],.5[y1,y2]); + pickup pencircle xscaled .7pt yscaled .3pt rotated 90; + Tiki_pen := savepen; + draw z1{up}..{left}z1'{left}..{dir 60}z2; + penlabels(1,2); + endgroup +enddef; + + +def baTi(expr za,zb,zc,zd) = + begingroup + save x,y,lab,phi; + z1 = za; z2 = zb; z3 = zc; z4 = zd; + lab = length(z1-z2); + phi = 100; + x3' = x3; y3'-y3 = min(2.3*lab,.3[y2,y3]); + z4' = z4 + .4*lab * dir (phi-120); + fill z2{down}..{left}z3{left}..{dir 100}z4--z4'{dir (phi-180)}..{right}z3'{right}..{up}z1--cycle; + penlabels(1,2,3,4); + endgroup +enddef; + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% This is the golla to be used for bisarga, anuswar etc. + +def golla(expr za,balld) = + begingroup + save x,y; + z1r = za + .5balld * dir (45); + z2r = za + .5balld * dir (135); + z3r = za + .5balld * dir (-135); + z4r = za + .5balld * dir (-45); + penpos1(.15balld,45); + penpos2(.25balld,135); + penpos3(.15balld,-135); + penpos4(.25balld,-45); + penstroke z1e..z2e..z3e..z4e..cycle; + endgroup +enddef; + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% The base of E, also used as ra-fala + +def Ebase(expr za,zb,t) = + begingroup + save x,y,w,h; + numeric w,h; + w=abs(xpart(za) - xpart(zb)); h=abs(ypart(za) - ypart(zb)); + x1 = xpart(za); y1l= ypart(za); penpos1(t,90); + z2l = z1 + (-.3w,.13h); penpos2(1.4t,90); + y3 = y2; x3 = x2 -.4w; penpos3(1.4t,90); + z4l = zb; penpos4(t/3,-40); + penstroke z1e..{left}z2e{left}..z3e;%..z4e; + fill z3l{left}..z4l--z4l--z4l..{right}z3r--cycle; + penlabels(1,2,3,4); + endgroup +enddef; + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% The shape at the right of ina, Sh+N etc. +%% The starting point is za, the x-distance between za and the +%% highest/lowest point is w, the total height is 2h, and t is the +%% thickness of the lines. + +def clover(expr za,w,h,t) = + begingroup + save x,y,currenttransform; + transform currenttransform; + currenttransform := identity shifted za slanted slantval; + numeric theta,balld; theta = 60; balld = .7w-.7t; + z1 = (0,0); penpos1(0,-90); + z2r = (x1+.5w,y1-h); penpos2(t,-90); + z3r = (w,y1-.5h); penpos3(.7t,0); + z4l = (x2,y1); penpos4(.5balld,theta); + fill fullcircle scaled (balld) shifted z4l; + penstroke z1e..z2e..{up}z3e{up}..{dir (theta+90)}z4e; + z4'l = z4l; penpos4'(.5balld,-theta); + x3' = x3; y3' - y4l = y4l - y3; penpos3'(.7t,0); + x2' = x2; y2' -y4l = y4l - y2; penpos2'(t,90); + penstroke z1e..z2'e..{down}z3'e{down}..{dir (-theta-90)}z4'e; + penlabels(1,2,2',3,3',4,4'); + endgroup +enddef; + + + +%% End of file bangmac.mf
\ No newline at end of file diff --git a/language/bengali/bangtex/mf/bangnum.mf b/language/bengali/bangtex/mf/bangnum.mf new file mode 100644 index 0000000000..9677db2d19 --- /dev/null +++ b/language/bengali/bangtex/mf/bangnum.mf @@ -0,0 +1,209 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bangnum.mf: METAFONT file that defines the Bangla numerals +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +beginchar("0",16u#,stht#,stdp#); "The number 0"; + numeric balld; balld = .55h; + z1 = (.5w,matra_f*h/2); + golla (z1,balld); + penlabels(1); +endchar; + +beginchar("1",16u#,stht#,stdp#); "The number 1"; + numeric phi,xs,ys; xs = 20/45w; ys = 10/50h; + z1 = (13/45w,matra_f*45/50h); + z2l = z1 - (.5numball_two,0); penpos2(.8numball_two,0); + z3 = (34/45w,matra_f*18/50h); penpos3(3/45w,0); + z4 = .5[z3r,(w,y3r)]; + z5l = (22/45w,matra_f*7/50h); + phi = angle(z4-z5l); + penpos5(.5ys,phi-90); + fill fullcircle scaled numball_two shifted z1; + fill z2l{down}..z3l..z5l--z5r..z3r{up}..{up}z2r--cycle; + fill fullcircle xscaled xs yscaled ys rotated phi shifted z5l; + penlabels(1,2,3,4,5,6); +endchar; + +beginchar("2",16u#,stht#,stdp#); "The number 2"; + z1 = (17/45w,matra_f*45/50h); + z2l = z1 - (.5numball_two,0); penpos2(.8numball_two,0); + z3 = (34/45w,matra_f*26/50h); penpos3(3/45w,0); + z4l = (22/45w,matra_f*20/50h); + z4r = (19/45w,matra_f*14/50h); + z5l = (6/45w,matra_f*26/50h); + z5r = (10/45w,matra_f*16/50h); + z6 = (43/45w,-ha_dip); penpos6(length(z3l-z3r),angle(z5r-z5l)); + fill fullcircle scaled numball_two shifted z1; + fill z2l{down}..{down}z3l..{left}z4l..z5l--z5r..z4r{right}..z3r{up}..{up}z2r--cycle; + fill z5l..{z6l-z4l}z6l--z6r{z4r-z6r}..z5r--cycle; + penlabels(1,2,3,4,5,6); +endchar; + +beginchar("3",16u#,stht#,stdp#); "The number 3"; + numeric balld; balld = 1.2numball_one; + z1r = (21/45w,matra_f*33/50h); penpos1(.5balld,0); + z2l = (25/45w,matra_f*44/50h); + z2r = (28/45w,matra_f*39/50h); + z5r = (38/45w,matra_f*25/50h); + z5l = (41/45w,matra_f*23/50h); + z6r = (26/45w,matra_f*12/50h); + z6l = (26/45w,matra_f*5.5/50h); + z7r = (3.5/45w,matra_f*39/50h); + z7l = (1/45w,matra_f*40/50h); + fill fullcircle scaled balld shifted z1r; + fill z1l{up}..tension0.95..z2l{right}..{down}z5l--z5r{up}..z2r{left}..z1r--cycle; + fill z5r{down}..{left}z6r..{z7l-(x2l,0)}z7r--z7l{(x1r,0)-z7r}..tension1.2..z6l{right}..{up}z5l--cycle; + penlabels(1,2,3,4,5,6,7); +endchar; + +beginchar("4",16u#,stht#,stdp#); "The number 4"; + numeric w_one, w_two; w_one = matra_f*2.5/50h; w_two = 5/45w; + z1l = (22/45w,matra_f*48/50h); penpos1(w_one,-90); + z2 = (11/45w,matra_f*36/50h); penpos2(w_two,0); + z3l = (18/45w,matra_f*24/50h); + z3r = (28/45w,matra_f*26/50h); z3 = .5[z3l,z3r]; + z4 = (35/45w,matra_f*13/50h); penpos4(w_two,0); + z5r = (x1,matra_f*h-y1l); penpos5(w_one,-90); + z6 = (11/45w,y4); penpos6(w_two,180); + z7l = (21/45w,matra_f*22/50h); + z7r = (24.5/45w,matra_f*27/50h); z7 = z3; + z8 = (34/45w,y2); penpos8(w_two,180); + pickup pencircle xscaled (length(z3l-z3r)) yscaled (matra_f*3/50h) rotated (angle(z3r-z3l)); + penstroke z1e..z2e..z3e..z4e..z5e..z6e..z7e..z8e..cycle; + penlabels(1,2,3,4,5,6,7,8); +endchar; + +beginchar("5",16u#,stht#,stdp#); "The number 5"; + z1l = (30/45w,matra_f*48/50h); + z1r = (23.5/45w,matra_f*41/50h); + z2 = (6.5/45w,matra_f*20/50h); penpos2(4/45w,0); + z3l = (22/45w,matra_f*2.5/50h); + z3r = (26/45w,matra_f*5/50h); + z4l = (35/45w,matra_f*4.5/50h); + z5l = (31/45w,matra_f*7/50h); + z4r = z5l; + z5r = z3r; + penstroke z1e..{down}z2e..z3e..z4e; + fill z5l--z4l--z3r--cycle; + z6l = (24/45w,matra_f*14/50h); + z6r = (19/45w,matra_f*18/50h); + z7l = (29/45w,matra_f*27/50h); + z7r = (x6l,matra_f*30/50h); + z8l = (40/45w,matra_f*33/50h); + z8r = (x7l,matra_f*33/50h); + z9l = (31/45w,matra_f*40/50h); + z9r = (25/45w,matra_f*36/50h); + penstroke z5e..z6e{up}..z7e..z8e; + penstroke z8e..z9e..{up}z1e; + penlabels(1,2,3,4,5,6,7,8,9); +endchar; + +beginchar("6",16u#,stht#,stdp#); "The number 6"; + z1l = (14/45w,matra_f*43/50h); penpos1(.5numball_two,0); + z2l = (16/45w,matra_f*31/50h); penpos2(4/45w,0); + z3l = (25/45w,matra_f*21/50h); + z3r = (22.5/45w,matra_f*26/50h); + z4l = (36/45w,matra_f*29/50h); + z4r = (33.5/45w,matra_f*37/50h); + z5l = (39/45w,matra_f*22/50h); + z5r = (41.5/45w,matra_f*22/50h); + z6l = (26/45w,matra_f*10.5/50h); + z6r = (26/45w,matra_f*4.5/50h); + z7l = (3.5/45w,matra_f*39/50h); + z7r = (1/45w,matra_f*40/50h); + fill fullcircle scaled numball_two shifted z1l; + fill z1l--z2l{z2l-z1l}..z3l..tension2..z4l--z4r..tension2..z3r..z2r..tension3..z1r--cycle; + fill z4r..{down}z5r--z5l{up}..z4l--cycle; +% baTi(z5l,z5r,z6r,z7r); + fill z5r{down}..{left}z6r..{z7l-(x2l,y6l)}z7r--z7l{(x2l,y6r)-z7r}..z6l{right}..{up}z5l--cycle; + penlabels(1,2,3,4,5,6,7); +endchar; + + +beginchar("7",16u#,stht#,stdp#); "The number 7"; + z5r = (33/45w,matra_f*7/50h); penpos5(.5numball_two,0); + z4l = (28/45w,matra_f*26/50h); penpos4(stem_width,0); + z3' = (x4l,matra_f*30/50h); + z3l = (16/45w,y4l); + z3r = (x3l,y3'); + z2l = (6.5/45w,matra_f*34/50h); + z2r = (11/45w,matra_f*31/50h); + z1l = (19/45w,matra_f*47/50h); + z1r = (22/45w,matra_f*43/50h); + fill fullcircle scaled numball_two shifted z5r; + fill z5l..z4l--z4l{left}..z3l..z2l{up}..{right}z1l..{down}z4r..z5r--cycle; + unfill z3'{left}..{left}z3r..z2r..tension1.5..z1r..tension2..cycle; + penlabels(1,2,3,3',4,5); +endchar; + +beginchar("8",16u#,stht#,stdp#); "The number 8"; + z1l = (6/45w,matra_f*43/50h); penpos1(.5numball_two,0); + z2r = (x1r,matra_f*27/50h); penpos2(stem_width,0); + z4l = (14/45w,matra_f*4/50h); + z4r = (x4l,matra_f*9/50h); z4 = .5[z4l,z4r]; + z3r = (x1r,.7[y2,y4]); penpos3(stem_width,0); + z5l = (30/45w,matra_f*20/50h); + z5r = (26/45w,matra_f*23.5/50h); + z6l = (18/45w,matra_f*32/50h); + z6r = (x2r,matra_f*25/50h); + z7 = (32/45w,matra_f*28/50h); + z8 = (40/45w,matra_f*28.7/50h); + z9 = (43/45w,matra_f*33/50h); + fill fullcircle scaled numball_two shifted z1l; + path p; p = z4l..{up}z5l..tension1.2..{left}z6l{left}; + fill z1l..{down}z2l..z3l{down}..{right}z4l..p..z2r--z1r--cycle; + unfill z6r{down}..{down}z3r..{right}z4r..tension1.8..z5r..tension2..z6r--cycle; + z10 = p intersectionpoint (z5r--z7); + pickup Tiki_pen; + draw z10..z7..z8..z9; + penlabels(1,2,3,4,5,6,7,8,9,10); +endchar; + +beginchar("9",16u#,stht#,stdp#); "The number 9"; + z1r = (15/45w,matra_f*7/50h); penpos1(.5numball_one,90); + z2l = (17/45w,matra_f*1/2h); + z2r = (16/45w,matra_f*22/50h); + z3l = (30/45w,matra_f*10/50h); + z3r = (25/45w,matra_f*3.5/50h); + z4 = (37.5/45w,matra_f*18/50h); penpos4(3/45w,0); + z5 = (x3r,matra_f*34/50h); penpos5(matra_f*5/50h,90); + z6l = (5/45w,matra_f*43/50h); penpos6(.5numball_two,0); + fill z1l{left}..{right}z2l..{down}z3l--z3r{up}..z2r{left}..z1r--cycle; + fill z3l..{up}z4l..z5l..{up}z6l--z6r{z4-z6}..z5r..z4r{down}..z3r--cycle; + fill fullcircle scaled numball_one shifted z1r; + fill fullcircle scaled numball_two shifted z6r; + penlabels(1,2,3,4,5,6,7); +endchar; + +%%% End of bangnum.mf diff --git a/language/bengali/bangtex/mf/bangpunc.mf b/language/bengali/bangtex/mf/bangpunc.mf new file mode 100644 index 0000000000..7107bf3ba9 --- /dev/null +++ b/language/bengali/bangtex/mf/bangpunc.mf @@ -0,0 +1,247 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bangpunc.mf: METAFONT file that defines the Bangla punctuation symbols +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +beginchar(".",12u#,stht#,stdp#); "dnari (period)"; + z1 = (w-rindent,0); + stem(x1); + matra(x1,x1); + picture shape_dnari; shape_dnari:=currentpicture; + penlabels(1); +endchar; + +beginchar(14,15u#,stht#,stdp#); "double dnari"; + currentpicture := shape_dnari; + currentpicture := currentpicture + currentpicture shifted (2stem_width,0); +endchar; + +beginchar(15,20u#, stht#, stdp#); "Three dots"; + z1 = (1/4w,0); z2 = (1/2w,0); z3 = (w-x1,0); + fill fullcircle scaled dot_diam shifted z1; + fill fullcircle scaled dot_diam shifted z2; + fill fullcircle scaled dot_diam shifted z3; +endchar; + +beginchar("!",12u#,stht#,stdp#); "exclamation mark"; + numeric xx; xx = w - rindent; + z1 = (xx,matra_f*h); penpos1(.05w,0); + z2 = (xx,.65h); penpos2(.2w,0); + z3 = (xx,0); penpos3(.01w,0); + z0 = (xx,-ha_dip); + filldraw z1..z1l..{down}z2l{down}..z3l--cycle; + filldraw z1..z1r..{down}z2r{down}..z3r--cycle; + fill fullcircle scaled dot_diam shifted z0; + penlabels(1,2,3,0); +endchar; + +beginchar(",",0.3stwd#,stht#,stdp#); "comma"; + pickup pencircle scaled 0.5pt; + z1 = (2/3w,1/9h); z2 = (2/5w,-d); + draw z1{dir -60}..{dir -130}z2; + fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,-0.22pt)); +endchar; + +beginchar(":",0.3stwd#,stht#,stdp#); "colon"; + z1 = (1/2w,1/6h); z2 = (1/2w,(3/4-1/6)*h); + fill fullcircle scaled 1.5pt shifted z1; + fill fullcircle scaled 1.5pt shifted z2; +endchar; + +beginchar(";",0.3stwd#,stht#,stdp#); "semi colon"; + pickup pencircle scaled 0.5pt; + z1 = (2/3w,1/9h); z2 = (2/5w,-d); + draw z1{dir -60}..{dir -130}z2; + fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,-0.22pt)); + fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,1.8pt)); +endchar; + +beginchar("`",0.3stwd#,stht#,stdp#); "backquote"; + pickup pencircle scaled 0.5pt; + z1 = (1/3w,(3/4-1/9)*h); z2 = (3/5w,h); + draw z1{dir 120}..{dir 50}z2; + fill fullcircle scaled 1.5pt shifted (z1 + (0.50pt,0.22pt)); +endchar; + +beginchar("'",0.3stwd#,stht#,stdp#); "quote"; + pickup pencircle scaled 0.5pt; + z1 = (2/3w,24/25h); z2 = (2/5w,(3/4-1/9-1/25)*h); + draw z1{dir -60}..{dir -130}z2; + fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,-0.22pt)); +endchar; + +beginchar(1,0.45stwd#,stht#,stdp#); "double quote"; + pickup pencircle scaled 0.5pt; + z1 = (2/5w,29/30h); z2 = (1/5w,(3/4-1/9-1/30)*h); + z1' = (4/5w,29/30h); z2' = (3/5w,(3/4-1/9-1/30)*h); + draw z1{dir -60}..{dir -130}z2; + draw z1'{dir -60}..{dir -130}z2'; + fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,-0.22pt)); + fill fullcircle scaled 1.5pt shifted (z1' + (-0.50pt,-0.22pt)); +endchar; + +beginchar(2,0.45stwd#,stht#,stdp#); "double backquote"; + pickup pencircle scaled 0.5pt; + z1 = (1/5w,(3/4-1/9)*h); z2 = (2/5w,h); + z1' = (3/5w,(3/4-1/9)*h); z2' = (4/5w,h); + draw z1{dir 120}..{dir 50}z2; + draw z1'{dir 120}..{dir 50}z2'; + fill fullcircle scaled 1.5pt shifted (z1 + (0.50pt,0.22pt)); + fill fullcircle scaled 1.5pt shifted (z1' + (0.50pt,0.22pt)); +endchar; + +beginchar("/",0.3stwd#,stht#,stdp#); "forward slash"; + pickup pencircle scaled 0.5pt; + z1 = (7/8w,3/4h+2/3d); z2 = (1/8w,-2/3d); + draw z1--z2; +endchar; + +beginchar("=",0.7stwd#,stht#,stdp#); "equality sign"; + pickup pencircle scaled 0.5pt; + z3 = (1/10w,(1/4-1/30)*h); z4 = (9/10w,(1/4-1/30)*h); + z3' = (1/10w,(1/2-1/100)*h); z4' = (9/10w,(1/2-1/100)*h); + draw z3--z4; draw z3'--z4'; +endchar; + +beginchar("[",0.20stwd#,stht#,stdp#); "left square bracket"; + pickup pencircle scaled 0.1pt; + z1=(w,h); z2 = (1/3w,h); z3 = (1/3w,-d); z4 = (w,-d); + z1 - z1' = (0,0.5pt); z2 - z2' = (-0.5pt,0.5pt); + z4 - z4' = (0,-0.5pt); z3 - z3' = (-0.5pt,-0.5pt); + filldraw z1--z2--z3--z4--z4'--z3'--z2'--z1'--cycle; +endchar; + +beginchar("]",0.20stwd#,stht#,stdp#); "right square bracket"; + pickup pencircle scaled 0.1pt; + z1=(0,h); z2 = (2/3w,h); z3 = (2/3w,-d); z4 = (0,-d); + z1 - z1' = (0,0.5pt); z2 - z2' = (0.5pt,0.5pt); + z4 - z4' = (0,-0.5pt); z3 - z3' = (0.5pt,-0.5pt); + filldraw z1--z2--z3--z4--z4'--z3'--z2'--z1'--cycle; +endchar; + +beginchar("(",0.28stwd#,stht#,stdp#); "left parenthesis"; + pickup pencircle scaled 0.1pt; + z1 = (8/9w,h); z3 = (8/9w,-d); + z2 = (1/4w,1/3h); z2' = z2 + (0.5pt,0); + filldraw z2'{up}..{dir 60}z1{dir -130}..{down}z2{down} + ..{dir -50}z3{dir 120}..cycle; + endchar; + +beginchar(")",0.28stwd#,stht#,stdp#); "right parenthesis"; + pickup pencircle scaled 0.1pt; + z1 = (1/9w,h); z3 = (1/9w,-d); + z2 = (3/4w,1/3h); z2' = z2 - (0.5pt,0); + filldraw z2'{up}..{dir 120}z1{dir -50}..{down}z2{down} + ..{dir -130}z3{dir 60}..cycle; +endchar; + +beginchar("*",0.48stwd#,stht#,stdp#); "asterisk"; + numeric frac; frac = 1/8h; + z1 = (1/2w,h); z2 = (1/2w,3/7h); + z3 = (1/6w,h-frac); z4 = (5/6w,3/7h + frac); + z5 = (1/6w,3/7h+frac); z6 = (5/6w,h - frac); + pickup pencircle scaled 0.5pt; + draw z1--z2; draw z3--z4; draw z5--z6; +endchar; + +beginchar("+",0.68stwd#,stht#,stdp#); "plus sign"; + pickup pencircle scaled 0.5pt; + z1 = (.1w,.5matra_f*h); z2 = (w-x1,y1); + top z3 = (1/2w,matra_f*h); bot z4 = (x3,0); + draw z1--z2; draw z3--z4; + penlabels(1,2,3,4); +endchar; + +beginchar("-",0.4stwd#,stht#,stdp#); "hyphen"; + z1 = (1/9w,3/8h); penpos1(matra_t*h,90); + z2 = (w-x1,y1); penpos2(matra_t*h,90); + penstroke z1e--z2e; + penlabels(1,2); +endchar; + +beginchar(8,0.60stwd#,stht#,stdp#); "endash"; + pickup pencircle scaled (.5matra_t*h); + lft z1 = (0,3/8h); rt z2 = (w,3/8h); + draw z1--z2; + penlabels(1,2); +endchar; + +beginchar(9,1.10stwd#,stht#,stdp#); "emdash"; + pickup pencircle scaled (.5matra_t*h); + lft z1 = (0,3/8h); rt z2 = (w,3/8h); + draw z1--z2; + penlabels(1,2); +endchar; + +beginchar("%",0.70stwd#,stht#,stdp#); "percent sign"; + z1 = (5/6w,h); z2 = (1/6w,-1/3d); + pickup pencircle scaled 0.5pt; + draw z1--z2; + pickup pencircle xscaled 0.4pt yscaled 0.2pt; + draw fullcircle xscaled 11/40w yscaled 1/2h shifted (1/4w,3/4h); + draw fullcircle xscaled 11/40w yscaled 1/2h shifted (3/4w,-1/3d + 1/4h); + z3 = (11/40w,h); + pickup pencircle scaled 0.25pt; + draw z3{dir -45}..{dir 45}z1; +endchar; + +beginchar("?",17u#,stht#,stdp#); "question mark"; + numeric ww; ww=12/17w; + x3 = w - rindent; + z0 = (x0,3/5h); + pickup pencircle xscaled 0.5pt yscaled 0.25pt rotated -25; + lft z1=(x0-.5dot_diam,3/5h); + top z2=(x1+1/3ww,matra_f*h); + z3=(x2+1/3ww,3/5h); + z4=(x2,11/30h); + z5=(x2,1/7h); + z6 = (x5,0); + fill fullcircle scaled dot_diam shifted z0; + draw z1{up}..{right}z2{right}..{down}z3{down}..{dir -135}z4..{down}z5; + fill fullcircle scaled dot_diam shifted z6; + penlabels(0,1,2,3,4,5,6); +endchar; + +beginchar("$",0.65stwd#,stht#,stdp#); "bucks"; + z1 = (4/7w,h); z2 = (1/7w,-1/3d); + pickup pencircle scaled 0.5pt; + draw z1--z2; + z3 = (4/7w,3/7h); z4 = (8/9w,3/7h); + draw z3--z4; +endchar; + +beginchar("|", 8u#, stht#, stdp#); "The pipe line"; +endchar; + + +%%% End of bangpunc.mf diff --git a/language/bengali/bangtex/mf/bangsl10.mf b/language/bengali/bangtex/mf/bangsl10.mf new file mode 100644 index 0000000000..bb477152c0 --- /dev/null +++ b/language/bengali/bangtex/mf/bangsl10.mf @@ -0,0 +1,86 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bangsl10.mf: METAFONT file that defines the Bengali alphabet (slanted) +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + + + +mode_setup; +font_size 10pt#; +u# = 1/3pt#; +s# = 1/3pt#; +em# := 20pt#; cap# := 20pt#; +thin# := 1/3pt#; thick# := 5/6pt#; +o# := 1/5pt#; +define_pixels(em,cap); +define_blacker_pixels(thin,thick); +define_corrected_pixels(o); +numeric stwd, stht, stdp, penth; +numeric stem_width, stem_slope; +numeric matra_thickness, matra_f, matra_h,matra_t, matra_slope; +numeric dot_diam, ball_hang, ha_dip; +numeric lindent, rindent; +numeric xmag; xmag = 1; +%%%%%%%%%%%%%%%%%%%%%%%%% +%% matra_thickness should be removed at the end +%%%%%%%%%%%%%%%%%%%%%%%%% +stwd# = 10pt#; stht# = 8pt#; stdp# = 2pt#; +penth# = 0.4pt; dflt_pen := savepen; +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +stem_width = xmag*.55pt; +stem_slope = 45; +dot_diam = 1pt; % diameter of dots in "ra", "ya" etc. +matra_thickness = .75pt; +matra_slope = 115; +matra_f = .75; % fraction of h where normally the top end of matras rest +matra_t = 3/50; % thickness of matras as a fraction of matra_f +matra_h = matra_f-.5matra_t; +ball_hang = .7pt; +ha_dip = .7pt; % the depth by which the end of "ha" dips below baseline +lindent = 1.5stem_width; +rindent = 1.5stem_width; +numball_one = 9/50*8pt; % large balls used in numerals +numball_two = 0.8*numball_one; % small balls used in numerals +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +font_quad 18u#+2s#; +font_normal_space 9u#+3s#; +font_normal_stretch 3u#; +font_normal_shrink 2u#; +numeric slantval; slantval = .15; +currenttransform := identity slanted slantval; + + +input bangbase; +end; + +%%% End of bangsl10.mf diff --git a/language/bengali/bangtex/mf/bangvow.mf b/language/bengali/bangtex/mf/bangvow.mf new file mode 100644 index 0000000000..da17c79212 --- /dev/null +++ b/language/bengali/bangtex/mf/bangvow.mf @@ -0,0 +1,227 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bangvow.mf: METAFONT file that defines bangla vowels +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + + +beginchar("A", 21u#, stht#, stdp#); "The letter a"; + numeric xstem,balld,wta,height; + wta=31/40w; height = matra_f*h; + xstem = w-rindent; balld = 14/50height; + matra(0,w); +% The ball + z1l = (25/57w,35/50height); penpos1(.5balld,120); + fill fullcircle scaled balld shifted (z1l); +% Joining the ball and the cup + z2r = z1l + .5balld * (1.1dir(90) + .5 dir(0)) ; + z2l = z1l + .5balld * dir(35); z2 = .5[z2l,z2r]; +% The cup at the bottom + z3l = (40/57w,28/50height); + z3r = (43/57w,26.5/50height); + z4l = (29/57w,18/50height); + z4r = (32/57w,11/50height); + z5l = (5/57w,42/50height); + z5r = (3/57w,43/50height); + z6 = (0,63/50height); + path p; p = z4r{right}..{up}z3r{up}..{left}z2r; + fill z1l..z2l{right}..{down}z3l{down}..z4l{left}..tension1.4..{z6-z5l}z5l--z5r{z5r-z6}..tension1.4..{right}p{left}..z1r--cycle; +% The stem and the hook + z7 = p intersectionpoint ((0,25/50height)--(w,25/50height)); + z8 = p intersectionpoint ((0,20/50height)--(w,20/50height)); + z9 = (xstem,height); + phil = angle(z3l-z2r); phir = angle(z3l-z2l); + hookstem(z7,z8,z9,phil,phir); +% The little Tiki at the top + z12l = (18/57w,matra_h*h); penpos12(6/57w,0); + fill z2r{z2r-z2l}..z12r--z12l{z2r-z12l}..z2l--cycle; + penlabels(1,2,3,4,5,6,7,8,9,10,11,12); +endchar; + +beginchar("I", 14.5u#, stht#, stdp#); "The letter hraswa i"; + numeric height; height = matra_f*h; + Ha(0,0,w,height); +% The matra and the Tiki + matra(0,w); + Tiki(.9w,.07w); +endchar; + +beginchar(141,18u#, stht#,stdp#); "The letter dirgha I"; + numeric balld,height,phii,phiii; + height=matra_f*h; balld = 13/50height; phii=0; phiii = 120; + matra(0,w); +%% The ball + z2l = (12/50w,35/50height); penpos2(.5balld,phii); + fill fullcircle scaled balld shifted z2l; +%% The line from matra to ball + z1l = (6/50w,(matra_h-.5matra_t)*h); penpos1(8/50w,0); + fill z1l{right}..z2l--z2r{dir (phii+90)}..z1r--cycle; +%% The upward going part + z5l = (8.5/50w,23/50height); + z5r = (7.5/50w,22/50height); z5 = .5[z5l,z5r]; + z6l = (14/50w,19/50height); + z6r = (17/50w,12/50height); z6 = .5[z6l,z6r]; + penstroke z5e..{right}z6e; + z7l = (41/50w,41/50height); + z7r = (46/50w,37/50height); z7 = .5[z7l,z7r]; + path ptop,pbot; + ptop = z6l{right}..tension1.5..{z7r-z5l}z7l; + pbot = z7r{z5l-z7r}..tension1.5..{left}z6r; + fill ptop--pbot--cycle; +%% The part connecting the ball with the upward going line + z3l = z2l; penpos3(.5balld,phiii); + z4r = (ptop intersectionpoint ((28/50w,height)--(28/50w,0))) - .05(0,y6l-y6r); + z4l = (ptop intersectionpoint ((19/50w,height)--(19/50w,0))) - .05(0,y6l-y6r); + fill z3r{dir (phiii-90)}..{down}z4r--z6r--z4l{z4r-z4l}..z3l--cycle; +%% The downward going part at the right end + z8l = (34/50w,24/50height); + z8r = (37.5/50w,23/50height); + z9l = (38/50w,2/50height); + z9r = (41/50w,0); + fill flex(z7l,z8l,z9l)--flex(z9r,z8r,z7r)--cycle; +%% The Tiki + Tiki(x7,.05w); + penlabels(1,2,3,4,5,6,7,8,9); +endchar; + + +beginchar("U",18u#, stht#,stdp#); "The letter hraswa u"; + numeric height; height = matra_f*h; + Da(0,0,w,height,.88); + matra(0,w); + Tiki(.9w,.1w); +endchar; + +beginchar(143,19u#, stht#,stdp#); "The letter dirgha u"; +% %%% The first part is the definition of "Da" + numeric xstem,height,shift; + xstem = .5w; height=matra_f*h; shift = .06w; +% The vertical part + z1 = (xstem,height); penpos1(stem_width,0); + z2 = (x1,31/50height); penpos2(stem_width,0); + z3l = (27.5/49w,21.5/50height); + z3r= (x3l+1/49w,28/50height); + fill z1l..{down}z2l..{right}z3l--z3r{left}..{up}z2r--z1r--cycle; +% The part going up + z4l = (42.5/49w,30/50height); + z4r = (40/49w,38/50height); + fill z3l{right}..tension1.5..z4l--z4r..tension1.8..{left}z3r--cycle; +% The first cup + z5l = (44/49w,27/50height); penpos5(3/50w,0); + z6l = (29.5/49w,12/50height); + z6r = (31/49w,5/50height); + z7l = (7/49w,43/50height) + (shift,0); + z7r = (5/49w,44/50height) + (shift,0); + z8 = (0,63/50height); penpos8(shift,0); + fill z4l..{down}z5l..{left}z6l{left}..{z8r-z7l}z7l--z7r{z7r-z8r}..{right}z6r{right}..z5r{up}..z4r--cycle; +% The second cup + z8' = (0,height); + z7'l = (7/49w,43/50height) - (shift,0); + z7'r = (5/49w,44/50height) - (shift,0); + fill z4l..{down}z5l..{left}z6l{left}..{z8l-z7'l}z7'l--z7'r{z7'r-z8l}..{right}z6r{right}..z5r{up}..z4r--cycle; +% matra and tiki + matra(0,w); + Tiki(.9w,.1w); + penlabels(1,2,3,4,5,6,7,7',8,8'); +endchar; + +beginchar(145,20u#, stht#,stdp#); "The letter RI"; + numeric xstem,balld,phi,wkha; wkha = 16/20w; + xstem=wkha-rindent; balld=.18h; phi=-90; + matra(xstem,xstem); + z1 = (.17wkha,.6h); + z2 = z1 + .5balld * dir(phi) + .02wkha * dir(phi+90); + z3 = z1 + .5balld * dir(phi+90); + z4 = (.5wkha,matra_f*h); + z5 = (.55wkha,.6h); + z6 = (.56wkha,.52h); + z7 = (.68wkha,y6); + z8 = (.12wkha,.41h); + z9 = (.28wkha,.25h); + z10 = (.48wkha,.34h); + z11 = (xstem,.5stem_width*sind(stem_slope)); + stem(xstem); + hookcirc(z1,z2,z3,balld,-90); + fill z5..{left}z2..z3{right}..z4--cycle; + fill z5..z6--z7{up}..z4--cycle; + fill z6{down}..{z8-z7}z8--z9--z10..{up}z7--cycle; + hookjt(z9,z10,z11,.1h,.3,90); +% The right stem and the connector + z12 = (w-rindent,.15h); + z13 = (xstem,.43h); + z14 = (x13,.35h); + hookjt(z14,z13,z12,.07h,.4,90); + halfstem(x12,matra_f*h,.13h); + matra(x12,x12); + penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14); +endchar; + +beginchar(147,17.5u#, stht#,stdp#); "The letter peT-kaTa e (ae)"; + E(0,0,w,h); +% The cross line + z9 = (w,.4h); z10 = (w-2rindent,y9); + pickup penrazor xscaled 1.5stem_width rotated 90; + draw z9--z10; + penlabels(9,10); +endchar; + +beginchar("E",17.5u#, stht#,stdp#); "The letter e"; + E(0,0,w,h); +endchar; + +beginchar(149,17.5u#, stht#,stdp#); "The letter oi"; + numeric height; height = matra_f*h; + pickup Tiki_pen; + z1 = (w-rindent,38/50height); + rt x2 = w; y2 = height; + z3 = (19/48w,1.1h); + draw z1..{up}z2{up}..{dir 60}z3; + penlabels(1,2,3); + E(0,0,w,h); +endchar; + +beginchar("O",18.5u#,stht#,stdp#); "The letter o"; + O(0,0,w,h); +endchar; + +beginchar(151,18.5u#, stht#,stdp#); "The letter ou"; + numeric height; height = matra_f*h; + pickup Tiki_pen; + z1 = (rballx,rbally); + rt x2 = w; y2 = height; + z3 = (18/52w,1.1h); + draw z1..{up}z2..{dir 60}z3; + penlabels(1,2,3,4,5,6,7,8,9); + O(0,0,w,h); +endchar; + +%% end of bangvow.mf
\ No newline at end of file diff --git a/language/bengali/bangtex/mf/bangwd10.mf b/language/bengali/bangtex/mf/bangwd10.mf new file mode 100644 index 0000000000..bd8a8e09c6 --- /dev/null +++ b/language/bengali/bangtex/mf/bangwd10.mf @@ -0,0 +1,85 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bang10.mf: METAFONT file that defines the Bengali alphabet (wide) +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This file is part of the package BANGTEX, containing Bangla fonts +%% and style files for the TeX/LaTeX typesetting systems +%% +%% Copyright (C) 2001, 2002 Palash Baran Pal +%% e-mail: pbpal@theory.saha.ernet.in internet: +%% internet: http://tnp.saha.ernet.in/~pbpal +%% Address: Saha Institute of Nuclear Physics +%% 1/AF Bidhan Nagar +%% Calcutta 700064, INDIA +%% +%% Original release: January 2001 +%% Latest modification released: January 2002 +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2 of the License, or +%% (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +%% 02111-1307 USA +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + + +mode_setup; +font_size 10pt#; +u# = .4pt#; +s# = 1/3pt#; +em# := 20pt#; cap# := 20pt#; +thin# := 1/3pt#; thick# := 5/6pt#; +o# := 1/5pt#; +define_pixels(em,cap); +define_blacker_pixels(thin,thick); +define_corrected_pixels(o); +numeric stwd, stht, stdp, penth; +numeric stem_width, stem_slope; +numeric matra_thickness, matra_f, matra_h,matra_t, matra_slope; +numeric dot_diam, ball_hang, ha_dip; +numeric lindent, rindent; +numeric xmag; xmag=.4/.33; +%%%%%%%%%%%%%%%%%%%%%%%%% +%% matra_thickness should be removed at the end +%%%%%%%%%%%%%%%%%%%%%%%%% +stwd# = 10pt#; stht# = 8pt#; stdp# = 2pt#; +penth# = 0.4pt; dflt_pen := savepen; +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +stem_width = xmag*.55pt; +stem_slope = 45; +dot_diam = 1pt; % diameter of dots in "ra", "ya" etc. +matra_thickness = .75pt; +matra_slope = 115; +matra_f = .75; % fraction of h where normally the top end of matras rest +matra_t = 3/50; % thickness of matras as a fraction of matra_f +matra_h = matra_f-.5matra_t; +ball_hang = .7pt; +ha_dip = .7pt; % the depth by which the end of "ha" dips below baseline +lindent = 1.5stem_width; +rindent = 1.5stem_width; +numball_one = 9/50*8pt; % large balls used in numerals +numball_two = 0.8*numball_one; % small balls used in numerals +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +font_quad 18u#+2s#; +font_normal_space 9u#+3s#; +font_normal_stretch 3u#; +font_normal_shrink 2u#; +numeric slantval; slantval = 0; + + + +input bangbase; +end; + +%%% End of bangwd10.mf diff --git a/language/bengali/bngtoday.sty b/language/bengali/bngtoday.sty new file mode 100644 index 0000000000..5e369c81d6 --- /dev/null +++ b/language/bengali/bngtoday.sty @@ -0,0 +1,89 @@ +% Style fle for printing western dates in Bangla in LaTeX by +% using itrans. +% Written by Muhammad Masroor Ali (masroor@human.ai.kyushu-u.ac.jp) +% in February, 1996. + +% Usage is #bengali\BanglaToday#endbengali. + +% Itrans is an Indian language transliteration program +% written and copyrighted by Avinash Chopde (avinash@acm.org). + +% LEGAL POINTS: +% This style file is being distributed free for public use with +% the express understanding that, +% 1. The developer of this style file in no way can +% be held responsible for any resulting mistakes, +% expenditure, or outcome of any form. +% 2. You may copy and re-distribute the style file so long +% as you do not charge any fee, and re-distribute the +% the file as a whole without any portion removed or +% added or modified. Redistribution for any commercial +% purpose is strictly prohibited. +% 3. You may bundle the style file with any other software +% you like, so long as the the conditions for re-distribution +% described in the previous paragraph are met, so long as +% the software is distributed free for public use, and so +% long as the name of the style file and its developer is +% clearly mentioned in an introductory article accompanying +% the aforementioned software. +% 4. No permission will be required for including the package +% to a software, but a mail informing the matter will be +% appreciated. +% 5. This style file can be adapted for other languages, so +% long as the original source of the adapted version is +% clearly mentioned. + + +% $Header: /home/users/masroor/TeX/sty/RCS/bngtoday.sty,v 1.3 1996/02/27 10:05:49 masroor Exp $ + +\def\BanglaToday{ + \number\day\relax + \ifcase\day \relax + \or {lA}% 1 + \or {rA}% 2 + \or {rA}% 3 + \or {TA}% 4 + \or {e}% 5 + \or {e}% 6 + \or {e}% 7 + \or {e}% 8 + \or {e}% 9 + \or {e}% 10 + \or {e}% 11 + \or {e}% 12 + \or {e}% 13 + \or {e}% 14 + \or {e}% 15 + \or {e}% 16 + \or {e}% 17 + \or {e}% 18 + \or {{\char60}S}% 19 + \or {{\char60}S}% 20 + \or {{\char60}S}% 21 + \or {{\char60}S}% 22 + \or {{\char60}S}% 23 + \or {{\char60}S}% 24 + \or {{\char60}S}% 25 + \or {{\char60}S}% 26 + \or {{\char60}S}% 27 + \or {{\char60}S}% 28 + \or {{\char60}S}% 29 + \or {{\char60}S}% 30 + \or {{\char60}S}% 31 + \fi\ % + \ifcase\month\relax% + \or{zAnuOArI}% + \or{{\char60}f{\char203}uOArI}% + \or{mAx{\char193}}% + \or{wi{\char208}l}% + \or{{\char60}}m% + \or{zun}% + \or{zulAe}% + \or{aAg{\char171}t}% + \or{{\char60}s{\char60}{\char175}tm{\char191}r}% + \or{a{\char60}{\char188}tAbr}% + \or{n{\char60}vm{\char191}r}% + \or{iD{\char60}sm{\char191}r}% + \fi + , \number\year + } diff --git a/language/bengali/ebong/ANNOUNCE.txt b/language/bengali/ebong/ANNOUNCE.txt new file mode 100644 index 0000000000..f01726c919 --- /dev/null +++ b/language/bengali/ebong/ANNOUNCE.txt @@ -0,0 +1,8 @@ + EBONG 1.0
+A tool (preprocessor) for writing your pRaa-ne-r ka-thaa in
+the bengali langauage. It allows one to write the text in
+Rapid Roman Bangla and convert it to the bangtex format by a python program.
+All LaTeX markups are preserved in the target file. A tentative
+userguide is provided with the distro.
+
+Shibaji Banerjee (shibaji_ban@yahoo.co.in)
\ No newline at end of file diff --git a/language/bengali/ebong/README b/language/bengali/ebong/README new file mode 100644 index 0000000000..6bf29e4571 --- /dev/null +++ b/language/bengali/ebong/README @@ -0,0 +1,52 @@ +EBONG VER 1.0 (Free : Public Domain software)
+=============
+[Intro]
+EBONG is a preprocessor that writes bangtex files from a
+file in "Rapid Roman Bangla" format.
+
+bangtex, developed by Palas Baran PAl is the LaTeX way of generating
+crisp bengali text (Read Publication Quality PDF) from a tex source.
+
+EBONG, written by Shibaji Banerjee (hopefullY) makes the task
+easier (It is more linear and easier to remember, even after a really
+long break)
+
+[How it works]: The comamnd
+ ebong.py xyz.b
+
+Will produce xyz.tex. This xyz.tex file can be texified normally, if you
+already have the bangtex package in your TeX setup. If you do not already
+have it, you may obtain it from
+ http://tnp.saha.ernet.in/~pbpal/bangtex/bangtex.html
+
+To preprocess the userguide, use
+ ebong.py eb.b
+
+in ebong/doc. Alternately you can just read the PS / PDF files eb.ps / eb.pdf
+
+[Usage Notes]
+In MS you can just use
+ ebong eb.b
+
+In *nix you can rename the file ebong.py to ebong and do a chmod +x ebong
+to achive the same effect.
+
+[Files]
+ebong.py : The application
+README.txt : Read this first
+doc\eb.pdf : Userguide
+doc\eb.ps : ditto
+doc\src\eb.b : EBONG Source of the userguide
+doc\src\eb_tex.tex : LaTeX Source of the userguide, converted using EBONG
+
+[REQUIREMENTS]
+Platform : Any platform that can make LaTeX and Python work.
+A working TeX setup like MikTeX or TeTeX
+bangtex
+python > 2.3 (lesser will probably do)
+
+
+[Author]
+Shibaji Banerjee (shibaji_ban@yahoo.co.in)
+Physics Dept.
+St. Xavier's College, Kolkata, India
diff --git a/language/bengali/ebong/doc/eb.pdf b/language/bengali/ebong/doc/eb.pdf Binary files differnew file mode 100644 index 0000000000..1542912ee7 --- /dev/null +++ b/language/bengali/ebong/doc/eb.pdf diff --git a/language/bengali/ebong/doc/src/eb.b b/language/bengali/ebong/doc/src/eb.b new file mode 100644 index 0000000000..009506e931 --- /dev/null +++ b/language/bengali/ebong/doc/src/eb.b @@ -0,0 +1,227 @@ +\documentclass{barticle}
+\begin{document}
+\bng
+@\section{@ U-po-kRa-mo-^ni-kaa }
+
+@{\rm \textbf{ebong}}@ A-tho-baa @\sh{@ E-bo-^ng } kaa-je laa-g-be _t^aa-_de-r J^aa-raa
+@{\rm bangtex}@ bYa-bo-haa-r ko-re baa-^ng-laa li-kh-^che-n A-tho-baa li-kh-be-n
+bo-le sthi-r ko-re-^che-n-.
+
+E-bo-^ng ke ba-laa ^jaa-y @{\rm bangtex}@ E-r @{\rm preprocessor}@ .
+E-taa laa-te-k_ koo-d le-khaa-r bY-paa-re koo-no saa-haa-^jYa naa
+ko-r-le-O-, baa-^ng-laa le-khaa-r pRo-se-s-taa-ke be-sh khaa-ni-k-taa
+saa-b-lii-l ko-r-_te paa-re . @{\rm ebong}@ E-r muu-l boi-shi-^s^thY-gu-li
+E-k-dash-na-ja-re _de-khe ne-O-yaa ^jaa-k :
+
+\begin{enumerate}
+
+@\item@ le-khaa-taa @{\rm source code}@ E-r mo-_too _de-kh-_te naa ho-ye
+_di-bYi baa-^ng-laa g-^r-ne-r _de-kh-_te ho-y-, ^je-mo-n fou-j ka-thaa-taa
+@{\rm bangtex}@ E taa-I-p ko-r-_te h-be @\verb!\*ph*eouj!@ ki-n_tu @{\rm ebong}@
+E shu-_dhu @\verb!fou-j!@ li-kh-le-I ch-a-l-be-.
+
+@\item@ _du-too E-kse-p__-saa-naa-l ke-s ^cha-^raa-,
+( RI kaar _di-_te @{\rm RII}@ AA-r J li-kh-_te @{\rm J}@ ) ^choo-too haa-_te-r
+roo-maa-n h-ro-f bY-b-haa-r ko-re-I sa-b bYa-njo-n le-khaa ^jaa-y : _taa-I mo-ne raa-kha
+soo-jaa dash shu-_d_dha ka-raa-O sa-ha-j . E-k-taa na-^r-b-^re goo-^che-r
+si-ntYaa-ks che-ki-^ng E-r bY-b-sthaa-O re-khe-^chi-.
+
+@\item@ E-k-I chi-nhe-r jo-nYa E-kaa-_dhi-k @{\rm roman symbol}@ AA-^che dash
+Je-khaa-ne Je-taa cha-l_-le vaa-loo _de-khaa-y-! @{\rm a}@ A-th-baa @{\rm o}@
+_du-too-I g^oo-j hi-se-be kaa-je laa-gaa-noo Jaa-be-, A-rthaa-__t
+@{\rm ka-thaa, ko-tha}@ @$\rightarrow$@ ka-thaa-.
+
+
+@\item@ @{\rm \LaTeX}@ le-khaa-r ni-yo-m dash kaa-nu-n-O Ja-thaa-saa-_dhYo sa-ha-j
+raa-khaa-r che-^shtaa ko-re-^chi-.
+
+\end{enumerate}
+
+@\section{@ ni-ya-m dash kaa-nu-n }
+
+pRo-tho-m kaaj ho-loo sh-b_d-taa-ke @{\rm strutural syllable }@ E ve-nge
+ne-O-yaa-. ^je-mo-n mu-k_ti = mu + k_ti-, bo-n_du-k = bo + n_du + k-,
+E-I-ra-ka-m-. _du-too @{\rm syllable}@ paa-shaa-paa-shi raa-kh-_te
+ge-le E-k-taa @{\rm hyphen}@ / `` dash '' _di-_te ho-be-, ^je-mo-n-,
+raa dash m = @{\rm raa-m}@, ha dash r dash boo dash laa = @{\rm ha-r-boo-laa}@.
+@{\rm syllable}@ le-khaa-r ni-y-m E-I-ra-ko-m-.
+
+\begin{enumerate}
+
+@\item@ sWa-r-chi-nho E-k-laa bo-s-be-. Je-koo-no sWa-r-chi-nho li-kh-_te ge-le
+laa-g-be kYaa-pi-taa-l roo-maa-n ha-ro-f-, Ja-thaa : E-I ( @{\rm E-I}@ ).
+
+@\item@ bYa-njo-n + kaa-r : Je-mo-n bi-bi ( @{\rm bi-bi}@ ), bii-r ( @{\rm bii-r}@ )
+I-_tYaa-_di-.
+
+@\item@ bYa-njo-n + fa-laa : @{\rm M, Y, R, L, W} E-I p^aa-ch-ti fa-laa-, U-_dhaa-ro-^n
+dash pa-_dMo @\verb!pa-_dMo!@, sa-hJYo @\verb!sa-hJYo!@, baa-kYo @\verb!ba-kYo!,
+pRo-mii-laa @\verb!pRo-mii-laa!@, AA-hLaa-_d @\verb!AA-hLaa-_d!@,
+sWa-ro-ba-r^no @\verb!sWa-ro-ba-r^no!@.
+
+
+@\item@ Ju-k_to-bYa-njo-n : bYa-njo-n _du-too pa-shaa-paa-shi li-kh-_te ha-be-, Ja-thaa
+I-n_dRa-lu-p_to ( @\verb!I-n_dRa-lu-p_to!@ ) . Ju-k_to-bYa-njo-n E-r sa-ngge koo-no
+kaa-r baa fa-laa baa AA-re-k-ti bYa-njo-n Ju-k_to ka-raa-r ni-y-m huu-bo-huu bYa-njo-n
+E-r mo-_to-.
+
+@\item@ @{\rm , ; ! ? .} E-raa E-k-laa-O bo-s-_te paa-re-,
+AA-tho-baa sha-b_de-r E-k-ti @{\rm syllable }@ hi-se-be Je-_te paa-re-, Je-mo-n
+ka|-baa-bu-, kha|-baa-bu-, ga|-baa-bu-. ( @{\rm ka\verb!|!-baa-bu-, kha\verb!|!-baa-bu-, ga\verb!|!-baa-bu.}@ )
+
+@\item@ cha-n_dRa-bi-n_du AA-tho-baa ha-s_o-n_t bYa-njo-n E-r p-re Joo-g
+ko-r-_te ho-le bYa-njo-n E-r po-re ( Ja-thaa-kRo-me ) @\verb!^!@ baa @\verb!_!@
+s^e-te _di-n-, Je-mo-n p^aa-ch ( @\verb!p^aa-ch!@ ) baa kha-t_-kaa ( @\verb!kha-t_-kaa!@ ) .
+
+
+\end{enumerate}
+
+
+@\section{@ @{\rm \LaTeX\ }@ li-kh-_te ho-le }
+\begin{enumerate}
+
+@\item@ laa-I-ne-r shu-ru Ja-_di ho-y @\verb!\\!@ _di-ye _ta-be se laa-I-n te-ks
+faa-I-le-O E-k-I thaa-k-be-.
+
+@\item@ ( laa-I-ne-r pRo-tho-m ) @\verb!#! E-r pa-re Jaa thaa-k-be _taa-I s-raa-so-ri
+te-ks faa-I-le cho-le Jaa-be-.
+
+@\item@ _du-too @\verb!#AT ... #AT sign!@ E-r mo-_dhYe Jaa le-khaa ho-be _taa-I s-raa-so-ri
+te-ks faa-I-le cho-le Jaa-be-. laa-I-ne-r E-k-_do-m she-^she E-ro-ka-m sha-b_d naa thaa-kaa-I
+ba-n^ch-nii-y-.
+
+@\item@ A-nYo Je-koo-no si-mbo-l, @{\rm bangtex }@ E-r ni-y-me li-kh-_te ho-be-.
+
+@\item@ baa-^ng-laa-r mo-_dhYe @\verb!-!@ li-kh-_te ge-le li-khu-n @\verb!dash!
+sh-b_d-taa-I-, Je-mo-n : ja-le dash ja-ngg-le ( @\verb!ja-le dash ja-ngg-le!@ )
+
+@\item@ @\verb!#AT! le-khaa-r khu-b _da-r-kaa-r ho-le _taa-r Jaa-y-gaa-y li-khu-n
+@{\rm \texttt{\#}}@@{\rm \texttt{AT}}@ .
+
+\end{enumerate}
+
+@\section{@ ba-r^no-maa-laa }
+
+@\subsection{@ sWa-ro-chi-nho }
+
+\begin{table}[h]
+\bng
+\begin{tabular}{clll}
+A & @\verb!A!@ & ne-I @\\@
+AA & @\verb!AA!@ & kaa & @{\rm kaa}@ @\\@
+I & @\verb!I!@ & ki & @{\rm ki}@ @\\@
+II & @\verb!II!@ & kii & @{\rm kii}@ @\\@
+U & @\verb!U!@ & ku & @{\rm ku}@ @\\@
+UU & @\verb!UU!@ & kuu & @{\rm kuu}@ @\\@
+RI & @\verb!RI!@ & kRII & @{\rm kRII}@ @\\@
+E & @\verb!E!@ & ke & @{\rm ke}@ @\\@
+OI & @\verb!OI!@ & koi & @{\rm koi}@ @\\@
+O & @\verb!O!@ & koo & @{\rm koo}@ @\\@
+OU & @\verb!OU!@ & kou & @{\rm kou}@ @\\@
+\end{tabular}
+\end{table}
+
+@\subsection{@ bYaa-njo-n }
+
+#%\begin{table}
+\bng
+\begin{tabular}{cll}
+k & @\verb!k!@ @\\@
+kh & @\verb!kh!@ @\\@
+g & @\verb!g!@ @\\@
+gh & @\verb!gh!@ @\\@
+ng & @\verb!ng!@ @\\@
+\hline
+ch & @\verb!ch!@ @\\@
+^ch & @\verb!^ch!@ @\\@
+j & @\verb!j!@ @\\@
+jh & @\verb!jh!@ @\\@
+_n & @\verb!_n,^y!@ @\\@
+\hline
+t & @\verb!t!@ @\\@
+^th & @\verb!^th!@ @\\@
+d & @\verb!d!@ @\\@
+dh & @\verb!dh!@ @\\@
+^n & @\verb!^n!@ @\\@
+\hline
+_t & @\verb!_t!@ @\\@
+th & @\verb!th!@ @\\@
+_d & @\verb!_d!@ @\\@
+_dh & @\verb!_dh!@ @\\@
+n & @\verb!n!@ @\\@
+\hline
+p & @\verb!p!@ @\\@
+f & @\verb!ph,f!@ @\\@
+b & @\verb!b!@ @\\@
+bh & @\verb!v,bh!@ @\\@
+m & @\verb!m!@ & @\verb!(M)!@ @\\@
+\hline
+^j & @\verb!^j,J!@ & @\verb!(Y)!@ @\\@
+r & @\verb!r!@ & @\verb!(R)!@ @\\@
+l & @\verb!l!@ & @\verb!(L)!@ @\\@
+b & ne-I & @\verb!(W)!@ @\\@
+h & @\verb!h!@ @\\@
+\hline
+sh & @\verb!sh!@ @\\@
+^s & @\verb!^s!@ @\\@
+s & @\verb!s!@ @\\@
+\hline
+^r & @\verb!^r!@\ @\\@
+^rh & @\verb!^rh!@ @\\@
+y & @\verb!y!@ & @\verb!(Y)!@ @\\@
+^ng & @\verb!^ng!@ @\\@
+__t & @\verb!__t!@ @\\@
+: & @\verb!:!@ @\\@
+\hline
+\end{tabular}
+#%\end{table}
+
+@\section{@ shoo-_dho-n }
+
+\begin{itemize}
+
+@\item@ A-shu-_d_dh : @\verb!kha|-baa-bu,!@ shu-_d_dho : @\verb!kha|-baa-bu-,!@
+@\item@ A-shu-_d_dh : @\verb!\item!@ shu-_d_dho : @\verb!#AT\item#AT!@
+@\item@ A-shu-_d_dh : @\verb!ja-le - ja-ngg-le!@ shu-_d_dho : @\verb!ja-le dash ja-ngg-le!@
+@\item@ A-shu-_d_dh : @\verb!\section{ pu-no-shcho }!@ shu-_d_dho : @\verb!#AT\section{#AT pu-no-shcho }!@
+@\item@ A-shu-_d_dh : @\verb!{\rm hello world}!@ shu-_d_dho : @\verb!#AT{\rm hello world}#AT!@
+\end{itemize}
+
+@\section{@ no-mu-naa }
+
+\begin{verse}
+_too-maa-r koo-thaa-y _de-sh-? ki-baa pa-ro-maa-_tMo po-ri-cha-y-? @\\@
+_tu-mi ^choo-to gha-re bo-se AA-jii-bo-n pa-^raa-shu-noo ka-roo @\\@
+_too-maa-r saa-maa-nYo AA-y-, _tu-mi sphii-_too-_da-r .. @\\@
+\end{verse}
+
+( sha-k_ti cha-ttoo-paa-_dhYaa-y-, A-no-n_to na-kko-_tRo-bii-thii ... ) @\\@
+
+ni-che-, Ja-thaa-kRo-me @{\rm ebong}@ E-bo-^ng @{\rm \emph{Translated} bangtex code}@ .
+
+
+\begin{verbatim}
+#\begin{verse}
+#_too-maa-r koo-thaa-y _de-sh-? ki-baa pa-ro-maa-_tMo po-ri-cha-y-? @#AT\\#AT@
+#_tu-mi ^choo-to gha-re bo-se AA-jii-bo-n pa-^raa-shu-noo ka-roo @#AT\\#AT@
+#_too-maa-r saa-maa-nYo AA-y-, _tu-mi sphii-_too-_da-r .. @#AT\\#AT@
+#\end{verse}
+
+#( sha-k_ti cha-ttoo-paa-_dhYaa-y-, A-no-n_to na-kko-_tRo-bii-thii ... )
+\end{verbatim}
+
+
+\begin{verbatim}
+#\begin{verse}
+#\*t*eamar \*k*eathay \*d*esh? \*k*iba poromatMo po\*r*icoy? \\
+#tu\*m*i \*ch*eaTo gho\*r*e bo\*s*e Aajiibon porhashu\*n*ea ko\*r*ea \\
+#\*t*eamar samanYo Aay, tu\*m*i s/phii\*t*eador .. \\
+#\end{verse}
+
+#( sho\*k/t*i co\*T/T*eapadhYay, Anon/to nokKotRobiithii ... )
+
+\end{verbatim}
+
+
+
+\end{document}
diff --git a/language/bengali/ebong/doc/src/eb_tex.tex b/language/bengali/ebong/doc/src/eb_tex.tex new file mode 100644 index 0000000000..6b4f7b1b49 --- /dev/null +++ b/language/bengali/ebong/doc/src/eb_tex.tex @@ -0,0 +1,227 @@ +\documentclass{barticle}
+\begin{document}
+\bng
+\section{ UpokRomo\*N*ika }
+
+{\rm \textbf{ebong}} Athoba \sh{ EboNNG } ka\*j*e lag\*b*e tNNa\*d*er JNNara
+{\rm bangtex} bYoboHar ko\*r*e baNNGla \*l*ikh\*ch*en Athoba \*l*ikh\*b*en
+bo\*l*e \*s/th*ir ko\*r*e\*ch*en.
+
+EboNNG \*k*e bola Jay {\rm bangtex} Er {\rm preprocessor} .
+ETa la\*T*ek:/ \*k*eaD \*l*ekhar bYpa\*r*e \*k*eano saHaJYo na
+kor\*l*eO, baNNGla \*l*ekhar pRo\*s*esTa\*k*e \*b*esh kha\*n*ikTa
+sabliil kor\*t*e pa\*r*e . {\rm ebong} Er muul \*b*{oi}\*sh*iSh/ThYgu\*l*i
+Ek-nojo\*r*e \*d*e\*kh*e \*n*eOya Jak :
+
+\begin{enumerate}
+
+\item \*l*ekhaTa {\rm source code} Er mo\*t*ea \*d*ekh\*t*e na Ho\*y*e
+\*d*i\*bY*i baNNGla grh\*n*er \*d*ekh\*t*e Hoy, \*J*emon \*ph*eouj kothaTa
+{\rm bangtex} E TaIp kor\*t*e H\*b*e \verb!\*ph*eouj! \*k*in/tu {\rm ebong}
+E shudhu \verb!fou-j! \*l*ikh\*l*eI col\*b*e.
+
+\item du\*T*ea E\*k/s*ep:/:/sanal \*k*es chorha,
+( RR kar \*d*i\*t*e {\rm RII} Aar J \*l*ikh\*t*e {\rm J} ) \*ch*ea\*T*ea Ha\*t*er
+\*r*eaman Hroph bYbHar ko\*r*eI sob bYon/jon \*l*ekha Jay : taI mo\*n*e rakho
+\*s*eaja - shud/dho koraO soHoj . EkTa norhb\*rh*e \*g*ea\*ch*er
+\*s*in/TYak/s \*c*e\*k*iNNG Er bYbs/thaO \*r*e\*kh*e\*ch*i.
+
+\item EkI \*c*i\*n/H*er jonYo Eka\*dh*ik {\rm roman symbol} Aa\*ch*e -
+\*J*ekha\*n*e \*J*eTa col:/\*l*e bha\*l*ea \*d*ekhay! {\rm a} Athba {\rm o}
+du\*T*eaI \*gNN*eaj \*H*i\*s*e\*b*e ka\*j*e laga\*n*ea Ja\*b*e, Ar/that//
+{\rm ka-thaa, ko-tha} $\rightarrow$ kotha.
+
+
+\item {\rm \LaTeX} \*l*ekhar \*n*iyom - kanunO JothasadhYo soHoj
+rakhar \*c*eSh/Ta ko\*r*e\*ch*i.
+
+\end{enumerate}
+
+\section{ \*n*iyom - kanun }
+
+pRothom kaj Ho\*l*ea shb/dTa\*k*e {\rm strutural syllable } E \*bh*e\*NG*e
+\*n*eOya. \*J*emon mu\*k/t*i = mu + \*k/t*i, bon/duk = bo + n/du + k,
+EIrokom. du\*T*ea {\rm syllable} pashapa\*sh*i rakh\*t*e
+\*g*e\*l*e EkTa {\rm hyphen} / `` - '' \*d*i\*t*e Ho\*b*e, \*J*emon,
+ra - m = {\rm raa-m}, Ho - r - \*b*ea - la = {\rm ha-r-boo-laa}.
+{\rm syllable} \*l*ekhar \*n*iym EIrokom.
+
+\begin{enumerate}
+
+\item sWor\*c*in/Ho Ekla bos\*b*e. \*J*e\*k*eano sWor\*c*in/Ho \*l*ikh\*t*e \*g*e\*l*e
+lag\*b*e kYa\*p*iTal \*r*eaman Horoph, Jotha : EI ( {\rm E-I} ).
+
+\item bYon/jon + kar : \*J*emon \*b*i\*b*i ( {\rm bi-bi} ), biir ( {\rm bii-r} )
+ItYa\*d*i.
+
+\item bYon/jon + phola : {\rm M, Y, R, L, W} EI pNNac\*T*i phola, UdharoN
+- podMo \verb!pa-_dMo!, soHYo \verb!sa-hJYo!, bakYo \verb!ba-kYo!,
+pRomiila \verb!pRo-mii-laa!, AaHLad \verb!AA-hLaa-_d!,
+sWorobor/No \verb!sWa-ro-ba-r^no!.
+
+
+\item Juk/tobYon/jon : bYon/jon du\*T*ea poshapa\*sh*i \*l*ikh\*t*e Ho\*b*e, Jotha
+In/dRolup/to ( \verb!I-n_dRa-lu-p_to! ) . Juk/tobYon/jon Er so\*NG/g*e \*k*eano
+kar ba phola ba Aa\*r*ek\*T*i bYon/jon Juk/to korar \*n*iym HuuboHuu bYon/jon
+Er moto.
+
+\item {\rm , ; ! ? .} Era EklaO bos\*t*e pa\*r*e,
+Aathoba sho\*b/d*er Ek\*T*i {\rm syllable } \*H*i\*s*e\*b*e \*J*e\*t*e pa\*r*e, \*J*emon
+ko|babu, kho|babu, go|babu. ( {\rm ka\verb!|!-baa-bu-, kha\verb!|!-baa-bu-, ga\verb!|!-baa-bu.} )
+
+\item con/dRo\*b*in/du Aathoba Hos:/on/t bYon/jon Er p\*r*e \*J*eag
+kor\*t*e Ho\*l*e bYon/jon Er po\*r*e ( JothakRo\*m*e ) \verb!^! ba \verb!_!
+\*sNN*e\*T*e \*d*in, \*J*emon pNNac ( \verb!p^aa-ch! ) ba khoT:/ka ( \verb!kha-t_-kaa! ) .
+
+
+\end{enumerate}
+
+
+\section{ {\rm \LaTeX\ } \*l*ikh\*t*e Ho\*l*e }
+\begin{enumerate}
+
+\item laI\*n*er shuru Jo\*d*i Hoy \verb!\\! \*d*i\*y*e to\*b*e \*s*e laIn \*T*ek/s
+phaI\*l*eO EkI thak\*b*e.
+
+\item ( laI\*n*er pRothom ) \verb!#! Er po\*r*e Ja thak\*b*e taI sraso\*r*i
+\*T*ek/s phaI\*l*e co\*l*e Ja\*b*e.
+
+\item du\*T*ea \verb!@ ... @ sign! Er mo\*dhY*e Ja \*l*ekha Ho\*b*e taI sraso\*r*i
+\*T*ek/s phaI\*l*e co\*l*e Ja\*b*e. laI\*n*er Ekdom \*sh*e\*Sh*e Erokom shob/d na thakaI
+bon/chniiy.
+
+\item AnYo \*J*e\*k*eano \*s*im/bol, {\rm bangtex } Er \*n*iy\*m*e \*l*ikh\*t*e Ho\*b*e.
+
+\item baNNGlar mo\*dhY*e \verb!-! \*l*ikh\*t*e \*g*e\*l*e \*l*ikhun \verb!dash!
+shb/dTaI, \*J*emon : jo\*l*e - joNG/g\*l*e ( \verb!ja-le dash ja-ngg-le! )
+
+\item \verb!@! \*l*ekhar khub dorkar Ho\*l*e tar Jaygay \*l*ikhun
+{\rm \texttt{\#}}{\rm \texttt{AT}} .
+
+\end{enumerate}
+
+\section{ bor/Nomala }
+
+\subsection{ sWoro\*c*in/Ho }
+
+\begin{table}[h]
+\bng
+\begin{tabular}{clll}
+A & \verb!A! & \*n*eI \\
+Aa & \verb!AA! & ka & {\rm kaa} \\
+I & \verb!I! & \*k*i & {\rm ki} \\
+II & \verb!II! & kii & {\rm kii} \\
+U & \verb!U! & ku & {\rm ku} \\
+UU & \verb!UU! & kuu & {\rm kuu} \\
+RR & \verb!RI! & krR & {\rm kRII} \\
+E & \verb!E! & \*k*e & {\rm ke} \\
+OI & \verb!OI! & \*k*{oi} & {\rm koi} \\
+O & \verb!O! & \*k*ea & {\rm koo} \\
+OU & \verb!OU! & \*k*eou & {\rm kou} \\
+\end{tabular}
+\end{table}
+
+\subsection{ bYan/jon }
+
+%\begin{table}
+\bng
+\begin{tabular}{cll}
+k & \verb!k! \\
+kh & \verb!kh! \\
+g & \verb!g! \\
+gh & \verb!gh! \\
+NG & \verb!ng! \\
+\hline
+c & \verb!ch! \\
+ch & \verb!^ch! \\
+j & \verb!j! \\
+jh & \verb!jh! \\
+NJ & \verb!_n,^y! \\
+\hline
+T & \verb!t! \\
+Th & \verb!^th! \\
+D & \verb!d! \\
+Dh & \verb!dh! \\
+N & \verb!^n! \\
+\hline
+t & \verb!_t! \\
+th & \verb!th! \\
+d & \verb!_d! \\
+dh & \verb!_dh! \\
+n & \verb!n! \\
+\hline
+p & \verb!p! \\
+ph & \verb!ph,f! \\
+b & \verb!b! \\
+bh & \verb!v,bh! \\
+m & \verb!m! & \verb!(M)! \\
+\hline
+J & \verb!^j,J! & \verb!(Y)! \\
+r & \verb!r! & \verb!(R)! \\
+l & \verb!l! & \verb!(L)! \\
+b & \*n*eI & \verb!(W)! \\
+H & \verb!h! \\
+\hline
+sh & \verb!sh! \\
+Sh & \verb!^s! \\
+s & \verb!s! \\
+\hline
+rh & \verb!^r!\ \\
+rhh & \verb!^rh! \\
+y & \verb!y! & \verb!(Y)! \\
+NNG & \verb!^ng! \\
+t// & \verb!__t! \\
+: & \verb!:! \\
+\hline
+\end{tabular}
+%\end{table}
+
+\section{ \*sh*eadhon }
+
+\begin{itemize}
+
+\item Ashud/dh : \verb!kha|-baa-bu,! shud/dho : \verb!kha|-baa-bu-,!
+\item Ashud/dh : \verb!\item! shud/dho : \verb!@\item@!
+\item Ashud/dh : \verb!ja-le - ja-ngg-le! shud/dho : \verb!ja-le dash ja-ngg-le!
+\item Ashud/dh : \verb!\section{ pu-no-shcho }! shud/dho : \verb!@\section{@ pu-no-shcho }!
+\item Ashud/dh : \verb!{\rm hello world}! shud/dho : \verb!@{\rm hello world}@!
+\end{itemize}
+
+\section{ nomuna }
+
+\begin{verse}
+\*t*eamar \*k*eathay \*d*esh? \*k*iba poromatMo po\*r*icoy? \\
+tu\*m*i \*ch*eaTo gho\*r*e bo\*s*e Aajiibon porhashu\*n*ea ko\*r*ea \\
+\*t*eamar samanYo Aay, tu\*m*i s/phii\*t*eador .. \\
+\end{verse}
+
+( sho\*k/t*i co\*T/T*eapadhYay, Anon/to nokKotRobiithii ... ) \\
+
+\*n*i\*c*e, JothakRo\*m*e {\rm ebong} EboNNG {\rm \emph{Translated} bangtex code} .
+
+
+\begin{verbatim}
+\begin{verse}
+_too-maa-r koo-thaa-y _de-sh-? ki-baa pa-ro-maa-_tMo po-ri-cha-y-? @\\@
+_tu-mi ^choo-to gha-re bo-se AA-jii-bo-n pa-^raa-shu-noo ka-roo @\\@
+_too-maa-r saa-maa-nYo AA-y-, _tu-mi sphii-_too-_da-r .. @\\@
+\end{verse}
+
+( sha-k_ti cha-ttoo-paa-_dhYaa-y-, A-no-n_to na-kko-_tRo-bii-thii ... )
+\end{verbatim}
+
+
+\begin{verbatim}
+\begin{verse}
+\*t*eamar \*k*eathay \*d*esh? \*k*iba poromatMo po\*r*icoy? \\
+tu\*m*i \*ch*eaTo gho\*r*e bo\*s*e Aajiibon porhashu\*n*ea ko\*r*ea \\
+\*t*eamar samanYo Aay, tu\*m*i s/phii\*t*eador .. \\
+\end{verse}
+
+( sho\*k/t*i co\*T/T*eapadhYay, Anon/to nokKotRobiithii ... )
+
+\end{verbatim}
+
+
+
+\end{document}
diff --git a/language/bengali/ebong/ebong.py b/language/bengali/ebong/ebong.py new file mode 100644 index 0000000000..c4162cf0ef --- /dev/null +++ b/language/bengali/ebong/ebong.py @@ -0,0 +1,346 @@ +#!/usr/bin/env python +# look in newbong +import sre +A='A' +B='B' +S='S' +s='s' +F='F' +X='X' + +NCLINE = 0 +global NCWORD,CWORD + +AKSAR={ + 'k' :[B,'k'], + 'kh' :[B,'kh'], + 'g' :[B,'g'], + 'gh' :[B,'gh'], + 'ng' :[B,'NG'], + + 'ch' :[B,'c'], + '^ch' :[B,'ch'], + 'j' :[B,'j'], + 'jh' :[B,'jh'], + '^y' :[B,'NJ'], + '_n' :[B,'NJ'], + + 't' :[B,'T'], + '^th' :[B,'Th'], + 'd' :[B,'D'], + 'dh' :[B,'Dh'], + '^n' :[B,'N'], + + '_t' :[B,'t'], + 'th' :[B,'th'], + '_d' :[B,'d'], + '_dh' :[B,'dh'], + 'n' :[B,'n'], + + 'p' :[B,'p'], + 'ph' :[B,'ph'], + 'f' :[B,'ph'], + 'b' :[B,'b'], + 'bh' :[B,'bh'], + 'v' :[B,'bh'], + 'm' :[B,'m'], + 'M' :[F,'M'], + + '^j' :[B,'J'], + 'J' :[B,'J'], + 'r' :[B,'r'], + 'R' :[F,'R'], + 'l' :[B,'l'], + 'L' :[F,'L'], + 'W' :[F,'W'], + 'V' :[F,'W'], + 'h' :[B,'H'], + 'kk' :[B,'kK'], + 'kkm' :[B,'kK/N'], + + 'sh' :[B,'sh'], + '^s' :[B,'Sh'], + '^sh' :[B,'Sh'], + 's' :[B,'s'], + + '^r' :[B,'rh'], + '^rh' :[B,'rhh'], + 'y' :[B,'y'], + 'Y' :[F,'Y'], + 'JY' :[F,'Y'], + '__t' :[B,'t//'], + '^ng' :[B,'NNG'], + ':h' :[B,'h'], + '^' :[F,'NN'], + '_' :[F,':/'], + + 'A' :[S,'A'], + 'AA' :[S,'Aa'], + 'I' :[S,'I'], + 'II' :[S,'II'], + 'U' :[S,'U'], + 'UU' :[S,'UU'], + 'RI' :[S,'RR'], + 'E' :[S,'E'], + 'OI' :[S,'OI'], + 'O' :[S,'O'], + 'OU' :[S,'OU'], + + 'a' :[X,'o',1], + 'aa' :[s,'a',1], + 'i' :[s,'i',-1], + 'ii' :[s,'ii',1], + 'u' :[s,'u',1], + 'uu' :[s,'uu',1], + 'RII' :[s,'rR',1], + 'e' :[s,'e',-1], + 'oi' :[s,'oi',-2], + 'oo' :[s,'oo',11], + 'o' :[X,'o',1], + 'ou' :[s,'ou',12], + + '.' :[F,'.'], + '..' :[F,'..'], + '...' :[F,'...'], + '|' :[F,'|'], + + '~' :[F,'~'], + '`' :[F,'`'], + '!' :[F,'!'], + '1' :[F,'1'], + '2' :[F,'2'], + 'at' :[F,'@'], + '#' :[F,'#'], + '3' :[F,'3'], + '$' :[F,'$'], + '4' :[F,'4'], + '%' :[F,'%'], + '5' :[F,'5'], + '6' :[F,'6'], + '&' :[F,'&'], + '7' :[F,'7'], + '*' :[F,'*'], + '8' :[F,'8'], + '(' :[F,'('], + '9' :[F,'9'], + ')' :[F,')'], + '0' :[F,'0'], + 'dash' :[F,'-'], + '+' :[F,'+'], + '=' :[F,'='], + '|' :[F,'|'], + '{' :[F,'{'], + '[' :[F,'['], + '}' :[F,'}'], + ']' :[F,']'], + ':' :[F,':'], + ';' :[F,';'], + '"' :[F,'"'], + "'" :[F,"'"], + '<' :[F,'<'], + ',' :[F,','], + '>' :[F,'>'], + '.' :[F,'.'], + '?' :[F,'?'], + '/' :[F,'/']} + +CATCODES = {'SS' :[S,'','','',1], + 'SB' :[B,'','','',1], + 'BS' :[S,'','','',1], + 'BB' :[B,'','/','',1], + 'BF' :[F,'','','',1], + 'Bs1' :[S,'','','',1], + 'Bs-1':[S,'\*','','*',1], + 'Bs-2':[S,'\*','','*{oi}',0], + 'Bs11':[S,'\*','','*ea',0], + 'Bs12':[S,'\*','','*eou',0], + 'Fs1' :[S,'','','',1], + 'Fs-1':[S,'\*','','*',1], + 'Fs-2':[S,'\*','','*{oi}',0], + 'Fs11':[S,'\*','','*ea',0], + 'Fs12':[S,'\*','','*eou',0], + 'FF' :[F,'','','',1], + 'AX' :[F,'','','',1]} + +def blocked(line): + #print '@ blocked', line , '->', + m = sre.findall('@[^@]+@',line) + outline = line + if not m : + #print outline + return(outline) + else: + for i in range(len(m)): + s=m[i][:-1].replace(' ','%X%') + outline = outline.replace(m[i],s,1) + #print outline + return(outline) + +def unblock(line): + #print '@unblock', line, '->', + m = sre.findall('@[^\s]+',line) + outline = line + if not m : + #print outline + return(outline) + else: + for i in range(len(m)): + s=m[i].replace('@','').replace('%X%',' ') + outline = outline.replace(m[i],s) + #print outline + return(outline) + +def printamp(line): + #print '@unblock', line, '->', + m = sre.findall('#AT',line) + outline = line + if not m : + #print outline + return(outline) + else: + for i in range(len(m)): + outline = outline.replace('#AT','@') + #print outline + return(outline) + +def readsyll(syll): + syllparts=[] + start = 0; end = len(syll) + while syll[start : end]: + slice = syll[start : end] + #print slice + if AKSAR.has_key(slice): + syllparts.append(AKSAR[slice]) + start = start + len(slice) + end = len(syll) + else : + end = end -1 + return(syllparts) + +def fuse(list1,list2): + global CCATCODE + #print list1,list2 + Type1 = list1[0] + Type2 = list2[0] + + if Type2 == s: + Type3 = str(list2[2]) + elif Type2 == X: + Type1=A + Type3='' + else: + Type3 ='' + + Type = Type1+Type2+Type3 + + #print 'Type:', Type + + try: + CATCODE = CATCODES[Type] + TARGET = CATCODE[0] + PREFIX = CATCODE[1] + MIDFIX = CATCODE[2] + POSTFIX = CATCODE[3] + FLAG = CATCODE[4] + + #print 'TGT:', TARGET, PREFIX,MIDFIX,POSTFIX,FLAG + #print 'RAWC', AKSAR[list1[1]][1],AKSAR[list2[1]][1] + + c1=list1[1] + c2=list2[1] + + if FLAG == 1 : + c = PREFIX + c1 + MIDFIX + POSTFIX + c2 + else : + c = PREFIX + c1 + MIDFIX + POSTFIX + + fused = [TARGET,c] + #print CATCODE + return(fused) + except KeyError: + print '\n ERROR AT LINE:', NCLINE, 'WORD:',NCWORD, '(',CWORD,')' + return(['ERROR','UNKNOWN CATCODE']) + +def fuseatoms(syll): + slist=readsyll(syll); + #print slist + lslist=len(slist); + l0=slist[0]; + for i in range(1,lslist): + nextitem = slist[i] + l0=fuse(l0,nextitem) + + return(l0[1]) + +def fuseword(wrd): + if wrd[0] == '@' : + return(wrd) + syllables = wrd.split('-') + w0='' + for eachsyll in syllables: + syll=eachsyll + thesyll = fuseatoms(syll) + w0 = w0 + thesyll + #print 'FUSED WORD',w0 + return(w0) + +def fuseline(line): + global NCWORD,CWORD + NCWORD = 0 + #line = blocked(line) + words = line.split() + l0='' + for eachword in words: + NCWORD=NCWORD+1 + word = eachword + CWORD=word + theword=fuseword(word) + #print 'XX',theword + l0=l0+' '+theword + #print 'FUSED LINE', l0 + return(l0) + +# The main program +import sys +OK=1 +finnam = sys.argv[1] +foutnam = finnam.split('.')[0] + '.' + 'tex' + +fin = file(finnam,'rt') +fout = file(foutnam,'wt') + +textin = fin.readlines() +nlines = len(textin) + +textout = [] + +fin.close() + +for eachline in textin: + NCLINE = NCLINE+1 + if eachline[0] == '#' : + lineout = eachline[1:] + elif eachline[0] == '\\' : + lineout = eachline + elif eachline == '\n': + lineout = eachline + else : + line1 = eachline.strip() + line2 = blocked(line1) + lineout = fuseline(line2) + '\n' + lineout = lineout[1:] + #print ':::', lineout + if lineout.find('UNKNOWN CATCODE') == -1 : + lineout = unblock(lineout) + #print ':::', lineout + textout.append(printamp(lineout)) + else : + OK = 0 + fout.close() + +if OK == 1: + fout.writelines(textout) + fout.close() + print 'done' +else: + print 'Unknown CATCODE, Fix The errors and try again' diff --git a/language/bengali/latexbangla/README b/language/bengali/latexbangla/README new file mode 100644 index 0000000000..305113abbc --- /dev/null +++ b/language/bengali/latexbangla/README @@ -0,0 +1,27 @@ + ---------------------------------------------------------------- + LaTeXbangla package - Enhanced LaTeX integration for Bangla + E-mail: adib.hasan8@gmail.com + Released under the LaTeX Project Public License v1.3c or later + See http://www.latex-project.org/lppl.txt + ---------------------------------------------------------------- + This package simplifies the process of writing Bangla in LaTeX and + addresses most of the common typesetting issues. Additional features + include automatic transition between languages and many more. (See + examples) The user can just type in usual LaTeX syntax and expect + everything to work as it should. + ------------------------------------------------------------------ + Copyright (C) 2016 by Adib Hasan adib.hasan8@gmail.com + + This work may be distributed and/or modified under the + conditions of the LaTeX Project Public License (LPPL), either + version 1.3c of this license or (at your option) any later + version. The latest version of this license is in the file: + + http://www.latex-project.org/lppl.txt + + This work is "maintained" (as per LPPL maintenance status) by + Adib Hasan + + This work consists of the files: latexbangla.sty, + latexbangla.tex, and + latexbangla.pdf diff --git a/language/bengali/latexbangla/latexbangla.pdf b/language/bengali/latexbangla/latexbangla.pdf Binary files differnew file mode 100644 index 0000000000..9c1b62e449 --- /dev/null +++ b/language/bengali/latexbangla/latexbangla.pdf diff --git a/language/bengali/latexbangla/latexbangla.sty b/language/bengali/latexbangla/latexbangla.sty new file mode 100644 index 0000000000..71ffb3549f --- /dev/null +++ b/language/bengali/latexbangla/latexbangla.sty @@ -0,0 +1,242 @@ +% ---------------------------------------------------------------- +% LaTeXbangla package - Enhanced LaTeX integration for Bangla +% E-mail: adib.hasan8@gmail.com +% Released under the LaTeX Project Public License v1.3c or later +% See http://www.latex-project.org/lppl.txt +% ---------------------------------------------------------------- +% This package simplifies the process of writing Bangla in LaTeX and +% addresses most of the common typesetting issues. Additional features +% include automatic transition between languages and many more. (See +% examples) The user can just type in usual LaTeX syntax and expect +% everything to work as it should. +% ------------------------------------------------------------------ +% Copyright (C) 2016 by Adib Hasan adib.hasan8@gmail.com + +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License (LPPL), either +% version 1.3c of this license or (at your option) any later +% version. The latest version of this license is in the file: + +% http://www.latex-project.org/lppl.txt + +% This work is "maintained" (as per LPPL maintenance status) by +% Adib Hasan + +% This work consists of the files: latexbangla.sty, +% latexbangla.tex, and +% latexbangla.pdf +% +% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{latexbangla}[2016/10/31 v0.2 Enhanced LaTeX integration for Bangla] + +\RequirePackage{polyglossia, fontspec, xkeyval, ifxetex} + +% Because this package depends on ucharclasses which itself +% requires XeTeX's interchar classes +\RequireXeTeX + +%Fully supported Bangla Fonts +%Other banglafonts *are* supported but there might be issues with whitespaces. +\def\@@Kalpurush{Kalpurush} +\def\@Kalpurush#1{ + \ifcase#1{Kalpurush} %name + \or{MatchLowercase} %Scale + \or{1.1} %main WordSpace + \or{1.5} %tt WordSpace + \else\fi +} +\def\@@SiyamRupali{SiyamRupali} +\def\@SiyamRupali#1{ + \ifcase#1{SiyamRupali} %name + \or{0.8} %Scale + \or{1.2} %main WordSpace + \or{1.8} %tt WordSpace + \else\fi +} +\def\@@SolaimanLipi{SolaimanLipi} +\def\@SolaimanLipi#1{ + \ifcase#1{SolaimanLipi} %name + \or{0.9} %Scale + \or{1.5} %main WordSpace + \or{2.1} %tt WordSpace + \else\fi +} + +\DeclareOptionX{banglamainfont}{% + \if\relax\detokenize{#1}\relax + \errmessage{Bangla main font not defined} + \else + \def\bm@name{#1} + \def\bm@@name{bmfont} + \bm@init{\bm@name} + \fi +} +\DeclareOptionX{banglattfont}{% + \if\relax\detokenize{#1}\relax + \errmessage{Bangla tt font not defined} + \else + \def\btt@name{#1} + \def\btt@@name{bttfont} + \btt@init{\btt@name} + \fi +} + +\newif\if@none +\newif\if@recom +\newif\if@full +\@recomtrue +\DeclareOptionX{feature}{ + \if\relax\detokenize{#1}\relax\fi + \ifcase#1 + \@recomfalse + \@nonetrue + \or\or\@fulltrue\fi +} + +\newif\ifchange@num +\change@numtrue +\DeclareOptionX{changecounternumbering}{ + \if\relax\detokenize{#1}\relax\fi + \ifcase#1\change@numfalse\fi +} + +\def\bm@init#1{ + \ifx#1\@@Kalpurush + \def\bm@scale{\@Kalpurush{1}} + \def\bm@wordspace{\@Kalpurush{2}} + \else\ifx#1\@@SiyamRupali + \def\bm@scale{\@SiyamRupali{1}} + \def\bm@wordspace{\@SiyamRupali{2}} + \else\ifx#1\@@SolaimanLipi + \def\bm@scale{\@SolaimanLipi{1}} + \def\bm@wordspace{\@SolaimanLipi{2}} + \else + \def\bm@scale{MatchLowercase} + \def\bm@wordspace{1} + \fi\fi\fi +} +\def\btt@init#1{ + \ifx#1\@@Kalpurush + \def\btt@scale{\@Kalpurush{1}} + \def\btt@wordspace{\@Kalpurush{3}} + \else\ifx#1\@@SiyamRupali + \def\btt@scale{\@SiyamRupali{1}} + \def\btt@wordspace{\@SiyamRupali{3}} + \else\ifx#1\@@SolaimanLipi + \def\btt@scale{\@SolaimanLipi{1}} + \def\btt@wordspace{\@SolaimanLipi{3}} + \else + \def\btt@scale{MatchLowercase} + \def\btt@wordspace{1.2} + \fi\fi\fi +} + +\ProcessOptionsX\relax + +%From polyglossia +\ifchange@num + \setmainlanguage[changecounternumbering=true]{bengali} +\else + \setmainlanguage{bengali} +\fi + +\newfontfamily\bengalifont[% + Script=Bengali,% + Scale=\bm@scale,% + NFSSFamily=\bm@@name,% + WordSpace=\bm@wordspace,% + AutoFakeSlant, + AutoFakeBold + ]{\bm@name} + +\newfontfamily\bengalifonttt[% + Script=Bengali,% + Scale=\btt@scale,% + NFSSFamily=\btt@@name, + WordSpace=\btt@wordspace,% + AutoFakeSlant, + AutoFakeBold + ]{\btt@name} + +\newenvironment{latin}{\fontencoding{OT1}\ifx\f@family\btt@@name\fontfamily{lmtt}\else\fontfamily{lmr}\fi\selectfont}\relax + +%Devanagari is required since Bangla fullstop dari ("0964) is in +%Devanagari block of Unicode +\RequirePackage[Latin, Bengali, Devanagari]{ucharclasses} +\setTransitionsForLatin{\begin{latin}}{\end{latin}} + +%if feature=0 is provided no other modifications will be enabled +%However, from my personal experience, I find the following modifications to be useful. + +%the default for feature option is 1, which enables the recommended modifications +\if@recom + \RequirePackage{titlesec, amsthm, xpatch, amsfonts, amssymb, amsmath, enumerate, chngcntr, hyperref} + %adding a dot after the number in titles + \titlelabel{\thetitle.\enspace} + + %making the word "proof" in proof env. bold and adding a : after it. + \xpatchcmd{\proof}{\itshape}{\bfseries}{}{} + \xpatchcmd{\proof}{\@addpunct{.}}{\@addpunct{:}}{}{} + + \counterwithin{equation}{section} + + \renewcommand\UrlFont{\fontencoding{OT1}\fontfamily{lmtt}\selectfont} + + %increases gap between lines + \linespread{1.1} + + %defining a \tobangla which converts numbers in any counter to bangla + \def\@banglanumber#1{\expandafter\@@banglanumber\number#1\@nil} + \def\@@banglanumber#1{\ifx#1\@nil + \else\char\numexpr#1+"09E6\relax\expandafter\@@banglanumber\fi} + \def\tobangla#1{\expandafter\@banglanumber\csname c@#1\endcsname} + \def\numtobangla#1{\@@banglanumber#1\@nil} + + %Because polyglossia itself defines প্রমাণ as italic. I'm making it bold. + \addto\captionsbengali{\renewcommand\proofname{\bfseries প্রমাণ}} + + %a new solution environment + \newenvironment{solution}{\proof[\bfseries সমাধান]}{\endproof} + + \newtheoremstyle{custom}% name + {3pt}% space above + {3pt}% space below + {\rm}% body font + {}% indent amount + {\bfseries}% theorem head font + {:}% punctuation after theorem head + {.5em}% space after theorem head + {}% theorem head spec + \theoremstyle{custom} + \newtheorem{example}{\bfseries উদাহরণ} + \newtheorem{problem}{\bfseries সমস্যা} + \newtheorem{theorem}{\bfseries উপপাদ্য}[section] + + %converting all the useful counters not handled by polyglossia to bangla + \renewcommand{\theequation}{\thesection.\tobangla{equation}} + \renewcommand{\thetheorem}{\thesection.\tobangla{theorem}} + \renewcommand{\theexample}{\tobangla{example}} + \renewcommand{\theproblem}{\tobangla{problem}} + \renewcommand{\theenumi}{\tobangla{enumi}} + \renewcommand{\theenumii}{\tobangla{enumii}} + \renewcommand{\theenumiii}{\tobangla{enumiii}} + \renewcommand{\thefootnote}{\tobangla{footnote}} +\fi + +%feature=2 enabes further modifiations as follows +\if@full + \RequirePackage{titlesec, amsthm, xpatch, amsfonts, amssymb, amsmath, enumerate, chngcntr} + \theoremstyle{custom} + \newtheorem{corollary}{\bfseries অনুসিদ্ধান্ত}[section] + \newtheorem{property}{\bfseries বৈশিষ্ট্য}[section] + \newtheorem*{remark}{\bfseries মন্তব্য} + \newtheorem*{hint} {\bfseries হিন্ট} + \renewcommand{\thecorollary}{\thesection.\tobangla{corollary}} + \renewcommand{\theproperty}{\thesection.\tobangla{property}} + \addto\captionsbengali{\renewcommand\abstractname{\bfseries সারসংক্ষেপ}} + %\addto\captionsbengali{\renewcommand\referencename{\bfseries তথ্যসূত্রসমূহ}} + \newenvironment{motive}{\proof[\bfseries মোটিভেশন]}{\phantom\qedhere\endproof} + \def\equationautorefname~#1\null{(#1)\null} +\fi +\endinput diff --git a/language/bengali/latexbangla/latexbangla.tex b/language/bengali/latexbangla/latexbangla.tex new file mode 100644 index 0000000000..1dd8cc7d38 --- /dev/null +++ b/language/bengali/latexbangla/latexbangla.tex @@ -0,0 +1,428 @@ +\documentclass[11pt]{article} + +\usepackage[banglamainfont=Kalpurush, banglattfont=Siyam Rupali, feature=0, changecounternumbering=0]{latexbangla} +\usepackage[top=8em, left=10em, right=10em, bottom=8em]{geometry} +\usepackage{verbatim,spverbatim, hyperref, tcolorbox, hologo, enumerate, amsthm, xpatch, amsfonts, amssymb, amsmath, enumerate, chngcntr, pgffor} +\hypersetup{hidelinks=yes} +\tcbuselibrary{breakable} + +\def\fileversion{v0.2} +\def\filedate{31 October, 2016} +\def\latexbangla{\hologo{LaTeX}\texttt{bangla}} +\newcommand{\pkn}[1]{\texttt{#1}} +\addto\captionsbengali{% + \renewcommand{\contentsname}{Table of Contents}% +} + +\makeatletter +%making the word "proof" in proof env. bold and adding a : after it. +\xpatchcmd{\proof}{\itshape}{\bfseries}{}{} +\xpatchcmd{\proof}{\@addpunct{.}}{\@addpunct{:}}{}{} +\linespread{1.1} +\def\@banglanumber#1{\expandafter\@@banglanumber\number#1\@nil} +\def\@@banglanumber#1{\ifx#1\@nil +\else\char\numexpr#1+"09E6\relax\expandafter\@@banglanumber\fi} +\def\tobangla#1{\expandafter\@banglanumber\csname c@#1\endcsname} +\def\numtobangla#1{\@@banglanumber#1\@nil}\addto\captionsbengali{\renewcommand\proofname{\bfseries প্রমাণ}} +\newenvironment{solution}{\proof[\bfseries সমাধান]}{\endproof} + +\newtheoremstyle{custom}% name +{3pt}% space above +{3pt}% space below +{\rm}% body font +{}% indent amount +{\bfseries}% theorem head font +{:}% punctuation after theorem head +{.5em}% space after theorem head +{}% theorem head spec +\theoremstyle{custom} +\newtheorem{problem}{\bfseries সমস্যা} +\renewcommand{\theequation}{\thesection.\tobangla{equation}} +\renewcommand{\theproblem}{\tobangla{problem}} +\makeatother + + + + +\title{The \latexbangla~Package\\ +Enhanced \LaTeX\ integration for Bangla} +\author{Adib Hasan\\ +\texttt{adib.hasan8@gmail.com}} +\date{\filedate\qquad\fileversion} + +\begin{document} +\maketitle +\tableofcontents +\pagebreak +\section{Introduction} +Including any unicode text in \hologo{LaTeX} has become very simple thanks to the \hologo{XeLaTeX} engine. To do so, the user only has to use the {\tt fontspec} package and load an appropriate font. This is the standard technique for including multiple languages in one document. The {\tt polyglossia} package even facilitates the process for many languages by providing refined controls. Unfortunately, {\tt polyglossia}'s support for Bangla is too limited to produce good quality Bangla documents. + +So, I decided to address all the common Bangla typesetting problems in this package, \latexbangla. I have also added useful functionalities to it such as, automated transition between Bangla and English (by exploiting \hologo{XeTeX}'s internal character class feature) and many more. +\section{How to use} +\subsection{Sample Code} +Here is the simplest example for \latexbangla: +\begin{tcolorbox}[breakable] +\begin{verbatim} +\documentclass{article} +\usepackage[banglamainfont=Kalpurush, + banglattfont=Siyam Rupali + ]{latexbangla} +\begin{document} +পিথাগোরাস(Pythagoras)-এর উপপাদ্যটি হল,\\ +\textit{সমকোণী ত্রিভুজের অতিভুজের উপর অঙ্কিত বর্গক্ষেত্রের ক্ষেত্রফল অপর দুই বাহুর +উপর অঙ্কিত বর্গক্ষেত্রের ক্ষেত্রফলের সমষ্টির সমান।}\\ +অর্থাৎ কোন সমকোণী ত্রিভুজের অতিভুজ $c$ এবং অপর দুই বাহু $a$ এবং $b$ হলে, +\[c^2=a^2+b^2\] +লক্ষ্য করুন, এখন পর্যন্ত টেক্সট প্রদর্শনের জন্য \textbf{কালপুরুষ} ফন্ট ব্যবহৃত হয়েছে।\\ +\texttt{এবার, টেলিটাইপ(Teletype) টেক্সট প্রদর্শনের জন্য \textbf{সিয়াম রূপালী} +ফন্ট ব্যবহৃত হল।}\\ +পুনরায় টেক্সট প্রদর্শনের জন্য \textbf{কালপুরুষ} ফন্ট ব্যবহৃত হচ্ছে। +\end{document} +\end{verbatim} +\end{tcolorbox} +\begin{tcolorbox}[breakable, colback=white] +পিথাগোরাস(Pythagoras)-এর উপপাদ্যটি হল,\\ +\textit{সমকোণী ত্রিভুজের অতিভুজের উপর অঙ্কিত বর্গক্ষেত্রের ক্ষেত্রফল অপর দুই বাহুর +উপর অঙ্কিত বর্গক্ষেত্রের ক্ষেত্রফলের সমষ্টির সমান।}\\ +অর্থাৎ কোন সমকোণী ত্রিভুজের অতিভুজ $c$ এবং অপর দুই বাহু $a$ এবং $b$ হলে, +\[c^2=a^2+b^2\] +লক্ষ্য করুন, এখন পর্যন্ত টেক্সট প্রদর্শনের জন্য \textbf{কালপুরুষ} ফন্ট ব্যবহৃত হয়েছে।\\ +\texttt{এবার, টেলিটাইপ(Teletype) টেক্সট প্রদর্শনের জন্য \textbf{সিয়াম রূপালী} +ফন্ট ব্যবহৃত হল।}\\ +পুনরায় টেক্সট প্রদর্শনের জন্য \textbf{কালপুরুষ} ফন্ট ব্যবহৃত হচ্ছে। +\end{tcolorbox} +As you see, no special command was required to switch language or to use any other facility. With \latexbangla, you don't need to learn a hundred new commands to type Bangla. You simply type normal \hologo{LaTeX} syntax and expect everything to work as it should. + +\latexbangla~does have some limitations, however. (Most of which are due to my lack of time to implement solutions.) So, do take a look at the known issues section. +\section{Functionalities} +\subsection{Package options} +Package options are listed below:\vspace*{2mm} +\begin{itemize} +\renewcommand\labelitemi{} + +\item\noindent\texttt{banglamainfont}\textbf{(Required)}\\ +Sets the default Bangla font for the document, but does not affect the Latin characters. (They are rendered by the \hologo{LaTeX} default Latin Modern font.) \latexbangla~will automatically fake bold, italic and bolditalic variants for \pkn{banglamainfont} if no font from the appropriate subfamily is found.\\ + +\item\texttt{banglattfont}\textbf{(Required)}\\ +The default Teletype Bangla font. (Again, Latin characters are rendered by the \hologo{LaTeX} default Latin Modern Teletype.) \latexbangla~will also fake bold, italic and bolditalic variants automatically for this font if no font from the appropriate subfamily is found.\\ + +\item\texttt{feature}(Optional, default=1)(\texttt{0->none, 1->recommended, 2->full})\\ +To which extent \latexbangla~should enable additional features. For \pkn{feature=1}, the following features will be enabled: +\begin{enumerate} +\item the following packages are loaded: \pkn{titlesec, amsthm, xpatch, amsfonts, amssymb, amsmath, enumerate, chngcntr}. +\item a ``Dot" is added after chapter, section, subsection etc. numbers. +\item \textit{প্রমাণ.} is replaced by \textbf{প্রমাণ:} in \pkn{proof} environment. +\item Line height is set to 110\%. +\item A new command \verb|\tobangla{counter name}| is defined. (See commands subsection for description) +\item \pkn{example, problem, solution, theorem} environments are defined. The counter associated with \texttt{theorem} environment resets in every section. +\item The counters associated with \pkn{enumerate, footnote} environments are converted to Bangla. +\end{enumerate} +\begin{tcolorbox}[breakable] +\begin{verbatim} +\usepackage[banglamainfont=Kalpurush, + banglattfont=Siyam Rupali, + ]{latexbangla} +\begin{document} +\begin{problem} +$p$ একটি মৌলিক সংখ্যা এবং $n$ একটি স্বাভাবিক সংখ্যা হলে প্রমাণ কর যে +$p|n^p-n$ +\end{problem} +\begin{proof} +$p|n$ হলে এটি স্বাভাবিকভাবেই সত্যি। অন্যথায়, $\{n,2n,\ldots,(p-1)n\}$ + একটি পূর্ণাঙ্গ রেসিডিও ক্লাস তৈরি করে। যার ফলে... +\end{proof} +\begin{problem} +$a$ এবং $n$ পরস্পর সহমৌলিক স্বাভাবিক সংখ্যা হলে দেখাও যে $a^{\phi(n)} +\equiv 1\pmod n$ +\end{problem} +\end{document} +\end{verbatim} +\end{tcolorbox} +\begin{tcolorbox}[breakable, colback=white] +\begin{problem} +$p$ একটি মৌলিক সংখ্যা এবং $n$ একটি স্বাভাবিক সংখ্যা হলে প্রমাণ কর যে $p|n^p-n$ +\end{problem} +\begin{proof} +$p|n$ হলে এটি স্বাভাবিকভাবেই সত্যি। অন্যথায়, $\{n,2n,\ldots,(p-1)n\}$ একটি +পূর্ণাঙ্গ রেসিডিও ক্লাস তৈরি করে। যার ফলে... +\end{proof} +\begin{problem} +$a$ এবং $n$ পরস্পর সহমৌলিক স্বাভাবিক সংখ্যা হলে দেখাও যে $a^{\phi(n)}\equiv 1\pmod n$ +\end{problem} +\end{tcolorbox} + +If \pkn{feature} is set to 2, the following additional features will be enabled: +\begin{enumerate} +\item \texttt{corollary, property, hint, remarks} environments. The counters of \texttt{corollary} and \texttt{property} environment reset in every section. \pkn{hint} and \pkn{remarks} environments have no counter. +\item Automated parentheses around equation references, activated by the \pkn{autoref} command of the \pkn{hyperref} package. +\end{enumerate} +\item\pkn{changecounternumbering}(Optional, default=1)\\ +The \pkn{polyglossia} package does have an option to convert some important counters (like those of chapters and sections) to Bangla. This option asks whether \latexbangla~should enable that option. By default, it is set to be enabled. You may consider disabling it if your document mostly contains English text. +\end{itemize} +\subsection{Commands} +\begin{itemize} +\renewcommand\labelitemi\relax +\item\verb|\tobangla{counter name}|\\ +Converts a counter to Bangla. +\begin{tcolorbox}[breakable] +\begin{verbatim} +\newcounter{test} +A new counter `test' is defined.\\ +test is in English: \thetest\\ +\renewcommand{\thetest}{\tobangla{test}} +test is now in Bangla: \thetest\\ +\stepcounter{test} +Incrementing test: \thetest\\ +\renewcommand{\thetest}{\arabic{test}} +test is again in English: \thetest +\end{verbatim} +\end{tcolorbox} +\begin{tcolorbox}[breakable, colback=white] +\newcounter{test} +A new counter `test' is defined.\\ +test is in English: \thetest\\ +\renewcommand{\thetest}{\tobangla{test}} +test is now in Bangla: \thetest\\ +\stepcounter{test} +Incrementing test: \thetest\\ +\renewcommand{\thetest}{\arabic{test}} +test is again in English: \thetest +\end{tcolorbox} +\item\verb|\numtobangla{number}|\\ +same as \verb|\tobangla|. It converts an English number to Bangla. +\end{itemize} +\section{Known Issues} +You might face the following issues for this (v 0.1) release of \latexbangla. I hope to fix them in the upcoming releases. If you have any question or suggestion, don't hesitate to contact me. +\begin{enumerate} +\item You \textit{must} define both {\tt banglamainfont} and {\tt banglattfont} even if you use only one or (possibly) none of them in the document. +\item A font can't be both {\tt banglamainfont} and {\tt banglattfont} due to limitation in the internal logics. Until I fix it, you can set Kalpurush and SolaimanLipi as your main and tt fonts since they look identical. +\item The whitespace character in many Bangla fonts is too short for \hologo{LaTeX}. This can't be `fixed', since it is purely a font specific issue. Nevertheless, I have manually reset relative whitespace lengths for ``Kalpurush'', ``SolaimanLipi'' and ``Siyam Rupali'' (precisely these names without the quotes). So, for the best results, you should consider installing these fonts before using \latexbangla. (Other Bangla fonts \textit{will} work with \latexbangla, but their interword spacings might be unsatisfactory.) My personal choice for main/tt font combination is Kalpurush/Siyam Rupali. +\item Package \texttt{listings} does not work with Teletype texts. +\end{enumerate} +\section{Implementation} +Because this package depends on \pkn{ucharclasses} (which itself depends on XeTeX's \pkn{interchar classes}). +\begin{tcolorbox}[breakable] +\begin{verbatim} +\RequirePackage{polyglossia, fontspec, xkeyval, ifxetex} +\RequireXeTeX +\end{verbatim} +\end{tcolorbox} +The following Bangla fonts are fully supported. (Other Bangla fonts \textit{are} supported, but some issues might arise with whitespaces. +\begin{tcolorbox}[breakable] +\begin{verbatim} +\def\@@Kalpurush{Kalpurush} +\def\@Kalpurush#1{ + \ifcase#1{Kalpurush} %name + \or{MatchLowercase} %Scale + \or{1.1} %main WordSpace + \or{1.5} %tt WordSpace + \else\fi +} +\def\@@SiyamRupali{SiyamRupali} +\def\@SiyamRupali#1{ + \ifcase#1{SiyamRupali} %name + \or{0.8} %Scale + \or{1.2} %main WordSpace + \or{1.8} %tt WordSpace + \else\fi +} +\def\@@SolaimanLipi{SolaimanLipi} +\def\@SolaimanLipi#1{ + \ifcase#1{SolaimanLipi} %name + \or{0.9} %Scale + \or{1.5} %main WordSpace + \or{2.1} %tt WordSpace + \else\fi +} +\end{verbatim} +\end{tcolorbox} +Now declaring options. +\begin{tcolorbox}[breakable] +\begin{verbatim} +\DeclareOptionX{banglamainfont}{% + \if\relax\detokenize{#1}\relax + \errmessage{Bangla main font not defined} + \else + \def\bm@name{#1} + \def\bm@@name{bmfont} + \bm@init{\bm@name} + \fi +} +\DeclareOptionX{banglattfont}{% + \if\relax\detokenize{#1}\relax + \errmessage{Bangla tt font not defined} + \else + \def\btt@name{#1} + \def\btt@@name{bttfont} + \btt@init{\btt@name} + \fi +} + +\newif\if@none +\newif\if@recom +\newif\if@full +\@recomtrue +\DeclareOptionX{feature}{ + \if\relax\detokenize{#1}\relax\fi + \ifcase#1 + \@recomfalse + \@nonetrue + \or\or\@fulltrue\fi +} + +\newif\ifchange@num +\change@numtrue +\DeclareOptionX{changecounternumbering}{ + \if\relax\detokenize{#1}\relax\fi + \ifcase#1\change@numfalse\fi +} +\end{verbatim} +\end{tcolorbox} +Now initialize \pkn{banglamain} and \pkn{banglatt} fonts. +\begin{tcolorbox}[breakable] +\begin{verbatim} +\def\bm@init#1{ + \ifx#1\@@Kalpurush + \def\bm@scale{\@Kalpurush{1}} + \def\bm@wordspace{\@Kalpurush{2}} + \else\ifx#1\@@SiyamRupali + \def\bm@scale{\@SiyamRupali{1}} + \def\bm@wordspace{\@SiyamRupali{2}} + \else\ifx#1\@@SolaimanLipi + \def\bm@scale{\@SolaimanLipi{1}} + \def\bm@wordspace{\@SolaimanLipi{2}} + \else + \def\bm@scale{MatchLowercase} + \def\bm@wordspace{1} + \fi\fi\fi +} +\def\btt@init#1{ + \ifx#1\@@Kalpurush + \def\btt@scale{\@Kalpurush{1}} + \def\btt@wordspace{\@Kalpurush{3}} + \else\ifx#1\@@SiyamRupali + \def\btt@scale{\@SiyamRupali{1}} + \def\btt@wordspace{\@SiyamRupali{3}} + \else\ifx#1\@@SolaimanLipi + \def\btt@scale{\@SolaimanLipi{1}} + \def\btt@wordspace{\@SolaimanLipi{3}} + \else + \def\btt@scale{MatchLowercase} + \def\btt@wordspace{1.2} + \fi\fi\fi +} + +\ProcessOptionsX\relax +\end{verbatim} +\end{tcolorbox} +Automating transition between Bangla and English. +\begin{tcolorbox}[breakable] +\begin{verbatim} +\ifchange@num + \setmainlanguage[changecounternumbering=true]{bengali} +\else + \setmainlanguage{bengali} +\fi + +\newfontfamily\bengalifont[% + Script=Bengali,% + Scale=\bm@scale,% + NFSSFamily=\bm@@name,% + WordSpace=\bm@wordspace,% + AutoFakeSlant, + AutoFakeBold + ]{\bm@name} + +\newfontfamily\bengalifonttt[% + Script=Bengali,% + Scale=\btt@scale,% + NFSSFamily=\btt@@name, + WordSpace=\btt@wordspace,% + AutoFakeSlant, + AutoFakeBold + ]{\btt@name} + +\newenvironment{latin} +{\fontencoding{OT1}\ifx\f@family\btt@@name\fontfamily{lmtt} +\else\fontfamily{lmr}\fi\selectfont}\relax +\end{verbatim} +\end{tcolorbox} +Devanagari is required since Bangla fullstop dari ("0964) is in Devanagari block of Unicode +\begin{tcolorbox}[breakable] +\begin{verbatim} +\RequirePackage[Latin, Bengali, Devanagari]{ucharclasses} +\setTransitionsForLatin{\begin{latin}}{\end{latin}} +\end{verbatim} +\end{tcolorbox} +if \pkn{feature=0} is provided no other modifications will be enabled. However, from my personal experience, I find the following modifications to be useful. (the default for feature option is 1, which enables the recommended modifications). +\begin{tcolorbox}[breakable] +\begin{verbatim} +\if@recom + \RequirePackage{titlesec, amsthm, xpatch, amsfonts, + amssymb, amsmath, enumerate, chngcntr} + \titlelabel{\thetitle.\enspace} + + \xpatchcmd{\proof}{\itshape}{\bfseries}{}{} + \xpatchcmd{\proof}{\@addpunct{.}}{\@addpunct{:}}{}{} + + \counterwithin{equation}{section} + + \linespread{1.1} + + \def\@banglanumber#1{\expandafter\@@banglanumber\number#1\@nil} + \def\@@banglanumber#1{\ifx#1\@nil\else\char\numexpr#1+"09E6\relax + \expandafter\@@banglanumber\fi} + \def\banglacounter#1 + {\expandafter\@banglanumber\csname c@#1\endcsname} + \def\banglanumeral#1{\@@banglanumber#1\@nil} + + \addto\captionsbengali{\renewcommand\proofname{\bfseries প্রমাণ}} + \newenvironment{solution}{\proof[\bfseries সমাধান]}{\endproof} + + \newtheoremstyle{custom}% name + {3pt}% space above + {3pt}% space below + {\rm}% body font + {}% indent amount + {\bfseries}% theorem head font + {:}% punctuation after theorem head + {.5em}% space after theorem head + {}% theorem head spec + \theoremstyle{custom} + \newtheorem{example}{\bfseries উদাহরণ} + \newtheorem{problem}{\bfseries সমস্যা} + \newtheorem{theorem}{\bfseries উপপাদ্য}[section] + \renewcommand{\theequation}{\thesection.\banglacounter{equation}} + \renewcommand{\thetheorem}{\thesection.\banglacounter{theorem}} + \renewcommand{\theexample}{\banglacounter{example}} + \renewcommand{\theproblem}{\banglacounter{problem}} + \renewcommand{\theenumi}{\banglacounter{enumi}} + \renewcommand{\theenumii}{\banglacounter{enumii}} + \renewcommand{\theenumiii}{\banglacounter{enumiii}} + \renewcommand{\thefootnote}{\banglacounter{footnote}} +\fi +\end{verbatim} +\end{tcolorbox} +\pkn{feature=2} enables further modifiations as follows. +\begin{tcolorbox}[breakable] +\begin{verbatim} +\if@full + \RequirePackage{titlesec, amsthm, xpatch, amsfonts, amssymb, + amsmath, enumerate, chngcntr} + \theoremstyle{custom} + \newtheorem{corollary}{\bfseries অনুসিদ্ধান্ত}[section] + \newtheorem{property}{\bfseries বৈশিষ্ট্য}[section] + \newtheorem*{remark}{\bfseries মন্তব্য} + \newtheorem*{hint} {\bfseries হিন্ট} + \renewcommand{\thecorollary}{\thesection.\banglacounter{corollary} + } + \renewcommand{\theproperty}{\thesection.\banglacounter{property}} + \addto\captionsbengali + {\renewcommand\abstractname{\bfseries সারসংক্ষেপ}} + \newenvironment{motive}{\proof[\bfseries মোটিভেশন]} + {\phantom\qedhere\endproof} + \def\equationautorefname~#1\null{(#1)\null} +\fi +\end{verbatim} +\end{tcolorbox} +\end{document} diff --git a/language/bengali/mkbangtex/README b/language/bengali/mkbangtex/README new file mode 100644 index 0000000000..9c7eb813cf --- /dev/null +++ b/language/bengali/mkbangtex/README @@ -0,0 +1,38 @@ +mkbangtex Version 1.1. + +It creates a BangTeX file from a Bengali document written +phonetically in Roman script and more ... + +[See accompanying documentation for further details.] +--- + +Usage: mkbangtex [-h, --alphabet] [-o <out_file> --transparent] <in_file> + -h, --help : print this page + -o <out_file> : specify output file + (default: in_file.tex) + --transparent : use default transparent symbols & + positioning of u, uu etc. for all + consonants and conjunctions + --alphabet : transliteration table + (with Unicode Bengali symbols) + --ancient : ancient Bengali --- without antastha ya + (NEW in v.1.1) + + +Package Content: +---------------- +README : This file +mkbangtex : python code +mkbangtex.bang : source file for documentation +mkbangtex.tex : tex file for documentation +mkbangtex.pdf : pdf file for documentation + +Updates from v.1.0: +------------------ +1] added ancient option for writing old Bengali (e.g. charJaagIti) +2] simplified usage for text-only files --- no need to specify modes +3] fixed a bug about the units cm and in of latex +4] alphabet shows Bengali letters (needs Unicode support) + +Report bugs to: koushik(at)iacs(dot)res(dot)in +License: GPL diff --git a/language/bengali/mkbangtex/mkbangtex b/language/bengali/mkbangtex/mkbangtex new file mode 100644 index 0000000000..b7c3d016f7 --- /dev/null +++ b/language/bengali/mkbangtex/mkbangtex @@ -0,0 +1,560 @@ +#!/usr/bin/python + +# Last updated: 13-09-2006: +# added the unicode-bengali alphabet list +# added --ancient option +# fixed the problem of unit specification +# This code uses Xavier Defrang's Single-Pass Multiple Replace, +# Py Cookbook 81330 (=3.14 hardcopy) in an essential fashion. + +from __future__ import nested_scopes + +import string, re, sys, getopt, timing +timing.start() + +version = "1.1" + +usage = ''' +This is mkbangtex Version %s. +It creates a BangTeX file from a Bengali document written +phonetically in Roman script. It works in two modes, which +are automatically detected: +bengali: converts anything but single-word latex + commands not enclosing within a pair of '@fn's +foreign: converts only the portions enclosed within a pair of '@bn's +CAUTION: Only ONE mode can be used in a file + +A piece of text enclosed within a pair of '@b2e's is converted +from Bengali to acctented Roman script following the IAST (1912) +rules. Works in both modes. +[See accompanying documentation for further details] +--- + +Usage: mkbangtex [-h, --alphabet --transparent, --ancient, -o <out_file>] <in_file> + -h, --help : print this page + --alphabet : transliteration table + --transparent : transparent symbols and default positioning + --ancient : ancient Bengali --- without antastha ya + -o <out_file> : specify output file (default: <in_file>.tex) + ''' + +bengali_alphabet = u''' + BENGALI ALPHABET + +a( \u0985 ) aa( \u0986 ) i( \u0987 ) ii( \u0988 ) +u( \u0989 ) uu( \u098A ) Ri( \u098B ) \u098C (not used) +e( \u098F ) oi( \u0990 ) o( \u0993 ) ou( \u0994 ) +------------------------------------------------ +ka( \u0995 ) kha( \u0996 ) ga( \u0997 ) gha( \u0998 ) NG( \u0999 ) +ca/cha( \u099A ) chha( \u099B ) ja( \u099C ) jha( \u099D ) NJ( \u099E ) +Ta( \u099F ) Tha( \u09A0 ) Da( \u09A1 ) Dha( \u09A2 ) Na( \u09A3 ) +ta( \u09A4 ) tha( \u09A5 ) da( \u09A6 ) dha( \u09A7 ) na( \u09A8 ) +pa( \u09AA ) pha( \u09AB ) ba( \u09AC ) bha( \u09AD ) ma( \u09AE ) +Ja( \u09AF ) ra( \u09B0 ) la( \u09B2 ) wa( \u09AC ) +sha( \u09B6 ) Sha/shha( \u09B7 ) sa( \u09B8 ) ha/Ha( \u09B9 ) +rh( \u09DC ) rhh( \u09DD ) _m( \u0982 ) ~h( \u0983 ) ~n( \u0981 ) +------------------------------------------------ +khaNDa ta: _t( \u09CE ); hasanta: _h( \u09CD ); k+shh: x antastha y: y( \u09DF ) +''' + + + +try: + opts, args = getopt.getopt(sys.argv[1:], 'ho:', +["help","outfile","transparent","alphabet","ancient"]) +except getopt.GetoptError: +# print help information and exit: + print usage + sys.exit(2) + +# Help menu +for o , a in opts: + if o in ("-h", "--help"): + print usage % version + sys.exit() + output = None + if o in ("--alphabet"): + print bengali_alphabet.encode('utf-8') + sys.exit() + output = None + + +# define input file + +# Check if the file exists +try: + fi = open(args[0], 'r') + input_filename = args[0] + print ''' +mkbangtex %s +Got %s. Processing ...''' % (version, input_filename) +except: + input_filename = "file" + print ''' +Can\'t open %s for reading. +For help menu use: mkbangtex --help +''' % input_filename + sys.exit(0) + + +out_file_name = args[0]+'.tex' # initialize the ouput file +cosmetix = "True" # initialize cosmetics to TRUE +Ancient_bng = "False" # intialize Ancient_bng to FALSE + +# Set up the options +for o , a in opts: + if o == "-o": + out_file_name = a + if o == "--transparent": + cosmetix = "False" + if o == "--ancient": + Ancient_bng = "True" + + +# define and open output file +o_file = open(out_file_name,'w') + +# setting up delimiters for both modes +fnmod_delim = re.compile(r'@bengali|@bnstart|@bnend|@bn') +bnmod_delim = re.compile(r"@fn") +bndelim = re.compile(r'@@@') # change these to @@@ +sndelim = re.compile(r'@b2e') # for transliteration +fndelim = re.compile(r"(\$+|@@@)", re.X) # dollar and @@@ treated together +dollar = re.compile(r"(\$)", re.X) # dollar and @@@ treated together + + +# define non-latex words +nonltx_word = re.compile(r"\s-?(?![\d+])\w*-?\(?\~?[\`]*\w+\S*|{o}\S+|{i}\S+", re.X) + +# compile patterns to be substituted +ns_k = re.compile('n(?=k|g|x)') # nasals before k-barga +ns_c = re.compile('n(?=c|j)') # nasals before c-barga +tal_s = re.compile(r'sh(?=[bcdfghjklmnpqrstwxyz])') + # sh followed by coonsonants, (for b2e) +xX = re.compile(r"x", re.I) +unga = re.compile(r"NG") +ch = re.compile(r"ch") +jh = re.compile(r"jh") +Dh = re.compile(r"Dh") +sh = re.compile(r"sh") +ha = re.compile(r"~ha|~h") +Ri = re.compile(r"Ri") +jn = re.compile(r"jn") +onuswar = re.compile(r"_m") +rikar = re.compile(r"_r") +hasanta = re.compile(r"_h") +rh = re.compile("rh") +Rh = re.compile("Rh") +R = re.compile("R") +J = re.compile("J") +oi = re.compile("oi") +ou = re.compile("ou") +aii = re.compile(r"aii") +ai = re.compile(r"ai") +au = re.compile(r"au") +aa = re.compile(r"aa") +ao = re.compile(r"ao") +a = re.compile(r"a") +ao = re.compile(r"ao") +ae = re.compile(r"ae") +ei = re.compile(r"ei") +eo = re.compile(r"eo") +eu = re.compile(r"eu") +io = re.compile(r"io") +iu = re.compile(r"iu") +ui = re.compile(r"ui") +ii = re.compile(r"ii") +oioi = re.compile(r"oioi") +III = re.compile(r"III") +XzX = re.compile(r"XzX") +VxV = re.compile(r"VxV") +chandra = re.compile(r"~n") +ng_prob = re.compile(r"NG(?=M|r)") +ngm = re.compile(r"NG/M") +Ha = re.compile(r'~Ho|~Ha') +H = re.compile("H") +uu = re.compile("uu") +inya = re.compile("NJ") +T = re.compile('T') +D = re.compile('D') +N = re.compile('N') +Th = re.compile('Th') +shh = re.compile('shh') +vw_b = re.compile(r'\b[aeiou]+') # vowels at word-beginning +p_i = re.compile('([\^\~]|[b-dB-Df-hF-Hj-nJ-Np-tP-Tv-zV-Z])+(?=i)') +p_e = re.compile('([\^\~]|[b-dB-Df-hF-Hj-nJ-Np-tP-Tv-zV-Z])+(?=e)') +p_YA = re.compile('([\^\~]|[b-dB-Df-hF-Hj-nJ-Np-tP-Tv-zV-Z])+(?=(YA))') + # for YA-kar's bangtex symbol +p_o = re.compile('([\^\~]|[b-dB-Df-hF-Hj-nJ-Np-tP-Tv-zV-Z])+(?=o)') +p_ou = re.compile('([\^\~]|[b-df-hj-np-tv-z])+(?=ou)', re.I) +p_oi = re.compile('([\^\~]|[b-df-hj-np-tv-z])+(?=oi)', re.I) +p_begin_Ha = re.compile(r'\bh', re.X) # Ha at word-beginning +yukta_bnj = re.compile(r'[kxgcjTDNtdmnpblhHSsXZ](?=[kxgcCjTDNtTdnpbHSsXZ])') +p_tkp = re.compile('(\_*)t(?=k|x|p|f|s|X)') # t before ka,kha,pa,pha,s,X is khanda t +# consonants under which u, uu and Ri-kar need be shifted +anomaly_u = re.compile(r'(k|kR|NG|c|C|T|D|Z|t|ph|f|phR|bh|X)(?=u|{rR})|(T(?=R))') +u_kern = re.compile(r'em}u(?!u)') +uu_kern = re.compile(r'em}uu') + + + + +# DEFINING VARIOUS FUNCTIONS +# +# Functions from Defrang's code + +def multiple_replace(dict, text): + + """ Replace in 'text' all occurences of any key in the given + dictionary by its corresponding value. Returns the new tring.""" + + # Create a regular expression from the dictionary keys + regex = re.compile("(%s)" % "|".join(map(re.escape, dict.keys()))) + + # For each match, look-up corresponding value in dictionary + return regex.sub(lambda mo: dict[mo.string[mo.start():mo.end()]], text) + + + +from UserDict import UserDict +class Xlator(UserDict): + + """ An all-in-one multiple string substitution class """ + + def _make_regex(self): + + """ Build a regular expression object based on the keys of + the current dictionary """ + + return re.compile("(%s)" % "|".join(map(re.escape, self.keys()))) + + def __call__(self, mo): + + """ This handler will be invoked for each regex match """ + + # Count substitutions + self.count += 1 # Look-up string + + return self[mo.string[mo.start():mo.end()]] + + def xlat(self, txt): + + """ Translate text, returns the modified text. """ + + # Reset substitution counter + self.count = 0 + + # Process text + return self._make_regex().sub(self, txt) + + +# BENGALI Functions for -fala's and -kar's + +# Various -kar's + +def eikar(self): + anomi = self.group() + return '\*'+anomi+'*' + +def okar(self): + anome = self.group() + return '\*'+anome+'*ea' + +def oukar(self): + anome = self.group() + return '\*'+anome+'*'+'e' + +def oikar(self): + anome = self.group() + return '\*'+anome+'*'+'oi' + + +def fala(self, c_list): # Various -fala's + return dict([(x+self, x+self.upper()) for x in c_list]) + + +def nasa(self,replmnt): # Nasals + return dict([('n'+x, replmnt+'/'+x) for x in self]) + +def caps(self): + capup = self.group() + return '{'+capup.upper()+'}' + +def yukta(self): + ykt = self.group() + return ykt + '/' + +def ukar(self): # for shifting u/uu under + anomu = self.group() # some consonants + return anomu+'{\\kern-.23em}' + +def YAkar(self): # for YA-kar's bangtex symbol + anomi = self.group() + return '\*'+anomi+'*' + + +def y_blank_ancient(self): + y_anc = self.group() + y_blnk = y_anc.replace("y","{}") + return y_blnk +# LISTS and DICTIONARIES: +# +# Define groups of letters from the alphabet: +barga_k = list('xGX') +barga_c = list('qC') +# Ha after volwels +dict_ha = fala('h', list('aeiouAEIOU')) +# Ref +dict_rf = dict([('r'+x, 'r'+'/'+x) for x in '[kxgGcqjCTFDZNtQdznpfbvmJlHPSs]']) +# Nasals +dict_k = nasa(barga_k,'VNV') +dict_c = nasa(barga_c, 'NJ') +dict_nasa = dict() +dict_nasa.update(dict_k) +dict_nasa.update(dict_c) +## Dictionary constructing the conjunctions +dict_conj = { + "AA" : "Aa" , + "VVV":"g/Y", + "_t" : "t//", + "nh" : "n/H", + "Nh" : "N/H", + "mh" : "HM", + "\"V" : "NN", + "VV\"" : "NNG", + "VNV" : "NG", + "th/th" : "{\char211}", + "rh/g" : "rhg", + ":/:" : ":/", + r"*YA" : "*{aa}", # for YA-kar's bangtex symbol + r"YA" : "{AA}", # for YA-kar's bangtex symbol + } + +# FUNCTIONS for mkbangtex + +def b2e(self): # b2e : for transliteration + self = ns_k.sub('NG',self) + self = ns_c.sub('NJ',self) + self = xX.sub("kshh", self) + self = ch.sub("c", self) + self = H.sub("h", self) + self = aa.sub('{\=a}',self) + self = ii.sub('{\=\i}',self) + self = uu.sub('{\=u}', self) + self = Ri.sub('\d{ri}', self) + self = unga.sub('{\.n}', self) + self = inya.sub(r'\~{n}', self) + self = Th.sub('\d{th}', self) + self = T.sub('\d{t}', self) + self = Dh.sub('\d{dh}', self) + self = D.sub('\d{d}', self) + self = N.sub('\d n', self) + self = shh.sub('\d{s}', self) + self = sh.sub("{\\'s}", self) + self = chandra.sub("\u{n}", self) + self = onuswar.sub("\d{m}", self) + self = ha.sub("\d{h}", self) + self = hasanta.sub("", self) + self = self.replace('_t',"t") + self = rikar.sub("\d{ri}", self) + self = rh.sub(r'R', self) + #self = Rh.sub(r'\d{Rh}', self) + self = R.sub(r"\d{R}", self) + self = J.sub("y", self) + self = oi.sub("ai", self) + self = ou.sub("au", self) + return self + + +def bn(self): # bn : for fnmode = FALSE + self = xX.sub(r"X", self) + self = unga.sub("VNV", self) + self = ch.sub("c", self) + self = jh.sub("C", self) + self = Dh.sub("Z", self) + self = sh.sub("S", self) + self = ha.sub("~ha", self) + self = Ri.sub("{RR}", self) + self = jn.sub("VVV", self) + self = vw_b.sub(caps, self) + self = p_tkp.sub(r't//', self) # khanDa t + self = onuswar.sub('{VV"}', self) # onu:sar + self = rikar.sub('{rR}', self) # ri-fala + self = hasanta.sub(':/:', self) # hasanta + self = p_begin_Ha.sub('H', self) # Ha in middle must be before -kars + xlat = Xlator(dict_ha) + self = xlat.xlat(self) + self = ao.sub(r"aO", self) + self = ei.sub(r"eI", self) + self = eo.sub(r"eO", self) + self = eu.sub(r"eU", self) + self = io.sub(r"iO", self) + self = iu.sub(r"iU", self) + self = ui.sub(r"uI", self) + self = p_e.sub(eikar, self) + self = ii.sub('III', self) + self = p_i.sub(eikar, self) # these have to appear before + self = p_ou.sub(oukar, self) + self = p_oi.sub(oikar, self) + self = p_o.sub(okar, self) # changing a to o + self = oioi.sub(r'{oi}', self) + self = III.sub('ii', self) + self = aii.sub('aII', self) + self = ai.sub('aI',self) + self = ae.sub('aE',self) + self = au.sub('aU',self) + self = aa.sub('VxV',self) + self = ao.sub('XzX',self) # ko --> ekao ---> eka + self = a.sub('o',self) + self = XzX.sub('a',self) + self = VxV.sub('a',self) + # ORDERS IN FOLLOWING IMPORTANT + self = chandra.sub('"V', self) + xlat = Xlator(dict_nasa) + self = xlat.xlat(self) + self = yukta_bnj.sub(yukta,self) + self = xlat.xlat(self) + xlat = Xlator(dict_rf) + self = xlat.xlat(self) + xlat = Xlator(fala('r',list('bcdfghjklmpqstvwxzBCDFGHJLMPQRSTWXYZ\/'))) + self = xlat.xlat(self) + xlat = Xlator(fala('y',list('bcdfghjklmnpqrstvwxyzBCDFGHJLMNPQRSTVWXYZ\/'))) + # putting in r,h in this list + self = p_YA.sub(YAkar, self) # for YA-kar's bangtex symbol + self = xlat.xlat(self) + xlat = Xlator(dict_conj) + self = xlat.xlat(self) + for f in list('[mlw]'): + xlat = Xlator(fala(f,list('bcdfghjklmnpqstvwxyzBCDFGHJLMNPQRSTVWXYZ'))) + self = xlat.xlat(self) + self = Ha.sub('h', self) + ng_prob = re.compile(r'NG(?=M|r)') + self = ng_prob.sub('NG/',self) + self = ngm.sub('NG/m', self) # only for the exceptional baNGmay + return self + + +def bn_cosmetic(self): + self = bn(self) + # cosmetic changes + # changing position of u and uu under anomalous consonants + self = self.replace(r'Yuu', 'uu{\kern-.06em}Y') + self = self.replace(r'Yu', 'u{\kern-.06em}Y') + self = anomaly_u.sub(ukar, self) + self = u_kern.sub('em}u{\\kern.23em}', self) + self = uu_kern.sub('em}uu{\\kern.23em}', self) + self = self.replace(r'{\kern-.23em}{rR}','{\\kern-.23em}{rR}{\\kern.23em}') + self = self.replace(r'XW', 'X\\kern-.25em\lower.2em\hbox{W}\\kern.25em') + # for xwa need to lower ba-fala + self = self.replace(r'TW', 'T\\kern-.1em\lower.3em\hbox{W}\\kern.1em') + # for Twa need to position ba-fala + self = self.replace(r'T{\kern-.23em}Ru','''T{\kern-.2em}\lower.1em\hbox{R}\lower.15em + \hbox{u}\kern.2em''') + # for Tru you need to lower R & u + # changing shhT and shhTha from default to more orthodox forms + self = self.replace(r'Sh/Th', '{\char178\kern-2pt\char70}') + self = self.replace(r'Sh/T', '{\char178\kern0pt\char84}') + return self + + +def bnfn(self): # for using in fnmode as a function + return bn(self.group()) # in a re.sub statement + +def bnfn_cosmetic(self): # for using in fnmode as a function + return bn_cosmetic(self.group()) # in a re.sub statement + + +# SUBSTITUTIONS : + +if __name__ == "__main__": + + text = fi.read() # Read text --- treating the whole + # content as a SINGLE string + fn_test = re.search(fnmod_delim, text) + bn_test = re.search(bnmod_delim, text) + fnmode = "" + if fn_test: + fnmode = "True" + print "fnmode selected." + elif bn_test: + fnmode = "False" + print "bnmode selected." + +# Now translate the text +# The delimiters are handled differently in BNMODE and FNMODE. +# Hence, the delimiter substitution and transliteration +# are to be performed inside the loops. + + if fnmode == "True": # case: FOREIGN MODE: START + # Manipulating delimiters + text = fnmod_delim.sub("@@@", text) + # first do the roman transliteration, if any + sn_list = sndelim.split(text) + for i in range(len(sn_list)): + if i%2 == 0: + pass + else: + text = sn_list[i] + text = b2e(text).strip() + sn_list[i] = text + text = "".join(sn_list) + big_list = bndelim.split(text) + for i in range(len(big_list)): + if i%2 == 0 : + pass + else: + text = big_list[i] + smal_list = dollar.split(text) + for j in range(len(smal_list)): + if j%4 == 0 : # Recall that for dollars + text = smal_list[j] # we have kept the delimiters + if Ancient_bng == "True": # for --ancient option + text = text.replace("y","{}") + else: + pass + if cosmetix == "False": # for --transparent option + text = bn(text) + else: + text = bn_cosmetic(text) + smal_list[j] = text + text = "".join(smal_list) + big_list[i] = text.strip() + text = "".join(big_list) # FOREIGN MODE: END + else: # case: BNMODE: START + # Manipulating delimiters + text = sndelim.sub("@b2e @@@ ", text) + text = bnmod_delim.sub("@@@", text) + # first do the roman transliteration, if any + sn_list = sndelim.split(text) + for i in range(len(sn_list)): + if i%2 == 0: + pass + else: + text = sn_list[i] + text = b2e(text).strip() + sn_list[i] = text + text = "".join(sn_list) + big_list = fndelim.split(text) + for i in range(len(big_list)): + if i%4 == 0 : + text = big_list[i] + if Ancient_bng == "True": # for --ancient option + text = nonltx_word.sub(y_blank_ancient, text) + else: + pass + if cosmetix == "False": # for --transparent option + text = nonltx_word.sub(bnfn, text) + else: + text = nonltx_word.sub(bnfn_cosmetic, text) + big_list[i] = text.strip("\n") + text = "".join(big_list) + # now split and join again to get rid of the delimiter @@@ + text = "".join(text.split("@@@")) # BNMODE: END +# write in the output file + o_file.write(text) + + timing.finish() + +# on standard output + time_taken = float(timing.micro()) / 1000000 + print "Processed %s in %ss. Output written in %s." % (input_filename, time_taken, out_file_name ) diff --git a/language/bengali/mkbangtex/mkbangtex.bang b/language/bengali/mkbangtex/mkbangtex.bang new file mode 100644 index 0000000000..7679a6b534 --- /dev/null +++ b/language/bengali/mkbangtex/mkbangtex.bang @@ -0,0 +1,420 @@ +\documentclass[11pt]{barticle} +\usepackage{amsmath,amssymb,amsfonts,pifont,mathbang} +\usepackage{pstricks} +\hoffset -1.2in +\voffset -.5in +\textwidth 7in +\textheight = 8.5in +\def\mkbangtexversion{1.1} +\title{ baaNGalaa theke {\rm\LARGE \bangtex: \mkbangtex}\\ +\hskip 2.5in \foreign{\tt(Version \mkbangtexversion)}} +\author{ koushik raay} +\date{ taattwik padaarthabijnaan bibhaag\\ +iNDiyaan esosiyeshan far di kaalTibheshan af saayens\\kalikaataa 700 032, bhaaratabarshha} +\renewcommand{\theequation}{\bng\arabic{equation}} +\renewcommand\emph[1]{{\bns #1}} +\renewcommand{\contentsname}{{\lbng suucii}} +\newcommand\foreign[1]{{\rm #1}} +\newcommand\fncmd[2]{{\tt {#1}{#2}}} +\newcommand\bangtex{{\rm @fn Bang\TeX @fn }} +\newcommand\mkbangtex{{\tt @fn mkbangtex @fn }} +\begin{document} +\bng +\maketitle +\thispagestyle{empty} +\setcounter{page}{0} +\vfill +\tableofcontents +\clearpage +\section{ prabeshak} +\mkbangtex ekaTi \foreign{Python} \foreign{pre-processor}. eTi \bangtex -er sahaayikaa. +er muul uddeshya romaan harafe baaNGalaa lekhaar +kichhu subidhaa bidhaan. +\bangtex -e Taaip karaar samay Juktabyanjan eba_m e-kaar, +i-kaar, oi-kaar o ou-kaar lekhaar janya kichhu niyam maanate hay. +ei niyamaguli aadyopaanta Juktinirbhar, byatikramahiin, gaaNitik niyamer mata. +Jeman, Juktabyanjan lekhaa hay bhagnaa_msha hisaabe. r, m, l, J-phalaa +lekhaa hay i_mreji kyaapiTaal harafe. kintu, ei riiti baaNGalaa +uchchaaraNaanuga naa haoyaay +taate Taaip karate beshi samay laage. \mkbangtex +ucchaaraNaanuga romaan haraphe Taaip karaa baaNGalaa lekhaa theke +\bangtex -er upaJogii ekaTi \foreign{\LaTeX} faail baaniye +dey. +\verb|mkbangtex| \verb|--help| byabahaar kare sa_mxipta saahaaJyasuutra o byabahaarabidhi +paaoyaa Jaabe: +%\begin{verbatim} +{\tt\small \obeylines +@fn\noindent +This is mkbangtex Version \mkbangtexversion. +It creates a BangTeX file from a Bengali document written +phonetically in Roman script. It works in two modes, which +are automatically detected: +bengali: converts anything but single-word latex +\hskip .8in commands not protected by enclosing with \fncmd{@}{fn}'s. +foreign: converts only the portions enclosed within +\hskip .8in a pair of \fncmd{@}{bn}'s. +CAUTION: Only ONE mode can be used in a file. +A piece of text enclosed within a pair of \fncmd{@}{b2e}'s is converted +from Bengali to acctented Roman script following the IAST (1912) +rules. Works in both modes. +[See accompanying documentation for further details.] +--- +\begin{verbatim} + Usage: mkbangtex [-h, --alphabet --transparent, --ancient, -o <out_file>] <in_file> + -h, --help : print this page + --alphabet : transliteration table + --transparent : transparent symbols and default positioning + --ancient : ancient Bengali --- without antastha ya + -o <out_file> : specify output file (default: <in_file>.tex) + +@fn +\end{verbatim} +} +\noindent\verb|<out_file>| nirdishhTa karaa naa thaakale \verb|<in_file>.tex| +naame ekaTi \foreign{\LaTeX} faail toiri habe. + +{\color{red} +Jadi kebal \verb|text| Taaipa karate hay, taahale ei \foreign{pre-processor} byabahaar +karaar sahajatama upaay hala ucchaaraNaanuga baaNGalaa \verb|text| sa_mbalita +ekaTi \foreign{\LaTeX} phaail likhe +\begin{verbatim} +@fn +mkbangtex -o <out_file> <in_file> +@fn +\end{verbatim} +chaaliye neoyaa. \verb|mkbangtex| eka shabda-bishishhTa +\foreign{\LaTeX} \foreign{command} guli chhaarhaa +anya shabdagulike badale ekaTi \foreign{\bangtex} phaail toiri kare debe. +`shabda' arthe duTi \foreign{whitespace} +-er madhyabartii a_msha. Jeman, \verb|\section{prabeshak}| ekaTi shabda. ataeb, +\verb|\section| -er naam baaNGalaay likhate hale \verb|prabeshak| kathaar aage o pare +ph~naak diye @fn \verb|\section{ prabeshak }| @fn likhate habe. +paxaantare, \verb|\begin{center}| ekaTi shabda, kaajei taa' aparibartita thaakabe.} + +kintu lekhaar madhye i_mreji shabda, chhabi baa gaaNitik pharmuulaa thaakale kaaj kichhu +beshi. ebaar taar aalochanaa. +%%%%%%%%%%% +\subsection{ duTi dhaaraa: \foreign{bengali} o \foreign{foreign} } +\verb|mkbangtex| -er du'Ti dhaaraa baa +\foreign{mode} aachhe: \verb|bengali| o \verb|foreign|. +Je dhaaraay phaaile mulata~h baaNGalaay lekhaa aachhe, seTi \verb|bengali| dhaaraa. +ei dhaaraay \verb|mkbangtex| eka shabda-bishishhTa +\foreign{@fn \LaTeX~command @fn} guli aparibartita rekhe anyaanya shabdaguli paribartita karabe. +ei dhaaraay konao a_msha aparibartita raakhaar janye ( Jeman, baaNGalaa lekhaar madhye +i_mreji shabda likhate hale) sei a_msha \fncmd{@}{fn} dwaaraa beshhTita ka're dite habe. +udaaharaNaswaruup, niicher samiikaraNaTi, +\begin{equation} +@fn +a = b+ cd/5! +@fn +\end{equation} +eibhaabe lekhaa Jaabe:\\ +\verb|\begin{equation}| \\ +\fncmd{@}{fn}\\ +@fn\verb|a = b+cd/5!| @fn \\ +\fncmd{@}{fn} \\ +\verb|\end{equation}| \\ +spashhTata~h, \verb|\begin{equation}|, \verb|\end{figure}| ityaadi eka-shabda-bishishhTa +\foreign{@fn \LaTeX~command @fn} haoyaay +eder beshhTaniir baaire raakhaa Jaay. bisheshhata~h \verb|mathmode|, \verb|figure|, +\verb|verbatim| ityaadi \foreign{environment} -er madhye +\fncmd{@}{fn} beshhTanii atyanta upaJogii. + +\verb|foreign| dhaaraa er Thik bipariit. dharaa Jaak ekaTi muulata~h bideshii bhaashhaay +(Jeman \foreign{\LaTeX}!) +lekhaar madhye kichhu baaNGalaa shabda byabahaar karate habe. er janye \verb|bengali| +byabahaar karaa anarthak --- \verb|bengali| dhaaraay \verb|mkbangtex| chalate +apexaak_rta beshi samay laage. +ei xetre muul phaailer madhye Je Je a_msha baaNGalaay likhate habe, sei a_mshagulike +\fncmd{@}{bn} dwaaraa beshhTita ka're dilei chalabe. ete \foreign{runtime} anek kam +laagabe. \verb|foreign| dhaaraay \foreign{@fn \LaTeX~command @fn} guli +\fncmd{@}{bn} beshhTaniir baairei thaakabe. phale, eder konao paribartan habe naa. Jeman, +\verb|\section| -er naam likhate \verb|\section{|\fncmd{@}{bn} \verb|prabeshak| +\fncmd{@}{bn}\verb|}| +likhate habe. paashaapaashi dubaar \fncmd{@}{bn} lekhaa Jaabe naa --- ete gaNDagol habe. +duTi dhaaraar bibaraN o beshhTaniir taalikaa niiche punaraay deoyaa ha'la: +\begin{center} +\begin{tabular}{|lcc|} +\hline +dhaaraa (\foreign{mode}) & prakaar (\foreign{type}) +& beshhTanii (\foreign{delimiter}) \\ +\hline +\verb|bengali| & baaNGalaa & \fncmd{@}{fn} \\ +\verb|foreign| & bideshii & \fncmd{@}{bn}\\ +\hline +\end{tabular} +\end{center} +ubhay dhaaraatei Dalaar diye +gaaNitik farmuulaa swaabhaabik bhaabei lekhaa Jaabe: $a = bd + c$. +eibhaabe kam-sa_mkhyak i_mreji +shabdao lekhaa Jaay: $\text{like this}$. + +phaaile \fncmd{@}{bn} \sh{ athabaa} \fncmd{@}{fn} thaakale \verb|mkbangtex| saThik \foreign{mode} +byabahaar karabe. sutaraa_m, ekai phaaile du'Ti dhaaraa byabahaar karaa Jaabe naa. +paxaantare, +\fncmd{@}{fn} baa \fncmd{@}{bn} -er konaoTi{i} naa thaakale \verb|bengali| dhaaraa byabah_rta +habe. ei dhaaraai \foreign{\mkbangtex} -er puurbokta \foreign{default} dhaaraa. +%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{ niyamaabalii} +ebaar ucchaaraNaaanuga baaNGalaa lekhaar bidhi. \verb|bengali| eba_m \verb|foreign| ubhay +dhaaraatei ei bidhi praJojya. +ucchaaraN anusaare lekhaar subidhaa ha'la, niyamaguli anumaan ka're +neoyaa Jaay. uparantu, muul lekhaar paaThaJogyataa b_rddhi paay. +\mkbangtex -eo sei subidhaa paaoyaa Jaabe. +anumaan-nirbhar lekhaay bhul habaar sambhaabanaa atyanta kam. ha'le ei +DakumenTeshaner parabartii +a_msha parhabaar prayojan ha'te paare. +echhaarhaa, \verb|--alphabet| \foreign{option} byabahaar kare samasta cinher taalikaa +milabe. +\subsection{ byanjan barNa} +byanjan barNagulir janya du'Timaatra byatikram chhaarhaa sab +cinhai \bangtex -er DakumenTeshane +Jeman balaa aachhe, temanai lekhaa Jaabe. byatikramii o atirikta +cinhaguli, +\begin{center} +\begin{tabular}{ll} +\foreign{@fn c, ch @fn} & ch \\ +\foreign{@fn chh @fn} & chh \\ +\foreign{@fn Sh, shh @fn} & shh \\ +\foreign{@fn x @fn} & x \\ +\foreign{@fn h, H @fn} & h \\ +\end{tabular} +\end{center} +anyaanya byanjan barNer cinhaguli \bangtex -er matai. shudhu ekhan aar +bhagnaa_msha diye +Juktaaxar athabaa kyaapiTaal harafe -falaa +likhate habe naa. byanjan barNaguli parapar likhalei +chalabe, Jeman, +ucchhanna, gaangeya, ashwaththa, +uchchiNGRe, mandrya, pouNDrabardhan, +marmantuda, ei shabdaguli likhate Jathaakrame +@fn +\begin{verbatim} +ucchhanna, gaangeya, ashwaththa, uchchiNGrhe, mandrya, pouNDrabardhan, marmantuda +\end{verbatim} +@fn +Taaip karate habe. kintu, ekhan du'Ti +byanjan barNa paashaapaashi abik_rta +lekhaar janya taader maajhe \verb|a| likhate habe, Jeman +\verb|chalabe|: chalabe, aar \verb|chaalaabe|: chaalaabe kintu \verb|chalbe|: chalbe. +ekhaane \verb|a| -r bhuumikaa \bangtex -er \verb|o| -r mata. +\verb|o| diye ekhan o-kaar baa o lekhaa habe. +\subsection{ swarabarNa } +swarabarNa o tadbhuuta `kaar' lekhaar niyam ei rakam: +\begin{center} +\begin{tabular}{lccc} +&$\text{a}$ & @fn \verb|a, aman| @fn & a, aman \\ +&$\text{aa}$ & @fn \verb|aa, aami, maataa| @fn & aa, aami, maataa \\ +&$\text{i}$ & @fn \verb|i, icchhe, pitaa| @fn & i, icchhe, pitaa \\ +&$\text{ii}$ & @fn \verb|ii, iishaan, riiti| @fn & ii, iishaan, riiti \\ +&$\text{u}$ & @fn \verb|u, uT, baabu | @fn & u, uT, baabu, \\ +&$\text{uu}$ & @fn \verb|uu, ruup| @fn & uu, ruup \\ +\ding{235} &$\text{Ri}$ & @fn \verb|Ri, {RR}, Rishhi| @fn & Ri,{RR}, Rishhi \\ +\ding{235} &$\text{Ri-kaar}$ & @fn \verb|_r, k_rshhak, baTak_rshhNa, h_rday| @fn & + _r, k_rshhak, baTak_rshhNa, h_rday \\ +&$\text{e}$ & @fn \verb|e, bane, ebaar| @fn & e, bane, ebaar \\ +&$\text{oi}$ & @fn \verb|oi, oisab, boitaalik| @fn & oi, oisab, boitaalik \\ +\ding{235} &$\text{o+i}$ & @fn \verb|{o}{i}, {o}{i}sab| @fn & + {o}{i}, {o}{i}sab \\ +&$\text{o}$ & @fn \verb|o, bhaalo, obhaabe| @fn & o, bhaalo, obhaabe \\ +&$\text{ou}$ & @fn \verb|ou, outsukya, noukaa| @fn & ou, ou_tsukya, noukaa \\ +&$\text{ai, aai}$ & @fn \verb|ai, bai, aai, Jaaiba| @fn & ai, bai, aai, Jaaiba \\ +&$\text{ae, aae}$ & @fn \verb|ae, ataeb, aae, naae| @fn & ae, ataeb, aae, naae \\ +&$\text{aii, aaii}$ & @fn \verb|aii, aaii, baaiijii| @fn & + aii, aaii, baaiijii \\ +&$\text{au, aau}$ & @fn \verb|mau, jhaaugaachh| @fn & mau, jhaaugaachh \\ +&$\text{ao, aao}$ & @fn \verb|ao, aao, haaoyaa| @fn & ao, aao, haaoyaa \\ +&$\text{iu, iiu}$ & @fn \verb|iu, iiu, piu, jiiu| @fn & iu, iiu, piu, jiiu \\ +\ding{235} &$\text{i+i}$ & @fn \verb|i{i}| @fn & ekaTi{i} \\ +&$\text{io, iio}$ & @fn \verb|io, iio, kario, baaTiio| @fn & + io, iio, kario, baaTiio \\ +&$\text{ei}$ & @fn \verb|ei, nei| @fn & ei, nei \\ +&$\text{eu}$ & @fn \verb|eu, bheu| @fn & eu, bheu \\ +&$\text{eo}$ & @fn \verb|eo, Jeo| @fn & eo, Jeo \\ +&$\text{ui, uii, uui, uuii}$ & @fn \verb|ui, uui, uii, uuii, bh~nuiNJaa, shyuui| @fn +& ui, uui, uii, uuii, bh~nuiNJaa, shyuui \\ +\end{tabular} +\end{center} +Je chaaraTi ruup anumaan karate saamaanya beg pete ha'te paare taader +cinhita karaa aachhe. + +\subsection{ naasikya dhwani} +naasikya dhwanir xetre +\bangtex -er subidhaa aparibartita aachhe. +Jeman, +helasinki anka shankha anga anchal manobaanchhaa byanjan jhanjhaa +baNTan luNThan kaaNDa DheNDhan danta paantha bandar aandhaar m_rnmay +--- kintu chinha aparaaNha bramhaa baaNGmay baaNGalaa: +\begin{verbatim} +@fn +helasinki anka shankha anga anchal manobaanchhaa byanjan jhanjhaa +baNTan luNThan kaaNDa DheNDhan danta paantha bandar aandhaar m_rnmay +--- chinha aparaNha bramhaa baanNGmay baaNGalaa +@fn +\end{verbatim} +\subsection{ khaNDa _t , hasanta, bisarga o saanunaasik barNa} +khaNDa _t , hasanta, bisarga o saanunaasik barNa +lekhaar janya ei saaraNii byabahaar karate habe: +\begin{center} +\begin{tabular}{rcc} + khaNDa _t: & @fn \verb|_t| @fn & _t \\ + hasanta: & @fn \verb|_h| @fn & _h \\ + bisarga: & @fn \verb|~h| @fn & ~h \\ + anuswaar: & @fn \verb|_m| @fn & _m \\ + chandrabindu: & @fn \verb|~n| @fn & ~n +\end{tabular} +\end{center} +tabe, _t-er pare k, kh, x, p, ph ki_mbaa s thaakale kebal \verb|t| -o lekhaa Jaabe. Jeman, +utkaT, utkhaat, u_txipta, utpal, u_tphulla, utsa e'guli +emani{o} lekhaa Jaabe. arthaa_t ei du'Ti{i} Thik: +@fn \verb|utkaT, u_tkaT, u_tpal, utpal| @fn ityaadi. kintu +sthaanuba_t: @fn \verb|sthaanuba_t|@fn, jalabhaat: \verb|jalabhaat|. +%%%%%% +\subsubsection{ aarao udaaharaN } +\verb|bhoir~no| - \verb|bhair~no| - \verb|bhoiro~n|, \verb|s~nodaraban| - +\verb|so~ndaraban|: +bhoir~no - bhair~no - bhoiro~n, s~nodaraban - so~ndaraban --- chandrabindur abasthaanik +paarthakya laxyaNiiya. temanai, +saala_mkaaraa, si_mha, sig_hnyaal: +@fn \verb|saala_mkaaraa, si_mha, sig_hnyaal|. @fn + +bisarga-Jukta shabder udaaharaN: +praata~hraash, ota~hprota, swabhaabata~h, maabhoi~h. e'guli Jathaakrame +\verb|praata~hraash|, \verb|ota~hprota|, \verb|swabhaabata~h|, \verb|maabhoi~h|. +\section{ romaan pratibarNiikaraN } +baaNGalaa baa sa_msk_rta shabda romaan haraphe lekhaar janya +\foreign{@fn accented letters @fn} byabah_rta hay. erajanya paribartaniiya +a_msher aage o pare \fncmd{@}{b2e} likhate habe. Jathaa, aadi shlok, \\ +\parbox{.5\textwidth}{% +maa nishhaada pratishhThaa_m twama gamaa~h shaashwatiisamaa.\\ +Ja_tkrounchamithunaadekamabadhi kaamamohitam_h..\\ +}% +\parbox[b]{.5\textwidth}{% +@b2e +{\rm maa nishhaada pratishhThaa_m twama gamaa~h shaashwatiisamaa.\\ +Ja_tkrounchamithunaadekamabadhi kaamamohitam_h..} +@b2e +}% + +\noindent +eibhaabe likhate habe:\\ +\noindent\fncmd{@}{b2e} +\begin{verbatim} +@fn +{\rm maa nishhaada pratishhThaa_m twama gamaa~h shaashwatiisamaa.\\ +Ja_tkrounchamithunaadekamabadhi kaamamohitam_h..} +@fn +\end{verbatim} +\fncmd{@}{b2e}\\ +\foreign{@fn International Alphabet of Sanskrit Transliteration (IAST), 1912 @fn} + anuJaayii pratibarNiikaraN-bidhi niicher saaraNiite deoyaa ha'la. +\parbox{.5\textwidth}{% +a aa i ii u uu Ri e oi o ou\\ +ka kha ga gha NG\\ +ch chh ja jha NJ\\ +Ta Tha Da Dha Na\\ +ta tha da dha na\\ +pa pha ba bha ma\\ +Ja ra la ba\\ +sha shha sa ha\\ +rh rhh _m ~ha ~n +}% +\parbox{.5\textwidth}{% +@b2e +{\rm +a aa i ii u uu Ri e oi o ou\\ +ka kha ga gha NG\\ +ch chh ja jha NJ\\ +Ta Tha Da Dha Na\\ +ta tha da dha na\\ +pa pha ba bha ma\\ +Ja ra la wa\\ +sha shha sa ha\\ +rh rhh _m ~ha ~n} +@b2e +}% + +\noindent +sa_msk_rta bhaashhaay chandrabindu-r astitwa nei. phale, \foreign{IAST} -r niyame +er janye konao +cinha nirdishhTa nei. ekhaane ekaTi cinha nirdishhTa ha'la. paxaantare, +baaNGalaay oshhThyabargiiya o anta~hasthabargiiya `ba'-er konao paarthakya nei. +anta~hasthabargiiya `ba'-er janya \foreign{IAST} -te \foreign{wa} baa +\foreign{va} lekhaa saabyasta hayechhe. +ekhaane prathamaTi raakhaa ha'la. +%%%%%%%%%%%%% +\section{ truTi sa_mshodhan} +\bangtex -e k, x, NG, ch, jha, Ta, Da, Dha, pha eba_m bha --- ei barNagulir o +J-falaa Jukta barNer u-kaar, +uu-kaar eba_m Ri-kaar kichhuTaa sthaanachyuta dekhaay. \mkbangtex ei truTi meraamat +ka're dey. Jeman kul, kuul, xudhaarta, ghuNGur, chula, jhulojhuli, Tul, Dumur, +DhuluDhulu, phulamaalaa, bhulabhraanti, bhuut, k_rsha, bh_rngaar. +T-e o x-e ba-falaar truTi \bangtex -er DakumenTeshane ullekh karaa hayechhe. +Ta-e Jugapa_t ra-falaa o u-kaar thaakaleo saamaanya +abasthaanik truTi hay. egulio meraamat karaa ha'la: khaTwaa, ixwaaku, Truth. +parisheshhe, \bangtex -e {\char235} o {\char236} lekhaa hay \emph{ swacchha} chinhe, +kintu shhka, shhpa, shhpha aswacchha chinhe. \mkbangtex pratham du'Tikeo +`aswacchha' ka're debe: JashhTi, shushhkakaashhTha, baashhpa, nishhphalaa. + +\mkbangtex -er \verb|--transparent| \foreign{option} byabahaar ka're ei a_msher +paribartita chinhagulir paribarte \bangtex -er \foreign{default} riiti byabahaar karaa +Jaabe. +%%%%%%%%%%%% +\section{ @fn {\tt ancient}@fn ap_hshan} +praachiin baaNGalaa lekhaar janya ei \foreign{option} -Tir byabahaar siimita. +praachiina baaNGalaay antastha ya-r byabahaar chhila naa. ei praachiin ruuper byabahaar +charJaagiitite dekhaa Jaay. udaaharaNaswaruup, ei riitite kaayaa hay `kaa{aa}'. +@fn \verb|mkbangtex --ancient| +@fn \foreign{option} byabahaar kare ei praachiin baaNGalaa lekhaa Jaay. niicher +udaaharaNe @fn{\tt --ancient} \foreign{option} @fn saha o taa chhaarhaa \verb|mkbangtex| chaalaale ei +paarthakya bojhaa Jaabe: +\begin{verbatim} +@fn +kaayaa tarubara pancha bi Daal. \\ +chanchala chiiye paiTho kaal.. \\ +dirhha kari mahaasuha parimaaN. \\ +lui bhaNayi guru puchchhiya jaaN..\\ +sayala samaahiya kaahi kariyai. \\ +sukha dukhete~n nichita mariyai..\\ +erhi eu chhaandaka baandha karaNaka paaTera aas.\\ +sunupaakha bhiti lehu re paasa..\\ +bhaNai lui aameh_h jhaane diThaa.\\ +dhamaNa chamaNa beNi piNDi baiThaa.. +@fn +\end{verbatim} +%%%%%%%%%%%% +\section{ byatyay} +\bangtex -e `aYaa' chhaapaar janya \verb|AYa| likhalei chale. kintu \mkbangtex -e +\verb|AYa| baa \verb|aYa| likhale AYa, \verb|Aya| baa \verb|aya| likhale aya chhaapaa haya. +phale, ekhan \bangtex o \mkbangtex -er +Joutha niyame \verb|aYaa| likhate habe, \verb|aYaasiD|: aYaasiD. +parantu, \bangtex -e aYaa-r +dhwani o tatsa_mshlishhTa -kaar lekhaar janya +natun chinha prastaabita hayechhe: +\verb|AA|: {AA} o \verb|aa|: {aa}. +kintu \mkbangtex -e \verb|AA=aa|: aa. phalata~h, \bangtex -er chinhagulir janya +natun niyam dhaarJa hayechhe. \verb|YA| likhale oi cinhaguli chhaapaa habe: +@fn \foreign{\tt YAkaa kYAna ele?} @fn: YAkaa kYAna ele? +laxyaNiiya Je, YA eba_m {aa} +lekhaar janya du'Ti p_rthak chinha lekhaar prayojan nei. + +echhaarhaa aami ekaTi golamaal peyechhi, \verb|dhanyabaadaarha|: +dhanyabaadaarha, dhanyabaadaarHa likhate giye! e'Ti besh majaar. +\verb|rh| maane rh, aabaar h-ye ref-o. +anya sab jaayagaay dwitiiyaTi{i} habe, +Jeman barNa baa barSha. +kintu, ei xetre du'Ti niyam \foreign{clash} karachhe. +ekhaane \bangtex -er niyam mene prathamaTi{i} +\foreign{default} -e raakhaa ha'la. fale, dwitiiya xetre +\bangtex er niyamamaafik \foreign{H} +diye ``dhanyabaadaarHa'' likhate habe: \verb|dhanyabaadaarHa|. arthaa_t, \bangtex -er +niyamaabalii baada deoyaa Jaabe naa --- seigulio $\text{Z}\!\!$ Vaan_hti habe! +%%%%%%%%%%%%%%%%%%%%%% +\subsection*{ k_rtajnataa} +\mkbangtex prograamaTi \verb|Python2.4.1| -e pariixita. +ei prograamer ekaTi gurutwapurNa a_msha +\foreign{@fn Xavier Defrang @fn} -er {\rm @fn Single-Pass Multiple Replace, +Py Cookbook 81330 @fn} theke g_rhiita hayechhe. +ei prograamer byaapaare afuranta saahaaJya ka'rechhen jayadiip +majumadaar. +\end{document} diff --git a/language/bengali/mkbangtex/mkbangtex.pdf b/language/bengali/mkbangtex/mkbangtex.pdf Binary files differnew file mode 100644 index 0000000000..25f283bb2d --- /dev/null +++ b/language/bengali/mkbangtex/mkbangtex.pdf diff --git a/language/bengali/mkbangtex/mkbangtex.tex b/language/bengali/mkbangtex/mkbangtex.tex new file mode 100644 index 0000000000..a4c23ad9b5 --- /dev/null +++ b/language/bengali/mkbangtex/mkbangtex.tex @@ -0,0 +1,396 @@ +\documentclass[11pt]{barticle} +\usepackage{amsmath,amssymb,amsfonts,pifont,mathbang} +\usepackage{pstricks} +\hoffset -1.2in +\voffset -.5in +\textwidth 7in +\textheight = 8.5in +\def\mkbangtexversion{1.1} +\title{ baNGola \*th*e\*k*e {\rm\LARGE \bangtex: \mkbangtex}\\ +\hskip 2.5in \foreign{\tt(Version \mkbangtexversion)}} +\author{ \*k*eou\*S*ik ray} +\date{ ta\*t/tW*ik podar/tho\*b*ig/Yan \*b*ibhag\\ +{I}\*N/D*iyan {E}\*s*ea\*s*i\*y*eSon for \*d*i ka\*l/T*i\*bh*eSon {A}f sa\*y*en/s\\ko\*l*ikata 700 032, bharotobor/Sho} +\renewcommand{\theequation}{\bng\arabic{equation}} +\renewcommand\emph[1]{{\bns #1}} +\renewcommand{\contentsname}{{\lbng suucii}} +\newcommand\foreign[1]{{\rm #1}} +\newcommand\fncmd[2]{{\tt {#1}{#2}}} +\newcommand\bangtex{{\rm Bang\TeX }} +\newcommand\mkbangtex{{\tt mkbangtex }} +\begin{document} +\bng +\maketitle +\thispagestyle{empty} +\setcounter{page}{0} +\vfill +\tableofcontents +\clearpage +\section{ pRo\*b*eSok} +\mkbangtex {E}ko\*T*i \foreign{Python} \foreign{pre-processor}. {E}\*T*i \bangtex -{E}r soHa\*y*ika. +{E}r muul {U}\*d/d*eSYo \*r*eaman Horo\*f*e baNGola \*l*ekhar +\*k*ichu su\*b*idha \*b*idhan. +\bangtex -{E} TaIp korar somoy Juk/tobYon/jon {E}bo{NNG} {E}-kar, +{I}-kar, {OI}-kar {O} {OU}-kar \*l*ekhar jonYo \*k*ichu \*n*iyom mano\*t*e Hoy. +{EI} \*n*iyomogu\*l*i {Aa}\*dY*eapan/to Ju\*k/t*i\*n*ir/bhor, bYo\*t*ikRomoHiin, ga\*N*i\*t*ik \*n*iyo\*m*er moto. +\*J*emon, Juk/tobYon/jon \*l*ekha Hoy bhog/na{NNG}So \*H*isa\*b*e. r, m, l, J-phola +\*l*ekha Hoy {I}{NNG}\*r*e\*j*i kYa\*p*iTal Horo\*f*e. \*k*in/t{\kern-.23em}u{\kern.23em}, {EI} rii\*t*i baNGola +{U}c/caroNanugo na HoOyay +ta\*t*e TaIp koro\*t*e \*b*e\*S*i somoy la\*g*e. \mkbangtex +{U}c/caroNanugo \*r*eaman Horo\*ph*e TaIp kora baNGola \*l*ekha \*th*e\*k*e +\bangtex -{E}r {U}po\*J*eagii {E}ko\*T*i \foreign{\LaTeX} faIl ba\*n*i\*y*e +\*d*ey. +\verb|mkbangtex| \verb|--help| bYoboHar ko\*r*e so{NNG}\*X*ip/to saHaJYosuutRo {O} bYoboHaro\*b*i\*dh*i +paOya Ja\*b*e: +%\begin{verbatim} +{\tt\small \obeylines\noindent +This is mkbangtex Version \mkbangtexversion. +It creates a BangTeX file from a Bengali document written +phonetically in Roman script. It works in two modes, which +are automatically detected: +bengali: converts anything but single-word latex +\hskip .8in commands not protected by enclosing with \fncmd{@}{fn}'s. +foreign: converts only the portions enclosed within +\hskip .8in a pair of \fncmd{@}{bn}'s. +CAUTION: Only ONE mode can be used in a file. +A piece of text enclosed within a pair of \fncmd{@}{b2e}'s is converted +from Bengali to acctented Roman script following the IAST (1912) +rules. Works in both modes. +[See accompanying documentation for further details.] +--- +\begin{verbatim} + Usage: mkbangtex [-h, --alphabet --transparent, --ancient, -o <out_file>] <in_file> + -h, --help : print this page + --alphabet : transliteration table + --transparent : transparent symbols and default positioning + --ancient : ancient Bengali --- without antastha ya + -o <out_file> : specify output file (default: <in_file>.tex) + +\end{verbatim} +} +\noindent\verb|<out_file>| \*n*i\*r/d*i{\char178\kern0pt\char84}o kora na thako\*l*e \verb|<in_file>.tex| +na\*m*e {E}ko\*T*i \foreign{\LaTeX} faIl \*t*{oi}\*r*i Ho\*b*e. + +{\color{red} +Jo\*d*i \*k*ebol \verb|text| TaIpo koro\*t*e Hoy, taHo\*l*e {EI} \foreign{pre-processor} bYoboHar +korar soHojotomo {U}pay Holo {U}c/caroNanugo baNGola \verb|text| so{NNG}bo\*l*ito +{E}ko\*T*i \foreign{\LaTeX} phaIl \*l*i\*kh*e +\begin{verbatim} +mkbangtex -o <out_file> <in_file> +\end{verbatim} +ca\*l*i\*y*e \*n*eOya. \verb|mkbangtex| {E}ko Sob/do-\*b*i\*S*i{\char178\kern0pt\char84}o +\foreign{\LaTeX} \foreign{command} gu\*l*i charha +{A}nYo Sob/dogu\*l*i\*k*e bodo\*l*e {E}ko\*T*i \foreign{\bangtex} phaIl \*t*{oi}\*r*i ko\*r*e \*d*e\*b*e. +`Sob/do' {A}\*r/th*e du\*T*i \foreign{whitespace} +-{E}r modhYobor/tii {A}{NNG}So. \*J*emon, \verb|\section{prabeshak}| {E}ko\*T*i Sob/do. {A}toEb, +\verb|\section| -{E}r nam baNGolay \*l*ikho\*t*e Ho\*l*e \verb|prabeshak| kothar {Aa}\*g*e {O} po\*r*e +phNNak \*d*i\*y*e \verb|\section{ prabeshak }| \*l*ikho\*t*e Ho\*b*e. +poXan/to\*r*e, \verb|\begin{center}| {E}ko\*T*i Sob/do, ka\*j*eI ta' {A}po\*r*ibo\*r/t*ito thako\*b*e.} + +\*k*in/t{\kern-.23em}u{\kern.23em} \*l*ekhar mo\*dhY*e {I}{NNG}\*r*e\*j*i Sob/do, cho\*b*i ba ga\*N*i\*t*ik phor/muula thako\*l*e kaj \*k*ichu +\*b*e\*S*i. {E}bar tar {Aa}\*l*eacona. +%%%%%%%%%%% +\subsection{ du\*T*i dhara: \foreign{bengali} {O} \foreign{foreign} } +\verb|mkbangtex| -{E}r du'\*T*i dhara ba +\foreign{mode} {Aa}\*ch*e: \verb|bengali| {O} \verb|foreign|. +\*J*e dharay phaI\*l*e mulotoh baNGolay \*l*ekha {Aa}\*ch*e, \*s*e\*T*i \verb|bengali| dhara. +{EI} dharay \verb|mkbangtex| {E}ko Sob/do-\*b*i\*S*i{\char178\kern0pt\char84}o +\foreign{ \LaTeX~command } gu\*l*i {A}po\*r*ibo\*r/t*ito \*r*e\*kh*e {A}nYanYo Sob/dogu\*l*i po\*r*ibo\*r/t*ito koro\*b*e. +{EI} dharay \*k*eanoO {A}{NNG}So {A}po\*r*ibo\*r/t*ito rakhar jo\*nY*e ( \*J*emon, baNGola \*l*ekhar mo\*dhY*e +{I}{NNG}\*r*e\*j*i Sob/do \*l*ikho\*t*e Ho\*l*e) \*s*eI {A}{NNG}So \fncmd{@}{fn} dWara \*b*e\*{\char178\kern0pt\char84}*ito ko'\*r*e \*d*i\*t*e Ho\*b*e. +{U}daHoroNosWoruup, nii\*c*er somiikoroNo\*T*i, +\begin{equation} +a = b+ cd/5! +\end{equation} +{EI}bha\*b*e \*l*ekha Ja\*b*e:\\ +\verb|\begin{equation}| \\ +\fncmd{@}{fn}\\\verb|a = b+cd/5!| \\ +\fncmd{@}{fn} \\ +\verb|\end{equation}| \\ +s/po{\char178\kern0pt\char84}otoh, \verb|\begin{equation}|, \verb|\end{figure}| {I}tYa\*d*i {E}ko-Sob/do-\*b*i\*S*i{\char178\kern0pt\char84}o +\foreign{ \LaTeX~command } HoOyay +{E}\*d*er \*b*e{\char178\kern0pt\char84}oniir baI\*r*e rakha Jay. \*b*i\*S*eShotoh \verb|mathmode|, \verb|figure|, +\verb|verbatim| {I}tYa\*d*i \foreign{environment} -{E}r mo\*dhY*e +\fncmd{@}{fn} \*b*e{\char178\kern0pt\char84}onii {A}tYon/to {U}po\*J*eagii. + +\verb|foreign| dhara {E}r \*Th*ik \*b*iporiit. dhora Jak {E}ko\*T*i muulotoh \*b*i\*d*eSii bhaShay +(\*J*emon \foreign{\LaTeX}!) +\*l*ekhar mo\*dhY*e \*k*ichu baNGola Sob/do bYoboHar koro\*t*e Ho\*b*e. {E}r jo\*nY*e \verb|bengali| +bYoboHar kora {A}nor/thok --- \verb|bengali| dharay \verb|mkbangtex| colo\*t*e +{A}\*p*eXak{\kern-.23em}{rR}{\kern.23em}to \*b*e\*S*i somoy la\*g*e. +{EI} \*X*e\*tR*e muul phaI\*l*er mo\*dhY*e \*J*e \*J*e {A}{NNG}So baNGolay \*l*ikho\*t*e Ho\*b*e, \*s*eI {A}{NNG}Sogu\*l*i\*k*e +\fncmd{@}{bn} dWara \*b*e\*{\char178\kern0pt\char84}*ito ko'\*r*e \*d*i\*l*eI colo\*b*e. {E}\*t*e \foreign{runtime} {A}\*n*ek kom +lago\*b*e. \verb|foreign| dharay \foreign{ \LaTeX~command } gu\*l*i +\fncmd{@}{bn} \*b*e{\char178\kern0pt\char84}oniir baI\*r*eI thako\*b*e. pho\*l*e, {E}\*d*er \*k*eanoO po\*r*ibor/ton Ho\*b*e na. \*J*emon, +\verb|\section| -{E}r nam \*l*ikho\*t*e \verb|\section{|\fncmd{@}{bn} \verb|prabeshak| +\fncmd{@}{bn}\verb|}| +\*l*ikho\*t*e Ho\*b*e. paSapa\*S*i dubar \fncmd{@}{bn} \*l*ekha Ja\*b*e na --- {E}\*t*e goN/Do\*g*eal Ho\*b*e. +du\*T*i dharar \*b*iboroN {O} \*b*e{\char178\kern0pt\char84}oniir ta\*l*ika nii\*c*e punoray \*d*eOya Ho'lo: +\begin{center} +\begin{tabular}{|lcc|} +\hline +dhara (\foreign{mode}) & pRokar (\foreign{type}) +& \*b*e{\char178\kern0pt\char84}onii (\foreign{delimiter}) \\ +\hline +\verb|bengali| & baNGola & \fncmd{@}{fn} \\ +\verb|foreign| & \*b*i\*d*eSii & \fncmd{@}{bn}\\ +\hline +\end{tabular} +\end{center} +{U}bhoy dhara\*t*eI Dolar \*d*i\*y*e +ga\*N*i\*t*ik for/muula sWabha\*b*ik bha\*b*eI \*l*ekha Ja\*b*e: $a = bd + c$. +{EI}bha\*b*e kom-so{NNG}khYok {I}{NNG}\*r*e\*j*i +Sob/doO \*l*ekha Jay: $\text{like this}$. + +phaI\*l*e \fncmd{@}{bn} \sh{ {A}thoba} \fncmd{@}{fn} thako\*l*e \verb|mkbangtex| so\*Th*ik \foreign{mode} +bYoboHar koro\*b*e. sutora{NNG}, {E}koI phaI\*l*e du'\*T*i dhara bYoboHar kora Ja\*b*e na. +poXan/to\*r*e, +\fncmd{@}{fn} ba \fncmd{@}{bn} -{E}r \*k*eanoO\*T*i{{I}} na thako\*l*e \verb|bengali| dhara bYoboH{rR}to +Ho\*b*e. {EI} dharaI \foreign{\mkbangtex} -{E}r puu\*r/b*eak/to \foreign{default} dhara. +%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{ \*n*iyomabolii} +{E}bar {U}c/caroNaonugo baNGola \*l*ekhar \*b*i\*dh*i. \verb|bengali| {E}bo{NNG} \verb|foreign| {U}bhoy +dhara\*t*eI {EI} \*b*i\*dh*i pRo\*J*eajYo. +{U}c/caroN {A}nusa\*r*e \*l*ekhar su\*b*idha Ho'lo, \*n*iyomogu\*l*i {A}numan ko'\*r*e +\*n*eOya Jay. {U}poron/t{\kern-.23em}u{\kern.23em}, muul \*l*ekhar paTho\*J*eagYota b{rR}\*d/dh*i pay. +\mkbangtex -{EO} \*s*eI su\*b*idha paOya Ja\*b*e. +{A}numan-\*n*ir/bhor \*l*ekhay bh{\kern-.23em}u{\kern.23em}l Hobar som/bhabona {A}tYon/to kom. Ho'\*l*e {EI} +Dok{\kern-.23em}u{\kern.23em}\*m*e\*n/T*eSo\*n*er porobor/tii +{A}{NNG}So porhobar pRo\*y*eajon Ho'\*t*e pa\*r*e. +{E}charha, \verb|--alphabet| \foreign{option} bYoboHar ko\*r*e somos/to \*c*i\*n/H*er ta\*l*ika +\*m*ilo\*b*e. +\subsection{ bYon/jon bor/No} +bYon/jon bor/Nogu\*l*ir jonYo du'\*T*imatRo bYo\*t*ikRom charha sob +\*c*in/HoI \bangtex -{E}r Dok{\kern-.23em}u{\kern.23em}\*m*e\*n/T*eSo\*n*e +\*J*emon bola {Aa}\*ch*e, \*t*emonoI \*l*ekha Ja\*b*e. bYo\*t*ikRomii {O} {A}\*t*i\*r*ik/to +\*c*in/Hogu\*l*i, +\begin{center} +\begin{tabular}{ll} +\foreign{ c, ch } & c \\ +\foreign{ chh } & ch \\ +\foreign{ Sh, shh } & Sh \\ +\foreign{ x } & X \\ +\foreign{ h, H } & H \\ +\end{tabular} +\end{center} +{A}nYanYo bYon/jon bo\*r/N*er \*c*in/Hogu\*l*i \bangtex -{E}r motoI. Sudhu {E}khon {Aa}r +bhog/na{NNG}So \*d*i\*y*e +Juk/taXor {A}thoba kYa\*p*iTal Horo\*f*e -fola +\*l*ikho\*t*e Ho\*b*e na. bYon/jon bor/Nogu\*l*i poropor \*l*ikho\*l*eI +colo\*b*e, \*J*emon, +{U}c/chon/no, ga\*n/g*eyo, {A}SWo{\char211}o, +{U}\*c/c*i\*NGR*e, mon/dRYo, \*p*eouN/DRobor/dhon, +mor/mon/t{\kern-.23em}u{\kern.23em}do, {EI} Sob/dogu\*l*i \*l*ikho\*t*e JothakRo\*m*e +\begin{verbatim} +ucchhanna, gaangeya, ashwaththa, uchchiNGrhe, mandrya, pouNDrabardhan, marmantuda +\end{verbatim} +TaIp koro\*t*e Ho\*b*e. \*k*in/t{\kern-.23em}u{\kern.23em}, {E}khon du'\*T*i +bYon/jon bor/No paSapa\*S*i {A}\*b*ik{\kern-.23em}{rR}{\kern.23em}to +\*l*ekhar jonYo ta\*d*er ma\*C*e \verb|a| \*l*ikho\*t*e Ho\*b*e, \*J*emon +\verb|chalabe|: colo\*b*e, {Aa}r \verb|chaalaabe|: cala\*b*e \*k*in/t{\kern-.23em}u{\kern.23em} \verb|chalbe|: co\*l/b*e. +{E}kha\*n*e \verb|a| -r bh{\kern-.23em}uu{\kern.23em}\*m*ika \bangtex -{E}r \verb|o| -r moto. +\verb|o| \*d*i\*y*e {E}khon {O}-kar ba {O} \*l*ekha Ho\*b*e. +\subsection{ sWorobor/No } +sWorobor/No {O} tod/bh{\kern-.23em}uu{\kern.23em}to `kar' \*l*ekhar \*n*iyom {EI} rokom: +\begin{center} +\begin{tabular}{lccc} +&$\text{a}$ & \verb|a, aman| & {A}, {A}mon \\ +&$\text{aa}$ & \verb|aa, aami, maataa| & {Aa}, {Aa}\*m*i, mata \\ +&$\text{i}$ & \verb|i, icchhe, pitaa| & {I}, {I}\*c/ch*e, \*p*ita \\ +&$\text{ii}$ & \verb|ii, iishaan, riiti| & {II}, {II}San, rii\*t*i \\ +&$\text{u}$ & \verb|u, uT, baabu | & {U}, {U}T, babu, \\ +&$\text{uu}$ & \verb|uu, ruup| & {UU}, ruup \\ +\ding{235} &$\text{Ri}$ & \verb|Ri, {RR}, Rishhi| & {RR},{RR}, {RR}\*Sh*i \\ +\ding{235} &$\text{Ri-kaar}$ & \verb|_r, k_rshhak, baTak_rshhNa, h_rday| & + {rR}, k{\kern-.23em}{rR}{\kern.23em}Shok, boTok{\kern-.23em}{rR}{\kern.23em}Sh/No, H{rR}doy \\ +&$\text{e}$ & \verb|e, bane, ebaar| & {E}, bo\*n*e, {E}bar \\ +&$\text{oi}$ & \verb|oi, oisab, boitaalik| & {OI}, {OI}sob, \*b*{oi}ta\*l*ik \\ +\ding{235} &$\text{o+i}$ & \verb|{o}{i}, {o}{i}sab| & + {{O}}{{I}}, {{O}}{{I}}sob \\ +&$\text{o}$ & \verb|o, bhaalo, obhaabe| & {O}, bha\*l*ea, {O}bha\*b*e \\ +&$\text{ou}$ & \verb|ou, outsukya, noukaa| & {OU}, {OU}t//sukYo, \*n*eouka \\ +&$\text{ai, aai}$ & \verb|ai, bai, aai, Jaaiba| & {AI}, boI, {AaI}, JaIbo \\ +&$\text{ae, aae}$ & \verb|ae, ataeb, aae, naae| & {AE}, {A}toEb, {AaE}, naE \\ +&$\text{aii, aaii}$ & \verb|aii, aaii, baaiijii| & + {AII}, {AaII}, baIIjii \\ +&$\text{au, aau}$ & \verb|mau, jhaaugaachh| & moU, CaUgach \\ +&$\text{ao, aao}$ & \verb|ao, aao, haaoyaa| & {AO}, {AaO}, HaOya \\ +&$\text{iu, iiu}$ & \verb|iu, iiu, piu, jiiu| & {IU}, {IIU}, \*p*iU, jiiU \\ +\ding{235} &$\text{i+i}$ & \verb|i{i}| & {E}ko\*T*i{{I}} \\ +&$\text{io, iio}$ & \verb|io, iio, kario, baaTiio| & + {IO}, {IIO}, ko\*r*iO, baTiiO \\ +&$\text{ei}$ & \verb|ei, nei| & {EI}, \*n*eI \\ +&$\text{eu}$ & \verb|eu, bheu| & {EU}, \*bh*eU \\ +&$\text{eo}$ & \verb|eo, Jeo| & {EO}, \*J*eO \\ +&$\text{ui, uii, uui, uuii}$ & \verb|ui, uui, uii, uuii, bh~nuiNJaa, shyuui| +& {UI}, {UUI}, {UII}, {UUII}, bhNNuINJa, Suu{\kern-.06em}YI \\ +\end{tabular} +\end{center} +\*J*e caro\*T*i ruup {A}numan koro\*t*e samanYo \*b*eg \*p*e\*t*e Ho'\*t*e pa\*r*e ta\*d*er +\*c*i\*n/H*ito kora {Aa}\*ch*e. + +\subsection{ na\*s*ikYo dhWo\*n*i} +na\*s*ikYo dhWo\*n*ir \*X*e\*tR*e +\bangtex -{E}r su\*b*idha {A}po\*r*ibo\*r/t*ito {Aa}\*ch*e. +\*J*emon, +\*H*elo\*s*i\*n/k*i {A}n/ko Son/kho {A}n/go {A}n/col mo\*n*eaban/cha bYon/jon CoNJ/Ca +boN/Ton luN/Thon kaN/Do \*Z*eN/Zon don/to pan/tho bon/dor {Aa}n/dhar m{rR}nMoy +--- \*k*in/t{\kern-.23em}u{\kern.23em} \*c*in/Ho {A}poraN/Ho bRoHMa baNG/moy baNGola: +\begin{verbatim} +helasinki anka shankha anga anchal manobaanchhaa byanjan jhanjhaa +baNTan luNThan kaaNDa DheNDhan danta paantha bandar aandhaar m_rnmay +--- chinha aparaNha bramhaa baanNGmay baaNGalaa +\end{verbatim} +\subsection{ khoN/Do t// , Hoson/to, \*b*isor/go {O} sanuna\*s*ik bor/No} +khoN/Do t// , Hoson/to, \*b*isor/go {O} sanuna\*s*ik bor/No +\*l*ekhar jonYo {EI} saroNii bYoboHar koro\*t*e Ho\*b*e: +\begin{center} +\begin{tabular}{rcc} + khoN/Do t//: & \verb|_t| & t// \\ + Hoson/to: & \verb|_h| & :/ \\ + \*b*isor/go: & \verb|~h| & h \\ + {A}nusWar: & \verb|_m| & {NNG} \\ + con/dRo\*b*in/du: & \verb|~n| & NN +\end{tabular} +\end{center} +to\*b*e, t//-{E}r po\*r*e k, kh, X, p, ph \*k*i{NNG}ba s thako\*l*e \*k*ebol \verb|t| -{O} \*l*ekha Ja\*b*e. \*J*emon, +{U}t//koT, {U}t//khat, {U}t//\*X*ip/to, {U}t//pol, {U}t//ph{\kern-.23em}u{\kern.23em}lLo, {U}t//so {E}'gu\*l*i +{E}mo\*n*i{{O}} \*l*ekha Ja\*b*e. {A}r/that// {EI} du'\*T*i{{I}} \*Th*ik: \verb|utkaT, u_tkaT, u_tpal, utpal| {I}tYa\*d*i. \*k*in/t{\kern-.23em}u{\kern.23em} +s/thanubot//: \verb|sthaanuba_t|, jolobhat: \verb|jalabhaat|. +%%%%%% +\subsubsection{ {Aa}roO {U}daHoroN } +\verb|bhoir~no| - \verb|bhair~no| - \verb|bhoiro~n|, \verb|s~nodaraban| - +\verb|so~ndaraban|: +\*bh*{oi}\*rNN*ea - bhoI\*rNN*ea - \*bh*{oi}\*r*eaNN, \*sNN*eadorobon - \*s*eaNNdorobon --- con/dRo\*b*in/dur {A}bos/tha\*n*ik +par/thokYo loXYoNiiyo. \*t*emonoI, +salo{NNG}kara, \*s*i{NNG}Ho, \*s*ig:/nYal: \verb|saala_mkaaraa, si_mha, sig_hnyaal|. \*b*isor/go-Juk/to So\*b/d*er {U}daHoroN: +pRatohraS, {O}toh\*pR*eato, sWobhabotoh, ma\*bh*{oi}h. {E}'gu\*l*i JothakRo\*m*e +\verb|praata~hraash|, \verb|ota~hprota|, \verb|swabhaabata~h|, \verb|maabhoi~h|. +\section{ \*r*eaman pRo\*t*ibor/NiikoroN } +baNGola ba so{NNG}s/k{\kern-.23em}{rR}{\kern.23em}to Sob/do \*r*eaman Horo\*ph*e \*l*ekhar jonYo +\foreign{ accented letters } bYoboH{rR}to Hoy. {E}rojonYo po\*r*ibor/toniiyo +{A}{NNG}\*S*er {Aa}\*g*e {O} po\*r*e \fncmd{@}{b2e} \*l*ikho\*t*e Ho\*b*e. Jotha, {Aa}\*d*i \*SL*eak, \\ +\parbox{.5\textwidth}{% +ma \*n*iShado pRo\*t*i{\char178\kern-2pt\char70}a{NNG} tWomo gomah SaSWotiisoma.\\ +Jot//\*kR*eoun/co\*m*ithuna\*d*ekomobo\*dh*i kamo\*m*ea\*H*itom:/..\\ +}% +\parbox[b]{.5\textwidth}{% +{\rm m{\=a} ni\d{s}{\=a}da prati\d{s}\d{th}{\=a}\d{m} twama gam{\=a}\d{h} {\'s}{\=a}{\'s}wat{\=\i}sam{\=a}.\\ +yatkrau\~{n}camithun{\=a}dekamabadhi k{\=a}mamohitam..} +}% + +\noindent +{EI}bha\*b*e \*l*ikho\*t*e Ho\*b*e:\\ +\noindent\fncmd{@}{b2e} +\begin{verbatim} +{\rm maa nishhaada pratishhThaa_m twama gamaa~h shaashwatiisamaa.\\ +Ja_tkrounchamithunaadekamabadhi kaamamohitam_h..} +\end{verbatim} +\fncmd{@}{b2e}\\ +\foreign{ International Alphabet of Sanskrit Transliteration (IAST), 1912 } + {A}nuJayii pRo\*t*ibor/NiikoroN-\*b*i\*dh*i nii\*c*er saroNii\*t*e \*d*eOya Ho'lo. +\parbox{.5\textwidth}{% +{A} {Aa} {I} {II} {U} {UU} {RR} {E} {OI} {O} {OU}\\ +ko kho go gho NG\\ +c ch jo Co NJ\\ +To Tho Do Zo No\\ +to tho do dho no\\ +po pho bo bho mo\\ +Jo ro lo bo\\ +So Sho so Ho\\ +rh rhh {NNG} h NN +}% +\parbox{.5\textwidth}{% +{\rm +a {\=a} i {\=\i} u {\=u} \d{ri} e ai o au\\ +ka kha ga gha {\.n}\\ +c ch ja jha \~{n}\\ +\d{t}a \d{th}a \d{d}a \d{dh}a \d na\\ +ta tha da dha na\\ +pa pha ba bha ma\\ +ya ra la wa\\ +{\'s}a \d{s}a sa ha\\ +\d{R} \d{R}h \d{m} \d{h} \u{n}} +}% + +\noindent +so{NNG}s/k{\kern-.23em}{rR}{\kern.23em}to bhaShay con/dRo\*b*in/du-r {A}\*s/t*itWo \*n*eI. pho\*l*e, \foreign{IAST} -r \*n*iyo\*m*e +{E}r jo\*nY*e \*k*eanoO +\*c*in/Ho \*n*i\*r/d*i{\char178\kern0pt\char84}o \*n*eI. {E}kha\*n*e {E}ko\*T*i \*c*in/Ho \*n*i\*r/d*i{\char178\kern0pt\char84}o Ho'lo. poXan/to\*r*e, +baNGolay {O}{\char178\kern-2pt\char70}Yobor/giiyo {O} {A}n/tohs/thobor/giiyo `bo'-{E}r \*k*eanoO par/thokYo \*n*eI. +{A}n/tohs/thobor/giiyo `bo'-{E}r jonYo \foreign{IAST} -\*t*e \foreign{wa} ba +\foreign{va} \*l*ekha sabYos/to Ho\*y*e\*ch*e. +{E}kha\*n*e pRothomo\*T*i rakha Ho'lo. +%%%%%%%%%%%%% +\section{ tRu\*T*i so{NNG}\*S*eadhon} +\bangtex -{E} k, X, NG, c, Co, To, Do, Zo, pho {E}bo{NNG} bho --- {EI} bor/Nogu\*l*ir {O} +J-fola Juk/to bo\*r/N*er {U}-kar, +{UU}-kar {E}bo{NNG} {RR}-kar \*k*ichuTa s/thanoc{\kern-.23em}u{\kern.23em}{\kern-.06em}Yto \*d*ekhay. \mkbangtex {EI} tRu\*T*i \*m*eramot +ko'\*r*e \*d*ey. \*J*emon k{\kern-.23em}u{\kern.23em}l, k{\kern-.23em}uu{\kern.23em}l, X{\kern-.23em}u{\kern.23em}dhar/to, ghuNG{\kern-.23em}u{\kern.23em}r, c{\kern-.23em}u{\kern.23em}lo, C{\kern-.23em}u{\kern.23em}\*l*eaC{\kern-.23em}u{\kern.23em}\*l*i, T{\kern-.23em}u{\kern.23em}l, D{\kern-.23em}u{\kern.23em}mur, +Z{\kern-.23em}u{\kern.23em}luZ{\kern-.23em}u{\kern.23em}lu, ph{\kern-.23em}u{\kern.23em}lomala, bh{\kern-.23em}u{\kern.23em}lobhRa\*n/t*i, bh{\kern-.23em}uu{\kern.23em}t, k{\kern-.23em}{rR}{\kern.23em}So, bh{\kern-.23em}{rR}{\kern.23em}n/gar. +T-{E} {O} X-{E} bo-folar tRu\*T*i \bangtex -{E}r Dok{\kern-.23em}u{\kern.23em}\*m*e\*n/T*eSo\*n*e {U}\*lL*ekh kora Ho\*y*e\*ch*e. +To-{E} Jugopot// ro-fola {O} {U}-kar thako\*l*eO samanYo +{A}bos/tha\*n*ik tRu\*T*i Hoy. {E}gu\*l*iO \*m*eramot kora Ho'lo: khoT\kern-.1em\lower.3em\hbox{W}\kern.1ema, {I}X\kern-.25em\lower.2em\hbox{W}\kern.25emak{\kern-.23em}u{\kern.23em}, T{\kern-.2em}\lower.1em\hbox{R}\lower.15em + \hbox{u}\kern.2emth. +po\*r*i\*S*e\*Sh*e, \bangtex -{E} {\char235} {O} {\char236} \*l*ekha Hoy \emph{ sWoc/cho} \*c*i\*n/H*e, +\*k*in/t{\kern-.23em}u{\kern.23em} Sh/ko, Sh/po, Sh/pho {A}sWoc/cho \*c*i\*n/H*e. \mkbangtex pRothom du'\*T*i\*k*eO +`{A}sWoc/cho' ko'\*r*e \*d*e\*b*e: Jo\*{\char178\kern0pt\char84}*i, SuSh/koka{\char178\kern-2pt\char70}o, baSh/po, \*n*iSh/phola. + +\mkbangtex -{E}r \verb|--transparent| \foreign{option} bYoboHar ko'\*r*e {EI} {A}{NNG}\*S*er +po\*r*ibo\*r/t*ito \*c*in/Hogu\*l*ir po\*r*ibo\*r/t*e \bangtex -{E}r \foreign{default} rii\*t*i bYoboHar kora +Ja\*b*e. +%%%%%%%%%%%% +\section{ {\tt ancient} {A}p:/Son} +pRaciin baNGola \*l*ekhar jonYo {EI} \foreign{option} -\*T*ir bYoboHar sii\*m*ito. +pRaciino baNGolay {A}n/tos/tho yo-r bYoboHar \*ch*ilo na. {EI} pRaciin ruu\*p*er bYoboHar +cor/Jagii\*t*i\*t*e \*d*ekha Jay. {U}daHoroNosWoruup, {EI} rii\*t*i\*t*e kaya Hoy `ka{{Aa}}'. \verb|mkbangtex --ancient| + \foreign{option} bYoboHar ko\*r*e {EI} pRaciin baNGola \*l*ekha Jay. nii\*c*er +{U}daHoro\*N*e {\tt --ancient} \foreign{option} soHo {O} ta charha \verb|mkbangtex| cala\*l*e {EI} +par/thokYo \*b*eaCa Ja\*b*e: +\begin{verbatim} +kaayaa tarubara pancha bi Daal. \\ +chanchala chiiye paiTho kaal.. \\ +dirhha kari mahaasuha parimaaN. \\ +lui bhaNayi guru puchchhiya jaaN..\\ +sayala samaahiya kaahi kariyai. \\ +sukha dukhete~n nichita mariyai..\\ +erhi eu chhaandaka baandha karaNaka paaTera aas.\\ +sunupaakha bhiti lehu re paasa..\\ +bhaNai lui aameh_h jhaane diThaa.\\ +dhamaNa chamaNa beNi piNDi baiThaa.. +\end{verbatim} +%%%%%%%%%%%% +\section{ bYotYoy} +\bangtex -{E} `{A}Ya' chapar jonYo \verb|AYa| \*l*ikho\*l*eI co\*l*e. \*k*in/t{\kern-.23em}u{\kern.23em} \mkbangtex -{E} +\verb|AYa| ba \verb|aYa| \*l*ikho\*l*e AYo, \verb|Aya| ba \verb|aya| \*l*ikho\*l*e {A}yo chapa Hoyo. +pho\*l*e, {E}khon \bangtex {O} \mkbangtex -{E}r +\*J*eoutho \*n*iyo\*m*e \verb|aYaa| \*l*ikho\*t*e Ho\*b*e, \verb|aYaasiD|: {A}Ya\*s*iD. +poron/t{\kern-.23em}u{\kern.23em}, \bangtex -{E} {A}Ya-r +dhWo\*n*i {O} tot//so{NNG}\*SL*i{\char178\kern0pt\char84}o -kar \*l*ekhar jonYo +not{\kern-.23em}u{\kern.23em}n \*c*in/Ho pRos/ta\*b*ito Ho\*y*e\*ch*e: +\verb|AA|: {AA} {O} \verb|aa|: {aa}. +\*k*in/t{\kern-.23em}u{\kern.23em} \mkbangtex -{E} \verb|AA=aa|: {Aa}. pholotoh, \bangtex -{E}r \*c*in/Hogu\*l*ir jonYo +not{\kern-.23em}u{\kern.23em}n \*n*iyom dhar/Jo Ho\*y*e\*ch*e. \verb|YA| \*l*ikho\*l*e {OI} \*c*in/Hogu\*l*i chapa Ho\*b*e: \foreign{\tt YAkaa kYAna ele?} : {AA}ka \*k*{aa}no {E}\*l*e? +loXYoNiiyo \*J*e, {AA} {E}bo{NNG} {aa} +\*l*ekhar jonYo du'\*T*i p{rR}thok \*c*in/Ho \*l*ekhar pRo\*y*eajon \*n*eI. + +{E}charha {Aa}\*m*i {E}ko\*T*i \*g*ealomal \*p*e\*y*e\*ch*i, \verb|dhanyabaadaarha|: +dhonYobadarho, dhonYobadar/Ho \*l*ikho\*t*e \*g*i\*y*e! {E}'\*T*i \*b*eS mojar. +\verb|rh| ma\*n*e rh, {Aa}bar H-\*y*e \*r*ef-{O}. +{A}nYo sob jayogay \*dW*itiiyo\*T*i{{I}} Ho\*b*e, +\*J*emon bor/No ba bor/Sho. +\*k*in/t{\kern-.23em}u{\kern.23em}, {EI} \*X*e\*tR*e du'\*T*i \*n*iyom \foreign{clash} koro\*ch*e. +{E}kha\*n*e \bangtex -{E}r \*n*iyom \*m*e\*n*e pRothomo\*T*i{{I}} +\foreign{default} -{E} rakha Ho'lo. fo\*l*e, \*dW*itiiyo \*X*e\*tR*e +\bangtex {E}r \*n*iyomoma\*f*ik \foreign{H} +\*d*i\*y*e ``dhonYobadar/Ho'' \*l*ikho\*t*e Ho\*b*e: \verb|dhanyabaadaarHa|. {A}r/that//, \bangtex -{E}r +\*n*iyomabolii bado \*d*eOya Ja\*b*e na --- \*s*eIgu\*l*iO $\text{Z}\!\!$ Van:/\*t*i Ho\*b*e! +%%%%%%%%%%%%%%%%%%%%%% +\subsection*{ k{\kern-.23em}{rR}{\kern.23em}tog/Yota} +\mkbangtex \*pR*eagRamo\*T*i \verb|Python2.4.1| -{E} porii\*X*ito. +{EI} \*pR*eagRa\*m*er {E}ko\*T*i gurutWopur/No {A}{NNG}So +\foreign{ Xavier Defrang } -{E}r {\rm Single-Pass Multiple Replace, +Py Cookbook 81330 } \*th*e\*k*e g{rR}Hiito Ho\*y*e\*ch*e. +{EI} \*pR*eagRa\*m*er bYapa\*r*e {A}f{\kern-.23em}u{\kern.23em}ron/to saHaJYo ko'\*r*e\*ch*en joyodiip +mojumodar. +\end{document}
\ No newline at end of file diff --git a/language/bengali/pandey/README b/language/bengali/pandey/README new file mode 100644 index 0000000000..3f12a17d6f --- /dev/null +++ b/language/bengali/pandey/README @@ -0,0 +1,11 @@ +This is a package for typesetting Bengali. + +Copyright 2002 Anshuman Pandey +The entire package is released under the terms of the +LaTeX Project Public License, version 1, or (at your option) any later +version. The file manifest.txt gives the list of files included in the +package. + +Contact information: + http://www-personal.umich.edu/~pandey/ + (see also the umich.edu directory search) diff --git a/language/bengali/pandey/beng.c b/language/bengali/pandey/beng.c new file mode 100644 index 0000000000..18b69463b9 --- /dev/null +++ b/language/bengali/pandey/beng.c @@ -0,0 +1,1153 @@ +/***************************************************************************/ +/* */ +/* beng.c v2.0 */ +/* */ +/* Source code for "Bengali for TeX" preprocessor. */ +/* Anshuman Pandey <apandey@u.washington.edu>, 2002/03/27 */ +/* */ +/* Based on Revision 1.1 1996/03/05 of skt.c preprocessor developed by */ +/* Charles Wikner <wikner@nacdh4.nac.ac.za> */ +/* */ +/***************************************************************************/ + +#include <stdio.h> +#include <ctype.h> +#include <string.h> + +/* DECLARE FUNCTIONS */ +void exit (int); +void search (void); +void write_outbuf(void); +void write_line (char *); +char * str_find (char *, char *); +void getline (void); +char * command (char *); +void error (char *, int); +void process (void); +void chrcat (char *, char); +void bncont (void); +void bnword (void); +void single (char); +void frontac (void); +void backac (void); +void sam_warning (void); +void samyoga (void); + +FILE *infile, *outfile, *fopen(); +char infilename[80]; +char outfilename[80]; + +#define TRUE 1 +#define FALSE 0 + +unsigned char bnline; /* flag TRUE if there is any Bengali on this line */ +unsigned char bnmode; /* flag TRUE while within {\bn } */ +unsigned char eof_flag; /* flag True when end of file detected */ +unsigned char ac_flag; /* flag TRUE while processing Bengali vowels */ +unsigned char roman_flag; /* flag TRUE if previous output was Roman string */ + +int nest_cnt; /* '{' increments, '}' decrements, while in \bn */ +int err_cnt; /* incremented by any error while in \bn */ +#define err_max 10 /* after err_max errors, program aborts */ +int line_cnt; /* line number of current input line */ + +char inbuf[133]; /* input file line buffer of text being processed */ +char *i_ptr; /* general pointer to input buffer */ +char outbuf[512]; /* output file line buffer of text processed */ +char *o_ptr; /* general pointer to output buffer */ + +unsigned char cont_end; /* flag TRUE when line ends with %-continuation */ +unsigned char cont_begin; /* flag TRUE when line begins after %-continuation */ +unsigned char hal_flag; /* flag TRUE when hal_type detected in syllable */ +unsigned char ac_char; /* storage for working vowel character */ +unsigned char pre_ra; /* storage/flag for 'r' at beginning of samyoga */ +char ac_hook; /* vowel diacritic code */ +char bnbuf[255]; /* storage for Bengali in internal code */ +char *s_ptr; /* general pointer to Bengali buffer */ +char *old_sptr; /* points to samyoga start; used by warning message */ +char work[80]; /* general scratchpad */ +char *w_ptr; /* general pointer to work buffer */ +char tmp[80]; /* temporary buffer for previous syllable */ +int ra; /* post_ra type to use with this character */ +int ya; /* post_ya type to use with this character */ +int post_ra; /* flag to append ra to samyoga */ +int post_ya; /* flag to append ya to samyoga */ +int hasanta; /* flag to add hasanta to samyoga (i.e. no vowel) */ +int hr_flag; /* flag indicates vowel picked up in samyoga (h.r) */ + + +/***************************************************************************/ +/* Function: main() */ +/***************************************************************************/ + +main(argc,argv) +int argc; +char *argv[]; +{ char *p; int k; + + /* Initialization */ + + bnmode = eof_flag = FALSE; + nest_cnt = err_cnt = 0; + line_cnt = 0; + i_ptr = inbuf; *i_ptr = '\0'; + s_ptr = bnbuf; *s_ptr = '\0'; + o_ptr = outbuf; *o_ptr = '\0'; + + /* handle command-line options */ + + k=0; + if (argc>1) strcpy(infilename,argv[1]); + if (strcmp(infilename,"-h")==0) + { k=1; + strcpy(infilename,""); + printf("Preprocessor for \"Bengali for TeX\" package, v2.0, 2002.03.27\n"); + printf("Anshuman Pandey <apandey@u.washington.edu>\n"); + printf("Syntax: beng infile[.bn] [outfile[.tex]]\n"); + exit(0); + } + + /* then get file names */ + switch(argc-k) + { case 3: strcpy(infilename,argv[1+k]); + strcpy(outfilename,argv[2+k]); + break; + case 2: strcpy(infilename,argv[1+k]); + strcpy(outfilename,""); + break; + default: strcpy(infilename,""); + while(strlen(infilename) == 0) + { printf("Input file: "); gets(infilename); } + printf("Output file: "); + gets(outfilename); + } + + if (strlen(outfilename) == 0) + { strcpy (outfilename,infilename); /* default output file name */ + p = strchr(outfilename,'.'); + if (p != 0) *p = '\0'; /* delete out file name extension */ + } + p = strchr(infilename,'.'); + if (p == 0) strcat(infilename,".bn"); /* default input file extension */ + if ((infile=fopen(infilename,"r")) == NULL) + { printf("Cannot open file %s\n",infilename); exit(1); } + getline(); if (eof_flag) + { printf("Input file %s is empty.\n",infilename); exit(1); } + p = strchr(outfilename,'.'); + if (p == 0) + { if (inbuf[0] == '@') strcat(outfilename,".dn"); + else strcat(outfilename,".tex"); /* set default output file extension */ + } + if ((outfile=fopen(outfilename,"w")) == NULL) + { printf("Cannot open output file %s\n",outfilename); exit(1); } + + /* Normal main loop */ + + while(eof_flag == 0) + { while(!bnmode && !eof_flag) search(); /* search for \bn command */ + while( bnmode && !eof_flag) process(); /* process bengali text */ + if (err_cnt >= err_max) + { printf("Too many (%d) errors, aborting program\n",err_cnt); break; } + } + if ((err_cnt < err_max) && (nest_cnt != 0)) + printf("Brace mismatch within \\bn = %d\n",nest_cnt); + fclose(infile); + fclose(outfile); + exit(1); + +} + + +/***************************************************************************/ +/* Function: search() */ +/* */ +/* Search inbuf for '{\bn', getting more input lines as necessary */ +/* until string found or end of file, copying input to output; if */ +/* the string is found but command not recognised, it is treated as */ +/* ordinary text; if valid command i_ptr points to first sanskrit */ +/* char after command, and sets bnmode TRUE. */ +/***************************************************************************/ + +void search(void) +{ +unsigned char c; +char *p,*q; + while (eof_flag == 0) + { p = str_find(i_ptr,"{\\bn"); + if (p == 0) + { if (bnline == TRUE) { strcat(outbuf,i_ptr); write_outbuf(); } + else { write_line(inbuf); o_ptr = outbuf; *o_ptr = '\0'; } + getline(); + continue; + } + q = i_ptr; i_ptr = p; + if ((p = command(p)) == 0) /* test command string \bn */ + { p = i_ptr; i_ptr = q; /* if bad \bn command */ + c = *++p; *p = '\0'; /* copy partial line, and search more */ + strcat(outbuf,i_ptr); *p = c; i_ptr = p; continue; + } + i_ptr = q; + nest_cnt++; c = *p; *p = '\0'; /* skip over '{\bn' */ + strcat(outbuf,i_ptr); /* append partial line to outbuf */ + *p = c; i_ptr = p; + bnmode = TRUE; bnline = TRUE; /* now comes the fun! */ + break; + } +} + + +/***************************************************************************/ +/* Function: write_outbuf() */ +/* */ +/* Write outbuf in 80 character lines */ +/***************************************************************************/ + +void write_outbuf(void) +{ +char c, d, e; + while(1) + { c = '\0'; + if (strlen(outbuf) < 81) { write_line(outbuf); break; } + for (o_ptr = outbuf + 78; o_ptr > outbuf + 50; o_ptr--) + { if (*o_ptr == ' ') break; } + if (*o_ptr != ' ') { for (o_ptr = outbuf+78; o_ptr > outbuf + 50; o_ptr--) + if ((*o_ptr=='\\') && (*(o_ptr-1)!='\\')) break; + if (o_ptr == outbuf+50) o_ptr = outbuf+78; + c = *o_ptr; *o_ptr++ = '%'; d = *o_ptr; + } + *o_ptr++ = '\n'; e = *o_ptr; *o_ptr = '\0'; + write_line(outbuf); + *o_ptr = e; + if (c!='\0') { *--o_ptr = d; *--o_ptr = c; } /* restore displaced chars */ + strcpy(outbuf,o_ptr); + } + o_ptr = outbuf; + *o_ptr = '\0'; +} + + +/***************************************************************************/ +/* Function: write_line() */ +/* */ +/* Write p-string to output device */ +/***************************************************************************/ + +void write_line(char *p) +{ + if (err_cnt == 0) fputs(p,outfile); +} + + +/***************************************************************************/ +/* Function: str_find() */ +/* */ +/* Find first occasion of string *str within *buf before '%' char; */ +/* return pointer first char of str within buf, else 0. */ +/***************************************************************************/ + +char * str_find(char *buf, char *str) +{ char *p, *x; + p = strstr(buf,str); + if (p == 0) return(0); + x = strchr(buf,'%'); + if ((x != 0) && (p > x)) return(0); + return(p); +} + + +/***************************************************************************/ +/* Function: getline() */ +/* */ +/* Get another line from input file; reset i_ptr, increments */ +/* line_cnt, and sets eof_flag if EOF. */ +/***************************************************************************/ + +void getline(void) +{ +char *p; + i_ptr = inbuf; + *i_ptr = '\0'; + line_cnt++; + if (fgets(inbuf,133,infile) == NULL) eof_flag = TRUE; + if (bnmode == FALSE) bnline = FALSE; +} + + +/***************************************************************************/ +/* Function: command() */ +/* */ +/* Check for valid \bn command; if invalid command, print error message */ +/***************************************************************************/ + +char * command(char *p) +{ p += 4; /* skip over '{\bn' */ + if (*p++ != ' ') p = 0; + if (p == 0) error("Unrecognised command string",7); + return(p); +} + + +/***************************************************************************/ +/* Function: error() */ +/* */ +/* Print out error message, including string *s and 'n' characters */ +/* of inbuf. */ +/***************************************************************************/ + +void error(char *s, int n) +{ char err_str[80]; int j; + if (++err_cnt <= err_max) + { if (n > 0) { for (j=0; j<n; j++) err_str[j] = *(i_ptr+j); + err_str[j] = '\0'; + } + if (n == 0) { strcpy(err_str,"oct("); + chrcat(err_str,'0' + (*i_ptr/64)); + chrcat(err_str,'0' + (*i_ptr/8)); + chrcat(err_str,'0' + (*i_ptr & 7)); + strcat(err_str,")"); + } + if (n < 0) { err_str[0] = '\0'; } + } + printf("Line %4d Error: %s %s\n",line_cnt,s,err_str); +} + + +/***************************************************************************/ +/* Function: process() */ +/* */ +/* Process input text within {\bn, converting to internal format in bnbuf */ +/***************************************************************************/ + +#define ISAC(c) (((strchr("aAiIuUxeEoO",c) != 0) && c) ? TRUE : FALSE) + +/* wWX removed from the definition of ISAC above (.R .l .L) */ + +void process(void) +{ int cap_flag, underscore; +unsigned char *i, c, d; +#define CF ac_flag=underscore=cap_flag=roman_flag=FALSE +#define CC CF; continue +#define CR ac_flag=underscore=cap_flag=FALSE; +#define CI i_ptr++; CC + + CF; + while(1) + { if (eof_flag) return; + if (err_cnt >= err_max) + { bnmode = FALSE; return; } + c = *i_ptr; d = *(i_ptr+1); +/* END OF LINE */ + if ((c == '\0') || (c == '\n')) + { bnword(); strcat (outbuf,i_ptr); write_outbuf(); getline(); CC; } +/* IMBEDDED ROMAN */ + if (strchr("!'()*+,-/:;=?[]`",c) || ((c == '.') && (*(i_ptr+1) == '.'))) + { if (c == '.') i_ptr++; + if (bnbuf[0]) { bnword(); } + while(1) + { chrcat(outbuf,c); c = *++i_ptr; + if (c == '.') + { if (*(i_ptr+1) != '.') break; + i_ptr++; continue; + } + if ((strchr("!'()*+,-/:;=?[]`",c) && c) == 0) break; + } + CR; continue; + } +/* ILLEGAL CHARS */ + if (strchr("_$fqwxzBCDEFGJKLNOPQSVWXYZ\177",c)) + { error("Illegal bengali character: ",1); CI; } + if (c>127) { error("Invalid character >80H: ",1); CI; } +/*?? Since we are now case sensitive (unlike skt), the list of */ +/*?? illegal chars has been increased (_ added, and & removed) */ +/* CONTROL CHARACTERS */ + if (c < ' ') + { error("Illegal control character: ",0); CI; } +/* IMBEDDED LATEX COMMAND STRINGS */ + if (c == '\\') + { if (d == '-') /* imbedded discretionary hyphen */ + { strcat(bnbuf,"!"); i_ptr++; CI; } + bnword(); + if (isalpha(d) == 0) + { chrcat(outbuf,c); chrcat(outbuf,*++i_ptr); CI; } + else + { while (1) + { chrcat(outbuf,c); c = *++i_ptr; if (isalpha(c) == 0) break; } + } + CC; + } +/* SPACE CHAR */ + if (c == ' ') + { bnword(); while(*++i_ptr == ' '); chrcat(outbuf,c); CC; + } +/*?? slight change here, since underscore is now an illegal character */ +/* COMMENT DELIMITER */ + if (c == '%') + { if (*(i_ptr+1) == '\n') bncont(); + else bnword(); + strcat(outbuf,i_ptr); write_outbuf(); getline(); CC; + } + +/* HASANTA */ + if (c == '&') { + c = '@'; + } + +/* BRACES */ + if (c == '{') { if (d == '}') { i_ptr++; CI; } /* for words like pra{}uga */ + else { nest_cnt++; bncont(); chrcat(outbuf,c); CI; } + } + if (c == '}') + { bnword(); chrcat(outbuf,c); + if (--nest_cnt == 0) + { bnmode = FALSE; + i_ptr++; return; + } + else CI; + } +/* UPPER CASE */ + if (isupper(c)) + { switch (c) + { case 'A': + case 'I': + case 'U': + case 'M': + case 'H': break; + case 'T': c = 'L'; break; + case 'R': c = 'w'; break; + default: c = '*'; break; + } + if (c=='*') { error("Invalid upper case: ",1); CI; } + } +/*?? big change with that code: the upper case has a different *meaning* than */ +/*?? the lower case: fortunately, AIUMH are the same as the internal code :-) */ +/* DOT_CHAR */ + if (c == '.') { switch(d) + { case 'y': c = 'Y'; break; + case 'd': c = 'q'; break; + case 'h': c = 'H'; break; + /* case 'l': c = 'w'; break; */ + case 'm': c = 'M'; break; + case 'n': c = 'N'; break; + case 'o': c = '%'; break; + case 'r': c = 'x'; break; + case 's': c = 'S'; break; + case 't': c = 'f'; break; + } + if (c=='.') { error("Invalid dot_character: ",2); CI; } + i_ptr++; d = *(i_ptr+1); + } + +/* NEXT CHAR IS H */ + if (d=='h') + { if (strchr("bcdfgjkptqw",c)) { c=toupper(c); i_ptr++; d=*(i_ptr+1); } + } + +/* The upper/lowercase stuff removed: a following 'h' converts a consonant */ +/* to its upper case internal code, e.g th --> T. Note that 'w' is added */ +/* to the list for R Rh */ + +/* QUOTE CHAR */ + if (c == '\"') { switch(d) + { case 'n': c = 'z'; break; + case 's': c = 'Z'; break; + } + if (c=='\"') { error("Invalid quote_character",2); CI; } + i_ptr++; d = *(i_ptr+1); + } + +/* TILDE CHAR */ + if (c == '~') { switch (d) + { case 'n': c = 'V'; break; + case 'm': c = '~'; break; + case 'r': c = 'R'; break; + default : c = '*'; break; + } + if (c=='*') + { error("Invalid use of tilde character: ",2); CI; } + i_ptr++; d = *(i_ptr+1); + } +/* TWO CHAR VOWELS */ + if ( strchr("aiu",c) && strchr("aiu",d) ) + { switch(c) + { case 'a': switch(d) + { case 'a': c = 'A'; break; + case 'i': c = 'E'; break; + case 'u': c = 'O'; break; + } break; + case 'i': if (d=='i') c = 'I'; break; + case 'u': if (d=='u') c = 'U'; break; + } + if (isupper(c)) { i_ptr++; d = *(i_ptr+1); } + } +/*?? all the upper/lowercase stuff removed */ +/* NOW CHAR SHOULD BE INTERNAL REPRESENTATION OF SANSKRIT CHAR */ + if ( ((c=='~' || c=='M') && !(ac_flag)) ) { + i_ptr -=2; error("No vowel before nasal: ",3); i_ptr +=2; CF; + } + + if (c=='H' && !(ac_flag)) { + i_ptr -=2; error("No vowel before visarga: ",3); i_ptr +=2; CF; + } + + chrcat(bnbuf,c); + CR; + if (ISAC(c)) ac_flag = TRUE; + i_ptr++; + } +} + +#undef CI +#undef CC +#undef CR +#undef CF + + +/***************************************************************************/ +/* Function: chrcat() */ +/* */ +/* Append character c to end of buffer s */ +/***************************************************************************/ + +void chrcat(char *s, char c) +{ char temp[] = " "; temp[0] = c; strcat(s,temp); +} + + +/***************************************************************************/ +/* Function: bncont() */ +/* */ +/* Similar to bnword() but used where input text line ends in '%' to */ +/* continue on next line. */ +/***************************************************************************/ + +void bncont(void) +{ + cont_end = TRUE; bnword(); + cont_end = FALSE; cont_begin = TRUE; +} + + +/***************************************************************************/ +/* Function: bnword() */ +/* */ +/* Convert contents of bnbuf to output string in outbuf */ +/***************************************************************************/ + +/* internal code for consonants */ +static char hal_chars[] = "BCDFGJKLNPQRSTVWYZbcdfghjklmnpqrstvwyz"; + +#define ISHAL(c) (((strchr(hal_chars,c) != 0) && c) ? TRUE : FALSE) + +#define CLRFLAGS ac_hook=post_ra=pre_ra=hasanta=hal_flag=post_ya=0 + +#define CAT(w,x,z) \ +strcat(w,x); strcat(w,z) + +void bnword(void) +{ char c; + if (roman_flag && bnbuf[0]) { strcat(outbuf,"\\,"); roman_flag = FALSE; } + +/* A word is built up one syllable at a time: a syllable typically comprises */ +/* a consonant (or samyoga) followed by a vowel (with its nasalisation). */ +/* If there is no consonant, then a front-vowel is output; if there */ +/* is no vowel, then a viraama is appended to the consonant/samyoga. */ +/* One effect of this is that, if a consonant cluster is not fully resolved */ +/* into a single samyoga, it will be treated as two syllable: in particular, */ +/* the hook of the short-i will span one samyoga only. */ +/* */ +/* The `work' buffer is used as a scratchpad while building a syllable; on */ +/* completion it is stored in the `tmp' buffer before shipping to the output */ +/* buffer. This temporary storage while working on the next syllable, allows */ +/* changes to the back spacing of the previous syllable for more effiecient */ +/* output. */ +/* */ +/* `ra' is difficult: the first `r' of a consonant cluster is simply flagged */ +/* in `pre_ra', and similarly the final `r' in `post_ra', and then these are */ +/* dealt with when appending a vowel. */ + + CLRFLAGS; + s_ptr = bnbuf; c = *s_ptr; + if (c == '\0') return; + *tmp = '\0'; *work = '\0'; + while (1) + { CLRFLAGS; /* in particular, need to clear hal_flag for the likes of kara */ + c= *s_ptr++; + if (c == '\0') + { if (*tmp) { if (outbuf[0]=='\0' && tmp[0]=='[') strcat(outbuf,"{}"); + strcat(outbuf,tmp); + } + break; + } + if (ISAC(c)) + { ac_char = c; + frontac(); + if (*tmp) { if (outbuf[0]=='\0' && tmp[0]=='[') strcat(outbuf,"{}"); + strcat(outbuf,tmp); + } + strcpy(tmp,work); + *work = '\0'; cont_begin = 0; + continue; + } + if (strchr("0123456789\"!%|\\@~HM",c)) + { single(c); + if (*tmp) { if (outbuf[0]=='\0' && tmp[0]=='[') strcat(outbuf,"{}"); + strcat(outbuf,tmp); + } + strcpy(tmp,work); + *work = '\0'; cont_begin = 0; + continue; + } + if (c == 'r') { pre_ra = TRUE; c = *s_ptr; } + else s_ptr--; + old_sptr = s_ptr; /* save pointer to start of samyoga */ + if (ISHAL(c)) { hal_flag = TRUE; samyoga(); c = *s_ptr; } + ac_char = hasanta = 0; + if (!hr_flag) { if (ISAC(c)) { ac_char = *s_ptr++; } + else hasanta = TRUE; /* hr_flag = h.r parsed by samyoga */ + } + backac(); hr_flag = FALSE; + if (*tmp) { if (outbuf[0]=='\0' && tmp[0]=='[') strcat(outbuf,"{}"); + strcat(outbuf,tmp); + } + strcpy(tmp,work); + *work = '\0'; cont_begin = FALSE; + + } + strcat(outbuf,work); + s_ptr = bnbuf; *s_ptr = '\0'; + cont_begin = 0; +} + + +/***************************************************************************/ +/* Function: single() */ +/* */ +/* Output single (stand-alone) character to work buffer */ +/***************************************************************************/ + +void single(char c) +{ + switch(c) + { case '0': strcat(work,"0"); break; /* numerals */ + case '1': strcat(work,"1"); break; + case '2': strcat(work,"2"); break; + case '3': strcat(work,"3"); break; + case '4': strcat(work,"4"); break; + case '5': strcat(work,"5"); break; + case '6': strcat(work,"6"); break; + case '7': strcat(work,"7"); break; + case '8': strcat(work,"8"); break; + case '9': strcat(work,"9"); break; + case '!': strcat(tmp,"\\-"); break; /* discretionary hyphen */ +/* case '%': strcat(work,"?"); break; */ + case '|': strcat(work,"."); break; /* dnari */ +/* case '\\': strcat(work,"H1"); break; */ + case '@': strcat(work,"\\30Cz"); break; /* hasanta */ + case '~': strcat(work,"w"); break; /* candrabindu */ + case 'H': strcat(work,"H"); break; /* visarga */ + case 'M': strcat(work,"M"); break; /* anusvara */ + } +} + + +/***************************************************************************/ +/* Function: frontac() */ +/* */ +/* Process a front-vowel to workbuf */ +/***************************************************************************/ + +void frontac(void) +{ + CLRFLAGS; + switch(ac_char) + { case 'a': strcat(work,"a"); break; + case 'A': strcat(work,"aA"); break; + case 'i': strcat(work,"\\302z"); break; + case 'I': strcat(work,"\\303z"); break; + case 'u': strcat(work,"\\304z"); break; + case 'U': strcat(work,"\\305z"); break; + case 'x': strcat(work,"\\306z"); break; + /* case 'w': strcat(work,"--"); break; */ + case 'e': strcat(work,"\\308z"); break; + case 'E': strcat(work,"\\309z"); break; + case 'o': strcat(work,"\\30Az"); break; + case 'O': strcat(work,"\\30Bz"); break; + default : error("Lost in frontac()",-1); + } +} + + +/***************************************************************************/ +/* Function: sam_warning() */ +/* */ +/* Print a warning message that a hasanta will be used within a */ +/* samyoga. Also print input file line number, together with an */ +/* indication of the samyoga and where the viraama will be placed. */ +/***************************************************************************/ + +void sam_warning(void) +{ + char *p, msg[80]=""; + p = old_sptr; + if (pre_ra) + { strcat(msg,"r"); + if (p==s_ptr) strcat(msg,"-"); + } + while (ISHAL(*p)) + { switch (*p) + { case 'B': strcat(msg,"bh"); break; + case 'C': strcat(msg,"ch"); break; + case 'D': strcat(msg,"dh"); break; + case 'G': strcat(msg,"gh"); break; + case 'H': strcat(msg,".h"); break; + case 'J': strcat(msg,"jh"); break; + case 'K': strcat(msg,"kh"); break; + case 'P': strcat(msg,"ph"); break; + case 'T': strcat(msg,"th"); break; + case 'f': strcat(msg,".t"); break; + case 'F': strcat(msg,".th"); break; + case 'N': strcat(msg,".n"); break; + case 'q': strcat(msg,".d"); break; + case 'Q': strcat(msg,".dh"); break; + case 'S': strcat(msg,".s"); break; + case 'V': strcat(msg,"~n"); break; + case 'Y': strcat(msg,".y"); break; + case 'z': strcat(msg,"\"n"); break; + case 'Z': strcat(msg,"\"s"); break; + default: chrcat(msg,*p); break; + } + if (++p == s_ptr) strcat(msg,"-"); + } + if (ISAC(*p)) + { switch (*p) + { /* case 'w': strcat(msg,".l"); break; */ + case 'x': strcat(msg,".r"); break; + default: chrcat(msg,*p); break; + } + } + printf("Line %4d Warning: samyoga viraama: %s\n",line_cnt,msg); +} + + +/***************************************************************************/ +/* Function: backac() */ +/* */ +/* Handle vowel diacritics */ +/***************************************************************************/ + +void backac(void) +{ int j,k; char c, *p; + + if (pre_ra && (*work=='\0')) /* case r.r, r.R, r.l, r.L, ru, rU, ra */ + { c = toupper(ac_char); + /* if ((c =='X') || (c == 'W')) {frontac(); return; } */ + if (c == 'U') + { if (ac_char == 'u') + { strcat(work,"\\319z"); ac_char = 'a'; } + else { strcat(work,"\\31Az"); ac_char = 'a'; } + } + + else { strcat(work,"r"); } /* ra */ + pre_ra = FALSE; hal_flag = TRUE; + } + + if (post_ra) { strcat(work,"\\30Fz"); } /* ra-phala */ + if (post_ya) { strcat(work,"\\30Dz"); } /* ya-phala */ + post_ya = post_ra = 0; + +c = ac_char; + +if (pre_ra) { strcat(work,"\\30Ez"); } /* add repha */ +/* if (hasanta) { strcat(work,"\\30Cz"); } /* add hasanta */ + +if (ac_char == 'A') { strcat(work,"A");} /* add aa-dia */ +if (ac_char == 'i') { CAT(tmp,"i",""); } /* add i-dia */ +if (ac_char == 'I') { strcat(work,"I"); } /* add ii-dia */ +if (ac_char == 'u') { strcat(work,"u");} /* add u-dia */ +if (ac_char == 'U') { strcat(work,"U");} /* add uu-dia */ +if (ac_char == 'x') { strcat(work,"W");} /* add .r dia */ +if (ac_char == 'e') { CAT(tmp,"e",""); } /* add e-dia */ +if (ac_char == 'E') { CAT(tmp,"E",""); } /* add ai-dia */ +if (ac_char == 'o') { CAT(tmp,"e",""); strcat(work,"A");} /* add o-dia */ +if (ac_char == 'O') { CAT(tmp,"e",""); strcat(work,"O");} /* add au-dia */ + +} + +/***************************************************************************/ +/* Function: samyoga() */ +/* */ +/* Work along bnbuf sequentially to build up a samyoga print */ +/* string in the work buffer and update the samyoga parameters. */ +/* */ +/* The method is quite unsophisticated, but its simplicity lends */ +/* clarity for later additions or changes, and for this reason */ +/* is done in Devanagari alphabetical order, but with longer */ +/* strings before shorter. */ +/* */ +/* Cr and Cy conjuncts are not defined in the individual cases for each */ +/* consonant. Rather these are handled in bulk by the program at the end */ +/* of the function. */ +/* */ +/* Macros are used to simplify reading the program --- believe it or not! */ +/* */ +/* Switch/case is used on the first letter, then the main LS macro tests: */ +/* (1) if the test string matches the input exactly, then */ +/* (2) bump input pointer to the character after string match */ +/* (3) use NC etc macro to break out of switch instruction */ +/***************************************************************************/ + + +#define LS(a,c,z) n=strlen(a); \ + if(strncmp(p,a,n)==0) { strcat(work,z); p+=n; c;} + +#define NX sam_flag = 'X'; break; +#define NR sam_flag = 'R'; break; +#define NC sam_flag = 'C'; break; + +#define IX p++; sam_flag = 'X'; break; +#define IR p++; sam_flag = 'R'; break; +#define IC p++; sam_flag = 'C'; break; + +/******************************************************************************/ + +void samyoga(void) +{ +char *p, sam_flag; int n; + sam_flag = 0; + p = s_ptr; + while (1) + { if (!ISHAL(*p)) { NX; } + switch (*p++) + { + + /* k */ + case 'k': if(*p=='u') + {p+=1; strcat(work,"k{\\kern-.25em}u{\\kern.25em}");NX;} + if(*p=='U') + {p+=1; strcat(work,"k{\\kern-.25em}U{\\kern.25em}");NX;} + if(*p=='x') + {p+=1; strcat(work,"k{\\kern-.25em}W{\\kern.25em}");NX;} + if(*p=='S' && *(p+1)=='N') + {p+=2; strcat(work,"\\388z");NR;} + if(*p=='S' && *(p+1)=='m') + {p+=2; strcat(work,"\\389z");NR;} + LS("k", NR, "\\380z" ); + LS("f", NR, "\\381z" ); + LS("t", NR, "\\382z" ); + LS("b", NR, "\\383z" ); + LS("m", NR, "\\384z" ); + LS("r", NR, "\\385z" ); + LS("l", NR, "\\386z" ); + LS("v", NR, "\\383z" ); + LS("s", NR, "\\38Az" ); + LS("S", NR, "\\387z" ); + strcat(work,"k"); NR; + + /* kh */ + case 'K': strcat(work,"K"); NR; + + /* g */ + case 'g': LS("D", NR, "\\38Bz" ); + LS("n", NR, "\\38Cz" ); + LS("b", NR, "\\38Dz" ); + LS("m", NR, "\\38Ez" ); + LS("l", NR, "\\38Fz" ); + LS("v", NR, "\\38Dz" ); + strcat(work,"g"); NR; + + /* gh */ + case 'G': LS("n", NR, "\\390z"); + strcat(work,"G"); NR; + + /* "n */ + case 'z': if(*p=='k' && *(p+1)=='S') + {p+=2; strcat(work,"\\392z");NR;} + LS("k", NR, "\\391z"); + LS("K", NR, "\\393z"); + LS("g", NR, "\\394z"); + LS("G", NR, "\\395z"); + LS("m", NR, "\\396z"); + strcat(work,"q"); NR; + + /* c */ + case 'c': if(*p=='C' && (*(p+1)=='b' || *(p+1)=='v')) + {p+=2; strcat(work,"\\399z");NR;} + LS("c", NR, "\\397z"); + LS("C", NR, "\\398z"); + LS("V", NR, "\\39Az"); + strcat(work,"c"); NR; + + /* ch */ + case 'C': strcat(work,"C"); NR; + + /* j */ + case 'j': if(*p=='j' && (*(p+1)=='b' || *(p+1)=='v')) + {p+=2; strcat(work,"\\39Cz");NR;} + LS("j", NR, "\\39Bz" ); + LS("J", NR, "\\39Dz" ); + LS("V", NR, "\\39Ez" ); + LS("b", NR, "\\39Fz" ); + LS("v", NR, "\\39Fz" ); + strcat(work,"j"); NR; + + /* jh */ + case 'J': if(*p=='u') + {p+=1; strcat(work,"J{\\kern-.24em}u{\\kern.24em}");NX;} + if(*p=='U') + {p+=1; strcat(work,"J{\\kern-.24em}U{\\kern.24em}");NX;} + if(*p=='x') + {p+=1; strcat(work,"J{\\kern-.24em}W{\\kern.24em}");NX;} + strcat(work,"J"); NR; + + /* ~n */ + case 'V': if(*p=='u') + {p+=1; strcat(work,"Q{\\kern-.39em}u{\\kern.39em}");NX;} + if(*p=='U') + {p+=1; strcat(work,"Q{\\kern-.39em}U{\\kern.39em}");NX;} + if(*p=='x') + {p+=1; strcat(work,"Q{\\kern-.39em}W{\\kern.39em}");NX;} + LS("c", NR, "\\3A0z" ); + LS("C", NR, "\\3A1z" ); + LS("j", NR, "\\3A2z" ); + LS("J", NR, "\\3A3z" ); + strcat(work,"Q"); NR; + + /* .t */ + case 'f': LS("f", NR, "\\3A4z" ); + LS("b", NR, "\\3A5z" ); + LS("v", NR, "\\3A5z" ); + strcat(work,"T"); NR; + + /* .th */ + case 'F': strcat(work,"Z"); NR; + + /* .da */ + case 'q': LS("q", NR, "\\3A6z" ); + strcat(work,"D"); NR; + + /* .dh */ + case 'Q': strcat(work,"X"); NR; + + /* .n */ + case 'N': LS("f", NR, "\\3A7z" ); + LS("F", NR, "\\3A8z" ); + LS("q", NR, "\\3A9z" ); + LS("N", NR, "\\3AAz" ); + LS("t", NR, "\\3ACz" ); + LS("m", NR, "\\3ABz" ); + strcat(work,"N"); NR; + + /* t */ + case 't': if(*p=='t' && (*(p+1)=='b' || *(p+1)=='v')) + {p+=2; strcat(work,"\\3ADz"); NR;} + if(*p=='r' && *(p+1)=='u') + {p+=2; strcat(work,"\\3B3z"); NX;} + LS("t", NR, "\\3ACz" ); + LS("T", NR, "\\3AEz" ); + LS("n", NR, "\\3AFz" ); + LS("b", NR, "\\3B0z" ); + LS("m", NR, "\\3B1z" ); + LS("r", NR, "\\3B2z" ); + LS("v", NR, "\\3B0z" ); + strcat(work,"t"); NR; + + /* th */ + case 'T': LS("b", NR, "\\4Lz"); + LS("v", NR, "\\4Lz"); + strcat(work,"z"); NR; + + /* d */ + case 'd': if(*p=='B' && *(p+1)=='r') + {p+=2; strcat(work,"\\3BAz");NR;} + LS("g", NR, "\\3B4z"); + LS("G", NR, "\\3B5z"); + LS("d", NR, "\\3B6z"); + LS("D", NR, "\\3B7z"); + LS("b", NR, "\\3B8z"); + LS("B", NR, "\\3B9z"); + LS("m", NR, "\\3BBz"); + LS("v", NR, "\\3B8z" ); + strcat(work,"d"); NR; + + /* dh */ + case 'D': LS("n", NR, "\\3BCz" ); + LS("b", NR, "\\3BDz" ); + LS("v", NR, "\\3BDz" ); + strcat(work,"x"); NR; + + /* n */ + case 'n': if(*p=='t' && *(p+1)=='u') + {p+=2; strcat(work,"\\3C1z");NR;} + if(*p=='t' && (*(p+1)=='b' || *(p+1)=='v')) + {p+=2; strcat(work,"\\3C2z");NR;} + if(*p=='t' && *(p+1)=='r') + {p+=2; strcat(work,"\\3C3z");NR;} + if(*p=='d' && (*(p+1)=='b' || *(p+1)=='v')) + {p+=2; strcat(work,"\\4Pz");NR;} + LS("f", NR, "\\3BEz" ); + LS("q", NR, "\\3BFz" ); + LS("t", NR, "\\3C0z" ); + LS("T", NR, "\\3C4z" ); + LS("d", NR, "\\3C5z" ); + LS("D", NR, "\\3C6z" ); + LS("n", NR, "\\3C7z" ); + LS("b", NR, "\\3C8z" ); + LS("m", NR, "\\3C9z" ); + LS("s", NR, "\\3CAz" ); + LS("v", NR, "\\3C8z" ); + strcat(work,"n"); NR; + + /* p */ + case 'p': LS("f", NR, "\\3CBz" ); + LS("t", NR, "\\3CCz" ); + LS("n", NR, "\\3CDz" ); + LS("p", NR, "\\3CEz" ); + LS("l", NR, "\\3CFz" ); + LS("s", NR, "\\3D0z" ); + strcat(work,"p"); NR; + + /* ph */ + case 'P': if(*p=='u') + {p+=1; strcat(work,"f{\\kern-.21em}u{\\kern.21em}");NX;} + if(*p=='U') + {p+=1; strcat(work,"f{\\kern-.21em}U{\\kern.21em}");NX;} + if(*p=='x') + {p+=1; strcat(work,"f{\\kern-.21em}W{\\kern.21em}");NX;} + LS("l", NR, "\\3D1z" ); + strcat(work,"f"); NR; + + /* b */ + case 'b': LS("j", NR, "\\3D2z" ); + LS("d", NR, "\\3D3z" ); + LS("D", NR, "\\3D4z" ); + LS("b", NR, "\\3D5z" ); + LS("l", NR, "\\3D6z" ); + strcat(work,"b"); NR; + + /* bh */ + case 'B': LS("r", NR, "\\3D7z" ); + LS("l", NR, "\\3D8z" ); + strcat(work,"v"); NR; + + /* m */ + case 'm': if(*p=='B' && *(p+1)=='r') + {p+=2; strcat(work,"\\3DEz");NR;} + LS("n", NR, "\\3D9z" ); + LS("p", NR, "\\3DAz" ); + LS("P", NR, "\\3DBz" ); + LS("b", NR, "\\3DCz" ); + LS("B", NR, "\\3DDz" ); + LS("m", NR, "\\3DFz" ); + LS("l", NR, "\\3E0z" ); + LS("v", NR, "\\3DCz" ); + strcat(work,"m"); NR; + + /* y */ + case 'y': strcat(work,"Y"); NR; + + /* .y */ + case 'Y': strcat(work,"y"); NR; + + /* r */ + case 'r': strcat(work,"r"); NR; + + /* l */ + case 'l': if(*p=='g' && *(p+1)=='u') + {p+=2; strcat(work,"\\3E3z");NX;} + LS("k", NR, "\\3E1z" ); + LS("g", NR, "\\3E2z" ); + LS("f", NR, "\\3E4z" ); + LS("q", NR, "\\3E5z" ); + LS("p", NR, "\\3E6z" ); + LS("b", NR, "\\3E7z" ); + LS("m", NR, "\\3E8z" ); + LS("l", NR, "\\3E9z" ); + strcat(work,"l"); NR; + + /* "s */ + case 'Z': LS("c", NR, "\\3EAz" ); + LS("C", NR, "\\3EBz" ); + LS("n", NR, "\\3ECz" ); + LS("m", NR, "\\3EDz"); + LS("b", NR, "\\3EFz" ); + LS("l", NR, "\\3EEz" ); + LS("v", NR, "\\3EFz" ); + strcat(work,"S"); NR; + + /* .s */ + case 'S': if(*p=='k' && *(p+1)=='r') + {p+=2; strcat(work,"\\3F1z");NR;} + LS("k", NR, "\\3F0z" ); + LS("f", NR, "\\3F2z" ); + LS("F", NR, "\\3F3z" ); + LS("N", NR, "\\3F4z" ); + LS("p", NR, "\\3F5z" ); + LS("P", NR, "\\3F6z" ); + LS("m", NR, "\\3F7z" ); + strcat(work,"F"); NR; + + /* s */ + case 's': if(*p=='k' && *(p+1)=='r') + {p+=2; strcat(work,"\\3F9z");NR;} + if(*p=='k' && *(p+1)=='l') + {p+=2; strcat(work,"\\3FAz");NR;} + if(*p=='t' && *(p+1)=='u') + {p+=2; strcat(work,"\\3FEz");NX;} + if(*p=='t' && *(p+1)=='r') + {p+=2; strcat(work,"\\3FFz");NR;} + if(*p=='p' && *(p+1)=='l') + {p+=2; strcat(work,"\\313z");NR;} + LS("k", NR, "\\3F8z" ); + LS("K", NR, "\\3FBz" ); + LS("f", NR, "\\3FCz" ); + LS("t", NR, "\\3FDz" ); + LS("T", NR, "\\310z" ); + LS("n", NR, "\\311z" ); + LS("p", NR, "\\312z" ); + LS("P", NR, "\\314z" ); + LS("b", NR, "\\315z" ); + LS("m", NR, "\\316z" ); + LS("l", NR, "\\317z" ); + LS("v", NR, "\\315z" ); + strcat(work,"s"); NR; + + /* h */ + case 'h': if(*p=='x') { strcat(work,"\\31Cz");hr_flag = TRUE; IX; } + LS("N", NR, "\\318z"); + LS("n", NR, "\\31Fz"); + LS("b", NR, "\\33Ez"); + LS("m", NR, "\\320z"); + LS("l", NR, "\\37Dz"); + LS("v", NR, "\\33Ez"); + strcat(work,"h"); NR; + + case 'w': LS("g", NR, "\\37Fz"); + strcat(work,"R"); NR; + + case 'W': strcat(work,"V"); NR; + + case 'L': strcat(work,"B"); NR; + + /* Assamese r */ + case 'R': strcat(work,"\\4rz"); NR; + + /* Assamese v */ + case 'v': strcat(work,"\\4vz"); NR; + + default: error("Lost in samyoga()",-1); NX; + } + + if (sam_flag == 'X') { s_ptr = p; break; } + if (sam_flag == 'R') { /* if ((*p=='r') && ra) { post_ra = TRUE; p++; } */ + if ((*p=='r')) { post_ra = TRUE; p++; } + /* if ((*p=='y') && ya) { post_ya = TRUE; p++; } */ + if ((*p=='y')) { post_ya = TRUE; p++; } + s_ptr = p; break; + } + if (!ISHAL(*p)) { s_ptr = p; break; } + } +} + +/***************************************************************************/ +/* samapta */ +/***************************************************************************/ diff --git a/language/bengali/pandey/beng.sty b/language/bengali/pandey/beng.sty new file mode 100644 index 0000000000..b8ed4a437c --- /dev/null +++ b/language/bengali/pandey/beng.sty @@ -0,0 +1,51 @@ +% LaTeX2e package for using "Bengali for TeX". +% ============================================ +% +% Sample input .bn file: +% +% \documentclass{article} +% \usepackage{beng} +% \begin{document} +% {\bn baa"ngalaa bhaa.saa} +% \end{document} +% + +%\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesFile{beng.sty}[2002/03/27 v2.0 Bengali for TeX] + +% Error message for someone running LaTeX 2.09: + +\@ifundefined{selectfont} +{\@latexerr{This style option may only be used with LaTeX2e.}\@eha + \endinput}{} +% + +\DeclareFontSubstitution{U}{bn}{m}{n} + +% Define \bn macro: + +\DeclareRobustCommand\bn{% + \usefont{U}{bn}{m}{n}% + \tolerance=10000\pretolerance=10000 + \emergencystretch=.2\hsize + \baselineskip1.30\baselineskip } + +% Define counter for Bengali numerals. This allows for the +% printing of page numbers in Bengali: \pagenumbering{beng} + +%\def\@beng#1{{\bn\number #1}} + +% Define macros to access characters in font: + +\def\3#1z{{\char"#1}} +\def\4#1z{{\usefont{U}{bnx}{m}{n}#1}} + +%\newcommand*\bnnum{\let\nstyle=d} +%\newcommand*\cmnum{\let\nstyle=r} +%\cmnum +%\DeclareRobustCommand*\rn[1]{\if\nstyle r{\rm #1}\else#1\fi} + +%\def\@bengali#1{{\bn\number #1}} % allows counters in bengali +%\def\bengali#1{\expandafter\@bengali\csname c@#1\endcsname} + +\endinput diff --git a/language/bengali/pandey/doc/bengdoc.bn b/language/bengali/pandey/doc/bengdoc.bn new file mode 100644 index 0000000000..aa9fdc8c7e --- /dev/null +++ b/language/bengali/pandey/doc/bengdoc.bn @@ -0,0 +1,731 @@ +\documentclass[11pt]{article} +\usepackage{beng,multicol} + +\def\portraitpage{% + \setlength{\topmargin}{-0.50in} % real margin == this + 1in + \setlength{\oddsidemargin}{-0.0in} % real margin == this + 1in + \setlength{\evensidemargin}{-0.0in} % real margin == this + 1in + \setlength{\columnsep}{20pt} + \setlength{\columnseprule}{0.4pt} + + % Use Portrait Size Page + \setlength{\textwidth}{6.5in} + \setlength{\textheight}{9.0in}% +} +\portraitpage +\parindent=0pt + +\begin{document} + +\begin{center} +{\LARGE \bfseries Bengali for \TeX{}} +\medskip + +{\Large Version 2.0} +\medskip + +Anshuman Pandey +\medskip + +27 March 2002 +\end{center} + +\section{Introduction} +The \textit{Bengali for \TeX{}} ({\sf bengali}) package provides +the capability to typeset Bengali in \TeX{}. This latest version, +2.0, is a major revision to the package. Assamese is supported in +this version. + +\section{Transliterated Input} +The package uses a version of the Velthuis transliteration +scheme which has been extended to accommodate certain Bengali +characters not found in Devanagari (the script for which +the Velthuis scheme was originally developed). Table \ref{chars} +provides the characters and the respective transliteration +codes. +\medskip + +The Bengali text is delimited by the \verb+\+\verb+bn+ +macro, eg. \verb+{\+\verb+bn baa.mlaa}+ produces +{\bn baa.mlaa}. + +\section{Preprocessor} +Once a document is prepared using the transliterated input, +it must be run rough the preprocessor. The preprocessor +must first be compiled with a C compiler. For the +preprocessor to recognize the document, it must have +the extension {\tt .bn}. Typing {{\tt beng} \textit{infile}} +will cause the preprocessor {\tt beng} to read the +given file and output a \TeX{} by the same name. +\LaTeX{} is to be then run on the output. +\medskip + +{\bf Note:} The preprocessor does not implicitly produce a +\textit{hasanta} if the inherent \textit{a} is missing in the +word final position. Explicit \textit{hasanta} is produced +by {\tt \&}. +\medskip + +Page numbers may be printed in Bengali by placing +\verb+\pagenumbering{beng}+ in the preamble +of your document. + +\section{Examples} +The file {\tt example.bn} contains the short story +``Aj\=ante'' by Bonaphul. The following example is +a poem by Rabindranath Tagore: +\medskip + +\begin{multicols}{2} +{\renewcommand{\baselinestretch}{1} +{\large {\bn ke la{}ibe mor kaar.ya, kahe sandhyaa rabi \\ +"suniyaa jagaT rahe niruttar chabi | \\ +maa.tir pradiip chila, se kahila, svaami \\ +aamaar .ye.tuku saadhya kariba taa aami |\par}}} +\columnbreak + +{\small +\verb+ke la{}ibe mor kaar.ya, kahe sandhyaa rabi+ \\ +\verb+"suniyaa jagaT rahe niruttar chabi |+ \\ +\verb+maa.tir pradiip chila, se kahila, svaami+ \\ +\verb+aamaar .ye.tuku saadhya kariba taa aami |+ \\} +\end{multicols} +\vfill + +\hrule +\smallskip + +Anshuman Pandey \\ +\textit{apandey@u.washington.edu} + +\begin{table*}[p] +\begin{center} +\renewcommand{\doublerulesep}{.5cm} +\renewcommand{\arraystretch}{1.40} + +\begin{tabular}{|lc|lc|lc|lc|} +\hline +\multicolumn{8}{|c|}{\textit{Vowels}} \\ +\hline + \texttt{a} & {\bn a} +& \texttt{aa} & {\bn aa} +& \texttt{i} & {\bn i} +& \texttt{ii} & {\bn ii} \\ + + \texttt{u} & {\bn u} +& \texttt{uu} & {\bn uu} +& \texttt{.r} & {\bn .r} +& \texttt{e} & {\bn e} \\ + + \texttt{ai} & {\bn ai} +& \texttt{o} & {\bn o} +& \texttt{au} & {\bn au} +& \texttt{a.m} & {\bn a.m} \\ + + \texttt{a\char`~m} & {\bn a~m} +& \texttt{aH} & {\bn a.h} +& & +& & \\ + +\hline +\end{tabular} +\vspace*{.5cm} + +\begin{tabular}{|ll|ll|ll|ll|ll|} +\hline +\multicolumn{10}{|c|}{\textit{Consonants}} \\ +\hline + \texttt{ka} & {\bn ka} +& \texttt{kha} & {\bn kha} +& \texttt{ga} & {\bn ga} +& \texttt{gha} & {\bn gha} +& \texttt{"na} & {\bn "na} \\ + + \texttt{ca} & {\bn ca} +& \texttt{cha} & {\bn cha} +& \texttt{ja} & {\bn ja} +& \texttt{jha} & {\bn jha} +& \texttt{\char`~na} & {\bn ~na} \\ + + \texttt{.ta} & {\bn .ta} +& \texttt{.tha} & {\bn .tha} +& \texttt{.da} & {\bn .da} +& \texttt{.dha} & {\bn .dha} +& \texttt{.na} & {\bn .na} \\ + + \texttt{ta} & {\bn ta} +& \texttt{tha} & {\bn tha} +& \texttt{da} & {\bn da} +& \texttt{dha} & {\bn dha} +& \texttt{na} & {\bn na} \\ + + \texttt{pa} & {\bn pa} +& \texttt{pha} & {\bn pha} +& \texttt{ba} & {\bn ba} +& \texttt{bha} & {\bn bha} +& \texttt{ma} & {\bn ma} \\ +\hline +\end{tabular} +\vspace*{.5cm} + +\begin{tabular}{|ll|ll|ll|ll|ll|} +\hline +\multicolumn{10}{|c|}{\textit{Semi-vowels}} \\ +\hline + \texttt{ya} & {\bn ya} +& \texttt{.ya} & {\bn .ya} +& \texttt{ra} & {\bn ra} +& \texttt{la} & {\bn la} +& \texttt{ba} & {\bn ba} \\ +\hline +\end{tabular} +\hspace*{.4cm} +\begin{tabular}{|ll|ll|ll|} +\hline +\multicolumn{6}{|c|}{\textit{Sibilants}} \\ +\hline + + \texttt{"sa} & {\bn "sa} +& \texttt{.sa} & {\bn .sa} +& \texttt{sa} & {\bn sa} \\ +\hline +\end{tabular} +\vspace*{.5cm} + +\begin{tabular}{|ll|} +\hline +\multicolumn{2}{|c|}{\textit{Aspirate}} \\ +\hline +\texttt{ha} & {\bn ha} \\ +\hline +\end{tabular} +\hspace*{.4cm} +\begin{tabular}{|ll|ll|} +\hline +\multicolumn{4}{|c|}{\textit{Flaps}} \\ +\hline + \texttt{Ra} & {\bn Ra} +& \texttt{Rha} & {\bn Rha} \\ +\hline +\end{tabular} +\vspace*{.5cm} + +\begin{tabular}{|ll|ll|ll|ll|ll|} +\hline +\multicolumn{10}{|c|}{\textit{Numerals}} \\ +\hline + \texttt{0} & {\bn 0} & \texttt{1} & {\bn 1} +& \texttt{2} & {\bn 2} & \texttt{3} & {\bn 3} +& \texttt{4} & {\bn 4} \\ + \texttt{5} & {\bn 5} +& \texttt{6} & {\bn 6} & \texttt{7} & {\bn 7} +& \texttt{8} & {\bn 8} & \texttt{9} & {\bn 9} \\ +\hline +\end{tabular} +\vspace*{.5cm} + +\begin{tabular}{|ll|ll|} +\hline +\multicolumn{4}{|c|}{\textit{Assamese Variants}} \\ +\hline + \texttt{\char`~ra} & {\bn ~ra} +& \texttt{va} & {\bn va} \\ +\hline +\end{tabular} + +\vspace*{.5cm} +\begin{tabular}{|lll|lll|lll|lll|} +\hline +\multicolumn{12}{|c|}{\textit{Special Characters}} \\ +\hline + \texttt{.m} & {\bn a.m} & \textit{anusv\=ara} +& \texttt{\char`~m} & {\bn a~m} & \textit{candrabindu} +& \texttt{.h} & {\bn a.h} & \textit{visarga} +& \texttt{T} & {\bn Ta} & \textit{kha\d{n}\d{d}a ta} \\ + + \texttt{|} & {\bn |} & \textit{d\=a\d{m}\d{r}{\=\i}} +& \texttt{\&} & {\bn &} & \textit{hasanta} +& & & +& & & \\ + +\hline +\end{tabular} +\caption{Transliteration Scheme for \textit{Bengali for \TeX{}}} +\label{chars} +\end{center} +\end{table*} + +%%% Consonant-Vowel Combinations %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\renewcommand{\arraystretch}{1.25} +\begin{table}[p] +\vspace*{-0.5in} +\hspace*{0.0in}\vbox{ +\begin{center} +\begin{tabular}{|c||c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|} +\hline + / & + {\tt a} & + {\tt aa} & + {\tt i} & + {\tt ii} & + {\tt u} & + {\tt uu} & + {\tt .r} & + {\tt e} & + {\tt ai} & + {\tt o} & + {\tt au} \\ \hline \hline + + {\tt k} & +{\bn ka} & +{\bn kaa} & +{\bn ki} & +{\bn kii} & +{\bn ku} & +{\bn kuu} & +{\bn k.r} & +{\bn ke} & +{\bn kai} & +{\bn ko} & +{\bn kau} +\\ \hline + {\tt kh} & +{\bn kha} & +{\bn khaa} & +{\bn khi} & +{\bn khii} & +{\bn khu} & +{\bn khuu} & +{\bn kh.r} & +{\bn khe} & +{\bn khai} & +{\bn kho} & +{\bn khau} \\ \hline + {\tt g} & +{\bn ga} & +{\bn gaa} & +{\bn gi} & +{\bn gii} & +{\bn gu} & +{\bn guu} & +{\bn g.r} & +{\bn ge} & +{\bn gai} & +{\bn go} & +{\bn gau} \\ \hline + {\tt gh} & +{\bn gha} & +{\bn ghaa} & +{\bn ghi} & +{\bn ghii} & +{\bn ghu} & +{\bn ghuu} & +{\bn gh.r} & +{\bn ghe} & +{\bn ghai} & +{\bn gho} & +{\bn ghau} \\ \hline + {\tt "n} & +{\bn "na} & +{\bn "naa} & +{\bn "ni} & +{\bn "nii} & +{\bn "nu} & +{\bn "nuu} & +{\bn "n.r} & +{\bn "ne} & +{\bn "nai} & +{\bn "no} & +{\bn "nau} \\ \hline + {\tt c} & +{\bn ca} & +{\bn caa} & +{\bn ci} & +{\bn cii} & +{\bn cu} & +{\bn cuu} & +{\bn c.r} & +{\bn ce} & +{\bn cai} & +{\bn co} & +{\bn cau} \\ \hline + {\tt ch} & +{\bn cha} & +{\bn chaa} & +{\bn chi} & +{\bn chii} & +{\bn chu} & +{\bn chuu} & +{\bn ch.r} & +{\bn che} & +{\bn chai} & +{\bn cho} & +{\bn chau} \\ \hline + {\tt j} & +{\bn ja} & +{\bn jaa} & +{\bn ji} & +{\bn jii} & +{\bn ju} & +{\bn juu} & +{\bn j.r} & +{\bn je} & +{\bn jai} & +{\bn jo} & +{\bn jau} \\ \hline + {\tt jh} & +{\bn jha} & +{\bn jhaa} & +{\bn jhi} & +{\bn jhii} & +{\bn jhu} & +{\bn jhuu} & +{\bn jh.r} & +{\bn jhe} & +{\bn jhai} & +{\bn jho} & +{\bn jhau} \\ \hline + {\tt \char`~n} & +{\bn ~na} & +{\bn ~naa} & +{\bn ~ni} & +{\bn ~nii} & +{\bn ~nu} & +{\bn ~nuu} & +{\bn ~n.r} & +{\bn ~ne} & +{\bn ~nai} & +{\bn ~no} & +{\bn ~nau} \\ \hline + {\tt .t} & +{\bn .ta} & +{\bn .taa} & +{\bn .ti} & +{\bn .tii} & +{\bn .tu} & +{\bn .tuu} & +{\bn .t.r} & +{\bn .te} & +{\bn .tai} & +{\bn .to} & +{\bn .tau} \\ \hline + {\tt .th} & +{\bn .tha} & +{\bn .thaa} & +{\bn .thi} & +{\bn .thii} & +{\bn .thu} & +{\bn .thuu} & +{\bn .th.r} & +{\bn .the} & +{\bn .thai} & +{\bn .tho} & +{\bn .thau} \\ \hline + {\tt .d} & +{\bn .da} & +{\bn .daa} & +{\bn .di} & +{\bn .dii} & +{\bn .du} & +{\bn .duu} & +{\bn .d.r} & +{\bn .de} & +{\bn .dai} & +{\bn .do} & +{\bn .dau} \\ \hline + {\tt .dh} & +{\bn .dha} & +{\bn .dhaa} & +{\bn .dhi} & +{\bn .dhii} & +{\bn .dhu} & +{\bn .dhuu} & +{\bn .dh.r} & +{\bn .dhe} & +{\bn .dhai} & +{\bn .dho} & +{\bn .dhau} \\ \hline + {\tt .n} & +{\bn .na} & +{\bn .naa} & +{\bn .ni} & +{\bn .nii} & +{\bn .nu} & +{\bn .nuu} & +{\bn .n.r} & +{\bn .ne} & +{\bn .nai} & +{\bn .no} & +{\bn .nau} \\ \hline + {\tt t} & +{\bn ta} & +{\bn taa} & +{\bn ti} & +{\bn tii} & +{\bn tu} & +{\bn tuu} & +{\bn t.r} & +{\bn te} & +{\bn tai} & +{\bn to} & +{\bn tau} \\ \hline + {\tt th} & +{\bn tha} & +{\bn thaa} & +{\bn thi} & +{\bn thii} & +{\bn thu} & +{\bn thuu} & +{\bn th.r} & +{\bn the} & +{\bn thai} & +{\bn tho} & +{\bn thau} \\ \hline + {\tt d} & +{\bn da} & +{\bn daa} & +{\bn di} & +{\bn dii} & +{\bn du} & +{\bn duu} & +{\bn d.r} & +{\bn de} & +{\bn dai} & +{\bn do} & +{\bn dau} \\ \hline + {\tt dh} & +{\bn dha} & +{\bn dhaa} & +{\bn dhi} & +{\bn dhii} & +{\bn dhu} & +{\bn dhuu} & +{\bn dh.r} & +{\bn dhe} & +{\bn dhai} & +{\bn dho} & +{\bn dhau} \\ \hline + {\tt n} & +{\bn na} & +{\bn naa} & +{\bn ni} & +{\bn nii} & +{\bn nu} & +{\bn nuu} & +{\bn n.r} & +{\bn ne} & +{\bn nai} & +{\bn no} & +{\bn nau} \\ \hline + {\tt p} & +{\bn pa} & +{\bn paa} & +{\bn pi} & +{\bn pii} & +{\bn pu} & +{\bn puu} & +{\bn p.r} & +{\bn pe} & +{\bn pai} & +{\bn po} & +{\bn pau} \\ \hline + {\tt ph} & +{\bn pha} & +{\bn phaa} & +{\bn phi} & +{\bn phii} & +{\bn phu} & +{\bn phuu} & +{\bn ph.r} & +{\bn phe} & +{\bn phai} & +{\bn pho} & +{\bn phau} \\ \hline + {\tt b} & +{\bn ba} & +{\bn baa} & +{\bn bi} & +{\bn bii} & +{\bn bu} & +{\bn buu} & +{\bn b.r} & +{\bn be} & +{\bn bai} & +{\bn bo} & +{\bn bau} \\ \hline + {\tt bh} & +{\bn bha} & +{\bn bhaa} & +{\bn bhi} & +{\bn bhii} & +{\bn bhu} & +{\bn bhuu} & +{\bn bh.r} & +{\bn bhe} & +{\bn bhai} & +{\bn bho} & +{\bn bhau} \\ \hline + {\tt m} & +{\bn ma} & +{\bn maa} & +{\bn mi} & +{\bn mii} & +{\bn mu} & +{\bn muu} & +{\bn m.r} & +{\bn me} & +{\bn mai} & +{\bn mo} & +{\bn mau} \\ \hline + {\tt y} & +{\bn ya} & +{\bn yaa} & +{\bn yi} & +{\bn yii} & +{\bn yu} & +{\bn yuu} & +{\bn y.r} & +{\bn ye} & +{\bn yai} & +{\bn yo} & +{\bn yau} \\ \hline + {\tt .y} & +{\bn .ya} & +{\bn .yaa} & +{\bn .yi} & +{\bn .yii} & +{\bn .yu} & +{\bn .yuu} & +{\bn .y.r} & +{\bn .ye} & +{\bn .yai} & +{\bn .yo} & +{\bn .yau} \\ \hline + {\tt r} & +{\bn ra} & +{\bn raa} & +{\bn ri} & +{\bn rii} & +{\bn ru} & +{\bn ruu} & +{\bn r.r} & +{\bn re} & +{\bn rai} & +{\bn ro} & +{\bn rau} \\ \hline + {\tt \char`~r} & +{\bn ~ra} & +{\bn ~raa} & +{\bn ~ri} & +{\bn ~rii} & +{\bn ~ru} & +{\bn ~ruu} & +{\bn ~r.r} & +{\bn ~re} & +{\bn ~rai} & +{\bn ~ro} & +{\bn ~rau} \\ \hline + {\tt l} & +{\bn la} & +{\bn laa} & +{\bn li} & +{\bn lii} & +{\bn lu} & +{\bn luu} & +{\bn l.r} & +{\bn le} & +{\bn lai} & +{\bn lo} & +{\bn lau} \\ \hline + {\tt v} & +{\bn va} & +{\bn vaa} & +{\bn vi} & +{\bn vii} & +{\bn vu} & +{\bn vuu} & +{\bn v.r} & +{\bn ve} & +{\bn vai} & +{\bn vo} & +{\bn vau} \\ \hline + {\tt "s} & +{\bn "sa} & +{\bn "saa} & +{\bn "si} & +{\bn "sii} & +{\bn "su} & +{\bn "suu} & +{\bn "s.r} & +{\bn "se} & +{\bn "sai} & +{\bn "so} & +{\bn "sau} \\ \hline + {\tt .s} & +{\bn .sa} & +{\bn .saa} & +{\bn .si} & +{\bn .sii} & +{\bn .su} & +{\bn .suu} & +{\bn .s.r} & +{\bn .se} & +{\bn .sai} & +{\bn .so} & +{\bn .sau} \\ \hline + {\tt s} & +{\bn sa} & +{\bn saa} & +{\bn si} & +{\bn sii} & +{\bn su} & +{\bn suu} & +{\bn s.r} & +{\bn se} & +{\bn sai} & +{\bn so} & +{\bn sau} \\ \hline + {\tt h} & +{\bn ha} & +{\bn haa} & +{\bn hi} & +{\bn hii} & +{\bn hu} & +{\bn huu} & +{\bn h.r} & +{\bn he} & +{\bn hai} & +{\bn ho} & +{\bn hau} \\ \hline + {\tt R} & +{\bn Ra} & +{\bn Raa} & +{\bn Ri} & +{\bn Rii} & +{\bn Ru} & +{\bn Ruu} & +{---} & +{\bn Re} & +{\bn Rai} & +{\bn Ro} & +{\bn Rau} \\ \hline + {\tt Rh} & +{\bn Rha} & +{\bn Rhaa} & +{\bn Rhi} & +{\bn Rhii} & +{\bn Rhu} & +{\bn Rhuu} & +{---} & +{\bn Rhe} & +{\bn Rhai} & +{\bn Rho} & +{\bn Rhau} \\ \hline +\end{tabular} +\vspace{0.10in} +\end{center} +} % end vbox +\end{table} + +\end{document} diff --git a/language/bengali/pandey/doc/bengdoc.pdf b/language/bengali/pandey/doc/bengdoc.pdf Binary files differnew file mode 100644 index 0000000000..e1efdf0a55 --- /dev/null +++ b/language/bengali/pandey/doc/bengdoc.pdf diff --git a/language/bengali/pandey/doc/example.bn b/language/bengali/pandey/doc/example.bn new file mode 100644 index 0000000000..c8498e8017 --- /dev/null +++ b/language/bengali/pandey/doc/example.bn @@ -0,0 +1,55 @@ +% Example for "Bengali for TeX" package. +% "Ajante" by Bonaphul + +\documentclass[12pt]{article} +\usepackage{beng} + +\begin{document} +\centerline{{\bn \LARGE ajaante}} +\centerline{{\bn \Large banaphula}} +\bigskip + +{\bn \large sedina aaphise maa{}ine peyechi| + +baaRi pherabaara pathe bhaabalaama `ora' janye eka.taa `ba.disa' +kine niye .yaa{}i| becaarii aneka dina thekei balache| + +e -- dokaana se -- dokaana khu~mje jaamaa kinate praaya sandhyaa +haye gela| jaamaa.ti kine beriyechi, b.r.s.tio aaramba ha'la| ki +kari, daa~mRaate ha'la| b.r.s.ti.taa ek.tu dharate, jaamaa.ti bagale +ka're, chaataa.ti maathaaya diye .yaacchi| baRa raastaa.tuku bena elaama, +taar para{}i gali, taa -- o andhakaara| + +galite cuke anyamanaska haye bhaabate bhaabate .yaacchi, anekdin +pare aaja natuna jaamaa peye taara mane ki aananda{}i na habe| aami -- + +emana samaya ha.thaaTa eka.taa loka ghaaRe ese paRala| seo pa'Re +gela, aamio pa'Re gelaama, jaamaa.taa kaadaaya maakhaamaakhi haye gela| + +aami u.the dekhi, loka.taa takhanao u.the ni, u.thabaara upakrama +karache| baage jaamaara sarbaa"nga jva'le gela, maaralaama eka laakhi| + +raastaa dekhe calate paara na suyaara? + +maarera co.te se aabaara pa'Re gela, kintu kona javaaba karale na| taate +aamaara aarao raaga ha'la, aarao maarate laagalaama| + +golamaala "sune paasera baaRira eka duuyaara khule gela| haate eka +bhadraloka beriye ese jij~naasaa karalena, byaapaara ki masaa{}i? + +dekhuna diki masaa{}i, raaskela.taa aamaara eta .taakaara jaamaa.taa +maa.ti ka're dile| kaadaaya maakhaamaakhi haye geche ekebaare| +patha calate jaane naa, ghaaRe ese paRala| + +ke -- o? o.h, thaaka masaa{}i, maapa karuna, oke aara maarabena na | +o becaaraa andha bobaa bhikhaarii, ei galitei thaake| + +taara dike ceye dekhi, maarera co.te se becaaraa kaa~mpache, +gaa-maya kaadaa| aara aamaara dike kaataramukhe andhad.r.s.ti +tule haata du.ti joRa ka're aache|} +\vfill + +{\noindent\small Typeset with Bengali for \TeX{}} +\end{document} + + diff --git a/language/bengali/pandey/doc/example.pdf b/language/bengali/pandey/doc/example.pdf Binary files differnew file mode 100644 index 0000000000..1af7ed15ec --- /dev/null +++ b/language/bengali/pandey/doc/example.pdf diff --git a/language/bengali/pandey/manifest.txt b/language/bengali/pandey/manifest.txt new file mode 100644 index 0000000000..a0cc6ff63c --- /dev/null +++ b/language/bengali/pandey/manifest.txt @@ -0,0 +1,28 @@ +beng.c +beng.sty +ubn.fd +ubnx.fd +doc/bengdoc.bn +doc/bengdoc.pdf +doc/example.bn +doc/example.pdf +mf/bn.mf +mf/bnbanjon.mf +mf/bndigit.mf +mf/bnjuk.mf +mf/bnkaar.mf +mf/bnlig.mf +mf/bnligtbl.mf +mf/bnmacro.mf +mf/bnmisc.mf +mf/bnpunct.mf +mf/bnr10.mf +mf/bnsl10.mf +mf/bnswar.mf +mf/xbnr10.mf +mf/xbnsl10.mf +mf/xbnsupp.mf +tfm/bnr10.tfm +tfm/bnsl10.tfm +tfm/xbnr10.tfm +tfm/xbnsl10.tfm diff --git a/language/bengali/pandey/mf/bn.mf b/language/bengali/pandey/mf/bn.mf new file mode 100644 index 0000000000..89a96afef9 --- /dev/null +++ b/language/bengali/pandey/mf/bn.mf @@ -0,0 +1,17 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bn.mf: METAFONT file that calls the base files +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 19 1997 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +input bnswar; +input bnkaar; +input bnbanjon; +input bndigit; +input bnpunct; +input bnlig; +input bnmisc; +input bnjuk; +input bnligtbl; + +%% End of the file bn.mf diff --git a/language/bengali/pandey/mf/bnbanjon.mf b/language/bengali/pandey/mf/bnbanjon.mf new file mode 100644 index 0000000000..d2fc9de15f --- /dev/null +++ b/language/bengali/pandey/mf/bnbanjon.mf @@ -0,0 +1,508 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bnbanjon.mf: METAFONT file that defines the Bengali consonants +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 19 1997 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +beginchar("k",0.70stwd#,stht#,stdp#); "The letter ka"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z5 = (5/8w,13/20h); +z5r = z5 + (0,penth#/2); z5l = z5 - (0,penth#/2); +z6 = (1/8w,8/21h); +numeric len; len = 1/2(penth#/(sqrt 2)); +z6l = z6 + (len,-len); z6r = z6 - (len,-len); +penstroke z5e{z6-z5 rotated -8}..z6e; +bot z4 = z4l + (0.1pt,0) = z4r - (0.1pt,0) = (5/8w,0); +z7 - z6 = (0.2pt,-0.2pt); +z7l = z7 + (len, -len); z7r = z6r; +penstroke z7e{z4-z7 rotated 120}.. tension 1.5 .. z4e; +top z3 = (5/8w,3/4h); +draw z3..z4; +z8 = (7/8w,2/7h); z8r = z8 + (len/2,-len/2); z8l = z8 - (len/2,-len/2); +penstroke z5e{right}..z8e; +fill fullcircle scaled 1.1pt shifted (z8 - (0.44pt,-0.2pt)); +endchar; + +beginchar("K",0.62stwd#,stht#,stdp#); "The letter kha"; +z1 = (w-0.9pt,3/4h+0.3pt); z1' = (w-0.9pt,3/4h); z2 = (w-0.9pt,0); z3 = (w,3/4h); +pickup pencircle xscaled 0.56pt yscaled 0pt rotated -45; draw z1..z2; +pickup pencircle scaled 0.4pt; draw z1'..z3; +rt z4 = (1/6w,14/25h); z5 = (1/2w,3/4h); +z6 = (2/3w,3/5h); z7 = (1/4w,11/30h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z4{right}..{dir 30}z5{dir -45}..{down}z6{down}..{dir -165}z7; +z7r + (0.25pt,-0.25pt) = z7l - (0.25pt,-0.25pt) = z7; +z2l + (0.15pt,0) = z2r - (0.15pt,0) = z2 + (0,0.17pt); +penstroke z7e{dir -10}..{dir -65}z2e; +fill fullcircle scaled 1.3pt shifted (z4 + (0.15pt,0.39pt)); +endchar; + +beginchar("g",0.56stwd#,stht#,stdp#); "The letter ga"; +z1 = (w-0.9pt,3/4h+0.3pt); z1' = (w-0.9pt,3/4h); z2 = (w-0.9pt,0); z3 = (w,3/4h); +pickup pencircle xscaled 0.56pt yscaled 0pt rotated -45; draw z1..z2; +pickup pencircle scaled 0.4pt; draw z1'..z3; +rt z4 = (5/6w,4/7h); top z5 = (9/20w,3/4h); rt z6 = (1/7w,11/21h); +z7 = (1/2w,19/40h); z8 = (17/50w,4/15h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z4{dir 120}..{left}z5{left}..{down}z6{dir 30}..{down}z7{down}..{dir -125}z8; +endchar; + +beginchar("G",0.56stwd#,stht#,stdp#); "The letter gha"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +top z3 = (w-0.9pt,3/4h); z4 = (w-0.9pt,0); draw z3..z4; +z5 = (1/5w,3/4h-0.05pt); z6 = (1/8w,14/23h); +z7 = (14/25w,21/40h); z8 = (2/9w,3/10h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z5{dir -120}..{down}z6{down}..{dir 30}z7--z8; +z8r + (0.25pt,-0.25pt) = z8l - (0.25pt,-0.25pt) = z8; +z4l + (0.15pt,0) = z4r - (0.15pt,0) = z4; +penstroke z8e{right}..tension 1.5 ..{dir -75}z4e; +endchar; + +beginchar("q",0.62stwd#,stht#,stdp#); "The letter una"; +z1 = (1/5w,3/4h); z2 = (19/40w,19/31h); z3 = (23/29w,23/31h); +z4 = (1/2w,3/4h); z5 = (4/9w,3/8h); z6 = (19/40w,16/45h); +z7 = (4/5w,1/2h); lft z8 = (7/8w,5/16h); z9 = (23/40w,1/12h); +z10 = (9/50w,1/3h); z11 = (1/10w,13/20h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1..tension 1.2..{right}z2{right}..tension 1.2.. +{up}z3{up}..{dir -130}z4{dir -130}.. +tension 2..z5--z6{dir 0}..{dir 60}z7{dir -60}..{down}z8{down} +..{left}z9{left}..z10..z11; +endchar; + +beginchar("c",0.48stwd#,stht#,stdp#); "The letter cha"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +top lft z3 = (1/6w,3/4h); lft z4 = (1/6w,1/4h); +z5 = (2/5w,1/16h); z6 = (5/6w,4/9h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z3--z4{down}..z5{dir 30}..{up}z6{dir 165}..{dir 100}z3; +endchar; + +beginchar("C",0.55stwd#,stht#,stdp#); "The letter chha"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +top z3 = (1/6w,3/4h); z4 = (1/6w,5/12h); z5 = (1/5w,3/8h); +z6 = (11/20w,9/16h); z7 = (13/20w,9/16h); z8 = (5/6w,4/9h); +z9 = (1/5w,9/40h); z10 = (w,-1/3d); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z3..z4{down}..{right}z5{right}..{dir 80}z6{left}..{up}z3; +draw z6{right}..z7..{down}z8{down}..{left}z9; +z9r + (0.2pt,-0.2pt) = z9l - (0.2pt,-0.2pt) = z9; +z10l + (0,0.15pt) = z10r - (0,0.15pt) = z10; +penstroke z9e{right}..{dir -45}z10e; +endchar; + +beginchar("j",0.70stwd#,stht#,stdp#); "The letter ja"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +top z3 = (8/20w,3/4h); z4 = (5/21w,1/2h); z5 = (8/20w,9/24h); +z6 = (21/36w,37/80h); z7 = (11/16w,3/10h); z8 = (1/2w,1/8h); +rt z9 = (1/10w,5/8h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{dir -135}..{down}z4{down}..{right}z5{right}..{dir30}z6 + {dir -60}..{down}z7{down}..{left}z8{left}..{up}z9; +rt z11 = z11l + (0.2pt,-0.2pt) = z11r - (0.2pt,-0.2pt) = (11/12w,3/5h); +z12 = z12l + (0.15pt,0) = z12r - (0.15pt,0) = (8/9w,0); +pickup pencircle xscaled 0.2pt yscaled 0.4pt; +draw z3{dir -90}..{dir 15}z11; +penstroke z11e{dir -120}..{dir -75}z12e; +endchar; + +beginchar("J",0.68stwd#,stht#,stdp#); "The letter jha"; +z1 = (w-0.9pt,3/4h); z2 = (w-0.9pt,1/11h); +z3 = (5/8w,3/4h); z4 = (5/8w,0); lft z5 = 4/7[z3,z4]; +pickup pencircle scaled penth#; draw (z1+(0,0.3pt))..z2; draw z3..z4; +draw (0,3/4h)..z3; draw z1..(w,3/4h); +draw z5{dir -45}..{dir -75}z2; +rt z6 = (5/8w,13/20h); z7 = (1/7w,8/21h); +pickup pencircle scaled 0.5pt; +draw z6{z7-z6 rotated -8}..z7; +z4 + (0,0.2pt) = z4l + (0.15pt,0) = z4r - (0.15pt,0); +z7 = z7r + (0.2pt,-0.2pt) = z7l - (0.1pt,-0.27pt); +penstroke z7e{right}.. tension 1.5 .. z4e; +endchar; + +beginchar("Q",0.90stwd#,stht#,stdp#); "The letter ina"; +numeric wd; wd = 17/24w; +z1 = (9/20wd,2/5h); z2 = (19/25wd,3/4h); z3 = (6/7wd,2/3h); +z4 = (6/7wd,0); z5 = (1/2wd,1/6h); +z6 = (1/5wd,1/5h); z7 = (1/8wd,3/8h); z8 = (1/6wd,1/2h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z1{dir 135}..tension 1.2..{right}z2{right}..z3{down}..z4; +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw (z4+(0,0.2pt)){up}...{left}z5{left}..z6..{up}z7{up}..z8; +fill fullcircle scaled 1.4pt shifted (z1 + (0.47pt,0.38pt)); +z9 = 9/20[z3,z4] + (0,0.4pt); z13 = 11/20[z3,z4] + (0,0.4pt); z10 = (8/9w,13/24h) + (0,0.4pt); +z11 = (5/6w,1/3h) + (0,0.4pt); z12 = (8/9w,3/24h) + (0,0.4pt); +pickup pencircle xscaled 0.6pt yscaled 0.3pt rotated 60; +draw z9{dir 75}..z10..z11; +pickup pencircle xscaled 0.6pt yscaled 0.3pt rotated -60; +draw z13{dir -75}..z12..z11; +fill fullcircle scaled 1.1pt shifted (z11 + (-0.1pt,0)); +endchar; + +beginchar("T",0.48stwd#,stht#,stdp#); "The letter Ta"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +top lft z3 = (1/6w,3/4h); lft z4 = (1/6w,1/4h); +z5 = (2/5w,1/16h); z6 = (5/6w,4/9h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z3--z4{down}..z5{dir 30}..{up}z6; +fill fullcircle scaled 1.2pt shifted (z6 - (0.43pt,0.15pt)); +z7 = (w-0.7pt,3/4h); z8 = (1/2w,31/32h); z9 = (-1/8w,11/10h); +pickup pencircle xscaled 0.2pt yscaled 0.4pt; +draw z7{dir 60}..{left}z8{left}...z9{dir 75}; +endchar; + +beginchar("Z",0.5stwd#,stht#,stdp#); "The letter Tha"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z3 = (4/7w,3/4h); z4 = (1/6w,9/40h); z5 = (7/16w,1/16h); +z6 = (5/6w,3/8h); z7 = (1/3w,9/8h); z8 = (2/5w,19/16h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z3{dir -75}..{dir -150}z4{down}..{right}z5{right}..{up}z6{up} + ..{dir 120}z3..{up}z7{up}..{dir 45}z8; +endchar; + +beginchar("D",0.60stwd#,stht#,stdp#); "The letter Da"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +top z3 = (1/2w,3/4h); z4 = (1/2w,9/22h); z5 = (11/20w,3/8h); +z6 = (41/50w,21/40h); lft z7 = (8/9w,5/16h); +z8 = (23/40w,1/12h); z9 = (1/10w,13/20h); z10 = (9/50w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{down}..{down}z4{dir -60}..{dir -60}z5{dir 30}..{dir60}z6{dir -60} + ..{down}z7{down}..{left}z8{left}..z10..z9; +endchar; + +beginchar("X",0.48stwd#,stht#,stdp#); "The letter Dha"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +top lft z3 = (1/6w,3/4h); lft z4 = (1/6w,1/4h); +z5 = (2/5w,1/16h); z6 = (5/6w,4/9h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z3--z4{down}..z5{dir 30}..{up}z6; +fill fullcircle scaled 1.2pt shifted (z6 - (0.43pt,0.15pt)); +endchar; + +beginchar("N",0.52stwd#,stht#,stdp#); "The letter murdhanya Na"; +z1 = (w-0.9pt,3/4h+0.3pt); z1' = (w-0.9pt,3/4h); z2 = (w-0.9pt,0); z3 = (w,3/4h); +pickup pencircle xscaled 0.56pt yscaled 0pt rotated -45; draw z1..z2; +pickup pencircle scaled 0.4pt; draw z1'..z3; +rt z4 = 1/4[z1,z2]; z5 = (7/16w,3/4h); rt z6 = (1/6w,9/16h); z7 = (3/8w,27/64h); +pickup pencircle xscaled 0.6pt yscaled 0.3pt rotated -30; +draw z4{dir 130}..{left}z5{left}..{down}z6{down}...{dir 20}z7; +fill fullcircle scaled 1.1pt shifted (z7+(0.08pt,0.37pt)); +endchar; + +beginchar("t",0.60stwd#,stht#,stdp#); "The letter ta"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +z3 = (1/2w,5/9h); lft z4 = (6/7w,7/20h); +z5 = (3/5w,1/12h); rt z6 = (1/10w,13/20h); z7 = (1/5w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{dir 28}..{down}z4{down}..{left}z5{left}..z7..z6; +fill fullcircle scaled 1.5pt shifted (z3 + (0.24pt,-0.44pt)); +endchar; + +beginchar("z",0.58stwd#,stht#,stdp#); "The letter tha"; +z1 = (w-0.9pt,3/4h+0.3pt); z1' = (w-0.9pt,3/4h); z2 = (w-0.9pt,0); z3 = (w,3/4h); +pickup pencircle xscaled 0.56pt yscaled 0pt rotated -45; draw z1..z2; +pickup pencircle scaled 0.4pt; draw z1'..z3; +z4 = (1/7w,5/8h); z5 = (3/8w,3/4h); +z6 = (3/5w,5/8h); z7 = (1/5w,3/8h); +pickup pencircle xscaled 0.3pt yscaled 0.5pt rotated 45; +draw z4{dir 90}...{right}z5{right}..{down}z6{down}..{dir -160}z7; +z2l + (0.1pt,-0.4pt) = z2r - (0.1pt,0.4pt) = z2; +z7r + (0.1pt,-0.24pt) = z7l - (0.1pt,-0.24pt) = z7; +penstroke z7e{right}..tension1.2..{dir -75}z2e; +fill fullcircle scaled 1pt shifted (z4 + (0.33pt,0pt)); +endchar; + +beginchar("d",0.47stwd#,stht#,stdp#); "The letter da"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +z3 = (1/6w,3/4h); z4 = (1/6w,3/10h); draw z3..z4; +z5 = (6/7w,4/7h); z4' = 1/2[z4,z5] + (0,0.25pt); +pickup pencircle xscaled 0pt yscaled 0.5pt rotated 45; +draw z4{z4'-z4}..z4'..{z5-z4'}z5; +z6 = z6l + (0.17pt,0) = z6r - (0.17pt,0) = (3/4w,0); +z5l + (0.2pt,-0.2pt) = z5r - (0.2pt,-0.2pt) = z5; +penstroke z5e{dir -120}..{dir -75}z6e; +endchar; + +beginchar("x",0.52stwd#,stht#,stdp#); "The letter dha"; +pickup pencircle scaled penth#; +z1 = (w-0.9pt,3/4h); z2=(w,3/4h); +draw z1..z2; +z5 = (w-0.9pt,13/20h); +z5r = z5 + (0,penth#/2); z5l = z5 - (0,penth#/2); +z6 = (1/6w,8/21h); +numeric len; len = 1/2(penth#/(sqrt 2)); +z6l = z6 + (len,-len); z6r = z6 - (len,-len); +penstroke z5e{z6-z5 rotated -8}..z6e; +bot z4 = z4l + (0.1pt,0) = z4r - (0.1pt,0) = (w-0.9pt,0); +z7 - z6 = (0.2pt,-0.2pt); +z7l = z7 + (len, -len); z7r = z6r; +penstroke z7e{z4-z7 rotated 120}.. tension 1.5 .. z4e; +top z3 = (w-0.9pt,3/4h); +draw z3..z4; +z8 = 9/20[z5,z6] + (0,0.2pt); z9 = (1/4w,27/40h); bot z10 = (11/30w,3/4h); +pickup pencircle scaled 0.3pt; +draw z8{left}..{up}z9{up}..{right}z10; +fill fullcircle scaled 1.0pt shifted (z10 + (0.1pt,-0.33pt)); +endchar; + +beginchar("n",0.52stwd#,stht#,stdp#); "The letter na"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); top z3 = (w-0.9pt,3/4h); z4 = (w-0.9pt,0); +draw z1..z2; draw z3..z4; +z5 = (1/4w,5/12h); bot z6 = z4; +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z5{dir 20}..{down}z6; +fill fullcircle scaled 1.5pt shifted (z5 - (-0.14pt,0.485pt)); +endchar; + +beginchar("p",0.60stwd#,stht#,stdp#); "The letter pa"; +z1 = (w-0.9pt,3/4h+0.3pt); z1' = (w-0.9pt,3/4h); z2 = (w-0.9pt,0); z3 = (w,3/4h); +pickup pencircle xscaled 0.56pt yscaled 0pt rotated -45; draw z1..z2; +pickup pencircle scaled 0.4pt; draw z1'..z3; +rt z4 = (5/6w,5/9h); top z5 = (8/19w,3/4h); rt z6 = (1/8w,17/28h); +z7 = (2/7w,3/8h); z8 = (17/24w,5/8h); +pickup pencircle xscaled 0.3pt yscaled 0.5pt rotated 45; +draw z4--z8{z8-z4}..{left}z5{left}..{dir -140}z6{dir 30}..{dir -140}z7; +pickup pencircle xscaled 0pt yscaled 0.6pt rotated 50; +draw z7--z8; +endchar; + +beginchar("f",0.67stwd#,stht#,stdp#); "The letter pha"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +z3 = (13/20w,3/5h); z4 = (13/20w,0); draw z3..z4; +top rt z5 = (1/10w,3/4h); z6 = (2/5w,43/80h); z7 = (1/6w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 50; +draw z5{right}.. tension 2 ..z6--z7; +z7r + (0.25pt,-0.25pt) = z7l - (0.25pt,-0.25pt) = z7; +z4l + (0.15pt,0) = z4r - (0.15pt,0) = z4; +penstroke z7e{right}..tension 1.5 ..{dir -75}z4e; +lft z8 = (7/8w,4/9h); z9 = (5/6w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{right}..{down}z8{down}..z9; +fill fullcircle scaled 1.2pt shifted (z9 + (-0.18pt,0.30pt)); +endchar; + +beginchar("b",0.52stwd#,stht#,stdp#); "The letter ba"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z5 = (w-0.9pt,13/20h); +z5r = z5 + (0,penth#/2); z5l = z5 - (0,penth#/2); +z6 = (1/6w,8/21h); +numeric len; len = 1/2(penth#/(sqrt 2)); +z6l = z6 + (len,-len); z6r = z6 - (len,-len); +penstroke z5e{z6-z5 rotated -8}..z6e; +bot z4 = z4l + (0.1pt,0) = z4r - (0.1pt,0) = (w-0.9pt,0); +z7 - z6 = (0.2pt,-0.2pt); +z7l = z7 + (len, -len); z7r = z6r; +penstroke z7e{z4-z7 rotated 120}.. tension 1.5 .. z4e; +top z3 = (w-0.9pt,3/4h); +draw z3..z4; +endchar; + +beginchar("v",0.63stwd#,stht#,stdp#); "The letter bha"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z3 = (2/5w,3/7h); z4 = (4/5w,1/2h); lft z5 = (7/8w,5/16h); +z6 = (17/30w,1/12h); rt z7 = (1/10w,13/20h); z8 = (9/50w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 15; +draw z3{dir -29}..{dir 60}z4{dir -50}..{down}z5{down}..{left}z6{left}..z8..z7; +fill fullcircle scaled 1.65pt shifted (z3 + (0.36pt,0.48pt)); +endchar; + +beginchar("m",0.55stwd#,stht#,stdp#); "The letter ma"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); top z3 = (w-0.9pt,3/4h); z4 = (w-0.9pt,0); +draw z1..z2; draw z3..z4; +z5 = (1/6w,3/4h-0.04pt); z6 = (7/16w,1/4h); +pickup pencircle xscaled 0.6pt yscaled 0.3pt rotated -45; +draw z5{dir -135}..z6{dir -142}; +z4l + (0.1pt,0) = z4r - (0.1pt,0) = z4; +z6l + (0,0.23pt) = z6r - (0,0.23pt) = z6 + (0,0.27pt); +penstroke z6e{right}..{down}z4e; +fill fullcircle scaled 1.5pt shifted (z6 - (0.21pt,-0.03pt)); +endchar; + +beginchar("Y",0.55stwd#,stht#,stdp#); "The letter antashthya ja"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +top z3 = (w-0.9pt,3/4h); z4 = (w-0.9pt,0); draw z3..z4; +top rt z5 = (1/10w,3/4h); z6 = (1/2w,43/80h); z7 = (1/6w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 50; +draw z5{right}.. tension 2 ..z6--z7; +z7r + (0.25pt,-0.25pt) = z7l - (0.25pt,-0.25pt) = z7; +z4l + (0.15pt,0) = z4r - (0.15pt,0) = z4; +penstroke z7e{right}..tension 1.5 ..{dir -75}z4e; +endchar; + +beginchar("r",0.52stwd#,stht#,stdp#); "The letter ra"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z5 = (w-0.9pt,13/20h); +z5r = z5 + (0,penth#/2); z5l = z5 - (0,penth#/2); +z6 = (1/6w,8/21h); +numeric len; len = 1/2(penth#/(sqrt 2)); +z6l = z6 + (len,-len); z6r = z6 - (len,-len); +penstroke z5e{z6-z5 rotated -8}..z6e; +bot z4 = z4l + (0.1pt,0) = z4r - (0.1pt,0) = (w-0.9pt,0); +z7 - z6 = (0.2pt,-0.2pt); +z7l = z7 + (len, -len); z7r = z6r; +penstroke z7e{z4-z7 rotated 120}.. tension 1.5 .. z4e; +top z3 = (w-0.9pt,3/4h); +draw z3..z4; +fill fullcircle scaled 0.9pt shifted (9/20w,2/21h); +endchar; + +beginchar("l",0.62stwd#,stht#,stdp#); "The letter la"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); top z3 = (w-0.9pt,3/4h); z4 = (w-0.9pt,0); +draw z1..z2; draw z3..z4; +z5 = (5/6w,9/20h); z6 = (16/24w,5/9h); z7 = (9/16w,2/5h); +z8 = (1/3w,5/9h); z9 = (1/8w,13/32h); z10 = (3/8w,4/15h); +pickup pencircle xscaled 0.3pt yscaled 0.5pt; +draw z5{dir 135}..{left}z6{left}..{dir -75}z7{dir 105}..{left}z8{left} + ..{down}z9{down}..{dir 14.5}z10; +fill fullcircle scaled 1.2pt shifted (z10 + (-0.09pt,0.32pt)); +endchar; + +beginchar("S",0.56stwd#,stht#,stdp#); "The letter talabya sha"; +z1 = (w-0.9pt,3/4h+0.3pt); z1' = (w-0.9pt,3/4h); z2 = (w-0.9pt,0); z3 = (w,3/4h); +pickup pencircle xscaled 0.56pt yscaled 0pt rotated -45; draw z1..z2; +pickup pencircle scaled 0.4pt; draw z1'..z3; +z4 = (0,3/4h); z5 = (5/16w,19/32h); +top z6 = (14/25w,3/4h); z7 = 2/7[z1,z2]; +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z4{right}..{dir -60}z5{dir 60}..{right}z6{right}..{z7-z6}z7; +fill fullcircle xscaled 1.4pt yscaled 2.5pt rotated -45 shifted (z5 + (-0.50pt,-0.62pt)); +fill fullcircle xscaled 1.4pt yscaled 2.5pt rotated 45 shifted (z5 + (0.50pt,-0.62pt)); +endchar; + +beginchar("F",0.55stwd#,stht#,stdp#); "The letter murdhanya sa"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +top z3 = (w-0.9pt,3/4h); z4 = (w-0.9pt,0); draw z3..z4; +top rt z5 = (1/10w,3/4h); z6 = (1/2w,43/80h); z7 = (1/6w,1/3h); rt z8 = (5/6w,8/20h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 50; +draw z5{right}.. tension 2 ..z6--z7; draw (z6+(0,0.1pt))--z8; +z7r + (0.25pt,-0.25pt) = z7l - (0.25pt,-0.25pt) = z7; +z4l + (0.15pt,0) = z4r - (0.15pt,0) = z4; +penstroke z7e{right}..tension 2.5 ..{dir -75}z4e; +endchar; + +beginchar("s",0.60stwd#,stht#,stdp#); "The letter danto sa"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); top z3 = (w-0.9pt,3/4h); z4 = (w-0.9pt,0); +draw z1..z2; draw z3..z4; +top z5 = (1/9w,3/4h); rt z10 = (w-0.9pt,5/13h); z7 = (1/6w,1/3h); z8 = (1/4w,3/11h); +z9 - z10 = 3/2(z7 - z8); rt z6 = 5/8[z8,z9]; +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z5{right}..{down}z6; +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z7..z8..z9...{dir -45}z10; +endchar; + +beginchar("h",0.5stwd#,stht#,stdp#); "The letter ha"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z3 = (3/10w,3/4h); z4 = (1/3w,3/5h); z5 = (5/6w,1/2h); +lft z6 = (1/8w,5/16h); z7 = (w,-1/3d); +z6l + (0.15pt,-0.3pt) = z6r - (0.15pt,-0.3pt) = z6; +z7l - (0,0.15pt) = z7r + (0,0.15pt) = z7; +pickup pencircle xscaled 0.6pt yscaled 0.3pt rotated -45; +draw z4{dir 30}..{down}z5{down}..{dir 150}z6; +pickup pencircle scaled 0.3pt; +draw z3{dir -20}..{dir -75}(z4 + (0.5pt,0)); +penstroke z6e{dir -30}..{dir -45}z7e; +fill fullcircle xscaled 1.5pt yscaled 1pt rotated 30 shifted (z4 + (0,-0.20pt)); +endchar; + +beginchar("R",0.60stwd#,stht#,stdp#); "The letter Da-e bindu ra"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +top z3 = (1/2w,3/4h); z4 = (1/2w,9/22h); z5 = (11/20w,3/8h); +z6 = (41/50w,21/40h); lft z7 = (8/9w,5/16h); +z8 = (23/40w,1/12h); z9 = (1/10w,13/20h); z10 = (9/50w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{down}..{down}z4{dir -60}..{dir -60}z5{dir 30}..{dir60}z6{dir -60} + ..{down}z7{down}..{left}z8{left}..z10..z9; +fill fullcircle scaled 1.2pt shifted (23/40w,-2/5d); +endchar; + +beginchar("V",0.48stwd#,stht#,stdp#); "The letter Dha-e bindu ra"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +top lft z3 = (1/6w,3/4h); lft z4 = (1/6w,1/4h); +z5 = (2/5w,1/16h); z6 = (5/6w,4/9h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z3--z4{down}..z5{dir 30}..{up}z6; +fill fullcircle scaled 1.2pt shifted (z6 - (0.43pt,0.15pt)); +fill fullcircle scaled 1.2pt shifted (3/8w,-2/5d); +endchar; + +beginchar("y",0.55stwd#,stht#,stdp#); "The letter antashthya ya"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +top z3 = (w-0.9pt,3/4h); z4 = (w-0.9pt,0); draw z3..z4; +top rt z5 = (1/10w,3/4h); z6 = (1/2w,43/80h); z7 = (1/6w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 50; +draw z5{right}.. tension 2 ..z6--z7; +z7r + (0.25pt,-0.25pt) = z7l - (0.25pt,-0.25pt) = z7; +z4l + (0.15pt,0) = z4r - (0.15pt,0) = z4; +penstroke z7e{right}..tension 1.5 ..{dir -75}z4e; +fill fullcircle scaled 1.2pt shifted (11/25w,1/20h); +endchar; + +beginchar("B",0.52stwd#,stht#,stdp#); "The letter khanda-ta"; +z1 = (17/60w,28/40h); z2 = (1/2w,4/7h); z3 = (2/3w,52/80h); +z4 = (1/2w,3/4h); z5 = (1/7w,21/40h); z6 = (9/10w,0); +pickup pencircle xscaled 0.5pt yscaled 0.3pt rotated 60; +%pickup pencircle scaled 0.4pt; +draw z1..{right}z2{right}..{up}z3{up}..{left}z4{left} ..z1.. +{down}z5{down}..{down}z6; +endchar; + +beginchar("M",0.32stwd#,stht#,stdp#); "The letter anuswar"; +pickup pencircle xscaled 0.3pt yscaled 0.5pt rotated 45; +z1 = (1/2w,3/4h); z2 = (1/2w,3/4h-11/20w); draw z1..z2..cycle; +z3 = z3l - (0,0.30pt) = z3r + (0,0.30pt) = (1/5w,17/40h); +z4 = z4l - (0,0.20pt) = z4r + (0,0.20pt) = (w,0); +penstroke z3e{dir -45}...{dir -75}z4e; +endchar; + +beginchar("H",0.27stwd#,stht#,stdp#); "The letter bisarga"; +z1 = (1/2w,3/4h); z4 = (1/2w,1/10h); z2 = (1/2w,3/4h-2/3w); z3 = (1/2w,1/10h+2/3w); +pickup pencircle xscaled 0.3pt yscaled 0.5pt rotated 45; +draw z1..z2..cycle; draw z3..z4..cycle; +endchar; + +beginchar("w",0stwd#,stht#,stdp#); "chandrabindu"; +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +z1 = (w-2.6pt,h); z2 = (w-1pt,3/4h+0.4pt); z3 = (w+0.6pt,h); +draw z1..{right}z2{right}..z3; +fill fullcircle scaled 1.1pt shifted (-1pt,h); +endchar; + +%%% End of bnbanjon.mf diff --git a/language/bengali/pandey/mf/bndigit.mf b/language/bengali/pandey/mf/bndigit.mf new file mode 100644 index 0000000000..a77a226f27 --- /dev/null +++ b/language/bengali/pandey/mf/bndigit.mf @@ -0,0 +1,86 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bndigit.mf: METAFONT file that defines the Bengali digits +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 19 1997 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +beginchar("0",0.48stwd#,stht#,stdp#); "The number 0"; +z1 = (1/2w,7/16h+19/50w); z2 = (1/2w,7/16h-19/50w); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1..z2..cycle; +endchar; + +beginchar("1",0.52stwd#,stht#,stdp#); "The number 1"; +z1 = (1/5w,3/4h); z2 = (3/4w,3/8h); z3 = (5/6w,1/4h); z4 = (7/12w,1/15h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1{dir -135}..z2..{down}z3{down}..{dir -160}z4; +fill fullcircle xscaled 2.0pt yscaled 1.3pt rotated 20 shifted (z4 + (-0.12pt,0.35pt)); +endchar; + +beginchar("2",0.52stwd#,stht#,stdp#); "The number 2"; +z1 = (1/4w,3/4h); z2 = (5/9w,11/24h); z3 = (3/4w,21/41h); +z4 = (1/5w,1/3h); z5 = (9/10w,-d/5); +pickup pencircle xscaled 0.6pt yscaled 0.3pt; +draw z1{dir -135}..tension 2..{dir -45}z3{dir -45}..{dir 150}z4; +z4l + (0.1pt,-0.35pt) = z4r - (0.1pt,-0.35pt) = z4 - (0.30pt,-0.04pt); +z5l - (0.15pt,0) = z5r + (0.15pt,0) = z5; +penstroke z4e{dir -30}..{dir -45}z5e; +endchar; + +beginchar("3",0.60stwd#,stht#,stdp#); "The number 3"; +z3 = (1/2w,5/9h); lft z4 = (6/7w,7/20h); +z5 = (3/5w,1/12h); rt z6 = (1/10w,13/20h); z7 = (1/5w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{dir 28}..{down}z4{down}..{left}z5{left}..z7..z6; +fill fullcircle scaled 1.5pt shifted (z3 + (0.24pt,-0.44pt)); +endchar; + +beginchar("4",0.54stwd#,stht#,stdp#); "The number 4"; +z1 = (1/2w,3/4h); z2 = (1/6w,9/16h); z3 = (1/2w,3/8h); +z4 = (5/6w,3/16h); z5 = (1/2w,0); z6 = (1/6w,3/16h); z7 = (5/6w,9/16h); +pickup pencircle xscaled 0.6pt yscaled 0.3pt rotated 45; +draw z1..z2..z3..z4..z5..z6..z3..z7..cycle; +endchar; + +beginchar("5",0.54stwd#,stht#,stdp#); "The number 5"; +z1 = (1/2w,3/4h); z2 = (1/5w,1/9h); z3 = (3/4w,0); z4 = (9/10w,11/20h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z1{dir -145}..{dir -50}z2{dir -50}..{right}z3{dir 150}.. +{dir 30}z4{left}..{up}z1; +endchar; + +beginchar("6",0.59stwd#,stht#,stdp#); "The number 6"; +top z3 = (7/20w,3/4h); z4 = (1/2w,9/22h); z5 = (11/20w,3/8h); +z6 = (41/50w,21/40h); lft z7 = (8/9w,5/16h); +z8 = (23/40w,1/12h); z9 = (1/10w,13/20h); z10 = (9/50w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{dir -10}..tension 1.2..{dir -70}z4{dir -60}..{dir -60}z5{dir 30}..{dir 60}z6{dir -60} + ..{down}z7{down}..{left}z8{left}..z10..z9; +endchar; + +beginchar("7",0.48stwd#,stht#,stdp#); "The number 7"; +z1 = (3/4w,10/21h); z2 = (1/6w,1/2h); z3 = (1/2w,3/4h); z4 = (8/9w,0); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z1{left}..tension 1.4..{dir 135}z2{dir 135}..tension 1.4.. +{right}z3{right}..z1..tension 2.2..{dir -15}z4; +endchar; + +beginchar("8",0.55stwd#,stht#,stdp#); "The number 8"; +z1 = (1/10w,3/4h); z2 = (1/6w,3/7h); z3 = (1/6w,1/6h); +z4 = (1/4w,1/16h); z5 = (13/20w,17/42h); z6 = (9/10w,1/2h); +pickup pencircle xscaled 0.3pt yscaled 0.5pt; +draw z1{right}..tension 2.2..{down}z2--z3{down}..z4{right}.. +{up}z5{dir 135}..tension 2..{dir -135}z2; +pickup pencircle xscaled 0 yscaled 0.5pt rotated 30; +draw z5{dir 75}..{dir 75}z6; +endchar; + +beginchar("9",0.55stwd#,stht#,stdp#); "The number 9"; +z1 = (1/6w,3/4h); z2 = (7/8w,1/5h); z3 = (2/3w,0); +z4 = (23/60w,1/4h); z5 = (1/6w,1/10h); +pickup pencircle xscaled 0.6pt yscaled 0.3pt rotated 45; +draw z1{down}..{down}z2{down}..{dir -165}z3{up}..{left}z4{left}..{dir -75}z5; +fill fullcircle scaled 1.2pt shifted (z5 + (0.39pt,-0.1pt)); +endchar; + +%%% End of bndigit.mf diff --git a/language/bengali/pandey/mf/bnjuk.mf b/language/bengali/pandey/mf/bnjuk.mf new file mode 100644 index 0000000000..365448cac8 --- /dev/null +++ b/language/bengali/pandey/mf/bnjuk.mf @@ -0,0 +1,980 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bnjuk.mf: METAFONT file that defines the Bengali conjunct consonants +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 20 1997 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +input bnmacro; + +newchar(128,0.70,"k + k"); +matra(w,h); +ka_(1/7w,1/3h,6/7w-0.9pt,(3/4-1/3)*h,3/10); +ka(4/17w,0,(6/7-4/17)*w-0.25pt,11/20h,3/10); +endchar; + +newchar(129,0.55,"k + T"); +matra(w,h); tiki(w,h,0); +ka(1/7w,11/40h,13/20w,(3/4-11/40)*h,3/8); +_Dha(3/10w,0,7/10w-0.9pt,3/10h); +endchar; + +newchar(130,0.75,"k + t"); +matra(w,h); +tta(1/11w,0,(16/25-1/11)*w,3/4h-0.8pt); +shnur(15/25w,3/8h,10/25w-0.4pt,11/60h); +endchar; + +newchar(131,0.70,"k + b"); +matra(w,h); +ka_(1/7w,1/3h,6/7w-0.9pt,(3/4-1/3)*h,1/10); +ba(4/17w,0,(5/7-4/17)*w-0.6pt,11/20h); +endchar; + +newchar(132,0.68,"k + m"); +matra(w,h); +ka(1/10w,3/10h,15/26w,(3/4 - 3/10)*h,3/10); +ma(29/50w,0,21/50w-0.9pt,1/3h,1.2,-0.5pt); +endchar; + +newchar(133,0.84,"k + r"); +matra(w,h); +tra(1/11w,0,(16/25-1/11)*w,2/3h); +shnur(16/25w,3/8h,9/25w-0.4pt,11/60h); +endchar; + +newchar(134,0.65,"k + l"); +matra(w,h); +ka(1/4w,3/10h,3/4w-0.9pt,(3/4-3/10)*h,3/10); +la(1/10w,0,(3/4-1/10)*w-0.6pt,3/10h,0); +endchar; + +newchar(135,0.82,"k + s"); +matra(w,h); +khiyo(1/10w,0,9/10w-0.9pt,3/4h); +endchar; + +newchar(136,0.75,"k + s + n"); +matra(w,h); +khiyo(1/9w,1/16h,8/9w-0.9pt,(3/4-1/16)*h); +na(1/4w,-11/30d,5/12w-0.32pt,11/32h,0); +endchar; + +newchar(137,0.85,"k + s + m"); +matra(w,h); +khiyo(1/10w,1/16h,17/24w,(3/4-1/16)*h); +ma(575/1000w,-3/4d,425/1000w-0.9pt,39/100h,1.35,0); +endchar; + +newchar(138,0.67,"k + ss"); +matra(w,h); rtbar(w,h); +ka(1/8w,3/11h,11/20w,(3/4-3/11)*h,3/8); +_ds(1/5w,0,4/5w-0.9pt,3/5h); +endchar; + +newchar(139,0.65,"g + dh"); +pickup dflt_pen; +draw ((1/6+9/16)*w-0.18pt,3/4h)..(w,3/4h); +ga(1/6w,3/8h,9/16w-0.18pt,3/8h,0); +dha(3/8w,0,5/8w-0.9pt,3/7h); +endchar; + +newchar(140,0.56,"g + n"); +pickup dflt_pen; +draw (w-0.9pt,3/4h)..(w,3/4h); +ga(1/6w,3/8h,5/6w-0.9pt,3/8h,0); +na(1/4w,0,3/4w-0.9pt,3/8h,1/9); +endchar; + +newchar(141,0.56,"g + b"); +pickup dflt_pen; +draw (w-0.9pt,3/4h)..(w,3/4h); +ga(1/6w,3/8h,5/6w-0.9pt,3/8h,0); +ba(4/9w,0,5/9w-0.9pt,3/7h); +endchar; + +newchar(142,0.70,"g + m"); +pickup dflt_pen; +draw (2/3w,3/4h)..(w,3/4h); +ga(1/9w,3/8h,5/9w,3/8h,0); +ma(2/3w,0,1/3w-0.9pt,3/10h,1.4,(3/8-3/10)*h); +endchar; + +newchar(143,0.59,"g + l"); +pickup dflt_pen; +draw (w-0.9pt,3/4h)..(w,3/4h); +ga(1/5w,3/8h,4/5w-0.9pt,3/8h,0); +la(1/7w,0,6/7w-0.9pt,7/20h,1/9); +endchar; + +newchar(144,0.52,"gh + n"); +matra(w,h); +gha(1/6w,3/20h,5/6w-0.9pt,(3/4-3/20)*h); +na(1/3w,-1/4d,2/3w-0.9pt,3/8h,0); +endchar; + +newchar(145,0.60,"una + k"); +matra(w,h); +na(1/7w,2/5h,31/61w,(3/4-3/7)*h,-1); +ka(1/5w,0,4/5w-0.9pt,31/60h,3/10); +z1 = (11/20w,3/4h); z3 = (19/20w,3/4h); z2 = 3/5[z1,z3] - (0,1/7h); +pickup dflt_pen; draw z1{dir -45}..z2..z3; +endchar; + +newchar(146,1.22,"una + k + s"); +una(1/14w,1/8h,(5/12-1/12)*w,(3/4-1/8)*h); +khiyo(5/12w,0,7/12w-0.9pt,3/4h); +pickup dflt_pen; draw (4/11w,3/4h)..(w,3/4h); +endchar; + +newchar(147,0.80,"una + kh"); +una(1/9w,1/5h,(1/2-1/60)*w,(3/4-1/5)*h); +rtbar(w,21/20h); matra(1/7w,h); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +z1 = (29/50w,21/40h); z2 = (7/10w,18/50h); z3 = (29/50w,1/5h); z4 = (w-0.9pt,0); +draw z1{dir -45}..{down}z2{down}..{dir -135}z3{dir -15}..z4; +endchar; + +newchar(148,0.58,"una + g"); +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z3 = (1/10w,3/4h); z4 = (1/6w,3/5h); z5 = (1/8w,17/80h); +z6 = (1/5w,1/5h); z7 = 1/3[z6,z8]; +z8 = (8/9w,11/19h); z9 = (5/6w,0); +pickup pencircle xscaled 0.2pt yscaled 0.6pt rotated 45; +draw z4{dir 30}..z7..tension 2..z6..z5; +draw z7..{dir 35}z8{dir -120}..{dir -75}z9; +pickup pencircle scaled 0.3pt; +draw z3{dir -20}..{dir -75}(z4 + (0.5pt,0)); +fill fullcircle scaled 1.2pt shifted (z4 + (0.19pt,-0.25pt)); +z1' = (9/20w,3/4h); z3' = (17/20w,3/4h); z2' = 3/5[z1',z3'] - (0,1/7h); +pickup dflt_pen; draw z1'{dir -45}..z2'..z3'; +endchar; + +newchar(149,0.90,"una + gh"); +una(1/12w,1/8h,(1/2-1/18)*w,(3/4-1/8)*h); +gha(1/2w,0,1/2w-0.9pt,3/4h); +pickup dflt_pen; draw (9/19w,3/4h)..(w,3/4h); +endchar; + +newchar(150,0.65,"una + m"); +una(1/9w,1/5h,(2/3-1/15)*w,(3/4-1/5)*h); +ma(3/5w,0,2/5w-0.9pt,31/120h,1.8,-0.5pt); +pickup dflt_pen; draw (19/30w,3/4h)..(w,3/4h); +endchar; + +newchar(151,0.75,"ch + ch"); +matra(w,h); +cha(1/8w,1/5h,(17/40-1/8)*w,(3/4-1/5)*h); +cha(19/40w,0,21/40w-0.9pt,3/4h); +endchar; + +newchar(152,0.75,"ch + chh"); +matra(w,h); +cha(1/8w,1/5h,(17/40-1/8)*w,(3/4-1/5)*h); +chha(19/40w,0,21/40w-0.9pt,3/4h); +endchar; + +newchar(153,0.73,"ch + chh + b"); +matra(w,h); +cha(1/8w,1/4h,(17/40-1/8)*w,(3/4-1/4)*h); +chha(19/40w,1/15h,21/40w-0.9pt,(3/4-1/15)*h); +ba(5/9w,-17/40d,1/4w,1/4h); +endchar; + +newchar(154,0.65,"ch + ina"); +matra(w,h); +cha(1/5w,3/9h,3/10w,(3/4-3/9)*h); +ina(1/8w,0,7/8w-0.9pt,3/7h); +endchar; + +newchar(155,0.95,"j + j"); +matra(w,h); +ja(1/12w,11/50h,2/5w,(3/4-11/50)*h); +ja(21/50w,0,23/50w,31/50h); +jaleg(31/50w,0,19/50w-0.8pt,31/50h); +top z1 = (12/50w,3/4h); z2 = (62/100w,31/50h); +pickup pencircle xscaled 0.25pt yscaled 0.5pt; +draw z1{dir -60}..{dir 15}z2; +endchar; + +newchar(156,0.95,"j + j + b"); +matra(w,h); +ja(1/12w,11/50h,2/5w,(3/4-11/50)*h); +ja(21/50w,0,23/50w,31/50h); +jaleg(31/50w,-1/30d,19/50w-0.6pt,1/30d + 31/50h); +top z1 = (12/50w,3/4h); z2 = (62/100w,31/50h); +pickup pencircle xscaled 0.25pt yscaled 0.5pt; +draw z1{dir -60}..{dir 15}z2; +z3 = (w-1.15pt,1/8h); z4 = (27/40w,-1/30h); z5 = (w-0.95pt,-3/5d); +pickup dflt_pen; +draw z3{z4-z3 rotated -3}..z4; +draw z4{z5-z4 rotated -5}..{z5-z4 rotated 5}z5--z3; +endchar; + +newchar(157,1.20,"j + jha"); +matra(79/100w,h); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +ja(1/12w,0,(1/2-1/12)*w,3/4h); +jaleg(13/50w,0,(1/2-1/4)*w,3/4h); +jha(1/2w,0,1/2w-0.9pt,3/4h,1.05); +endchar; + +newchar(158,0.75,"j + ina"); +matra(w,h); +ja(1/10w,0,11/16w,3/4h); +hump(59/100w,9/38h,2/5w-0.9pt,1/3h); +top z1 = (2/5w,3/4h); z2 = (23/40w,4/9h); +pickup dflt_pen; draw z1..z2; +endchar; + +newchar(159,0.72,"j + b"); +matra(w,h); +ja(1/10w,0,11/16w,3/4h); +jaleg(2/5w,-3/8d,3/5w-0.7pt,3/8d + 3/4h); +z1 = (w-1.5pt,1/5h); z2 = (1/2w,1/30h); z3 = (w-1.15pt,-1/2d); +pickup dflt_pen; draw z1{z2-z1 rotated -4}..z2; draw z2{z3-z2 rotated -6}..z3; +endchar; + +beginchar(160,0.80stwd#,stht#,stdp#); "ina + ch"; +numeric wd; wd = 11/20w+0.9pt; +z1 = (wd-0.9pt,3/4h+0.3pt); z2 = (wd-0.9pt,0); +pickup pencircle xscaled 0.56pt yscaled 0pt rotated -45; draw z1..z2; +z4 = (1/7wd,5/8h); z5 = (3/8wd,3/4h); +z6 = (3/5wd,5/8h); z7 = (1/5wd,3/8h); +pickup pencircle xscaled 0.3pt yscaled 0.5pt rotated 45; +draw z4{dir 90}...{right}z5{right}..{down}z6{down}..{dir -160}z7; +z2l + (0.1pt,-0.4pt) = z2r - (0.1pt,0.4pt) = z2; +z7r + (0.1pt,-0.24pt) = z7l - (0.1pt,-0.24pt) = z7; +penstroke z7e{right}..tension1.2..{dir -75}z2e; +fill fullcircle scaled 1pt shifted (z4 + (0.33pt,0pt)); +hump(11/20w,1/4h,9/20w-1.1pt,9/20h); +endchar; + +newchar(161,0.60,"ina + chh"); +z1 = (1/8w,13/20h); bot z2 = (3/10w,3/4h); z3 = (9/20w,13/20h); +z4 = (1/8w,7/20h); z5 = (11/20w,8/20h); z5' = (26/40w,14/40h); +z6 = (1/8w,1/8h); z7 = (w-0.5pt,-2/3d); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z1{up}..{right}z2{right}..{down}z3{down}..{down}z4{down}..{dir 60}z5 + {dir -20}..z5'..{left}z6{right}..tension 1.5..z7; +hump(9/20w,1/2h,11/20w-0.9pt,(3/4-1/2)*h); +fill fullcircle scaled 1.1pt shifted (z1 + (0.34pt,0.06pt)); +endchar; + +newchar(162,0.69,"ina + j"); +ja(1/10w,0,13/17w,3/5h); +hump(9/20w,1/2h,11/20w-0.9pt,(3/4-1/2)*h); +z1 = (1/7w,12/19h); z2 = (1/3w,3/4h); z3 = (1/3w+0.48pt,3/5h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z1{up}..{right}z2{right}..{dir -135}z3; +z4 = (5/6w,9/20h); z5 = (4/5w,0); +pickup dflt_pen; +draw z4{dir -120}..tension 1.8..z5; +fill fullcircle scaled 1.1pt shifted (z1 + (0.45pt,-0.18pt)); +endchar; + +newchar(163,0.62,"ina + jh"); +ina(1/8w,3/8h,73/100w,3/8h); +jha(1/5w,0,53/100w,3/7h,5/6); +endchar; + +newchar(164,0.57,"T + T"); +matra(w,h); +Dha(1/4w,1/15h,3/4w-0.9pt,(3/4-1/15)*h); +tiki(w,h,0); +z1 = (7/10w,1/5h); z2 = (1/2w,-1/3d); z3 = (1/8w,1/8h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z1{dir -30}..{left}z2{left}..{dir 125}z3; +endchar; + +newchar(165,0.50,"T + b"); +matra(w,h); +Dha(1/6w,1/10h,5/6w-0.9pt,(3/4-1/10)*h); +tiki(w,h,-1/12); +ba(6/13w,-1/2d,1/2w-0.9pt,3/10h); +endchar; + +newchar(166,0.90,"D + D"); +matra(w,h); +Da(1/11w,1/4h,(2/5-1/12)*w,(3/4-1/4)*h); +Da(21/50w,0,29/50w-0.9pt,3/4h); +endchar; + +newchar(167,0.78,"N + T"); +pickup dflt_pen; draw ((6/13+1/35)*w,3/4h)..(w,3/4h); +mna(1/11w,3/8h,(6/13-1/16)*w,3/8h,0); +Dha(6/13w,0,7/13w-0.9pt,3/4h); tiki(w,h,1/4); +endchar; + +newchar(168,0.61,"N + Th"); +mna(1/7w,39/80h,41/100w,(3/4-35/80)*h,-1); +Tha(1/4w,0,3/4w-0.9pt,3/4h); +endchar; + +beginchar(169,0.63stwd#,stht#,stdp#); "N + D"; +z1 = (1/5w,61/100h); z1' = (39/100w,3/4h); +z2' = (60/100w,3/5h); z2 = (74/100w,76/100h); +z4 = (18/25w,8/20h); z5 = (7/8w,12/50h); +z6 = (23/40w,1/18h); z8 = (1/10w,13/20h); z7 = (9/50w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1{dir 100}..{right}z1'{right}..{dir -60}z2'{dir 60}.. + {dir 45}z2{dir -35}..{dir -135}z4 + {dir -30}..{down}z5{down}..{left}z6{left}..z7..z8; +fill fullcircle scaled 1.4pt shifted (z4 + (-0.37pt,0)); +fill fullcircle scaled 1.2pt shifted (z1 + (0.40pt,0.2pt)); +endchar; + +newchar(170,0.52,"N + N"); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +mna(1/6w,3/8h,5/6w-0.9pt,3/8h,1/9); +mna(1/6w,0,5/6w-0.9pt,3/8h,0); +endchar; + +newchar(171,0.65,"N + m"); +pickup dflt_pen; draw (5/8w,3/4h)..(w,3/4h); +mna(1/8w,3/8h,1/2w,3/8h,1/9); +ma(5/8w,0,3/8w-0.9pt,3/8h,1,0); +endchar; + +newchar(172,0.57,"t + t"); +matra(w,h); +tta(1/7w,0,6/7w-0.9pt,3/4h-0.8pt); +endchar; + +newchar(173,0.55,"t + t + b"); +matra(w,h); +tta(1/7w,1/9h,6/7w-0.9pt,(3/4-1/9)*h-0.7pt); +ba(5/11w,-1/3d,1/3w,3/10h); +endchar; + +beginchar(174,0.62stwd#,stht#,stdp#); "t + th"; +z1 = (w-0.9pt,3/4h+0.3pt); z1' = (w-0.9pt,3/4h); z2 = (w-0.9pt,0); z3 = (w,3/4h); +pickup pencircle xscaled 0.56pt yscaled 0pt rotated -45; draw z1..z2; +pickup pencircle scaled 0.4pt; draw z1'..z3; +z4 = (1/7w,3/5h); z4' = (7/25w,3/4h); +z5 = (9/20w,3/5h); z5' = (11/20w,3/4h); +z6 = (13/20w,5/8h); z7 = (1/4w,3/8h); +pickup pencircle xscaled 0.3pt yscaled 0.5pt rotated 45; +draw z4{dir 100}...{right}z4'{right}..{dir -60}z5{dir 60}.. + {dir 45}z5'{dir -50}..{down}z6{down}..{dir -160}z7; +z2l + (0.1pt,-0.4pt) = z2r - (0.1pt,0.4pt) = z2; +z7r + (0.1pt,-0.24pt) = z7l - (0.1pt,-0.24pt) = z7; +penstroke z7e{right}..tension1.2..{dir -75}z2e; +fill fullcircle scaled 1pt shifted (z4 + (0.33pt,0.2pt)); +endchar; + +newchar(175,0.58,"t + n"); +matra(w,h); +ta_(1/10w,1/3h,9/10w-0.9pt,(3/4-1/3)*h); +na(7/24w,0,17/24w-1.2pt,29/80h,0); +endchar; + +newchar(176,0.60,"t + b"); +matra(w,h); +ta_(1/10w,3/10h,9/10w-0.9pt,(3/4-3/10)*h); +ba(4/9w,0,1/2w-0.9pt,3/8h); +endchar; + +newchar(177,0.74,"t + m"); +matra(w,h); +ta_(1/12w,1/3h,3/5w,(3/4 - 1/3)*h); +ma(3/5w,0,2/5w-0.9pt,1/3h,1.2,-0.5pt); +endchar; + +newchar(178,0.66,"t + r"); +matra(w,h); +tra(1/8w,0,7/8w-0.9pt,2/3h); +endchar; + +newchar(179,0.80,"t + r + u"); +matra(w,h); +tra(1/10w,0,11/20w,2/3h); +z1' = (13/20w,2/5h); z2' = (w-0.4pt,47/100h); z3' = (17/20w,3/5h); +pickup pencircle scaled penth#; +draw z1'{dir -60}..{up}z2'{up}..{left}z3'; +fill fullcircle scaled 1.3pt shifted (z3' + (-0.1pt,-0.46pt)); +endchar; + +newchar(180,0.87,"d + g"); +matra(21/50w,h); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +da(1/10w,0,(19/50-1/10)*w,3/4h,0); +ga(23/50w,3/9h,27/50w-0.9pt,(3/4-3/9)*h,0.8); +endchar; + +newchar(181,0.84,"d + gh"); +matra(w,h); +da(1/10w,0,(19/50-1/11)*w,3/4h,0); +gha(23/50w,0,27/50w-0.9pt,3/4h); +endchar; + +newchar(182,0.58,"d + d"); +matra(w,h) +da(1/8w,11/40h,(9/20-1/8)*w,(3/4-11/40)*h,0); +da(9/20w+0.1pt,0,1/2w-1.0pt,(3/4-1/40)*h,-33/50); +endchar; + +newchar(183,0.62,"d + dh"); +matra(w,h); +da_(1/7w,3/8h,(2/3-1/7)*w-0.07pt,3/8h); +dha(1/4w,0,3/4w-0.9pt,1/2h); +endchar; + +newchar(184,0.53,"d + b"); +matra(w,h); +da_(1/6w,3/8h,5/6w-0.9pt,3/8h); +ba(1/3w,0,2/3w-0.9pt,1/2h); +endchar; + +newchar(185,0.62,"d + bh"); +matra(w,h); +da(1/6w,7/25h,1/3w,(3/4-7/25)*h,0); +bha(1/8w,0,7/8w-0.9pt,8/19h); +endchar; + +newchar(186,0.62,"d + bh + r"); +matra(w,h); +da(1/6w,7/25h,1/3w,(3/4-7/25)*h,0); +bhra(1/8w,0,7/8w-0.9pt,8/19h); +endchar; + +newchar(187,0.56,"d + m"); +matra(w,h) +da(1/8w,1/7h,(23/40-1/8)*w,(3/4-1/7)*h,0); +ma(23/40w-0.1pt,0,17/40w-0.8pt,1/4h,2.0,0); +endchar; + +newchar(188,0.50,"dh + n"); +dha_(9/40w,3/14h,31/40w-0.9pt,(3/4-3/14)*h); +na(1/6w,-1/4d,5/6w-0.9pt,3/8h,0); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +endchar; + +newchar(189,0.92,"dh + b"); +dha_(1/11w,0,(1/2-1/10)*w,3/4h); +ba(1/2w,0,1/2w-0.9pt,3/4h); +pickup dflt_pen; draw (1/2w,3/4h)..(w,3/4h); +endchar; + +newchar(190,0.78,"n + T"); +matra(w,h); +na(1/8w,3/10h,(6/13-19/180)*w,3/8h,1/9); +Dha(6/13w,0,7/13w-0.9pt,3/4h); tiki(w,h,1/4); +endchar; + +newchar(191,0.63,"n + D"); +matra(w,h); +na(1/10w,7/18h,(2/5-1/14)*h,1/3h,1/12); +Da(1/8w,0,7/8w-0.9pt,3/4h); +endchar; + +newchar(192,0.62,"n + t"); +matra(w,h); +na_(1/5w,11/25h,4/5w-0.7pt,(3/4-11/25)*h); +ta(1/10w,0,11/12w-0.9pt,3/8h,0.4); +endchar; + +newchar(193,0.60,"n + t + u"); +matra(w,h); +na_(1/10w,12/25h,4/5w-0.7pt,(3/4-12/25)*h); +tta(1/5w,-11/20d,4/5w-0.9pt,4/7h); +endchar; + +newchar(194,0.60,"n + t + b"); +matra(w,h); +na_(1/5w,12/25h,4/5w-0.7pt,(3/4-12/25)*h); +ta(1/10w,1/8h,11/12w-0.9pt,3/10h,0.4); +ba(17/30w,-2/5d,1/4w,1/4h); +endchar; + +newchar(195,0.62,"n + t + r"); +matra(w,h); +na_(1/5w,12/25h,4/5w-0.7pt,(3/4-12/25)*h); +tra(1/7w,-1/4d,6/7w-0.9pt,21/40h); +endchar; + +newchar(196,0.60,"n + th"); +matra(w,h); +na_(1/10w,12/25h,4/5w-0.7pt,(3/4-12/25)*h); +ha(3/10w,-1/3d,7/10w-0.3pt,5/8h); +endchar; + +newchar(197,0.68,"n + d"); +matra(w,h); +na(1/10w,3/10h,(1/2-1/10)*w,3/8h,0.2); +da(1/2w,0,1/2w-0.9pt,3/4h,0); +endchar; + +newchar(198,0.62,"n + dh"); +matra(w,h); +na(1/6w,3/9h,9/16w-0.38pt,3/8h,0.1); +dha(5/17w,0,12/17w-0.9pt,19/39h); +endchar; + +newchar(199,0.52,"n + n"); +matra(w,h); +na(1/6w,3/10h,5/6w-0.9pt,3/8h,1/9); +na(1/6w,0,5/6w-0.9pt,3/8h,1/9); +endchar; + +newchar(200,0.55,"n + b"); +matra(w,h); +na(1/7w,7/24h,6/7w-0.9pt,3/8h,1/6); +ba(4/9w,0,5/9w-0.9pt,3/7h); +endchar; + +newchar(201,0.65,"n + m"); +matra(w,h); +na(1/8w,7/20h,1/2w,3/8h,1/15); +ma(5/8w,0,3/8w-0.9pt,7/20h,1.1,0); +endchar; + +newchar(202,0.70,"n + ss"); +matra(w,h); +na(1/8w,9/28h,7/20w,3/12h,-1); +ds(1/5w,0,4/5w-0.9pt,3/4h); +endchar; + +newchar(203,0.80,"p + T"); +pickup dflt_pen; draw ((8/17+1/35)*w,3/4h)..(w,3/4h); +pa(1/11w,9/20h,(8/17-1/16)*w,1/4*h,-1/10); +Dha(8/17w,0,9/17w-0.9pt,3/4h); tiki(w,h,1/4); +endchar; + +newchar(204,0.65,"p + t"); +pickup dflt_pen; draw ((4/5 + 1/7)*w-0.9pt,3/4h)..(w,3/4h); +pa(1/7w,3/7h,4/5w-0.9pt,(3/4-3/7)*h,0.28); +ta(1/11w,0,9/10w-0.9pt,3/8h,0.4); +endchar; + +newchar(205,0.60,"p + n"); +pa(1/7w,7/17h,6/7w-0.9pt,(3/4-7/17)*h,0.3); +na(1/3w,0,2/3w-0.9pt,3/8h,0.3); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +endchar; + +newchar(206,0.60,"p + p"); +pa(1/7w,3/7h,6/7w-0.9pt,(3/4-3/7)*h,0.3); +pa(1/7w,0,6/7w-0.9pt,(3/4-3/7)*h,0.05); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +endchar; + +newchar(207,0.60,"p + l"); +pa(1/7w,7/17h,6/7w-0.9pt,(3/4-7/17)*h,0.3); +la(1/5w,0,4/5w-0.9pt,3/8h,0.3); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +endchar; + +newchar(208,0.70,"p + ss"); +matra(w,h); +pa(1/8w,23/60h,33/100w,1/5h,-1.15); +ds(1/5w,0,4/5w-0.9pt,3/4h); +endchar; + +newchar(209,0.68,"ph + l"); +matra(w,h); +pha_(9/40w,1/5h,31/40w-0.9pt,(3/4-1/5)*h); +la(1/8w,-1/5d,5/9w-0.05pt,1/3h,1/3); +endchar; + +beginchar(210,0.69stwd#,stht#,stdp#); "b + j"; +matra(w,h); +top z3 = (8/20w,3/4h); z5 = (8/20w,9/24h); +z6 = (21/36w,37/80h); z7 = (11/16w,3/10h); z8 = (1/2w,1/8h); +rt z9 = (1/10w,4/8h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3--z5{right}..{dir30}z6 + {dir -60}..{down}z7{down}..{left}z8{left}..{up}z9; +rt z11 = z11l + (0.2pt,-0.2pt) = z11r - (0.2pt,-0.2pt) = (11/12w,3/5h); +z12 = z12l + (0.15pt,0) = z12r - (0.15pt,0) = (8/9w,0); +pickup pencircle xscaled 0.2pt yscaled 0.4pt; +draw z3{dir -90}..{dir 15}z11; +penstroke z11e{dir -120}..{dir -75}z12e; +ba(1/8w,3/8h,(2/5-1/8)*w,3/8h); +endchar; + +newchar(211,0.65,"b + d"); +matra(w,h); +ba(1/10w,3/10h,(19/40-1/10)*w,3/7h); +da(19/40w,0,21/40w-0.9pt,3/4h,0); +endchar; + +newchar(212,0.65,"b + dh"); +matra(w,h); +ba_(1/8w,3/8h,9/16w-0.22pt,3/8*h); +dha(4/17w,0,13/17w-0.9pt,4/7h); +endchar; + +newchar(213,0.54,"b + b"); +matra(w,h); +ba_(1/7w,3/8h,6/7w-0.9pt,3/8*h); +ba(4/17w,0,13/17w-0.9pt,4/7h); +endchar; + +newchar(214,0.54,"b + l"); +matra(w,h); +ba(1/4w,5/18h,3/4w-0.9pt,(3/4 - 5/18)*h); +la(1/7w,0,6/7w-0.9pt,7/20h,1/9); +endchar; + +newchar(215,0.70,"bh + r"); +matra(w,h); +bhra(1/8w,0,7/8w-0.9pt,2/3h); +endchar; + +newchar(216,0.60,"bh + l"); +matra(w,h); +bha(1/8w,1/3h,7/8w-0.9pt,3/8h); +la(4/25w,-1/5d,4/5w-0.9pt,3/9h,1/3); +endchar; + +newchar(217,0.56,"m + n"); +matra(w,h); +ma_(1/7w,11/25h,6/7w-0.7pt,(3/4-11/25)*h); +na(1/5w,0,4/5w-0.9pt,3/8h,0.3); +endchar; + +newchar(218,1.00,"m + p"); +ma_(1/12w,1/2h,(3/7-1/10)*w,(3/4-13/25)*h); +pa(4/9w,3/8h,5/9w-0.9pt,3/8h,1); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +draw (0,3/4h)..(37/100w,3/4h); +endchar; + +newchar(219,0.95,"m + ph"); +matra(w,h); +ma_(1/11w,12/25h,(2/5-1/30)*w,(3/4-12/25)*h); +pha(3/7w,0,4/7w-0.9pt,14/25h,0.38); +endchar; + +newchar(220,0.56,"m + b"); +matra(w,h); +ma_(1/7w,11/25h,6/7w-0.65pt,(3/4-11/25)*h); +ba(1/3w,0,2/3w-0.9pt,29/60h); +endchar; + +newchar(221,0.64,"m + bh"); +matra(w,h); +ma_(1/6w,11/25h,5/6w-1.2pt,(3/4-11/25)*h); +bha(1/8w,0,7/8w-0.9pt,8/17h); +endchar; + +newchar(222,0.62,"m + bh + r"); +matra(w,h); +ma_(1/6w,11/24h,5/6w-1.2pt,(3/4-11/24)*h); +bhra(1/8w,0,7/8w-0.9pt,19/40h); +endchar; + +newchar(223,0.70,"m + m"); +matra(w,h); +ma_(1/9w,11/25h,18/30w,(3/4-11/25)*h); +ma(2/3w,0,1/3w-0.9pt,3/8h,1,1/15h); +endchar; + +newchar(224,0.58,"m + l"); +matra(w,h); +ma_(1/7w,11/25h,6/7w-0.7pt,(3/4-11/25)*h); +la(1/6w,0,5/6w-0.9pt,3/8h,0.3); +endchar; + +newchar(225,0.65,"l + k"); +matra(w,h); +la(1/10w,3/10h,(3/4-1/10)*w-0.6pt,3/8h,0.2); +ka(1/4w,0,3/4w-0.9pt,1/2h,3/10); +endchar; + +newchar(226,0.60,"l + g"); +matra(w,h); +la(1/8w,3/10h,7/8w-0.9pt,3/8h,1/9); +ga(1/4w,0,3/4w-0.9pt,3/8h,0); +endchar; + +newchar(227,0.60,"l + g + u"); +matra(w,h); +la(1/8w,1/3h,7/8w-1.2pt,3/8h,1/10); +gu(1/10w,-1/2d,19/20w,2/3h); +endchar; + +newchar(228,0.80,"l + T"); +matra(w,h); +la(1/11w,3/10h,(8/17-1/14)*w,3/8h,1/9); +Dha(8/17w,0,9/17w-0.9pt,3/4h); tiki(w,h,1/4); +endchar; + +newchar(229,0.72,"l + D"); +matra(w,h); +la(1/10w,7/18h,(1/2-1/14)*h,1/3h,1/12); +Da(1/4w,0,3/4w-0.9pt,3/4h); +endchar; + +newchar(230,0.60,"l + p"); +matra(w,h); +la(1/6w,9/26h,5/6w-0.9pt,3/8h,0); +pa(1/7w,1/25h,6/7w-0.9pt,(3/4-7/17-1/25)*h,0.13); +endchar; + +newchar(231,0.60,"l + b"); +matra(w,h); +la(1/8w,1/4h,7/8w-0.9pt,3/8h,1/4); +ba(4/9w,0,5/9w-0.9pt,3/7h); +endchar; + +newchar(232,0.70,"l + m"); +matra(w,h); +la(1/9w,3/10h,5/9w,3/8h,1/9); +ma(2/3w,0,1/3w-0.9pt,3/10h,1.4,0); +endchar; + +newchar(233,0.62,"l + l"); +matra(w,h); +la(1/8w,3/10h,7/8w-0.9pt,3/8h,1/9); +la(1/8w,0,7/8w-0.9pt,3/8h,1/9); +endchar; + +newchar(234,0.85,"sh + ch"); +pickup dflt_pen; draw (11/20w,3/4h)..(w,3/4h); +draw (0,3/4h)..(1/10w,3/4h); +sha(1/10w,7/17h,(21/40 - 1/10)*w,(3/4-7/17)*h,0); +cha(21/40w,0,19/40w-0.9pt,3/4h); +endchar; + +newchar(235,0.88,"sh + chh"); +pickup dflt_pen; draw (11/20w,3/4h)..(w,3/4h); +draw (0,3/4h)..(1/10w,3/4h); +sha(1/10w,7/17h,(11/20 - 1/10)*w,(3/4-7/17)*h,0); +chha(11/20w,0,9/20w-0.9pt,3/4h); +endchar; + +newchar(236,0.60,"sh + n"); +sha(1/7w,7/17h,6/7w-0.9pt,(3/4-7/17)*h,0.3); +na(1/3w,0,2/3w-0.9pt,3/8h,0.3); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +draw (0,3/4h)..(1/7w,3/4h); +endchar; + +newchar(237,0.72,"sh + m"); +pickup dflt_pen; +draw (2/3w,3/4h)..(w,3/4h); +draw (0,3/4h)..(1/9w,3/4h); +sha(1/9w,7/17h,(2/3 - 1/9)*w,(3/4-7/17)*h,0.38); +ma(2/3w,0,1/3w-0.9pt,3/10h,1.4,0); +endchar; + +newchar(238,0.60,"sh + l"); +sha(1/7w,7/17h,6/7w-0.9pt,(3/4-7/17)*h,0.3); +la(1/5w,0,4/5w-0.9pt,3/8h,0.3); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +draw (0,3/4h)..(1/7w,3/4h); +endchar; + +newchar(239,0.60,"sh + b"); +pickup dflt_pen; +draw (w-0.9pt,3/4h)..(w,3/4h); +draw (0,3/4h)..(1/7w,3/4h); +sha(1/7w,7/17h,6/7w-0.9pt,(3/4-7/17)*h,0.5); +ba(4/9w,0,5/9w-0.9pt,3/7h); +endchar; + +newchar(240,0.60,"s + k"); +matra(w,h); +ms_(1/7w,3/7h,1/2w,(3/4-3/7)*h); +ka(1/7w,0,6/7w-0.9pt,59/100h,2/5); +endchar; + +newchar(241,0.82,"s + k + r"); +matra(w,h); +ms_(1/9w,3/7h,(1/2-1/8)*w,(3/4-3/7)*h); +tra(1/6w,-1/4d,(2/3-1/6)*w,23/40h); +shnur(2/3w,1/4h,1/3w-0.3pt,1/9h); +endchar; + +newchar(242,0.54,"s + T"); +matra(w,h); tiki(w,h,0); +ms_(1/7w,3/8h,12/20w,(3/4-3/8)*h); +_Dha(1/6w,0,5/6w-0.9pt,3/7h); +endchar; + +newchar(243,0.61,"s + Th"); +matra(w,h); +ms_(1/7w,31/80h,21/50w,(3/4-31/80)*h); +Tha(1/4w,0,3/4w-0.9pt,3/4h); +endchar; + +beginchar(244,0.80stwd#,stht#,stdp#); "s + N"; +pickup pencircle scaled penth#; +numeric wd; wd = 11/20w + 0.9pt; +z1 = (0,3/4h); z2=(wd-0.9pt,3/4h); draw z1..z2; +top z3 = (wd-0.9pt,3/4h); z4 = (wd-0.9pt,0); draw z3..z4; +top rt z5 = (1/10w,3/4h); z6 = (1/2wd,43/80h); z7 = (1/6wd,1/3h); rt z8 = (5/6wd,8/20h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 50; +draw z5{right}.. tension 2 ..z6--z7; draw (z6+(0,0.1pt))--z8; +z7r + (0.25pt,-0.25pt) = z7l - (0.25pt,-0.25pt) = z7; +z4l + (0.15pt,0) = z4r - (0.15pt,0) = z4; +penstroke z7e{right}..tension 2.5 ..{dir -75}z4e; +hump(11/20w,1/4h,9/20w-1.1pt,9/20h); +endchar; + +newchar(245,0.88,"s + p"); +matra(3/10w,h); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +ms_(1/11w,3/7h+0.19pt,(5/12-1/8)*w,(3/4-3/7)*h); +pa(5/12w,3/8h,7/12w-0.9pt,(3/4-3/8)*h,1); +endchar; + +newchar(246,0.82,"s + ph"); +matra(w,h) +ms_(1/11w,3/7h,5/15w,(3/4-3/7)*h); +pha(7/19w,0,12/19w-0.9pt,14/25h,0.38); +endchar; + +newchar(247,0.60,"s + m"); +matra(w,h); +ms_(1/7w,3/7h,1/2w,(3/4-3/7)*h); +ma(21/40w,0,19/40w-0.9pt,2/5h,0.8,0.8pt); +endchar; + +newchar(248,0.75,"ss + k"); +matra(w,h); +ds_(1/10w,1/2h,2/3w,1/4h); +ka(3/8w,0,5/8w-0.9pt,22/40h,3/10); +endchar; + +newchar(249,0.84,"ss + k + r"); +matra(w,h); +ds_(1/9w,13/25h,(2/3-1/9)*w,(3/4-13/25)*h); +tra(1/6w,-1/4d,(2/3-1/6)*w,11/20h); +shnur(2/3w,1/4h,1/3w-0.3pt,1/9h); +endchar; + +newchar(250,0.75,"ss + k + l"); +matra(w,h); +ds_(1/10w,1/2h,2/3w,1/4h); +ka(2/5w,1/15h,3/5w-0.9pt,9/20h,3/10); +la(9/41w,-13/20d,1/2w,1/3h,0); +endchar; + +newchar(251,0.80,"ss + kh"); +matra(21/40w,h); +ds_(1/10w,3/6h,19/40w,(3/4-3/6)*h); +rtbar(w,21/20h); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +z1 = (9/20w,3/10h); z2 = (3/5w,1/2h); z3 = (72/100w,18/50h); +z4 = (27/50w,18/100h); z5 = (w-0.9pt,0); +draw z1{right}..{up}z2{dir -45}..{down}z3{down}..{dir -135}z4{dir -15}..z5; +fill fullcircle scaled 1.2pt shifted (z1 + (0,0.4pt)); +endchar; + +newchar(252,0.83,"ss + T"); +matra(w,h); tiki(w,h,1/4); +ds(1/11w,1/6h,(11/20-1/11)*w,(3/4-1/6)*h); +Dha(11/20w-0.25pt,0,9/20w-0.7pt,3/4h); +endchar; + +newchar(253,0.68,"ss + t"); +matra(w,h); +ds_(1/6w,9/19h,5/6w-0.6pt,(3/4-9/19)*h); +ta(1/11w,0,10/11w-0.9pt,11/25h,0.2); +endchar; + +newchar(254,0.60,"ss + t + u"); +matra(w,h); +ds_(1/10w,12/25h,8/9w-0.9pt,(3/4-12/25)*h); +tta(1/5w,-11/20d,4/5w-0.9pt,4/7h); +endchar; + +newchar(255,0.65,"ss + t + r"); +matra(w,h); +ds_(1/7w,13/25h,4/5w-0.5pt,(3/4-13/25)*h); +tra(1/7w,-1/4d,6/7w-0.9pt,11/20h); +endchar; + +newchar(16,0.60,"ss + th"); +matra(w,h); +ds_(1/10w,12/25h,8/9w-0.9pt,(3/4-12/25)*h); +ha(3/10w,-1/3d,7/10w-0.3pt,5/8h); +endchar; + +newchar(17,0.63,"ss + n"); +matra(w,h); +ds_(1/9w,9/19h,8/9w-0.6pt,(3/4-9/19)*h); +na(1/4w,0,3/4w-0.9pt,3/8h,0.3); +endchar; + +newchar(18,1.15,"ss + p"); +ds_(1/14w,10/20h,(9/20-1/15)*w,(3/4-10/20)*h); +pa(1/2w,3/8h,1/2w-0.9pt,3/8h,1); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +draw (0,3/4h)..(41/100w,3/4h); +endchar; + +newchar(19,1.15,"ss + p + l"); +ds_(1/14w,10/20h,(9/20-1/15)*w,(3/4-10/20)*h); +pa(1/2w,3/8h,1/2w-0.9pt,3/8h,1); +la(57/100w,0,43/100w-0.9pt,3/8h,0); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +draw (0,3/4h)..(41/100w,3/4h); +endchar; + +newchar(20,1.02,"ss + ph"); +matra(w,h); +pha(10/21w,0,11/21w-0.9pt,14/25h,0.38); +ds_(1/11w,12/25h,2/5*w,(3/4-12/25)*h); +endchar; + +newchar(21,0.63,"ss + b"); +matra(w,h); +ds_(1/9w,9/19h,8/9w-0.6pt,(3/4-9/19)*h); +ba(5/14w,0,9/14w-0.9pt,1/2h); +endchar; + +newchar(22,0.77,"ss + m"); +matra(w,h); +ds_(1/11w,9/19h,6/9w-0.2pt,(3/4-9/19)*h); +ma(2/3w,0,1/3w-0.9pt,3/8h,1,(9/19-3/8)*h); +endchar; + +newchar(23,0.63,"ss + l"); +matra(w,h); +ds_(1/9w,9/19h,8/9w-0.6pt,(3/4-9/19)*h); +la(1/5w,0,4/5w-0.9pt,3/8h,0.3); +endchar; + +newchar(24,0.5,"h + N"); +matra(w,h); +ha_(1/8w,1/8h,7/8w-0.4pt,(3/4-1/8)*h); +mna(1/6w,-1/3d,5/6w-1.2pt,3/11h,0); +endchar; + +newchar(31,0.65,"h + n"); +matra(w,h); +ha_(1/12w,0,8/13*w,3/4h); +shnur(18/30w,17/40h,12/30w-0.5pt,1/6h); +endchar; + +newchar(32,0.75,"h + m"); +matra(w,h); +ha_ma(1/10w,0,9/10w-0.9pt,3/4h); +endchar; + +newchar(62,0.5,"h + b"); +matra(w,h); +ha_(1/8w,1/8h,7/8w-0.4pt,(3/4-1/8)*h); +ba(1/3w,-1/3d,3/7w,3/10h); +endchar; + +newchar(125,0.5,"h + l"); +matra(w,h); +ha_(1/8w,1/8h,7/8w-0.4pt,(3/4-1/8)*h); +la(1/6w,-1/3d,5/6w-0.9pt,3/10h,-0.15); +endchar; + +newchar(127,0.98,"rh + g"); +matra(11/20w,h); +pickup dflt_pen; draw (w-0.9pt,3/4h)..(w,3/4h); +Da(1/12w,0,(11/20-1/12)*w,3/4h); +ga(21/40w,3/10h,19/40w-0.9pt,(3/4-3/10)*h,0.65); +fill fullcircle scaled 1.2pt shifted (15/40w,-1/3d); +endchar; + +%%% End of bnjuk.mf diff --git a/language/bengali/pandey/mf/bnkaar.mf b/language/bengali/pandey/mf/bnkaar.mf new file mode 100644 index 0000000000..7fc2ac6e82 --- /dev/null +++ b/language/bengali/pandey/mf/bnkaar.mf @@ -0,0 +1,90 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bnkaar.mf: METAFONT file that defines the Bengali vowel forms +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 19 1997 +% +% apandey 2002.03.27 commented out "a-kar" character; unneeded char +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%beginchar("a",0,stht#,stdp#); "a-kar"; +%endchar; + +beginchar("A",0.23stwd#,stht#,stdp#); "aa-kar"; +z1 = (1/2w,3/4h+0.3pt); z1' = (1/2w,3/4h); z2 = (1/2w,0); z3 = (w,3/4h); +pickup pencircle xscaled 0.56pt yscaled 0pt rotated -45; draw z1..z2; +pickup pencircle scaled 0.4pt; draw z1'..z3; +z5 = (0,3/4h); lft z6 = (8/20w,19/32h); draw z5{dir -30}..{dir -60}z6; +endchar; + +beginchar("i",0.22stwd#,stht#,stdp#); "hraswa i-kar"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +z3 = (1/2w,3/4h); z4=(1/2w,0); draw z3..z4; +z5 = (1/4w,7/8h); z6 = (1.3w,9/8h); z7 = (3w,7/8h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z3..z5..{right}z6{right}..z7; +endchar; + +beginchar("I",0.25stwd#,stht#,stdp#); "dirgha i-kar"; +z1 = (1/5w,3/4h); z2 = (w,3/4h); z3 = (3/5w,3/4h); z4 = (3/5w,0); +z5 = (-3/4w,9/8h); z6 = (-9/5w,h); z7 = (-3/4w,7/8h); z8 = (-1/5w,3/4h); +pickup pencircle scaled penth#; +draw z1..z2; draw z3..z4; +pickup pencircle xscaled 0.3pt yscaled 0.5pt; +draw z3{up}..{left}z5{left}..{down}z6{down}..{right}z7{right}..{dir -120}z8; +endchar; + +beginchar("u",0stwd#,stht#,stdp#); "hraswa-u-kar"; +z1 = (w-0.9pt,0); z2 = (w-0.9pt,-9/20d); z3 = (w-1.8pt,-4/5d); +z4 = (w-2.8pt,-1/2d); z5 = (w-2.0pt,-1/5d); z6 = (w+1.2pt,-7/5d); +pickup pencircle xscaled 0.3pt yscaled 0.5pt rotated 30; +draw z1{down}..z2..{left}z3{left}..{up}z4{up}..{right}z5{right}..z2..tension 2..z6; +endchar; + +beginchar("U",0stwd#,stht#,stdp#); "dirgha-u-kar"; +z1 = (w-0.9pt,0); z2 = (w-2.6pt,-9/20d); +z3 = (w-0.7pt,-2/3d); z4 = (w+1.5pt,-7/5d); +pickup pencircle xscaled 0.3pt yscaled 0.5pt rotated 30; +draw z1{left}..{down}z2{down}..{dir 20}z3--z4; +endchar; + +beginchar("W",0stwd#,stht#,stdp#); "ri-kar"; +z1 = (w-0.9pt,0); z2 = (w-2.1pt,-1/3d); z3 = (w,-d); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1--z2--z3; +endchar; + +beginchar("e",0.32stwd#,stht#,stdp#); "e-kar"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z4 = (1pt,3/8h); z3 = (w-0.4pt,3/4h); z5 = (w-0.1pt,0); +draw z3..z4..{dir 15}z5; +fill fullcircle scaled 1pt shifted (z5 + (-0.12pt,0.3pt)); +endchar; + +beginchar("E",0.32stwd#,stht#,stdp#); "oi-kar"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z4 = (1pt,3/8h); z3 = (w-0.4pt,3/4h); z5 = (w-0.1pt,0); +draw z3..z4..{dir 15}z5; +fill fullcircle scaled 1pt shifted (z5 + (-0.12pt,0.3pt)); +z6 = (1/8w,31/32h); z7 = (-1/3w,11/10h); +pickup pencircle xscaled 0.3pt yscaled 0.5pt; +draw z3{dir 60}..{left}z6{left}...z7{dir 75}; +endchar; + +beginchar("o",0,stht#,stdp#); "o-kar"; +endchar; + +beginchar("O",0.25stwd#,stht#,stdp#); "ou-kar"; +z1 = (1/5w,3/4h); z2 = (w,3/4h); z3 = (3/5w,3/4h); z4 = (3/5w,0); +pickup pencircle scaled 0.4pt; +draw z1..z2; draw z3..z4; +z7' = (3/5w,3/4h); z8' = (-3/4w,31/32h); z9' = (-9/5w,11/10h); +pickup pencircle xscaled 0.2pt yscaled 0.4pt; +draw z7'{dir 60}..{left}z8'{left}...z9'{dir 75}; +endchar; + +%%% End of bnkaar.mf diff --git a/language/bengali/pandey/mf/bnlig.mf b/language/bengali/pandey/mf/bnlig.mf new file mode 100644 index 0000000000..5e637f2346 --- /dev/null +++ b/language/bengali/pandey/mf/bnlig.mf @@ -0,0 +1,121 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bnlig.mf: METAFONT file that defines some special ligatures +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 20 1997 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +beginchar(25,0.75stwd#,stht#,stdp#); "ra + u"; +numeric wd; wd = 12/20w + 0.9pt; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z5 = (wd-0.9pt,13/20h); +z5r = z5 + (0,penth#/2); z5l = z5 - (0,penth#/2); +z6 = (1/6wd,8/21h); +numeric len; len = 1/2(penth#/(sqrt 2)); +z6l = z6 + (len,-len); z6r = z6 - (len,-len); +penstroke z5e{z6-z5 rotated -8}..z6e; +bot z4 = z4l + (0.1pt,0) = z4r - (0.1pt,0) = (wd-0.9pt,0); +z7 - z6 = (0.2pt,-0.2pt); +z7l = z7 + (len, -len); z7r = z6r; +penstroke z7e{z4-z7 rotated 120}.. tension 1.5 .. z4e; +top z3 = (wd-0.9pt,3/4h); +draw z3..z4; +fill fullcircle scaled 0.9pt shifted (9/20wd,2/21h); +z1' = (12/20w,2/5h); z2' = (w-0.8pt,47/100h); z3' = (16/20w,3/5h); +pickup pencircle scaled penth#; +draw z1'{dir -60}..{up}z2'{up}..{left}z3'; +fill fullcircle scaled 1.3pt shifted (z3' + (-0.1pt,-0.46pt)); +endchar; + +beginchar(26,0.70stwd#,stht#,stdp#); "ra + U"; +numeric wd; wd = 13/20w + 0.9pt; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z5 = (wd-0.9pt,13/20h); +z5r = z5 + (0,penth#/2); z5l = z5 - (0,penth#/2); +z6 = (1/6wd,8/21h); +numeric len; len = 1/2(penth#/(sqrt 2)); +z6l = z6 + (len,-len); z6r = z6 - (len,-len); +penstroke z5e{z6-z5 rotated -8}..z6e; +bot z4 = z4l + (0.1pt,0) = z4r - (0.1pt,0) = (wd-0.9pt,0); +z7 - z6 = (0.2pt,-0.2pt); +z7l = z7 + (len, -len); z7r = z6r; +penstroke z7e{z4-z7 rotated 120}.. tension 1.5 .. z4e; +top z3 = (wd-0.9pt,3/4h); +draw z3..z4; +fill fullcircle scaled 0.9pt shifted (9/20wd,2/21h); +z1' = (13/20w,1/2h) + (0.02pt,0); z2' = (16/20w,11/20h); +z3' = (w-0.9pt,1/2h); z4' = (w-0.8pt,1/20h); +pickup pencircle xscaled 0.5pt yscaled 0.3pt rotated -30; +draw z1'..tension 4..z2'..tension 4..z3'{down}..tension 4..{dir -30}z4'; +endchar; + +beginchar(27,0.56stwd#,stht#,stdp#); "ha + u"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z3 = (1/6w,1/2h); z3' = (37/100w,13/20h); +z4 = (3/5w,1/2h); z4' = (74/100w,13/20h); z5 = (6/7w,1/2h); +lft z6 = (1/7w,9/32h); z7 = (w,-1/3d); +z6l + (0.15pt,-0.3pt) = z6r - (0.15pt,-0.3pt) = z6; +z7l - (0,0.15pt) = z7r + (0,0.15pt) = z7; +pickup pencircle xscaled 0.6pt yscaled 0.3pt rotated -45; +draw z3{dir 100}..{right}z3'{right}..{dir -60}z4{dir 60}.. + {dir 45}z4'{dir -35}..{down}z5{down}..{dir 160}z6; +penstroke z6e{dir -22}..{dir -45}z7e; +fill fullcircle scaled 1.3pt shifted (z3 + (0.43pt,0.05pt)); +endchar; + +beginchar(28,0.67stwd#,stht#,stdp#); "ha + ri-kar"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +numeric wd; wd = 14/18w; +z3 = (3/10wd,3/4h); z4 = (1/3wd,3/5h); z5 = (5/6wd,1/2h); +lft z6 = (1/8wd,5/16h); z7 = (wd,-1/3d); +z6l + (0.15pt,-0.3pt) = z6r - (0.15pt,-0.3pt) = z6; +z7l - (0,0.15pt) = z7r + (0,0.15pt) = z7; +pickup pencircle xscaled 0.6pt yscaled 0.3pt rotated -45; +draw z4{dir 30}..{down}z5{down}..{dir 150}z6; +pickup pencircle scaled 0.3pt; +draw z3{dir -20}..{dir -75}(z4 + (0.5pt,0)); +penstroke z6e{dir -30}..{dir -45}z7e; +fill fullcircle xscaled 1.5pt yscaled 1pt rotated 30 shifted (z4 + (0,-0.20pt)); +z1' = (13/20w,1/2h) + (0.02pt,0); z2' = (16/20w,11/20h); +z3' = (w-0.9pt,1/2h); z4' = (w-0.8pt,0); +pickup pencircle xscaled 0.5pt yscaled 0.3pt rotated -30; +draw z1'..tension 4..z2'..tension 4..z3'{down}..tension 4..{dir -45}z4'; +endchar; + +beginchar(29,0.70stwd#,stht#,stdp#); "ga + u"; +z1 = (7/10w,3/5h); z2 = (74/100w,76/100h); +z4 = (19/25w,8/20h); z5 = (7/8w,12/50h); +z6 = (24/40w,1/18h); z8 = (1/10w,13/20h); z7 = (9/50w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1--z2{dir -60}..{dir -135}z4 + {dir -30}..{down}z5{down}..{left}z6{left}..z7..z8; +fill fullcircle scaled 1.4pt shifted (z4 + (-0.37pt,0)); +z2' = (9/20w,3/4h); z3' = (9/40w,12/20h); +z4' = (18/40w,11/20h); z5' = (7/20w,8/20h); +draw z1{dir 120}..{left}z2'{left}..{down}z3'{dir 30}..{down}z4'{down}..z5'; +endchar; + +beginchar(30,0.72stwd#,stht#,stdp#); "sha + u"; +z1 = (7/10w,3/5h); z2 = (74/100w,76/100h); +z4 = (19/25w,8/20h); z5 = (7/8w,12/50h); +z6 = (24/40w,1/18h); z8 = (1/10w,13/20h); z7 = (9/50w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1--z2{dir -60}..{dir -135}z4 + {dir -30}..{down}z5{down}..{left}z6{left}..z7..z8; +fill fullcircle scaled 1.4pt shifted (z4 + (-0.37pt,0)); +z4' = (1/10w,3/4h); z5' = (6/16w,20/31h); +z6' = (13/25w,3/4h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z4'{right}..{dir -60}z5'{dir 60}..{right}z6'{right}..{dir -60}z1; +fill fullcircle xscaled 1.2pt yscaled 2.0pt rotated -45 shifted (z5' + (-0.50pt,-0.62pt)); +fill fullcircle xscaled 1.2pt yscaled 2.0pt rotated 45 shifted (z5' + (0.50pt,-0.62pt)); +endchar; + +%%% End of bnlig.mf diff --git a/language/bengali/pandey/mf/bnligtbl.mf b/language/bengali/pandey/mf/bnligtbl.mf new file mode 100644 index 0000000000..fe6f3b50e8 --- /dev/null +++ b/language/bengali/pandey/mf/bnligtbl.mf @@ -0,0 +1,36 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bnligtbl.mf: METAFONT file that defines the ligature tables +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 20 1997 +% June 1998: Modifications by Jaijeet Roychowdhury, now useable with ITRANS +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +ligtable "a": "a" =: "A"; %% a + a = A +ligtable "e": "e" =: "I"; %% e + e = I +ligtable "o": "o" =: "U", "i" =: "E", "u" =: "O"; + %% o + o = U, o + i = E, o + u = O +ligtable "`": "`" =: oct"134"; %% ` + ` = `` +ligtable "'": "'" =: oct"42"; %% ' + ' = " +ligtable "-": "-" =: oct"173"; %% - + - = endash +% jaijeet: next line changed +ligtable oct"173": "-" =: "."; %% endash + - = emdash +ligtable "r": "u" =: oct"31", "U" =: oct"32"; %% r + u = ru, r + U = rU +ligtable "h": "u" =: oct"33", "W" =: oct"34"; %% h + u = hu, h + W = hW +ligtable "g": "u" =: oct"35"; %% g + u = gu +ligtable "S": "u" =: oct"36"; %% S + u = Su +%ligtable ".": "." =: oct"74"; %% . + . = .. +ligtable "|": "|" =: oct"74"; %% | + | = .. +ligtable "k": oct"17" =: oct"205"; %% k + \rafala = \kr +ligtable "t": oct"17" =: oct"262"; %% t + \rafala = \tr +ligtable oct"262": "u" =: oct"263"; %% \tr + u = \tru +ligtable oct"300": "u" =: oct"301", %% \nt + u = \ntu + oct"17" =: oct"303"; %% \nt + \rafala = \ntr +ligtable "v": oct"17" =: oct"327"; %% v + \rafala = \vr +ligtable oct"335": oct"17" =: oct"336"; %% \mv + \rafala = \mvr +ligtable oct"342": "u" =: oct"343"; %% \lg + u = \lgu +ligtable oct"360": oct"17" =: oct"361"; %% \ssk + \rafala = \sskr +ligtable oct"370": oct"17" =: oct"371"; %% \sk + \rafala = \skr +ligtable oct"375": "u" =: oct"376", %% \st + u = \stu + oct"17" =: oct"377"; %% \st + \rafala = \str + +%%% End of bnligtbl.mf diff --git a/language/bengali/pandey/mf/bnmacro.mf b/language/bengali/pandey/mf/bnmacro.mf new file mode 100644 index 0000000000..7ea26ae138 --- /dev/null +++ b/language/bengali/pandey/mf/bnmacro.mf @@ -0,0 +1,668 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bnbanjon.mf: METAFONT file that defines various macros +% for use in bnjuk.mf +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 19 1997 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +def newchar(expr code, char_width, char_descr) = +beginchar(code,char_width*stwd#,stht#,stdp#); char_descr; +enddef; + +def matra(expr w,h) = +pickup dflt_pen; +draw (0,3/4h)..(w,3/4h); +enddef; + +def rtbar(expr w,h) = +pickup dflt_pen; +draw (w-0.9pt,0)..(w-0.9pt,3/4h); +enddef; + +def na(expr xoff, yoff, w, h, overshoot) = +begingroup +save z; pair z[]; +z1 = (xoff + w, yoff + (overshoot + 1)*h); z2 = (xoff + w, yoff); +z3 = (xoff + 0.040w, yoff + 2/3h); +pickup dflt_pen; draw z1..z2; +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{dir 25}..{down}z2; +fill fullcircle scaled 0.5h shifted (z3 + (0.062w,-0.152h)); +endgroup +enddef; + +def na_(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z2 = (1/5w,4/9h); z3 = (11/15w,0); top z4 = (15/16w,h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z2{right}..{right}z3{right}..{dir 105}z4; +fill fullcircle scaled 1.4pt shifted (z2 + (-0.02w,-0.19h)); +endgroup +enddef; + +def ma(expr xoff, yoff, w, h, overshoot, another) = +begingroup +save z; pair z[]; +z1 = (xoff + w, yoff + (overshoot + 1)*h); z2 = (xoff + w, yoff); +z3 = (xoff - 0.25w, yoff + 4/5h); z4 = (xoff, yoff + h + another); +pickup dflt_pen; draw z1..z2; draw z4{dir -80}..{dir -100}(z3 + (0.25w,0)); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{right}..{down}z2; +fill fullcircle scaled 1.5pt shifted (z3 + (-0.02w,-0.152h)); +endgroup +enddef; + +def la(expr xoff, yoff, w, h, overshoot) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z1 = (w,(overshoot + 1)*h); z2 = (w,0); +z3 = (w,1/2h); z4 = (3/4w,4/5h); z5 = (20/33w,11/20h); +z6 = (7/24w,5/6h); z7 = (0,1/2h); z8 = (1/8w,4/15h); +pickup dflt_pen; draw z1..z2; +pickup pencircle xscaled 0.3pt yscaled 0.5pt; +draw z3{dir 135}..{left}z4{left}..{dir -75}z5{dir 105}..{left}z6{left} + ..{down}z7{down}..{dir -15}z8; +fill fullcircle scaled 1.2pt shifted (z8 + (0.042w,0.110h)); +endgroup +enddef; + +def ds_(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z1 = (0,1/6h); z2 = (1/8w,0); z3 = (6/15w,h); +z4 = (17/20w,0); z5 = (9/10w,h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 60; +draw z1..{right}z2{right}..{dir 75}z3{dir -75}..{right}z4{right}..{dir 135}z5; +endgroup +enddef; + +def ga(expr xoff, yoff, w, h, overshoot) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z1 = (w,h+0.3pt); z2 = (w,-overshoot*h); +pickup dflt_pen; draw z1..z2; +rt z4 = (w,4/7h); z5 = (9/20w,h); rt z6 = (0,5/9h); +z7 = (17/40w,11/40h); z8 = (16/50w,1/20h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z4{dir 120}..{left}z5{left}..{down}z6{dir 30} + ..{down}z7{down}..{dir -135}z8; +endgroup +enddef; + +def ba(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top z1 = (w,h); z2 = (w,0); z3 = 1/8[z1,z2] - (0.015w,0); z4 = (0,1/2h); +pickup dflt_pen; draw z1..z2; +pickup pencircle scaled 0.5pt; +draw z3{z4-z3 rotated -8}..z4; +draw z4{right}.. tension 1.5 .. (z2 - (0.015w,0)); +endgroup +enddef; + +def ba_(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top z1 = (w,h); z2 = (w,0); z3 = 1/8[z1,z2] - (0.015w,0); +z4 = (0,8/24h); z5 = (1/3w,0); +pickup dflt_pen; draw z1..z2; +pickup pencircle scaled 0.5pt; +draw z3{z4-z3 rotated -8}..z4; +draw z4..z5; +endgroup +enddef; + +def ma_(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top z1 = (1/7w,h); z2 = (1/5w,4/9h); z3 = (11/15w,0); top z4 = (15/16w,h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1..{dir -120}z2{right}..{right}z3{right}..{dir 135}z4; +fill fullcircle scaled 1.4pt shifted (z2 + (-0.10w,-0.12h)); +endgroup +enddef; + +def pa(expr xoff, yoff, w, h, overshoot) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z1 = (w,h+0.3pt); z2 = (w, -h * overshoot); +pickup pencircle scaled 0.4pt; draw z1..z2; +rt z4 = (w,19/40h); z5 = (9/20w,h); rt z6 = (0,2/3h); +z7 = (1/5w,0); z8 = (19/24w,3/4h); +pickup pencircle xscaled 0.3pt yscaled 0.5pt rotated 45; +draw z4--z8{z8-z4}..{left}z5{left}..{dir -140}z6{dir 30}..{dir -140}z7; +pickup pencircle xscaled 0pt yscaled 0.6pt rotated 50; +draw z7--z8; +endgroup +enddef; + +def sha(expr xoff, yoff, w, h, overshoot) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z1 = (w,h+0.3pt); z2 = (w,0); z3 = (w,-overshoot * h); +pickup pencircle xscaled 0.56pt yscaled 0pt rotated -45; draw z1..z3; +top z4 = (0,h+0.13pt); z5 = (11/30w,16/24h); +top z6 = (16/25w,h); z7 = 1/2[z1,z2]; +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z4{right}..{dir -60}z5{dir 60}..{right}z6{right}..{z7-z6}z7; +fill fullcircle xscaled 1.3pt yscaled 2.3pt rotated -45 shifted (z5 + (-0.50pt,-0.62pt)); +fill fullcircle xscaled 1.3pt yscaled 2.3pt rotated 45 shifted (z5 + (0.50pt,-0.62pt)); +endgroup +enddef; + +def cha(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top z3 = (0,h); z4 = (0,1/3h); +z5 = (1/4w,1/16h); z6 = (w,16/27h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z3--z4{down}..z5{dir 30}..{up}z6{dir 165}..{dir 100}z3; +endgroup +enddef; + +def chha(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top z3 = (0,h); z4 = (0,5/9h); z5 = (1/8w,1/2h); +z6 = (11/20w,3/4h); z7 = (26/40w,3/4h); z8 = (w,17/27h); +z9 = (1/5w,1/3h); z10 = (w,0); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z3..z4{down}..{right}z5{right}..{dir 80}z6{left}..{up}z3; +draw z6{right}..z7..{down}z8{down}..{left}z9; +draw z9{dir -25}..{dir -45}z10; +endgroup +enddef; + +def ta(expr xoff, yoff, w, h, overshoot) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z3 = (2/3w,h); lft z4 = (w,7/15h); +z5 = (3/4w,0); z6 = (1/4w,11/20h); z7 = (0,(1 + overshoot)*h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{dir 28}..{down}z4{down}..{left}z5{left}..z6..z7; +fill fullcircle scaled 1.5pt shifted (z3 + (0.24pt,-0.44pt)); +endgroup +enddef; + +def ta_(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z3 = (3/5w,4/5h); lft z4 = (w,7/15h); +z5 = (3/4w,0); z6 = (1/6w,1/2h); top z7 = (0,7/8h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{dir 28}..{down}z4{down}..{left}z5{left}..z6..z7; +fill fullcircle scaled 1.5pt shifted (z3 + (0.24pt,-0.44pt)); +endgroup +enddef; + +def dha(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +ba(xoff,yoff,2/3w,h); +z1 = (2/3w,6/7h); z2 = (41/40w,5/6h); z3 = (w,1/25h); +pickup pencircle xscaled 0.35pt yscaled 0.5pt; +draw z1--z2{dir -95}..tension 1.5..{dir -85}z3; +endgroup +enddef; + +def ka(expr xoff, yoff, w, h, pos) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +ba(xoff,yoff,2/3w,h); +z1 = (2/3w,4/5h); z2 = (w,pos * h); +draw z1{right}..{dir -120}z2; +fill fullcircle scaled 1.1pt shifted (z2 + (-0.25pt,0.16pt)); +endgroup +enddef; + +def ka_(expr xoff, yoff, w, h, pos) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +ba_(xoff,yoff,2/3w,h); +z1 = (2/3w,4/5h); z2 = (w,pos * h); +draw z1{right}..{dir -120}z2; +fill fullcircle scaled 1.1pt shifted (z2 + (-0.25pt,0.16pt)); +endgroup +enddef; + +def da(expr xoff, yoff, w, h, overshoot) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z3 = (0,(1 + overshoot)*h); z4 = (0,17/50h); +pickup dflt_pen; draw z3..z4; +z5 = (9/8w,3/4h); z2 = 1/2[z4,z5] + (0,0.25pt); +z6 = (w,0); +pickup pencircle xscaled 0pt yscaled 0.5pt rotated 45; +draw z4{z2-z4}..z2..{z5-z2}z5; +pickup dflt_pen; draw z5{dir -105}..{dir -80}z6; +endgroup +enddef; + +def da_(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z1 = (0,h); z2 = (0,0); z3 = (7/8w,1/2h); z4 = (w,1/3h); z5 = (w,0); +z6 = 1/2[z2,z3] + (0,0.35pt); +pickup dflt_pen; draw z1--z2{z6-z2}..{z3-z6}z3--z4--z5; +endgroup +enddef; + +def tiki(expr w,h,offshoot) = +begingroup +save z; pair z[]; +z1 = (w-0.7pt,3/4h); z2 = ((1 + offshoot)/2*w,31/32h); +z3 = (offshoot*w,11/10h); +pickup pencircle xscaled 0.2pt yscaled 0.4pt; +draw z1{dir 60}..{left}z2{left}..z3; +endgroup +enddef; + +def shnur(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z1 = (0,1/2h); z2 = (1/2w,h); z3 = (5/6w,0); +pickup dflt_pen; +draw z1..{right}z2{right}..{dir -120}z3; +fill fullcircle scaled (3/5w) shifted (z3 + (-0.17*w,0.11*h)); +endgroup +enddef; + +def ha(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z4 = (1/4w,4/5h); z5 = (5/6w,2/3h); +z6 = (1/10w,11/24h); z7 = (w,0); +pickup pencircle xscaled 0.6pt yscaled 0.3pt rotated -45; +draw z4{dir 30}..{down}z5{down}..{dir 150}z6; +pickup pencircle scaled 0.3pt; +draw z6{dir -30}..{dir -45}z7; +fill fullcircle xscaled 1.5pt yscaled 1pt rotated 30 shifted (z4 + (0,-0.20pt)); +endgroup +enddef; + +def ha_(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z3 = (2/10w,h); z4 = (1/4w,4/5h); z5 = (5/6w,2/3h); +z6 = (1/10w,11/24h); z7 = (w,0); +pickup pencircle xscaled 0.6pt yscaled 0.3pt rotated -45; +draw z4{dir 30}..{down}z5{down}..{dir 150}z6; +pickup pencircle scaled 0.3pt; +draw z3{dir -20}..{dir -75}(z4 + (0.5pt,0)); +draw z6{dir -30}..{dir -45}z7; +fill fullcircle xscaled 1.5pt yscaled 1pt rotated 30 shifted (z4 + (0,-0.20pt)); +endgroup +enddef; + +def mna(expr xoff, yoff, w, h, overshoot) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z1 = (w,(overshoot + 1)*h); z2 = (w,0); +z4 = (8/16w,h); z3 = (0.040w,4/9h); rt z5 = (w,2/3h); +pickup dflt_pen; draw z1..z2; +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z3{dir 100}..{right}z4{right}..{dir -55}z5; +fill fullcircle scaled 0.4h shifted (z3 + (0.120w,0.050h)); +endgroup +enddef; + +def tra(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z1 = (9/20w,8/15h); z2 = (4/5w,h); z3 = (w,8/9h); +z4 = (w,0); z5 = (1/2w,1/7h); +z6 = (1/6w,1/5h); z7 = (0,1/2h); z8 = (1/18w,5/7h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z1{dir 135}..tension 1.2..{right}z2{right}..z3{down}..z4; +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw (z4+(0,0.2pt)){up}...{left}z5{left}..z6..{up}z7{up}..z8; +fill fullcircle scaled 0.263h shifted (z1 + (0.0887w,0.0713h)); +endgroup +enddef; + +def Dha(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top lft z3 = (0,h); lft z4 = (0,3/16h); +z5 = (2/5w,1/20h); z6 = (w,16/27h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z3--z4{down}..z5{dir 30}..{up}z6; +fill fullcircle scaled 1.2pt shifted (z6 - (0.43pt,0.15pt)); +endgroup +enddef; + +def bha(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z3 = (1/3w,5/8h); z4 = (6/7w,5/6h); z5 = (w,15/32h); +z6 = (3/5w,0); z8 = (0,13/15h); z7 = (3/25w,7/16h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 15; +draw z3{dir -29}..{dir 60}z4{dir -50}..{down}z5{down}..{left}z6{left}..z7..z8; +fill fullcircle scaled 1.4pt shifted (z3 + (0.36pt,0.38pt)); +endgroup +enddef; + +def Da(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top z3 = (1/2w,h); z4 = (1/2w,6/11h); z5 = (11/20w,1/2h); +z6 = (8/9w,7/10h); lft z7 = (w,5/12h); +z8 = (23/40w,1/10h); z9 = (0,8/15h); z10 = (1/10w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{down}..{down}z4{dir -60}..{dir -60}z5{dir 30}..{dir60}z6{dir -60} + ..{down}z7{down}..{left}z8{left}..z10..z9; +endgroup +enddef; + +def ms_(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top z1 = (4/5w,h); z2 = (0,1/4h); z3 = (1/5w,0); z4 = (w,3/4h); +pickup pencircle xscaled 0.3pt yscaled 0.5pt rotated 45; +draw z1{left}..{down}z2{down}..{right}z3{right}..{up}z4{up}..{left}z1; +z5 = (1/3w,2/3h); z6 = (2/3w,3/10h); draw z5..z6; +endgroup +enddef; + +def pha_(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z3 = (7/10w,4/5h); z4 = (7/10w,0); draw z3..z4; +top rt z5 = (0,h); z6 = (1/3w,43/60h); z7 = (1/10w,4/9h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 50; +draw z5{right}.. tension 2 ..z6--z7; +draw z7{right}..tension 1.5 ..{dir -75}(z4 - (0.08pt,0)); +lft z8 = (41/40w,14/27h); z9 = (w,1/4h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{right}..{down}z8{down}..z9; +fill fullcircle scaled 1pt shifted (z9 + (-0.20pt,0.20pt)); +endgroup +enddef; + +def pha(expr xoff, yoff, w, h, overshoot) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z3 = (7/10w,4/5*(1+overshoot)*h); z4 = (7/10w,0); draw z3..z4; +top rt z5 = (1/7w,h); z6 = (11/40w,48/60h); z7 = (0w,4/9h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 50; +draw z5{right}.. tension 2 ..z6--z7; +draw z7{right}..tension 1.5 ..{dir -75}(z4 - (0.08pt,0)); +lft z8 = (41/40w,(14/27+overshoot*3/4)*h); z9 = (w,(1/4+overshoot*3/4)*h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{right}..{down}z8{down}..z9; +fill fullcircle scaled 1pt shifted (z9 + (-0.20pt,0.20pt)); +endgroup +enddef; + +def ds(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +pickup dflt_pen; +top z3 = (w,h); z4 = (w,0); draw z3..z4; +top z5 = (1/20w,h); rt z10 = (w,3/7h); +z7 = (0,2/5h); z8 = (1/7w,14/50h); +z9 - z10 = (z7 - z8); rt bot z6 = 3/5[z8,z9]; +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z5{right}..{down}z6; +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z7..z8..z9..tension 1.4..z10; +endgroup +enddef; + +def _ds(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +pickup dflt_pen; +top z3 = (w,h); z4 = (w,0); draw z3..z4; +top z5 = (1/20w,h); rt z10 = (w,3/7h); +z7 = (0,2/5h); z8 = (1/7w,14/50h); +z9 - z10 = (z7 - z8); rt bot z6 = 3/5[z8,z9]; +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z7..z8..z9..tension 1.4..z10; +endgroup +enddef; + +def _Dha(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top lft z3 = (2/5w,h); lft z4 = (0,3/6h); +z5 = (1/2w,0); z6 = (w,20/27h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z3..tension 2..z4{down}..z5..{up}z6; +fill fullcircle scaled 1.2pt shifted (z6 - (0.43pt,0.15pt)); +endgroup +enddef; + +def Tha(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z3 = (1/2w,h); z4 = (0,3/10h); z5 = (6/16w,1/12h); +z6 = (w,1/2h); z7 = (3/8w,3/2h); z8 = (9/19w,19/12h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z3{dir -75}..{dir -150}z4{down}..{right}z5{right}..{up}z6{up} + ..{dir 120}z3..{up}z7{up}..{dir 45}z8; +endgroup +enddef; + +def tta(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z1 = (1/5w,3/4h); z2 = (3/4w,h); +z3 = (w,64/75h); z4 = (4/5w,3/5h); z5 = (w,28/75h); +z6 = (3/5w,1/9h); z8 = (0,13/15h); z7 = (3/25w,4/9h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1{dir 75}..{right}z2{right}..{down}z3{down}..{dir -135}z4 +{dir -40}..{down}z5{down}..{left}z6{left}..z7..z8; +fill fullcircle scaled 1.3pt shifted (z4 + (-0.37pt,0)); +fill fullcircle scaled 1.1pt shifted (z1 + (0.39pt,0)); +endgroup +enddef; + +def gha(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top z3 = (w,h); z4 = (w,0); pickup dflt_pen; draw z3..z4; +z5 = (1/7w,h-0.05pt); z6 = (0,4/5h); +z7 = (15/25w,7/10h); z8 = (1/9w,4/10h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z5{dir -120}..{down}z6{down}..{dir 30}z7--z8; +draw z8{right}..tension 1.5 ..{dir -75}z4; +endgroup +enddef; + +def una(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z1 = (1/10w,h); z2 = (19/40w,76/93h); z3 = (25/29w,92/93h); +z4 = (1/2w,h); z5 = (4/9w,1/2h); z6 = (19/40w,64/135h); +z7 = (8/9w,2/3h); lft z8 = (w,11/25h); z9 = (23/40w,1/9h); +z10 = (6/50w,4/9h); z11 = (0,13/15h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1..tension 1.2..{right}z2{right}..tension 1.2.. +{up}z3{up}..{dir -130}z4{dir -130}.. +tension 2..z5--z6{dir 0}..{dir 60}z7{dir -60}..{down}z8{down} +..{left}z9{left}..z10..z11; +endgroup +enddef; + +def khiyo_base(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top z1 = (1/15w,h); z2 = (1/7w,4/5h); z3 = (1/2w,2/5h); +z4 = (w-0.01pt,0.2pt); z5 = (w,h); z6 = (w,0); +pickup dflt_pen; draw z5..z6; +pickup pencircle xscaled 0.3pt yscaled 0.55 pt rotated 45; +draw z1..{down}z2{dir 20}..{dir -130}z3{right}..{down}z4; +fill fullcircle scaled 1.4pt shifted (z2 + (-0.055w,-0.07h)); +fill fullcircle scaled 1.4pt shifted (z3 + (-0.07w,-0.04h)); +endgroup +enddef; + +def khiyo(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +khiyo_base(xoff,yoff,2/3w,h); +top z1 = (17/40w,h); z2 = (2/3w,29/40h); z3 = (w,9/20h); +pickup pencircle xscaled 0.3pt yscaled 0.6 pt; +draw z1{dir -120}..{dir 15}z2{dir 15}..{dir -120}z3; +fill fullcircle scaled 1.3pt shifted (z3 + (-0.090w,-0.00h)); +endgroup +enddef; + +def bhra(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z3 = (1/3w,9/15h); z4 = (6/7w,6/7h); z5 = (w,8/11h); z6 = (w,0); +z8 = (w,0); z9 = (1/2w,1/6h); +z10 = (11/30w,1/6h); z11 = (1/15w,6/8h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 15; +draw z3{dir -29}..{dir 60}z4..tension 3.5..z5--z6; +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z8{dir 90}..{left}z9..z10{left}..z11; +fill fullcircle scaled 1.4pt shifted (z3 + (0.36pt,0.38pt)); +endgroup +enddef; + +def ja(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top z3 = (8/20w,h); z4 = (4/21w,2/3h); z5 = (8/20w,1/2h); +z6 = (23/36w,35/60h); z7 = (12/16w,19/50h); z8 = (1/2w,1/6h); +rt z9 = (0,3/4h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{dir -135}..{down}z4{down}..{right}z5{right}..{dir30}z6 + {dir -60}..{down}z7{down}..{left}z8{left}..{up}z9; +endgroup +enddef; + +def jaleg(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +top z3 = (0,h); +rt z11 = (w,3/4h); +z12 = (7/8w,0); +pickup pencircle xscaled 0.25pt yscaled 0.5pt; +draw z3{dir -90}..{dir 15}z11; +pickup pencircle xscaled 0.2pt yscaled 0.45pt rotated 45; +draw z11{dir -120}..tension 1.8..z12; +endgroup +enddef; + +def hump(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z9 = (0,2/5h); z13 = (0,3/5h); z11 = (8/9w,1/2h); +z10 = (w,0); z12 = (w,h); +pickup pencircle xscaled 0.25pt yscaled 0.45pt; +draw z9{dir -60}..z10..z11; +pickup pencircle xscaled 0.25pt yscaled 0.45pt; +draw z13{dir 60}..z12..z11; +fill fullcircle scaled 1.0pt shifted (z11 + (-0.15pt,0)); +endgroup +enddef; + +def ina(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +tra(xoff,yoff,3/5w,h); +hump(xoff+3/5w,yoff+1/3h,2/5w,3/5h); +endgroup +enddef; + +def jha(expr xoff, yoff, w, h, fract) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +ba(xoff,yoff,7/10w,h); +z1 = (7/10w,2/5h); z2 = (w,1/20h); z3 = (w,fract*h); +pickup dflt_pen; draw z2..z3; +draw z1{z2-z1 rotated -8}..z2; +endgroup +enddef; + +def dha_(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +ba(xoff,yoff,w,h); +z8 = (1/2w,22/30h); z9 = (1/9w,9/10h); bot z10 = (9/30w,h); +pickup pencircle scaled 0.35pt; +draw z8{left}..{up}z9{up}..{right}z10; +fill fullcircle scaled 1.0pt shifted (z10 + (0.1pt,-0.33pt)); +endgroup +enddef; + +def gu(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[],z[]'; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +z1 = (7/10w,3/5h); z2 = (74/100w,76/100h); +z4 = (19/25w,8/20h); z5 = (7/8w,12/50h); +z6 = (24/40w,1/18h); z8 = (1/10w,13/20h); z7 = (9/50w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1--z2{dir -60}..{dir -135}z4 + {dir -30}..{down}z5{down}..{left}z6{left}..z7..z8; +fill fullcircle scaled 1.4pt shifted (z4 + (-0.37pt,0)); +z2' = (9/20w,3/4h); z3' = (9/40w,12/20h); +z4' = (18/40w,11/20h); z5' = (7/20w,8/20h); +draw z1{dir 120}..{left}z2'{left}..{down}z3'{dir 30}..{down}z4'{down}..z5'; +endgroup +enddef; + +def ha_ma(expr xoff, yoff, w, h) = +begingroup +save z, currenttransform; pair z[]; transform currenttransform; +currenttransform = identity shifted (xoff,yoff) slanted slantval; +khiyo_base(xoff,yoff,3/4w,h); +z2 = (3/8w,3/4h); z3 = (3/4w,3/4h); +z4 = (w,27/40h); z5 = (w,1/10h); +pickup pencircle scaled 0.5pt; +draw z2{dir -15}..{dir 15}z3{dir 15}..z4{dir -95}..{dir -85}z5; +endgroup +enddef; + +%%% End of bnmacro.mf diff --git a/language/bengali/pandey/mf/bnmisc.mf b/language/bengali/pandey/mf/bnmisc.mf new file mode 100644 index 0000000000..1007b7e7d5 --- /dev/null +++ b/language/bengali/pandey/mf/bnmisc.mf @@ -0,0 +1,33 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bnmisc.mf: METAFONT file that defines some special symbols +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 20 1997 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +beginchar(12,0stwd#,stht#,stdp#); "hasanta"; +z1 = (w-0.9pt,-1/4d); z2 = (w+1pt,-5/4d); +pickup pencircle scaled penth#; draw z1..z2; +endchar; + +beginchar(13,0.25stwd#,stht#,stdp#); "ja-fala"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +z3 = (5/6w,3/4h); z4 = (4/9w,7/17h); lft z5 = (0,0); +pickup pencircle xscaled 0.6pt yscaled 0.3pt; +draw z3{dir -180}..tension 1.5 ..{dir -80}z4{dir -80}..{dir -170}z5; +endchar; + +beginchar(14,0stwd#,stht#,stdp#); "ref"; +z1l + (0.4pt,0) = z1r - (0.4pt,0) = z1 = (-1.4pt,13/16h); +z2l + (0.2pt,0) = z2r - (0.2pt,0) = z2 = (2.5pt,9/8h); +penstroke z1e..z2e; +endchar; + +beginchar(15,0stwd#,stht#,stdp#); "ra-fala"; +z1 = (w-0.9pt,1/10h); z2 = (w-0.9pt,-d/3); z3 = (w-2.5pt,-1/6d); +z4 = (w-4.4pt,-1/6d); z5 = (w-5.6pt,1/8h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z1--z2{dir 135}..{left}z3..z4{left}..{up}z5; +endchar; + +%%% End of bnmisc.mf diff --git a/language/bengali/pandey/mf/bnpunct.mf b/language/bengali/pandey/mf/bnpunct.mf new file mode 100644 index 0000000000..2914f1a8c5 --- /dev/null +++ b/language/bengali/pandey/mf/bnpunct.mf @@ -0,0 +1,203 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bnpunct.mf: METAFONT file that defines the Bengali punctuation symbols +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 20 1997 + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +beginchar(".",0.40stwd#,stht#,stdp#); "dnari (period)"; +z1 = (3/4w,3/4h); z2 = (3/4w,0); +pickup pencircle xscaled 0.56pt yscaled 0pt rotated -45; draw z1..z2; +endchar; + +beginchar(60,0.50stwd#,stht#,stdp#); "double dnari"; +z1 = (1/3w,3/4h); z2 = (1/3w,0); +z3 = (2/3w,3/4h); z4 = (2/3w,0); +pickup pencircle xscaled 0.56pt yscaled 0pt rotated -45; +draw z1..z2; draw z3..z4; +endchar; + +beginchar("!",0.3stwd#,stht#,stdp#); "exclamation mark (bang)"; +pickup pencircle scaled 0.4pt; +z1 = (1/2w,3/4h); z2 = (1/2w,1/6h); z3 = (1/2w,0); +z1l + (0.2pt,0.1pt) = z1r + (-0.2pt,0.1pt) = z1; +z2l + (0.1pt,-0.1pt) = z2r + (-0.1pt,-0.1pt) = z2; +filldraw z1l..tension 3..z2l..z2..z2r..tension 3..z1r..z1..cycle; +fill fullcircle scaled 1.2pt shifted z3; +endchar; + +beginchar(",",0.3stwd#,stht#,stdp#); "comma"; +pickup pencircle scaled 0.5pt; +z1 = (2/3w,1/9h); z2 = (2/5w,-d); +draw z1{dir -60}..{dir -130}z2; +fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,-0.22pt)); +endchar; + +beginchar(";",0.3stwd#,stht#,stdp#); "semi colon"; +pickup pencircle scaled 0.5pt; +z1 = (2/3w,1/9h); z2 = (2/5w,-d); +draw z1{dir -60}..{dir -130}z2; +fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,-0.22pt)); +fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,1.8pt)); +endchar; + +beginchar(":",0.3stwd#,stht#,stdp#); "colon"; +z1 = (1/2w,1/6h); z2 = (1/2w,(3/4-1/6)*h); +fill fullcircle scaled 1.5pt shifted z1; +fill fullcircle scaled 1.5pt shifted z2; +endchar; + +beginchar("`",0.3stwd#,stht#,stdp#); "backquote"; +pickup pencircle scaled 0.5pt; +z1 = (1/3w,(3/4-1/9)*h); z2 = (3/5w,h); +draw z1{dir 120}..{dir 50}z2; +fill fullcircle scaled 1.5pt shifted (z1 + (0.50pt,0.22pt)); +endchar; + +beginchar("'",0.3stwd#,stht#,stdp#); "quote"; +pickup pencircle scaled 0.5pt; +z1 = (2/3w,24/25h); z2 = (2/5w,(3/4-1/9-1/25)*h); +draw z1{dir -60}..{dir -130}z2; +fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,-0.22pt)); +endchar; + +beginchar(34,0.45stwd#,stht#,stdp#); "double quote"; +pickup pencircle scaled 0.5pt; +z1 = (2/5w,29/30h); z2 = (1/5w,(3/4-1/9-1/30)*h); +z1' = (4/5w,29/30h); z2' = (3/5w,(3/4-1/9-1/30)*h); +draw z1{dir -60}..{dir -130}z2; +draw z1'{dir -60}..{dir -130}z2'; +fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,-0.22pt)); +fill fullcircle scaled 1.5pt shifted (z1' + (-0.50pt,-0.22pt)); +endchar; + +beginchar(92,0.45stwd#,stht#,stdp#); "double backquote"; +pickup pencircle scaled 0.5pt; +z1 = (1/5w,(3/4-1/9)*h); z2 = (2/5w,h); +z1' = (3/5w,(3/4-1/9)*h); z2' = (4/5w,h); +draw z1{dir 120}..{dir 50}z2; +draw z1'{dir 120}..{dir 50}z2'; +fill fullcircle scaled 1.5pt shifted (z1 + (0.50pt,0.22pt)); +fill fullcircle scaled 1.5pt shifted (z1' + (0.50pt,0.22pt)); +endchar; + +beginchar("#",0.55stwd#,stht#,stdp#); "hash"; +pickup pencircle scaled 0.5pt; +z1 = (1/2w,3/4h); z2 = (1/4w,-2/3d); +z1' = (3/4w,3/4h); z2' = (1/2w,-2/3d); +draw z1--z2; draw z1'--z2'; +z3 = (1/8w,(1/4-1/30)*h); z4 = (7/8w,(1/4-1/30)*h); +z3' = (1/8w,(1/2-1/10)*h); z4' = (7/8w,(1/2-1/10)*h); +draw z3--z4; draw z3'--z4'; +endchar; + +beginchar("/",0.3stwd#,stht#,stdp#); "forward slash"; +pickup pencircle scaled 0.5pt; +z1 = (7/8w,3/4h); z2 = (1/8w,-2/3d); +draw z1--z2; +endchar; + +beginchar("=",0.5stwd#,stht#,stdp#); "equality sign"; +pickup pencircle scaled 0.5pt; +z3 = (1/8w,(1/4-1/30)*h); z4 = (7/8w,(1/4-1/30)*h); +z3' = (1/8w,(1/2-1/10)*h); z4' = (7/8w,(1/2-1/10)*h); +draw z3--z4; draw z3'--z4'; +endchar; + +beginchar("[",0.20stwd#,stht#,stdp#); "left square bracket"; +pickup pencircle scaled 0.1pt; +z1=(w,h); z2 = (1/3w,h); z3 = (1/3w,-d); z4 = (w,-d); +z1 - z1' = (0,0.5pt); z2 - z2' = (-0.5pt,0.5pt); +z4 - z4' = (0,-0.5pt); z3 - z3' = (-0.5pt,-0.5pt); +filldraw z1--z2--z3--z4--z4'--z3'--z2'--z1'--cycle; +endchar; + +beginchar("]",0.20stwd#,stht#,stdp#); "right square bracket"; +pickup pencircle scaled 0.1pt; +z1=(0,h); z2 = (2/3w,h); z3 = (2/3w,-d); z4 = (0,-d); +z1 - z1' = (0,0.5pt); z2 - z2' = (0.5pt,0.5pt); +z4 - z4' = (0,-0.5pt); z3 - z3' = (0.5pt,-0.5pt); +filldraw z1--z2--z3--z4--z4'--z3'--z2'--z1'--cycle; +endchar; + +beginchar("(",0.28stwd#,stht#,stdp#); "left parenthesis"; +pickup pencircle scaled 0.1pt; +z1 = (8/9w,h); z3 = (8/9w,-d); +z2 = (1/4w,1/3h); z2' = z2 + (0.5pt,0); +filldraw z2'{up}..{dir 60}z1{dir -130}..{down}z2{down} + ..{dir -50}z3{dir 120}..cycle; +endchar; + +beginchar(")",0.28stwd#,stht#,stdp#); "right parenthesis"; +pickup pencircle scaled 0.1pt; +z1 = (1/9w,h); z3 = (1/9w,-d); +z2 = (3/4w,1/3h); z2' = z2 - (0.5pt,0); +filldraw z2'{up}..{dir 120}z1{dir -50}..{down}z2{down} + ..{dir -130}z3{dir 60}..cycle; +endchar; + +beginchar("*",0.48stwd#,stht#,stdp#); "asterisk"; +numeric frac; frac = 1/8h; +z1 = (1/2w,h); z2 = (1/2w,3/7h); +z3 = (1/6w,h-frac); z4 = (5/6w,3/7h + frac); +z5 = (1/6w,3/7h+frac); z6 = (5/6w,h - frac); +pickup pencircle scaled 0.5pt; +draw z1--z2; draw z3--z4; draw z5--z6; +endchar; + +beginchar("+",0.68stwd#,stht#,stdp#); "plus sign"; +z1 = (1/12w,3/8h); z2 = (11/12w,3/8h); +z3 = (1/2w,3/4h); z4 = (1/2w,0); +pickup pencircle scaled 0.5pt; +draw z1--z2; draw z3--z4; +endchar; + +beginchar("-",0.30stwd#,stht#,stdp#); "hyphen"; +z1 = (1/10w,3/8h); z2 = (9/10w,3/8h); +z1 - z3 = (0,0.5pt); z2 - z4 = (0,0.5pt); +pickup pencircle scaled 0.1pt; +filldraw z1--z2--z4--z3--cycle; +endchar; + +beginchar(123,0.60stwd#,stht#,stdp#); "endash"; +z1 = (0,3/8h); z2 = (w,3/8h); +pickup pencircle scaled 0.25pt; +draw z1--z2; +endchar; + +beginchar(124,1.10stwd#,stht#,stdp#); "emdash"; +z1 = (0,3/8h); z2 = (w,3/8h); +pickup pencircle scaled 0.25pt; +draw z1--z2; +endchar; + +beginchar("%",0.70stwd#,stht#,stdp#); "percent sign"; +z1 = (5/6w,h); z2 = (1/6w,-1/3d); +pickup pencircle scaled 0.5pt; +draw z1--z2; +pickup pencircle xscaled 0.4pt yscaled 0.2pt; +draw fullcircle xscaled 11/40w yscaled 1/2h shifted (1/4w,3/4h); +draw fullcircle xscaled 11/40w yscaled 1/2h shifted (3/4w,-1/3d + 1/4h); +z3 = (11/40w,h); +pickup pencircle scaled 0.25pt; +draw z3{dir -45}..{dir 45}z1; +endchar; + +beginchar("?",0.45stwd#,stht#,stdp#); "Question mark"; +z1=(1/6w,3/5h); z2=(1/2w,3/4h); z3=(5/6w,3/5h);z4=(11/20w,11/30h); +z5=(1/2w,1/7h); +pickup pencircle xscaled 0.5pt yscaled 0.25pt rotated -25; +draw z1{up}..{right}z2{right}..{down}z3{down}..{dir -135}z4..{down}z5; +fill fullcircle scaled 1.1pt shifted (z5 - (0pt,1.3pt)); +fill fullcircle scaled 1.2pt shifted (z1 + (0.37pt,-0.00pt)); +endchar; + +beginchar("$",0.65stwd#,stht#,stdp#); "bucks"; +z1 = (4/7w,h); z2 = (1/7w,-1/3d); +pickup pencircle scaled 0.5pt; +draw z1--z2; +z3 = (4/7w,3/7h); z4 = (8/9w,3/7h); +draw z3--z4; +endchar; + +%%% End of bnpunct.mf diff --git a/language/bengali/pandey/mf/bnr10.mf b/language/bengali/pandey/mf/bnr10.mf new file mode 100644 index 0000000000..1160756b9b --- /dev/null +++ b/language/bengali/pandey/mf/bnr10.mf @@ -0,0 +1,29 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bnr10.mf: METAFONT file that defines the Bengali alphabet (nonslanted) +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 19 1997 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +mode_setup; +font_size 10pt#; +u# = 3/9pt#; +s# = 1/3pt#; +em# := 20pt#; cap# := 20pt#; +thin# := 1/3pt#; thick# := 5/6pt#; +o# := 1/5pt#; +define_pixels(em,cap); +define_blacker_pixels(thin,thick); +define_corrected_pixels(o); +numeric stwd, stht, stdp, penth; +stwd# = 10pt#; stht# = 8pt#; stdp# = 2pt#; +penth# = 0.4pt; dflt_pen := savepen; +font_quad 18u#+2s#; +font_normal_space 9u#+3s#; +font_normal_stretch 3u#; +font_normal_shrink 2u#; +numeric slantval; slantval = 0; + +input bn; +end; + +%%% End of bnr10.mf diff --git a/language/bengali/pandey/mf/bnsl10.mf b/language/bengali/pandey/mf/bnsl10.mf new file mode 100644 index 0000000000..ab611e5acb --- /dev/null +++ b/language/bengali/pandey/mf/bnsl10.mf @@ -0,0 +1,30 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bnsl10.mf: METAFONT file that defines the Bengali alphabet (slanted) +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 19 1997 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +mode_setup; +font_size 10pt#; +u# = 3/9pt#; +s# = 1/3pt#; +em# := 20pt#; cap# := 20pt#; +thin# := 1/3pt#; thick# := 5/6pt#; +o# := 1/5pt#; +define_pixels(em,cap); +define_blacker_pixels(thin,thick); +define_corrected_pixels(o); +numeric stwd, stht, stdp, penth; +stwd# = 10pt#; stht# = 8pt#; stdp# = 2pt#; +penth# = 0.4pt; dflt_pen := savepen; +currenttransform := identity slanted 1/5; +font_quad 18u#+2s#; +font_normal_space 9u#+3s#; +font_normal_stretch 3u#; +font_normal_shrink 2u#; +numeric slantval; slantval = 1/5; + +input bn; +end; + +%%% End of bnsl10.mf diff --git a/language/bengali/pandey/mf/bnswar.mf b/language/bengali/pandey/mf/bnswar.mf new file mode 100644 index 0000000000..ae1faa1113 --- /dev/null +++ b/language/bengali/pandey/mf/bnswar.mf @@ -0,0 +1,162 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% bnswar.mf: METAFONT file that defines the Bengali vowels +% Created by: Abhijit Das (Barda) IISc Bangalore +% Last modified: Jun 19 1997 +% +% apandey 1999.05.29 repositioned "the letter a" from ASC 0 to ASC 97 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%beginchar(0,0.80stwd#,stht#,stdp#); "The letter a"; +beginchar(97,0.80stwd#,stht#,stdp#); "The letter a"; +pickup pencircle scaled penth#; +numeric wd; wd = 37/40w; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +top z3 = (w-0.9pt,3/4h); z4 = (w-0.9pt,0); draw z3..z4; +z5 = (3/8wd,3/5h); z6 = (19/25wd,2/5h); z7 = (3/4wd,3/10h); +z8 = (11/20wd,1/8h); z9 = (1/12wd,13/20h); top z10 = (3/10wd,3/4h); +z11 = (6/25wd,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z5{dir 25}..{down}z6{down}..z7..{left}z8{left}..z11..z9; +draw z7{dir -60}..{dir -75}z4; +pickup pencircle scaled 0.3pt; +draw z10{dir -30}..{dir -75}(z5 + (0.25pt,0.2pt)); +fill fullcircle scaled 1.5pt shifted (z5 + (0.20pt,-0.45pt)); +endchar; + +beginchar(2,0.5stwd#,stht#,stdp#); "The letter hraswa-i"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z3 = (3/10w,3/4h); z4 = (1/3w,3/5h); z5 = (5/6w,1/2h); +lft z6 = (1/8w,5/16h); z7 = (w,-1/3d); +z6l + (0.15pt,-0.3pt) = z6r - (0.15pt,-0.3pt) = z6; +z7l - (0,0.15pt) = z7r + (0,0.15pt) = z7; +pickup pencircle xscaled 0.6pt yscaled 0.3pt rotated -45; +draw z4{dir 30}..{down}z5{down}..{dir 150}z6; +pickup pencircle scaled 0.3pt; +draw z3{dir -20}..{dir -75}(z4 + (0.5pt,0)); +penstroke z6e{dir -30}..{dir -45}z7e; +fill fullcircle xscaled 1.5pt yscaled 1pt rotated 30 shifted (z4 + (0,-0.20pt)); +z10 = (w-0.7pt,3/4h); z8 = (1/2w,31/32h); z9 = (-1/8w,11/10h); +pickup pencircle xscaled 0.2pt yscaled 0.4pt; +draw z10{dir 60}..{left}z8{left}...z9{dir 75}; +endchar; + +beginchar(3,0.60stwd#,stht#,stdp#); "The letter dirgha-i"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z3 = (1/10w,3/4h); z4 = (1/6w,3/5h); z5 = (1/8w,17/80h); +z6 = (1/5w,1/5h); z7 = 1/3[z6,z8]; +z8 = (8/9w,9/16h); z9 = (5/6w,0); +pickup pencircle xscaled 0.2pt yscaled 0.6pt rotated 45; +draw z4{dir 30}..z7..tension 2..z6..z5; +draw z7..{dir 35}z8{dir -120}..{dir -75}z9; +z7' = (w-0.7pt,3/4h); z8' = (5/9w,31/32h); z9' = (0,11/10h); +pickup pencircle xscaled 0.2pt yscaled 0.4pt; +draw z7'{dir 60}..{left}z8'{left}...z9'{dir 75}; +pickup pencircle scaled 0.3pt; +draw z3{dir -20}..{dir -75}(z4 + (0.5pt,0)); +fill fullcircle scaled 1.2pt shifted (z4 + (0.19pt,-0.25pt)); +endchar; + +beginchar(4,0.60stwd#,stht#,stdp#); "The letter hrashwa-u"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +top z3 = (1/2w,3/4h); z4 = (1/2w,9/22h); z5 = (11/20w,3/8h); +z6 = (41/50w,21/40h); lft z7 = (8/9w,5/16h); +z8 = (23/40w,1/12h); z9 = (1/10w,13/20h); z10 = (9/50w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{down}..{down}z4{dir -60}..{dir -60}z5{dir 30}..{dir60}z6{dir -60} + ..{down}z7{down}..{left}z8{left}..z10..z9; +z7' = (w-0.7pt,3/4h); z8' = (1/2w,31/32h); z9' = (-1/8w,11/10h); +pickup pencircle xscaled 0.2pt yscaled 0.4pt; +draw z7'{dir 60}..{left}z8'{left}...z9'{dir 75}; +endchar; + +beginchar(5,0.60stwd#,stht#,stdp#); "The letter dirgha-u"; +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); draw z1..z2; +top z3 = (1/2w,3/4h); z4 = (1/2w,9/22h); z5 = (11/20w,3/8h); +z6 = (41/50w,21/40h); lft z7 = (8/9w,5/16h); +z8 = (23/40w,1/12h); z9 = (1/10w,13/20h); z10 = (9/50w,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z3{down}..{down}z4{dir -60}..{dir -60}z5{dir 30}..{dir60}z6{dir -60} + ..{down}z7{down}..{left}z8{left}..z10..z9; +z10' = z10 + (0.6pt,0); z11 = z9 + (0.8pt,0); +draw (z8+(0.3pt,0)){left}..z10'..z11; +z7' = (w-0.7pt,3/4h); z8' = (1/2w,31/32h); z9' = (-1/8w,11/10h); +pickup pencircle xscaled 0.2pt yscaled 0.4pt; +draw z7'{dir 60}..{left}z8'{left}...z9'{dir 75}; +endchar; + +beginchar(6,0.67stwd#,stht#,stdp#); "The letter ri"; +z1 = (w-0.9pt,3/4h); z2 = (w-0.9pt,1/11h); +z3 = (5/8w,3/4h); z4 = (5/8w,0); lft z5 = 4/7[z3,z4]; +pickup pencircle scaled penth#; draw z1..z2; draw z3..z4; +draw z5{dir -45}..{dir -75}z2; +rt z6 = (5/8w,13/20h); z7 = (1/6w,8/21h); +pickup pencircle scaled 0.5pt; +draw z6{z7-z6 rotated -8}..z7; +z4 + (0,0.2pt) = z4l + (0.15pt,0) = z4r - (0.15pt,0); +z7 = z7r + (0.2pt,-0.2pt) = z7l - (0.1pt,-0.27pt); +penstroke z7e{right}.. tension 1.5 .. z4e; +z8 = (1/2w-0.2pt,3/4h); z9 = (1/4w-0.1pt,31/50h); z10 = (1/10w,18/25h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw z6--z8{dir -150}..{left}z9{left}..{up}z10; +fill fullcircle scaled 1.2pt shifted (z10 + (0.47pt,0)); +endchar; + +beginchar(8,0.65stwd#,stht#,stdp#); "The letter e"; +z1 = (9/20w,2/5h); z2 = (19/25w,3/4h); z3 = (6/7w,2/3h); +z4 = (6/7w,0pt); z5 = (1/2w,1/6h); +z6 = (1/5w,1/5h); z7 = (1/8w,3/8h); z8 = (1/6w,1/2h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z1{dir 135}..tension 1.2..{right}z2{right}..z3{down}..z4; +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw (z4+(0,0.2pt)){up}...{left}z5{left}..z6..{up}z7{up}..z8; +fill fullcircle scaled 1.4pt shifted (z1 + (0.47pt,0.38pt)); +endchar; + +beginchar(9,0.76stwd#,stht#,stdp#); "The letter oi"; +numeric wd; wd = 21/25w; +z1 = (9/20wd,2/5h); z2 = (19/25wd,3/4h); z3 = (6/7wd,2/3h); +z4 = (6/7wd,0pt); z5 = (1/2wd,1/6h); +z6 = (1/5wd,1/5h); z7 = (1/8wd,3/8h); z8 = (1/6wd,1/2h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45; +draw z1{dir 135}..tension 1.2..{right}z2{right}..z3{down}..z4; +pickup pencircle xscaled 0.3pt yscaled 0.6pt; +draw (z4+(0,0.2pt)){up}...{left}z5{left}..z6..{up}z7{up}..z8; +fill fullcircle scaled 1.4pt shifted (z1 + (0.47pt,0.38pt)); +z9 = (9/10w,11/14h); z10 = (7/20w,17/16h); z11 = (2/5w,9/8h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated -30; +draw 2/7[z3,z4]{right}..z9..{up}z10{up}..z11; +endchar; + +beginchar(10,0.58stwd#,stht#,stdp#); "The letter o"; +numeric wd; wd = w; z1 = (3/10wd,29/50h); z2 = (2/3wd,3/4h); +z3 = (7/8wd,16/25h); z4 = (18/25wd,9/20h); z5 = (7/8wd,7/25h); +z6 = (23/40wd,1/12h); z8 = (1/10wd,13/20h); z7 = (9/50wd,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1{dir 75}..{right}z2{right}..{down}z3{down}..{dir -135}z4 +{dir -40}..{down}z5{down}..{left}z6{left}..z7..z8; +fill fullcircle scaled 1.4pt shifted (z4 + (-0.37pt,0)); +fill fullcircle scaled 1.2pt shifted (z1 + (0.39pt,0)); +endchar; + +beginchar(11,0.67stwd#,stht#,stdp#); "The letter ou"; +numeric wd; +wd = 22/25*w; z1 = (3/10wd,3/5h); z2 = (2/3wd,3/4h); +z3 = (7/8wd,16/25h); z4 = (18/25wd,9/20h); z5 = (7/8wd,7/25h); +z6 = (23/40wd,1/12h); z8 = (1/10wd,13/20h); z7 = (9/50wd,1/3h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30; +draw z1{dir 75}..{right}z2{right}..{down}z3{down}..{dir -135}z4 +{dir -40}..{down}z5{down}..{left}z6{left}..z7..z8; +fill fullcircle scaled 1.4pt shifted (z4 + (-0.37pt,0)); +fill fullcircle scaled 1.2pt shifted (z1 + (0.39pt,0)); +z9 = (7/8w,4/5h); z10 = (7/20w,17/16h); z11 = (2/5w,9/8h); +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated -30; +draw (z4 - (0,0.2pt)){dir 30}..z9..{up}z10{up}..z11; +endchar; + +%%% End of bnswar.mf diff --git a/language/bengali/pandey/mf/xbnr10.mf b/language/bengali/pandey/mf/xbnr10.mf new file mode 100644 index 0000000000..73d4aeeb01 --- /dev/null +++ b/language/bengali/pandey/mf/xbnr10.mf @@ -0,0 +1,29 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% xbnr10.mf: METAFONT supplemental characters for Bengali (nonslanted) +% Created by: Anshuman Pandey <apandey@u.washington.edu> +% Modified: Mar 27 2002 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +mode_setup; +font_size 10pt#; +u# = 3/9pt#; +s# = 1/3pt#; +em# := 20pt#; cap# := 20pt#; +thin# := 1/3pt#; thick# := 5/6pt#; +o# := 1/5pt#; +define_pixels(em,cap); +define_blacker_pixels(thin,thick); +define_corrected_pixels(o); +numeric stwd, stht, stdp, penth; +stwd# = 10pt#; stht# = 8pt#; stdp# = 2pt#; +penth# = 0.4pt; dflt_pen := savepen; +font_quad 18u#+2s#; +font_normal_space 9u#+3s#; +font_normal_stretch 3u#; +font_normal_shrink 2u#; +numeric slantval; slantval = 0; + +input xbnsupp; +end; + +%%% End of xbnr10.mf diff --git a/language/bengali/pandey/mf/xbnsl10.mf b/language/bengali/pandey/mf/xbnsl10.mf new file mode 100644 index 0000000000..68d3f2e3f9 --- /dev/null +++ b/language/bengali/pandey/mf/xbnsl10.mf @@ -0,0 +1,30 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% xbnsl10.mf: METAFONT supplemental characters for Bengali (slanted) +% Created by: Anshuman Pandey <apandey@u.washington.edu> +% Modified: Mar 27 2002 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +mode_setup; +font_size 10pt#; +u# = 3/9pt#; +s# = 1/3pt#; +em# := 20pt#; cap# := 20pt#; +thin# := 1/3pt#; thick# := 5/6pt#; +o# := 1/5pt#; +define_pixels(em,cap); +define_blacker_pixels(thin,thick); +define_corrected_pixels(o); +numeric stwd, stht, stdp, penth; +stwd# = 10pt#; stht# = 8pt#; stdp# = 2pt#; +penth# = 0.4pt; dflt_pen := savepen; +currenttransform := identity slanted 1/5; +font_quad 18u#+2s#; +font_normal_space 9u#+3s#; +font_normal_stretch 3u#; +font_normal_shrink 2u#; +numeric slantval; slantval = 1/5; + +input xbnsupp; +end; + +%%% End of xbnsl10.mf diff --git a/language/bengali/pandey/mf/xbnsupp.mf b/language/bengali/pandey/mf/xbnsupp.mf new file mode 100644 index 0000000000..5d6198930f --- /dev/null +++ b/language/bengali/pandey/mf/xbnsupp.mf @@ -0,0 +1,80 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% asextra.mf: METAFONT definitions for Assamese extension characters +% Created by: Anshuman Pandey <apandey@u.washington.edu> +% Last modified: Mar 27 2002 +% +% apandey 2002.03.27 added "Assamese ra" at position 114 "r" +% apandey 2002.03.27 added "Assamese va" at position 118 "v" +% apandey 2002.03.27 added "Bengali lig thba" at position 76 "L" +% apandey 2002.03.27 added "Bengali lig ndba" at position 80 "P" +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +input bnmacro; + + +% th + ba +newchar(76,0.48,"th + b"); +ha(1/10w,1/4h+0.2pt,2/3w+0.1pt,3/5h-0.1pt); +pickup pencircle scaled 0.4pt; +draw (5/6w,1/4h)..(5/6w,3/4h+0.2pt); +draw(5/6w,3/4h)..(w,3/4h); +ba(1/3w,-1/3d,1/2w,33/80h); +endchar; + + +% n + d + ba +newchar(80,0.66,"n + d + b"); +matra(w,h); +na(1/10w,(3/10+1/16)*h,(1/2-1/10)*w,5/16h,0.2); +da(1/2w,1/5h,1/2w-0.9pt,3/7h,0); +ba(21/40w+0.03pt,-1/4d,1/3w,8/20h); +endchar; + + +% Assamese ra +beginchar(114,0.52stwd#,stht#,stdp#); "The letter Assamese ra"; % "r" +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z5 = (w-0.9pt,13/20h); +z5r = z5 + (0,penth#/2); z5l = z5 - (0,penth#/2); +z6 = (1/6w,8/21h); +numeric len; len = 1/2(penth#/(sqrt 2)); +z6l = z6 + (len,-len); z6r = z6 - (len,-len); +penstroke z5e{z6-z5 rotated -8}..z6e; +bot z4 = z4l + (0.1pt,0) = z4r - (0.1pt,0) = (w-0.9pt,0); +z7 - z6 = (0.2pt,-0.2pt); +z7l = z7 + (len, -len); z7r = z6r; +penstroke z7e{z4-z7 rotated 120}.. tension 1.5 .. z4e; +top z3 = (w-0.9pt,3/4h); +draw z3..z4; +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 50; +rt z8 = (5/6w,1/4h); +z9 = (1/2w,43/80h); +%draw (z9+(0,0.1pt))--z8; +draw z8--z9; +endchar; + + +% Assamese va +beginchar(118,0.52stwd#,stht#,stdp#); "The letter Assamese va"; % "v" +pickup pencircle scaled penth#; +z1 = (0,3/4h); z2=(w,3/4h); +draw z1..z2; +z5 = (w-0.9pt,13/20h); +z5r = z5 + (0,penth#/2); z5l = z5 - (0,penth#/2); +z6 = (1/6w,8/21h); +numeric len; len = 1/2(penth#/(sqrt 2)); +z6l = z6 + (len,-len); z6r = z6 - (len,-len); +penstroke z5e{z6-z5 rotated -8}..z6e; +bot z4 = z4l + (0.1pt,0) = z4r - (0.1pt,0) = (w-0.9pt,0); +z7 - z6 = (0.2pt,-0.2pt); +z7l = z7 + (len, -len); z7r = z6r; +penstroke z7e{z4-z7 rotated 120}.. tension 1.5 .. z4e; +top z3 = (w-0.9pt,3/4h); +draw z3..z4; +pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 50; +rt z8 = (2/3w,1/11h); +z9 = (1/4w,1/4h); +draw (z9+(0,0.1pt))--z8; +endchar; diff --git a/language/bengali/pandey/tfm/bnr10.tfm b/language/bengali/pandey/tfm/bnr10.tfm Binary files differnew file mode 100644 index 0000000000..e72e1d04a2 --- /dev/null +++ b/language/bengali/pandey/tfm/bnr10.tfm diff --git a/language/bengali/pandey/tfm/bnsl10.tfm b/language/bengali/pandey/tfm/bnsl10.tfm Binary files differnew file mode 100644 index 0000000000..e72e1d04a2 --- /dev/null +++ b/language/bengali/pandey/tfm/bnsl10.tfm diff --git a/language/bengali/pandey/tfm/xbnr10.tfm b/language/bengali/pandey/tfm/xbnr10.tfm Binary files differnew file mode 100644 index 0000000000..535a3637ef --- /dev/null +++ b/language/bengali/pandey/tfm/xbnr10.tfm diff --git a/language/bengali/pandey/tfm/xbnsl10.tfm b/language/bengali/pandey/tfm/xbnsl10.tfm Binary files differnew file mode 100644 index 0000000000..535a3637ef --- /dev/null +++ b/language/bengali/pandey/tfm/xbnsl10.tfm diff --git a/language/bengali/pandey/ubn.fd b/language/bengali/pandey/ubn.fd new file mode 100644 index 0000000000..2ea1b0e10c --- /dev/null +++ b/language/bengali/pandey/ubn.fd @@ -0,0 +1,36 @@ +% LaTeX2e font description file for "Bengali for TeX". +% ==================================================== +% +% This file contains the font definitions for the BNR family in the U +% `user-defined / unknown' encoding. It is used by the LaTeX New Font +% Selection Scheme, which is part of the standard distribution of +% LaTeX2e. + +%\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesFile{ubn.fd}[2002/03/27 v2.0 Bengali font declarations] + +\DeclareFontFamily{U}{bn}{} + +\DeclareFontShape{U}{bn}{m}{n}{ + <5><6><7> gen * bnr + <8> <9> gen * bnr + <10->bnr10 }{} + +\DeclareFontShape{U}{bn}{m}{sc}{ <-> ssub * bnr/m/n }{} +\DeclareFontShape{U}{bn}{m}{it}{ <-> ssub * bnr/m/sl }{} +\DeclareFontShape{U}{bn}{m}{itsc}{ <-> ssub * bnr/m/n }{} + +\DeclareFontShape{U}{bn}{m}{sl}{ + <5><6><7> gen * bnsl + <8> <9> gen * bnsl + <10->bnsl10 }{} + +\DeclareFontShape{U}{bn}{m}{slsc}{ <-> ssub * bnr/m/sl }{} +\DeclareFontShape{U}{bn}{bx}{n}{ <-> ssub * bnr/m/n }{} +\DeclareFontShape{U}{bn}{bx}{sc}{ <-> ssub * bnr/m/n }{} +\DeclareFontShape{U}{bn}{bx}{it}{ <-> ssub * bnr/m/sl }{} +\DeclareFontShape{U}{bn}{bx}{itsc}{ <-> ssub * bnr/m/n }{} +\DeclareFontShape{U}{bn}{bx}{sl}{ <-> ssub * bnr/m/sl }{} +\DeclareFontShape{U}{bn}{bx}{slsc}{ <-> ssub * bnr/m/n}{} + +\endinput diff --git a/language/bengali/pandey/ubnx.fd b/language/bengali/pandey/ubnx.fd new file mode 100644 index 0000000000..886fe8ba08 --- /dev/null +++ b/language/bengali/pandey/ubnx.fd @@ -0,0 +1,36 @@ +% LaTeX2e font description file for "Bengali for TeX". +% ==================================================== +% +% This file contains the font definitions for the xbnrX family in the U +% `user-defined / unknown' encoding. It is used by the LaTeX New Font +% Selection Scheme, which is part of the standard distribution of +% LaTeX2e. + +%\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesFile{uas.fd}[2002/03/27 v2.0 Bengali supplemental font declarations] + +\DeclareFontFamily{U}{bnx}{} + +\DeclareFontShape{U}{bnx}{m}{n}{ + <5><6><7> gen * xbnr + <8> <9> gen * xbnr + <10->xbnr10 }{} + +\DeclareFontShape{U}{bnx}{m}{sc}{ <-> ssub * xbnr/m/n }{} +\DeclareFontShape{U}{bnx}{m}{it}{ <-> ssub * xbnr/m/sl }{} +\DeclareFontShape{U}{bnx}{m}{itsc}{ <-> ssub * xbnr/m/n }{} + +\DeclareFontShape{U}{bnx}{m}{sl}{ + <5><6><7> gen * xbnsl + <8> <9> gen * xbnsl + <10->xbnsl10 }{} + +\DeclareFontShape{U}{bnx}{m}{slsc}{ <-> ssub * xbnr/m/sl }{} +\DeclareFontShape{U}{bnx}{bx}{n}{ <-> ssub * xbnr/m/n }{} +\DeclareFontShape{U}{bnx}{bx}{sc}{ <-> ssub * xbnr/m/n }{} +\DeclareFontShape{U}{bnx}{bx}{it}{ <-> ssub * xbnr/m/sl }{} +\DeclareFontShape{U}{bnx}{bx}{itsc}{ <-> ssub * xbnr/m/n }{} +\DeclareFontShape{U}{bnx}{bx}{sl}{ <-> ssub * xbnr/m/sl }{} +\DeclareFontShape{U}{bnx}{bx}{slsc}{ <-> ssub * xbnr/m/n}{} + +\endinput |