Latexmk ile LaTeX'i kolayca derleyin
İlk olarak Latex kullanmaya başladığım zamanlarda referansları bir türlü düzgün çalıştıramamıştım. Daha sonra dokümanı oluştururken,
latex -> bibtex ->latex -> latex
sırasıyla çalıştırmak gerektiğini öğrenince hallolmuştu ama pek de tatmin olmamıştım açıkcası, bu iş niye bu kadar karışık olmak zorunda diye. Benim gibi düşünen birileri varmış ki latexmk‘yı geliştirmiş. Latexmk bu uzun işlemi basitleştiren ve faydalı birkaç özelliğe sahip bir LaTeX derleyicisi. İşin ilginci Latexmk Miktex ile standart olarak geliyormuş. Yani Windows’a Latex’i daha önceki ‘Latex nasıl kurulur?’ yazısına göre kurduysanız, Latexmk’yı kullanmaya doğrudan başlayabilirsiniz. Ya da sitesinden kurabilirsiniz (Ubuntu kullanıcıları: sudo apt-get install latexmkile yükleyebilirler). Peki ne faydası olacak bu latexmk’nın
- Latexmk hangi programı kaç kere çalıştıracağına otomatik karar veriyor. Mesela referanslar değişmediyse, sadece bir kere latex çalıştırıyor. Böylelikle çoğu derleme çok daha kısa sürede tamamlanıyor. Her seferinde 10 saniye kazanç olsa yap içler dışlar bir tez yazımında ne kadar zaman eder?
.aux
,.log
, gibi ekstra oluşturulan dosyaları otomatik temizleyin. Gerçi bu işi yapan programcıklarda mevcut ama dahili bir özellik olması güzel.- Gelelim en güzel özelliğine, İsterseniz dosyayı her kaydettiğinizde latex dosyanızı otomatik olarak derleyebilir. Dosyanızın son halinin sürekli gözünüzün önünde olmasını seviyorsanız alın size gerçek zamanlı latex uygulaması. Özellikle şekillerde denklemlerde uğraşırken oldukça faydalı. Eğer latex editörünüzü değiştirmeyi düşünürseniz gerçek zamanlı latex’e bir alternatif de gummiolabilir.
Her latex editörünün kendi derleme ayarları sayfası var, ama mesela TexmakerX için latexmk’yu şu şekilde kullanabilirsiniz.
Tabi istediğiniz gibi özelleştirmeler yapmanız mümkün. Latexmk’nın kullanma klavuzuoldukça detaylı ve programın da baya bir seçeneği var. İşinize yarayabilecek birkaç örnek:
latexmk -pv makalem
Önce derle sonra görüntüle.
latexmk -pdf makalem
Latex yerine Pdflatex kullanarak derle.
latexmk -pvc makalem
Dosya Her kaydedildiğinde otomatik olarak derle ve görüntüyü güncelle.
latexmk -c makalem
Derle ve sonra .aux
.log
gibi ekstra dosyaları sil.
tabi bu dediklerimi birleştirebilirsiniz, mesela pdf’ye çevir gereksiz dosyaları sil ve görüntüle için
latexmk -pdf -pvc makale
komutunu kullanabilirsiniz.
Windows’da otomatik yenilenme işi (-pvc
) .div
ve .ps
uzantılı dosyalarla daha sorunsuz oluyormuş. Eğer illa pdflatex kullanmak istiyorsanız latexmk -pdf -pvc -view=dvi
seçeneğini tavsiye ederim, pdflatexle derlenip sonra div
‘e çevirilir. İlla pdf
olarak yenilensin diyorsanız pdf okuyucusunun dosya yenilendiğinde görüntüyü yenilemesi gerekiyor. Acrobat reader uyumlu değilmiş anladığım kadarıyla, ghostview kullanmak daha sorunsuz sanki. Sumatra pdf‘de kullanabilirsiniz.
Ama bunu bir konfigürasyon dosyasında belirtmeniz gerekir. Mesela Sumatrayı belirtmek için aşağıdaki satırı ekleyebilirsiniz.
$pdf_previewer = 'start "c:/Program Files/SumatraPDF/SumatraPDF.exe" %O %S';
Mac için skim, linux’da evince filan destekliyor. Ubuntu’da evince’le açmak için home klasörüne .latexmkrc
adında bir dosya oluşturun ve aşağıdaki satırları ekleyin.
$pdf_previewer = "start evince";
$pdf_update_method = 0;
Başka uygulamalar için aşağıdaki linklere göz atabilirsiniz. İlk başta ayarlaması zor gözükse de uzun vadede baya işinize yarayacaktır. Takıldığınız yerlerde yorumlara yazabilirsiniz. Yardımcı olmaya çalışırım. Latexmk ile benzer özellikte bir program da rubber. Her ne kadar google’a rubber latex yazarak pek faydalı sayfalara ulaşmak mümkün olmasa da, bu program da incelemeye değer ama artık pek güncellenmiyor herhalde.
Faydalı linkler:
- Latexmk’yı vim ile kullanma
- Latexmk gvim
- Latexmk’yı WinEdt ve Miktex ile kullanma
- Latexmk Mac
- Latexmk ile sürekli derleme
- ve StackExchange’deki Latexmk soruları
comments powered by Disqus