20 Kasım 2010

LaTeX de Listeler

LaTeX doküman hazırlama sisteminde esas olarak üç çeşit liste mevcuttur. Bunlar, numaralandırılmış, numaralandırılmamış ve tanımlayıcı listeler olarak adlandırılabilir. Numaralandırılmış listeler için enumerate ortamı kullanılır. Basit bir numaralandırılmış liste örneği aşağıda verilmiştir.


İç içe geçmiş numaralandırılmış listelerden de söz etmek mümkündür. Bu durumda numaralar her bir alt liste için farklı biçimlerde listelenir. Ancak, iç içe geçmiş ve numaralandırılmış listelerin derinliği en fazla dört olabilir.



Listenin öğeleri özel olarak numaralandırılmak istenirde bu durumda \item komutu ile birlikte öğenin nasıl numaralandırılacağı da belirtilmelidir.


Eğer listenin öğeleri arasındaki boşlukların çok fazla olduğu düşünülüyorsa \begin{enumerate} komutundan sonra \setlength{\itemsep}{-3mm} komutu uygun bir değerle kullanılarak bu boşluk azaltılabilir.

Numaralandırılmamış listeler için itemize ortamı kullanılır. Bu ortam ile listenin öğeleri numara yerine madde imleri ile gösterilir. Yine iç içe geçmiş listeler ve özel madde imleri de kullanılabilir.




Tanımlayıcı listelerde ise listenin öğeleri için numara ya da madde imi yerine öğeyi tanımlayıcı ifadeler yer alır. Tanımlayıcı listeler description ortamı ile birlikte kullanılır.



Numaralandırılmış listeleri kullanırken listenin öğelerinin hangi numaralandırma biçimi ile numaralandırılacağı da kullanıcı tarafından ayarlanabilir. Bunun için enumi, enumii, enumiii ve enumiv sayaçlarının hangi formatta gösterileceği belirtilmelidir. Seçilebilecek formatlar aşağıda listelenmiştir.



\fnsymbol formatında sadece 1-9 arasındaki değerler gösterilebilirken, \alph ve \Alph formatlarında 1-26 arasındaki değerler gösterilebilir. \arabic, \roman ve \Roman formatları için ise bir üst sınır yoktur.


Ayrıca enumi, enumii, enumiii ve enumiv sayaçlarının değerleri değiştirilerek listenin öğeleri numaralandırılırken istenen değerin kullanılması da sağlanabilir. Bir sayaca istenen değeri atamak için kullanılan LaTeX komutu \setcounter komutudur. Aşağıda bu komutların kullanımına dair bir örnek sunulmuştur.




Listelerin özelleştirilmesine yönelik oldukça kullanışlı paketlerden birisi enumitem paketidir. Bu paket kullanıcılara listelerin özelleştirilmesi için çok fazla seçenek sunmaktadır. Detaylı bilgi http://mirror.ctan.org/macros/latex/contrib/enumitem/enumitem.pdf adresinde bulunabilir.


Özellikle test sınavları hazırlanırken ya da cevap anahtarları oluşturulurken listenin öğelerinin alt alta değil de yan yana olması istenebilir. Bu amaçla multienum paketi kullanılabilir. Bu paket ile ilgili detaylı bilgiyi http://mirror.ctan.org/macros/latex/contrib/multenum/multienum.pdf adresinde bulabilirsiniz. Aşağıda bu paketin kullanıldığı basit bir örnek verilmiştir.



Kullanıcılar list ortamının yardımıyla kendilerine özel listeler de oluşturabilirler. Bu komutun genel kullanım biçimi
\begin{list}{numara/im}{ayarlar}
  \item İlk öğe
  \item İkinci öğe
  ....
\end{list}
şeklindedir. Ayarlar bölümü {} şeklinde boş bırakılabileceği gibi aşağıdaki örnekte olduğu gibi liste için bazı ayarlamalar yapılabilir.


komutlarının çıktısı

olur. Burada \newcounter{say} komutu ile ismi say olan yeni bir sayaç tanımlanmakta, \usecounter{say} komutu ile ise tanımlanan sayaç önce sıfırlanıp \item komutu ile birer arttırılarak kullanılabilmesi sağlanmaktadır. Ayrıca, \Roman{say} komutu ile bu sayacın değerlerinin büyük roma rakamları ile gösterilmesi sağlanmaktadır. Son olarak \setlength{\itemsep}{0mm} komutu listenin öğeleri arasındaki dikey boşluğun 0mm olmasını sağlamaktadır. Boşlukların ayarlanması için kullanılabilecek diğer bazı komutlar aşağıda sıralanmıştır.

\topsep Listenin üst kısmı ile paragraf arasındaki dikey boşluk.
\itemsep Listenin her bir öğesi arasındaki ilave dikey boşluk.
\parsep Listenin öğeleri içerisindeki paragraflar arasındaki dikey boşluk.
\leftmargin Ortamın sol kenarı ile liste arasındaki negatif olmayan yatay boşluk.
\rightmargin Ortamın sağ kenarı ile liste arasındaki negatif olmayan yatay boşluk.
\listparindent Listenin öğeleri içerisindeki paragraf girintileri için ilave yatay boşluk.
\itemindent Öğelerin ilk satırlarının girintisi için bırakılan yatay boşluk.
\labelsep Öğelerin numara ya da imlerinden sonra bırakılacak yatay boşluk.

3 yorum:

  1. Eline sağlık. Tam aradığım bilgi.

    YanıtlaSil
  2. Merhaba,
    Benim de bir sorum olacaktı. \begin{proof} \end{proof} komutunu yazdığımda İtalik olarak Kanıt. yazısı çıkmaktadır. İstediğim ise düz ve Koyu renk İspat yazısının çıkmasıdır. Diğer bir sorum ise \begin{teo} \end{teo} komutundan sonra gelen boşluğu nasıl azaltabilirim? İlgilendiğiniz için teşekkür ederim..

    YanıtlaSil