Vietnamen’s Weblog

Time, Chances, Diligence, Intelligence: which is the most important?

LaTeX

with one comment

Hôm nay tôi muốn giới thiệu chút ít về LaTeX, một ngôn ngữ định dạng giúp soạn thảo các tài liệu (article, book, report) một cách professional. Về mặt editor, tôi lựa chọn emacs (xin xem bài TeX-editor)

Phần ngôn ngữ, tôi không đề cập ở đây. Chỉ nói sơ qua về các plug-in cần thiết để soạn thảo LaTeX trong emacs,  cấu trúc (template) một file định dạng LaTeX mà tôi hay dùng, và các mẹo vặt kèm theo.

AUCTeX

Một plug-in hữu hiệu để biên soạn LaTeX trong emacs.

  • Xóa các file tạm

M-x TeX-clean                    : xóa các file tạm

  • Save

C-x C-s

  • Compile

C-c C-c

  • C-c C-s: insert a new section, chapter, part…
  • C-c C-e: insert a new environment (custom or predefined).
  • C-c C-m: insert a new macro.
  • C-c C-f C-b: insert bold face text.
  • C-c C-f C-i: insert italics text.
  • C-c C-f C-e: insert emphasized text.
  • C-c C-f C-t: insert typewriter text.
  • C-c C-f C-d: delete the innermost font specification containing point.
  • C-c C-p C-d: parse the entire document, looking for embedded environments to preview.
  • C-c C-p C-p: preview the current embedded environment (or middle-click on the preview object).

References:

  1. http://emacsworld.blogspot.com/2008/04/cleaning-up-or-deleting-latex.html

Texlive-base package

Texlive-base là tuyển tập rất nhiều styles cần dùng cho LaTeX. Tuy nhiên dung lượng khá lớn. Nếu bạn không cần dùng nhiều như vậy, giải pháp là download từ CTAN các packages cần thiết về. Để đảm bảo khỏi phải tạo bản sao cũa mỗi styles cho các tài liệu khác nhau, ta sẽ thiết lập 1 đường dẫn chung để lưu trữ chúng. Cụ thể sẽ được nói tới ở phần Search TeX styles.

Bibtex mode

Bibtex mode là một mode hay dùng để soạn thảo file bibtex dùng để chứa các thông tin về các article, book, book chapter cần tham khảo.

References:

  1. http://jo.irisson.free.fr/bstdatabase/ [Search mọi loại style dựa trên Journal title]
  2. http://amath.colorado.edu/documentation/LaTeX/basics/steps/bibstyles.html

RefTex mode

RefTex là mode hay dùng giúp thêm các tham khảo vào trong file LaTeX dễ dàng.

  • Add bibliography referece

C-c [

  • Add link reference

C-c )

Mỗi khi file .bib được cập nhật. Thường bạn cần re-load lại file đó trong emacs để nội dung mới có thể được tìm thấy với RefTex. Để đơn giản bước đó, bạn chỉ cần set env-variable BIBINPUTS là đường dẫn tới thư mục gốc có chứa các file .bib. E.g. trong file ~/.bashrc

    export BIBINPUTS=".:~/latex/:"

hay trong ~/.profile

    BIBINPUTS=".:~/latex/:"

Mỗi lần nhấn C-c [ , Reftex sẽ tự động update nội dung mọi file .bib bên trong đường dẫn đó. Điểm hay là nó update cho mọi thư mục con.

chèn URL

Việc thêm url vào trong file TeX, sẽ được đơn giản nếu bạn bao lại với \url{…}, dùng package breakurl.

Ví dụ:

\url{https://vietnamen.wordpress.com}

Footnote

Nếu ai đã làm việc với \footnote{} rồi sẽ thấy là việc biên dịch hay có nhiều lỗi. Việc dùng \protect\footnote{} không phải là một giải pháp được khuyến khích. Để giải quyết, ta dùng package footmisc với option là stable.

\usepackage[stable]{footmisc}

ConTeXt

http://wiki.contextgarden.net/ConTeXt_and_emacs-muse

http://mwolson.org/projects/EmacsMuse.html

Search TeX styles

Có thể để các file style vào trong cùng 1 thư mục để dễ lưu trữ, giảm tiêu tốn bộ nhớ vì phải tạo các bản sao. Giải pháp dùng TEXINPUTS đã lỗi thời, cụ thể là chỉnh nội dung file ~/.bashrc

# Include shared LaTeX classes and BibTeX files in path, if LaTeX folder exists
if [ -d "~/latex" ]; then
    export TEXINPUTS=".:~/latex/:"
fi

Cách tốt hơn và chắc chắn làm việc là như sau.
  1. Tạo thư mục ~/texmf/tex/latex
  2. Copy các latex styles (e.g. breakurl, fancyvrb…) vào trong đó. Các styles này có thể download từ CTAN. Mỗi style có thể là 1 thư mục riêng để  giúp chúng độc lập nhau
  3. Di chuyển vào thư mục ~/texmf/tex/latex, tại đó type: texhash .
  4. Thành công
NOTE: Một số tiện ích hữu hiệu khác là kpsepath, kpsewhich, texconfig
e.g. texconfig conf

References:

  1. http://www.gemberdesign.com/2009/10/22/latex-and-bibtex-search-path/
  2. http://tug.ctan.org/tex-archive/macros/latex/contrib/breakurl/

Các lỗi khi biên dịch

Các lỗi gặp phải trong quá trình biên dịch

LaTeX Warning: Command \r invalid in math mode on input line xx

Tìm các file có \AA nằm trong phần math mode, sửa lại thành \text{\AA} hoặc đưa \AA ra khỏi math mode.

References:

  1. http://www.latex-community.org/forum/viewtopic.php?f=5&t=1893
  2. http://www.latex-community.org/forum/

ERROR: Argument of \hc@@caption has an extra }

Giải pháp đơn giản là chèn thêm cậu lệnh an toàn \protect vào ngay phía trước. References:
  1. http://www.tex.ac.uk/cgi-bin/texfaq2html?label=extrabrace
  2. http://www.tex.ac.uk/cgi-bin/texfaq2html?label=ftnsect
  3. http://www.gemberdesign.com/2009/10/22/latex-and-bibtex-search-path/

Written by vietnamen

Tháng Tư 29, 2009 lúc 9:31 chiều

Một phản hồi

Subscribe to comments with RSS.

  1. […] Xin xem bài viết về LaTeX. […]

    Emacs « Vietnamen’s Weblog

    Tháng Bảy 17, 2009 at 10:33 sáng


Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

%d bloggers like this: