\documentclass[a4paper,9pt]{article}
\usepackage[T1,T2A,T8K,T8M]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{tabularx}
\usepackage[english,russian,georgian]{babel}
\usepackage{index}
\usepackage[columns=2,totoc=true]{idxlayout}
\usepackage{nomencl}
\usepackage[plainpages=false,bookmarksopen,pdfpagelabels,bookmarksnumbered,unicode=true,hyperindex=true,pagebackref=true]{hyperref}
%
\newcommand{\Index}[1]{\index{#1}#1}
\hyphenation{ჯამ-ში მუხ-ტი-სათ-ვის გან-სა-კუთ-რე-ბუ-ლი}
\makeindex
\makenomenclature
\renewindex{default}{idx}{ind}{საძიებელი}
\renewcommand\nomname{აღნიშვნები}
\newcommand{\al}
{ა,ბ,გ,დ,ე,ვ, ზ, თ, ი, კ, ლ, მ, ნ, ო,პ, ჟ, რ, ს, ტ, უ, ფ, ქ\newline
ღ, ყ, შ, ჩ, ც, ძ, წ, ჭ, ხ, ჯ, ჰ\newline ჳ, ჶ, ჲ, ჴ, ჱ, ჳ, ჶ, ჷ, ჸ, ჹ, ჺ, ჼ, ჻
}
\newcommand{\vep}{
{\bfseries{მხედრული ანბანი:}}\\
 ა,ბ,გ,დ,ე,ვ,ზ,თ,ი,კ,ლ,მ,ნ,ო,პ,ჟ,რ,ს,ტ,უ,ფ,ქ,ღ,ყ,შ,ჩ,ც,ძ,\\
 წ,ჭ,ხ,ჯ,ჰ,ჳ,ჶ,ჲ,
 ჴ,ჱ,ჳ,ჶ,ჷ,ჸ,ჹ,ჺ,ჼ,჻ \\
{\bfseries{ასომთავრული ანბანი:}}\\
 Ⴀ,Ⴂ,Ⴂ,Ⴃ,Ⴄ,Ⴅ,Ⴆ,Ⴇ,Ⴈ,Ⴉ,Ⴊ,Ⴋ,Ⴌ,Ⴍ,Ⴎ,Ⴏ,Ⴐ,Ⴑ,Ⴒ,Ⴓ,Ⴔ,Ⴕ,Ⴖ,Ⴗ,Ⴘ,
Ⴙ,Ⴚ, \\
Ⴛ,Ⴜ,Ⴝ,Ⴞ,Ⴟ,Ⴠ,Ⴤ,Ⴡ,Ⴥ,Ⴢ,Ⴣ \\
 ტექსტის მაგალითი:\\
\noindent რომელმან შექმნა სამყარო ძალითა მით ძლიერითა,\\
ზეგარდმოთ არსნი სულითა ყვნა ზეცით მონაბერითა,\\
ჩვენ, კაცთა, მოგვცა ქვეყანა, გვაქვს უთვალავი ფერითა,\\
მისგან არს ყოვლი ხელმწიფე სახითა მის მიერითა\\\\

}
\begin{document}
\sloppy
\title{პროექტის ანგარიში\\[-0.8ex]{\small I\--IV კვარტალი}\\[-0.8ex]}

% repeat info for each author.
\author{ლევან შოშიაშვილი\\
\small ელექტრული და ელექტრონული ინჟინერიის დეპარტამენტი\\[-0.8ex]
\small ზუსტ და საბუნებისმეტყველო მეცნიერებათა ფაკულტეტი\\[-0.8ex]
\small ივ. ჯავახიშვილის თბილისის სახ. უნივერსიტეტი,\\[-0.8ex]
\small ჭავჭავაძის გამზ.\textnumero3 , თბილისი, საქართველო\\[-0.8ex]
\small \textsf{shoshia@hotmail.com}\\
}
\date{18 მარ. 2013}
%\netaddress{levan.shoshiashvili (at) tsu.ge}
%\personalURL{http://lshoshia.science.tsu.ge} 

\maketitle
\tableofcontents
\begin{abstract}
წარმოდგენილია  პროექტის საბოლოო (I\---IV კვარტალში) შესრულებული სამუშაოს ანგარიში
\end{abstract}
\section{cmr, cms  და cmtt  ფონტები}
\subsection*{cmr font}
\noindent Normal:\\
\textrm{\vep}

\noindent Bold:\\
\textrm{\textbf{\vep}} 

\noindent Italic:\\
\textrm{\textit{\vep}}

\noindent Bold Italic:\\
\textrm{\textbf{\textit{\vep}}}

\noindent Small CAPS :\\
\textrm{\textsc{\vep}}

\noindent Bold Small CAPS :\\
\textrm{\textbf{{\textsc{\vep}}}}

\subsection*{cmss font}
\noindent Normal:\\
\textsf{\vep}
\noindent Bold:\\
\textsf{\textbf{\vep}} 

\noindent Italic:\\
\textsf{\textit{\vep}}

\noindent Bold Italic:\\
\textsf{\textbf{\textit{\vep}}}

\noindent Small CAPS :\\
\textsf{\textsc{\vep}}

\noindent Bold Small CAPS :\\
\textsf{\textbf{{\textsc{\vep}}}}
\subsection*{cmtt font}
\noindent Normal:\\
\texttt{\vep}
\noindent Bold:\\
\texttt{\textbf{\vep}} 

\noindent Italic:\\
\texttt{\textit{\vep}}

\noindent Bold Italic:\\
\texttt{\textbf{\textit{\vep}}}

\noindent Small CAPS :\\
\texttt{\textsc{\vep}}

\noindent Bold Small CAPS :\\
\texttt{\textbf{{\textsc{\vep}}}}
\tiny
\begin{tabularx}{\textwidth}{|X|X|X|X|}
\hline \rule[-2ex]{0pt}{5.5ex} 
ფონტი & CMR  & CMSS  & CMTT  \\ 
\hline \rule[-2ex]{0pt}{5.5ex} 
ნორმალური & \textrm{\al }  &\textsf{\al}  & \texttt{\al}\\ 
მუქი & \textrm{\textbf{\al} }  &\textsf{\textbf{\al}}  & \texttt{\textbf{\al}}\\ 

\hline 
\end{tabularx} 
 \normalsize
 \section{ავტომატური დამარცვლა და გადატანა}
 \Index{ავტომატური დამარცვლა} გადატანა მუშაობს, მაგრამ ჯერჯერობით არაა დამატებული დისტრიბუტივებში. ავტომატური დამარცვლა გადატანა თანამედროვე ვერსიებში ხორციელდება
\verb| hyph-utf8| პაკეტის საშუალებით. როცა MikTeX და TeXLive განაახლებენ ამ პაკეტს ქართული
ავტომატურად იქნება. თუ გსურთ ავტომატური დამარცვლა გადატანა უნდა განაახლოთ
\verb| hyph-utf8| პაკეტი. ბოლო ვერსია იხ. აქ:  
 \url{http://tug.org/svn/texhyphen/trunk/hyph-utf8/}.

\begin{itemize}
\item განაახლეთ \verb| hyph-utf8| პაკეტი სისტემურ დირექტორიაში. განაახლეთ ბაზა("Refresh FNDB" როგორც ზემოთ ან \verb|texhash| კონსოლში)
\item \verb|c:\Program Files\MiKTeX 2.9\tex\generic\config\| დირექტორიაში ნახეთ
\verb|language.def language.dat| ფაილები\footnote{თუ არაა შექმენით}.
\verb|language.def| ფაილს  აქვს შემდეგი სახე (ქართულის ჩამატების შემდეგ)
\begin{verbatim}
% Note: the first line of this file must match the corresponding line
% in "etex.src" and "etexdefs.lib", otherwise fallback will be used.

% This is "language.def", e-TeX's language definition file.

% It is explicitly permitted to augment this file by adding additional
% \addlanguage ... commands AFTER the first (\addlanguage {USenglish})
% which must remain as the first language added to ensure total document
% portability for pre-\language documents.  The last line of the file
% MUST be left as \uselanguage {USenglish} for the sane reason.

\addlanguage {USenglish}{hyphen}{}{2}{3} %%% This MUST be the first
										% % non-comment
                                         %%% line of the file

% Additional languages, patterns, exceptions and left- and right-hyphen
% minima may be added here, and an example is given for German.
\addlanguage {georgian}{hyp-ka}{}{2}{2} 
\def\l@georgian{\lang@georgian}
                                      

% The five parameters for \addlanguage are:
% language, patterns file, exceptions file, left- and right-hyphen minima

%%% Next section is      E X A M P L E   O N L Y
%%% \addlanguage {German}{ghyph31}{}{2}{2}   %%% further such lines 
% %may be used;
%%% Previous section is  E X A M P L E   O N L Y

%%% No changes may be made beyond this point.

\uselanguage {USenglish} %%% This MUST be the last line of the file. 
\end{verbatim}
\item \verb|language.dat| ფაილში ჩაწერეთ:\\
\verb|georgian loadhyph-ka.tex|
\item განაახლეთ ბაზა("Refresh FNDB" როგორც ზემოთ ან \verb|texhash| კონსოლში)
\item ფორმატების განახლება  \verb|initexmf --dump|\footnote{Linux/Unix სისტემებში ანალოგიური
ბრძანებაა $fmtutil -all$,$fmtutil-sys$ } 
\end{itemize}
ამის შემდეგ სისტემას უნდა შეეძლოს ქართულის ავტომატურად დამარცვლა და გადატანა.
\subsection{ავტომატური დამარცვლა\-- გადატანა ვებ გვერდისათვის}
\TeX{} სისტემისთვის გენერირებული მარცვლები გამოსადეგია ინტერნეტ ვებ გვერდების ავტომატურად დამარცვლა
გადატანისათვის. ამისათვის მიღებული მარცვლები დაემატა 
 \url{http://code.google.com/p/hyphenator/}
პაკეტს. განახლებული კოდი იხ.\url{http://tex.tsu.ge/Hyphenator.js}.
დამარცვლის მაგალითი კი აქ \url{http://tex.tsu.ge/WorkingExample.html}\footnote{შეცვალეთ ფანჯროს ზომა. დამარცვლა ავტომატუად შეიცვლება}\\
ვებ ჰიპენატორის გარატისათვის იხილეთ დოკუმენტაცია პაკეტის საიტზე. ქართულისათვის გამოიყენეთ \verb|Hyphenator.js|
ქართული \TeX{} საიტიდან.
\subsection{ქართული სიტყვების ბაზის შექმნა და დამარცვლა}
მიუხედავად იმისა, რომ დამარცვლა გადატანის ალგორითმი დიდი ხანია
რაც არსებობს \TeX{}-ში არის ხოლმე შემთხვევები როცა ის არ მუშაობს ისე როგორც საჭიროა.
ინგლისური ენის შემთხვევაშIც კი პერიოდულად ხდება მარცვალთა ნიმუშების
განახლება/შესწორება. ქართულისთვისაც იგივე პრობლემა იქნება.
ჩვენ მიერ შექმნილი იქნა ორი პროგრამა \emph{indexwords} და
\emph{splitword}. პირველი მათგანი  ნებისმიერი ტექსტურ ფაილიდან
იღებს უნიკალურ ქართულ სიტყვებს და წერს გამოსავალ ფაილში.
მეორე პროგრამა \emph{splitword} როგორც შესავალ ფაილს იღებს
ფაილს სადაც წერია ქართული სიტყვები და მარცვლავს მას ქართულად
დამარცვლა გადატანის წესის შესაბამისად.

მას შემდეგ რაც გვაქვს დამარცვლილი სიტყვები შეიძლება გამოყენებულ იქნას
პროგრამა \emph{patgen} დამარცვლის ნიმუშების გენერირებისათვის.
სწორედ ეს გაკეთდა მოცემული პროგრამის ფარგლებში.
ინტერნეტზე არსებული ქართულენოვანი ტექსტებიდან გენერირებულ იქნა
უნიკალური სიტყვების ბაზა (150 000 მდე სიტყვა) \emph{indexwords}
პროგრამის საშუალებით და დაიმარცვლა \emph{splitword} საშუალებით.

\section{საძიებელი\--ტექსტის ინდექსირება}
\TeX{} ბაზური პაკეტი $makeidx$ მუშაობს ქართული ტქსტებისათვის, მაგრამ
გამოსავალი ფაილი არის ე.წ. ტეხის შენაგან წარმოდგენაში, ანუ მაკროსების ენაზე
და არა utf-8  ტექსტური ფაილი. უნიკოდ ტექსტებისთვის (და ქართულისთვისაც ცხადია)
იდეალურად მუშაობს ინდექსატორი xindy, რომელსაც აქვს დამატებული ქართულის
მხარდაჭერა. მაგრამ ეს პაკეტი არ არსებობს Wondows OS გავრცელებულ MikTeX
 დისტრიბუტივში. მაგრამ აქაც შესაძლებელია ინდექსირების გამოყენება index  პაკეტის
 საშუალებით. ჩვენს მიერ შექმნილი კოდირებების ფალები შექმნილია ისე რომ
 ინდექსატორით მიღებული ინდექსი ავტომატურად დალაგებულია ანბანურად. 
 
 ქვემოთ მოყვანილია ინდექსირების მაგალითი.
\subsection{ინდექსირების მაგალითი}
ინდექსირებულია ქვემოთ მოყვანილი ანბანი და ასევე რამდენიმე
სიტყვა/ტერმინი. ინდექსის გვერდი შეგიძლიათ იხილოთ დოკუმენტის ბოლოს.
\\
ანბანი:
\Index{ა}\Index{ბ}\Index{გ}\Index{დ}\Index{ე}\Index{ვ}\Index{ზ}\Index{თ}\Index{ი}\Index{კ}\Index{ლ}\Index{მ}\Index{ნ}\Index{ო}\Index{პ}\Index{ჟ}\Index{რ}\Index{ს}\Index{ტ}\Index{უ}\Index{ფ}\Index{ქ}\Index{ღ}\Index{ყ}\Index{შ}\Index{ჩ}\Index{ც}\Index{ძ}\Index{წ}\Index{ჭ}\Index{ხ}\Index{ჯ}\Index{ჰ}\Index{ჳ}\Index{ჲ}\Index{ჷ}\Index{ჶ}\Index{ჱ}\Index{ჴ}\Index{ჺ}\Index{ჹ}\Index{ჼ}\Index{჻} 
\\
ზოგიერთი ტერმინი:
\Index{რადიუს ვექტორი}, \Index{მაქსველის განტოლებები}

\printindex
\end{document}

