Xem mẫu
- THI T K LU N ÁN T T NGHI P B NG LTEX
A
Dr Nicola Talbot
Vietnamese Translation by: Thái Phú Khánh Hòa
Hóa H c Vi t Nam
School of Computing Sciences
University of East Anglia
Ngày 30 tháng 10 năm 2005
Trư c Sau Đ u Cu i Tr l i T i Ch m c a
- Tóm t t n i dung
Tài li u đư c biên so n nh m giúp các nghiên c u sinh nh ng ngư i mu n s d ng LTEX đ so n th o
A
lu n án T t Nghi p c a h . N u b n chưa làm quen v i LTEX tôi khuyên b n trư c h t nên đ c LTEX
A A
for Complete Novices [5].
Các ví d đư c nêu ra trong tài li u này b n có th download t thư m c examples trên website
c a tác gi . N u mu n xem các ví d b ng ti ng Vi t, hãy tra c u VNOSS chúng tôi s h i ý ki n
c a anh Nguy n Đ i Quí nh m giúp đ vi c upload các ví d m u b ng ti ng Vi t, sau khi thi t k
xong lu n án c a b n đ ng quên g i file LTEX ngu n lên VNOSS đ m i ngư i tham kh o nhé. Tài
A
li u này cũng đư c tìm th y đ nh d ng kh chuy n (PDF) dư i d ng kh gi y A4 đ in n ho c dư i
d ng slide trình chi u trên màn hình.
B n d ch đư c nhóm H2VN duy t vào: Ngày 30 tháng 10 năm 2005.
Trư c Sau Đ u Cu i Tr l i T i Ch m c b
- Tài li u g c b ng ti ng Anh và các file đính kèm b n có th t i v t : http://theoval.cmp.
uea.ac.uk/~nlct/latex/thesis/thesis.html. B n d ch ti ng Vi t có th t i v t : H2VN1 ,
VietTUG2 , VNOSS3 ho c VnTEX4 .
1 HóaH c Vi t Nam
2 Nhóm nh ng ngư i Vi t Nam s d ng TEX (Vietnamese TeX Users Group)
3 C ng Đ ng mã ngu n m Vi t Nam
4 D án VnT X tác gi Hàn Th Thành
E
Trư c Sau Đ u Cu i Tr l i T i Ch m c c
- M CL C
1 Gi i thi u 1
2 B t đ u như th nào 3
3 Chia nh m t tài li u l n ra nhi u file 5
4 Thay đ i phong cách tài li u 9
4.1 C i bi n đ i tư ng văn b n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.2 Thay đ i đ u đ trang c a các m c . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.3 Thay đ i tiêu đ chương . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.4 Thêm vào ph n m c l c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.5 Đ nh nghĩa m t phong cách dàn trang m i . . . . . . . . . . . . . . . . . . . . . . . 16
5 T o danh m c cho tài li u tham kh o 19
5.1 Các tham chi u ngư c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.2 Các l i thư ng g p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
6 Đ nh d ng 39
6.1 Kho ng tr ng kép . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.2 Thay đ i trang tiêu đ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.3 Trích d n văn b n đ u vào c a LTEX
A . . . . . . . . . . . . . . . . . . . . . . . . . . 42
6.4 Môi trư ng tabbing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.5 Các đ nh lý và thu t toán . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Trư c Sau Đ u Cu i Tr l i T i Ch m c i
- 7 T o ch m c và danh sách các thu t ng 55
7.1 T o ch m c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
7.1.1 Nh ng vư ng m c thư ng g p . . . . . . . . . . . . . . . . . . . . . . . . . 60
7.2 T o m t b ng chú gi i thu t ng . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
7.2.1 Gói l nh makeglos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
7.2.2 Gói l nh glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
8 Nhi u float không đư c x lý 68
Tài li u tham kh o 69
Ch m c 70
Trư c Sau Đ u Cu i Tr l i T i Ch m c ii
- 1 GI I THI U
Trong các trư ng Đ i H c nư c ta hi n nay qui đ nh v cách trình bày lu n án t t nghi p có th khác
v i phong cách c a các trư ng trên th gi i. Nhìn chung lu n án c a các sinh viên trong nư c trông r t
thi u chuyên nghi p và còn mang n ng tính hình th c nhi u, ví d như khi b n làm lu n án b n ph i
đ tên giáo viên hư ng d n phía trên c a ngư i th c hi n thay vì ch đ c p đ n tên c a h vào ph n
“C m Ơn”. Th m chí phong cách trình bày lu n án là do m i trư ng t đ ra mà không có m t đ nh
d ng chu n nào trong c nư c, có đôi khi m t vài ngư i ph n bi n h cãi nhau v cách trình bày tài
li u c a sinh viên. H u h t ngư i ta khi làm lu n án thư ng s d ng MS Word hay vi t tay r i thuê các
d ch v văn phòng đánh máy l i, và công vi c ch nh s a r t m t nhi u th i gian. G n đây m t s sinh
viên các trư ng Đ i H c Qu c Gia đã quan tâm đ n LTEX và s d ng nó đ so n th o tài li u khoa
A
h c, đây là m t d u hi u r t đáng m ng.
Hi n nay các nghiên c u sinh khoa h c cũng như sinh viên các trư ng đ i h c thư ng đư c khuy n
cáo s d ng LTEX đ so n th o lu n án t t nghi p, đ c bi t là khi lu n án c a h có liên quan đ n
A
nhi u bi u th c toán h c. Tài li u đư c biên so n v i m c đích là m t bài gi i thi u ng n v cách thi t
k và đ nh d ng tài li u c a b n và cách đ nh nghĩa các ki u trang, đ u đ c a chương, khác v i phong
cách trình bày c đi n . . . N u b n b n chưa bao gi đ ng đ n LTEX thì b n nên tìm đ c LTEX for
A A
Complete Novices [5] và m t s tài li u Vi t Ng liên quan có th tìm th y VietTUG ho c tham v n
các chuyên gia v TEX trên VNOSS. Tài li u này vi t cho nh ng ngư i đã có nh ng ki n th c cơ b n
v LTEX.
A
Xuyên su t tài li u này, mã ngu n s đư c minh h a dư i d ng như sau:
Đây là m t \textbf{ví d }.
Trư c Sau Đ u Cu i Tr l i T i Ch m c 1
- Và k t qu tương ng s đư c minh h a dư i d ng sau:
Đây là m t ví d .
Các đ nh nghĩa v l nh s đư c dùng font ch đánh máy dư i d ng như sau:
\documentclass[tùy ch n]{file vi t riêng cho t ng l p tài li u}
Đ nh nghĩa
Trư c Sau Đ u Cu i Tr l i T i Ch m c 2
- 2B T Đ U NHƯ TH NÀO
N u b n đư c ai đó ch b o dùng m t class (l p tài li u) file nào đó, thì hãy c làm theo như nh ng
gì mà ngư i có kinh nghi m hư ng d n b n, còn n u không tôi khuyên b n nên dùng file c a l p
report. Trư c khi b n ti n hành so n th o tài li u nên chú ý r ng ki u c u trúc tài li u nào b n nên
ch n. Tr khi giáo viên hư ng d n c a b n yêu c u, n u không tôi khuyên b n trư c h t nên l p ra
sư n c a tài li u mà ít nhi u trông gi ng như dư i đây:
\documentclass[a4paper]{report}
\usepackage[utf8x]{vietnam}
\usepackage{urwvn}
\begin{document}
\title{VÍ D M U V LU N ÁN T T NGHI P}
\author{Tên c a b n}
\date{Tháng 10 năm 2005}
\maketitle
\pagenumbering{roman}
\tableofcontents
\listoffigures
\listoftables
\chapter*{L i c m ơn}
Trư c Sau Đ u Cu i Tr l i T i Ch m c 3
- \begin{abstract}
\end{abstract}
\pagenumbering{arabic}
\chapter{Gi i thi u}
\label{ch:gioithieu}
\chapter{Vào đ }
\label{ch:vaode}
\chapter{Phương pháp nghiên c u}
\label{ch:phuongphap}
\chapter{K t qu thu đư c}
\label{ch:ketqua}
\chapter{K t lu n}
\label{ch:ketluan}
\bibliographystyle{plain}
\bibliography{thesis}
\end{document}
N u b n đã download file ngu n c a ví d này, nó s giúp b n xác đ nh r ng tài li u c a b n đư c
đ nh d ng đúng trư c khi b n b t đ u nh p n i dung c a tài li u.
Trư c Sau Đ u Cu i Tr l i T i Ch m c 4
- 3 CHIA NH M T TÀI LI U L N RA NHI U
FILE
M t s ngư i thích đ t m i chương trong m t tài li u l n thành m t file riêng bi t. B n có th làm
vi c này b ng cách s d ng dòng l nh sau:
\include{tên c a file}
Đ nh nghĩa
N u b n ch mu n làm vi c v i m t hay hai chương, b n có th báo cho LTEX bi t đ đính kèm nh ng
A
file này v i l nh:
\includeonly{li t kê tên file}
Đ nh nghĩa
ph n khai báo nơi mà tên c a các file mà b n mu n đính vào cách nhau b ng d u ph y. LTEX s
A
đ c t t c các thông tin v tham chi u chéo đ i v i nh ng chương đã không đư c đính vào danh sách,
nhưng s không c p nh t chúng vào file DVI. Có m t l i đi m v i vi c này là n u có m t s lư ng
l n hình nh trong chương k t qu c a b n, mà b n không mu n đính kèm theo khi làm vi c, vì th i
gian biên d ch s lâu hơn, đây là m t m o nh . Tuy nhiên b n v n có th tham chi u đ n các hình nh
trong nh ng chương b n không đính kèm theo khi mà b n biên d ch tài li u v i LTEX sau khi b l nh
A
\includeonly.
Ví d đư c nêu ra trong Chương 2 bây gi có th chia nh ra làm nhi u file:
Trư c Sau Đ u Cu i Tr l i T i Ch m c 5
- File thesis.tex:
\documentclass[a4paper]{report}
\usepackage[utf8x]{vietnam}
\usepackage{urwvn}
\begin{document}
\title{VÍ D M U V LU N ÁN T T NGHI P}
\author{Tên c a b n}
\date{Tháng 10 năm 2005}
\maketitle
\pagenumbering{roman}
\tableofcontents
\listoffigures
\listoftables
\chapter*{L i c m ơn}
\begin{abstract}
\end{abstract}
\pagenumbering{arabic}
\include{gioithieu}
\include{vaode}
Trư c Sau Đ u Cu i Tr l i T i Ch m c 6
- \include{phuongphap}
\include{ketqua}
\include{ketluan}
\bibliographystyle{plain}
\bibliography{thesis}
\end{document}
File gioithieu.tex:
\chapter{Gi i thi u}
\label{ch:gioithieu}
File vaode.tex:
\chapter{Vào đ }
\label{ch:vaode}
File phuongphap.tex:
\chapter{Phương pháp}
\label{ch:phuongphap}
File ketqua.tex:
\chapter{K t qu }
\label{ch:ketqua}
Trư c Sau Đ u Cu i Tr l i T i Ch m c 7
- File ketluan.tex:
\chapter{K t lu n}
\label{ch:ketluan}
N u b n ch mu n làm vi c v i chương Phương Pháp và chương K t Qu b n ch c n đ t nh ng
l nh sau vào ph n khai báo.
\includeonly{phuongphap,ketqua}
Trư c Sau Đ u Cu i Tr l i T i Ch m c 8
- 4 THAY Đ I PHONG CÁCH TÀI LI U
B n có th đ nh nghĩa l i \Chương, \m c đ thay đ i đ u đ c a trang trong tài li u. N u b n mu n
thay đ i thì tôi khuyên r ng b n t o m t file riêng cho l p tài (class file) li u m i. Đ làm vi c này
có hai lý do chính: trư c h t, m t s l nh có liên quan s d ng m t ký t @ mà nó s thay đ i tính
năng c a nó tùy thu c vào vi c nó có đư c dùng trong m t l p hay gói l nh hay trong m t file văn b n
thông thư ng, và th hai là n u b n đ t t t c các l nh trong tài li u g c c a b n, đi u này s qu y r i
b máy ki m tra chính t hay b đ m t 1 .
Như v y b n có nên t o ra m t gói l nh hay m t class file hay không? Các gói l nh nên đư c thi t
k đ c l p v i class file. Ch ng h n như, gói l nh graphicx làm vi c không ph thu c vào vi c b n
có đang dùng report, article, slide class file hay không. N u l nh hay môi trư ng mà b n
mu n đ nh nghĩa theo phong cách riêng c a mình, khác so v i các class file s n có thì b n nên t o m t
class file m i d a trên phong cách tài li u mà b n mu n hư ng đ n. Còn n u b n mu n đ nh nghĩa
ki u trình bày chương m c m i và phong cách m i, mà nó s đ c l p v i t t c các ph n còn l i c a
tài li u, thì có nghĩa là nó ph thu c vào class file. Do v y b n nên t o m t class file m i b ng vi c
ch nh s a file đã có, s ti t ki m đư c nhi u công s c hơn là t o ra m t gói l nh m i.
Hãy xem ví d dư i đây. N u b n mu n t o m t l p m i g i là mythesis b n c n t o m t file
g i là mythesis.cls, và ph n m đ u trong file c a b n s trông gi ng như th này:
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{mythesis}
K đ n b n ph i xác đ nh đư c b n s làm gì v i các l a ch n trong file report. Khi mà chúng ta
không c n đ nh nghĩa l i b t c l a ch n nào có s n trong file đã đư c đ nh nghĩa trư c đó thì đơn
gi n hãy b qua các l a ch n trong report class file:
1Đ bi t thêm thông tin v b đ m t văn b n hãy đ c tài li u hư ng d n c a class file cmpreprt
Trư c Sau Đ u Cu i Tr l i T i Ch m c 9
- \DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}}
Sau khi t t c các l a ch n đã đư c khai báo chúng c n đư c x lý:
\ProcessOptions
Bây gi l p report c n đư c n p l i:
\LoadClass{report}
dòng cu i cùng trong file c a b n c n có l nh:
\endinput
N i dung c a class file m i này s đư c chèn vào gi a các l nh \LoadClass{report} và \endinput.
Sau đó b n c n ch nh s a l i mã ngu n c a b n, file thesis.tex s dùng class file m i đư c t o
này.
\documentclass[a4paper]{mythesis}
4.1 C i bi n đ i tư ng văn b n
T p tin report đ nh nghĩa nhi u l nh mà chúng dùng đ in ra các t như:“M c L c”,“Chương”,“Tài
li u tham kh o”. Các l nh này và nh ng giá tr m c đ nh c a chúng đư c li t kê trong B ng 4.1.
Gi s r ng b n mu n các hình nh và b ng bi u đư c gán nhãn là H. và B. thay cho Hình và B ng
thì b n có th thêm các dòng sau vào mythesis.cls:
\renewcommand{\figurename}{H.}
\renewcommand{\tablename}{B.}
Trư c Sau Đ u Cu i Tr l i T i Ch m c 10
- B ng 4.1: Tên m c đ nh đư c in ra v i các l nh tương ng
\contentsname M cl c
\listfigurename Danh sách hình nh
\listtablename Danh sách các b ng
\bibname Tài li u tham kh o
\indexname Ch m c
\figurename Hình
\tablename B ng
\partname Ph n
\chaptername Chương
\appendixname Ph l c
\abstractname Tóm t t n i dung
4.2 Thay đ i đ u đ trang c a các m c
B n có th tùy bi n phong cách trình bày cho tiêu đ trang trong t ng chương m c b ng cách đ nh
nghĩa l i các l nh tương ng \section, \subsection . . . dùng l nh:
\@startsection{type}{level}{indent}{beforeskip}{afterskip}{style}
Đ nh nghĩa
Sáu argument có nghĩa như sau:
type Ki u s p x p các m c trong tài li u. M t trong s đó là: M c chính, m c ph th nh t,
m c ph th 2, đo n văn chính ho c đo n văn ph . (Chú ý không có g ch xiên
\)
Trư c Sau Đ u Cu i Tr l i T i Ch m c 11
- level Đây là th t các m c, đã đư c mô t trong B ng 4.2.
indent Đây là đ dài m t kho ng tr ng mà ch đ u tiên c a hàng cách l trái c a trang.
beforeskip Là giá tr tuy t đ i c a beforeskip xác đ nh kho ng cách theo chi u d c đư c ch a ra trư c tiêu
đ trang. N u beforeskip là âm thì đo n văn đ u tiên theo sau tiêu đ trang s không d i vào m t ch
hàng đ u tiên.
afterskip Giá tr tuy t đ i c a afterskip xác đ nh kho ng cách theo chi u d c ch a ra sau ph n tiêu đ
trang. N u afterskip có giá tr âm thì văn b n theo sau l nh đ t tiêu đ xu t hi n th ng hàng v i ph n
tiêu đ trang.
style Argument style là các khai báo đư c yêu c u đ thi t l p phong cách c a tiêu đ trang. (ví d
\itshape tiêu đ trang s đư c in ch nghiêng.)
B ng 4.2: Th t các m c
ph n -1
chương 0
m c 1
m c con th nh t 2
m c con th 2 3
đo n văn 4
đo n văn con 5
Gi s b n mu n thay đ i tiêu đ trang đ in ra font ch nghiêng b n có th làm như sau:
\renewcommand{\section}{\@startsection
{section}% % tên
Trư c Sau Đ u Cu i Tr l i T i Ch m c 12
- {1}% % th t
{0mm}% % th t đ u dòng
{-\baselineskip}% % trư c khi cách
{0.5\baselineskip}% % sau khi cách
{\normalfont\large\itshape}} % ki u font
Tham kh o A Guide to LTEX [2] đ có thêm thông tin.
A
Có m t b đ m g i là secnumdepth đi u khi n th t c a các m c đư c đánh s . Th t s
tương ng v i nh ng gì nêu trong B ng 4.2. Theo m c đ nh thì giá tr này là 2, nên ch có các ph n,
chương, m c và m c con th nh t có các s liên đ i. B n có th dùng \setcounter đ thay đ i giá
tr c a secnumdepth. Ví d như n u b n mu n l nh \paragraph in ra m t s làm như sau:
\settocounter{secnumdepth}{4}
4.3 Thay đ i tiêu đ chương
N u b n mu n thay đ i phong cách c a tiêu đ cho các ph n hay các chương b n không th dùng l nh
\@startsection. Thay vào đó b n dùng l nh \secdef. N u b n n p file report.cls vào
trong editor c a b n, b n s th y r ng c hai l nh \part và \chapter dùng \secdef. Đ nh nghĩa
v \chapter có dòng sau:
\secdef\@chapter\@schapter
và \part có dòng sau:
\secdef\@part\@spart
Argument đ u tiên trong \secdef thông báo cho LTEX c n th c hi n nh ng gì n u phiên b n chưa
A
đư c đánh d u sao đư c dùng, và argument th hai thông báo cho LTEX c n làm gì n u như phiên b n
A
đã đánh d u sao đư c s d ng. Do v y l nh
Trư c Sau Đ u Cu i Tr l i T i Ch m c 13
- \chapter{Gi i thi u}
s dùng l nh \@chapter, trái l i l nh
\chapter*{L i c m ơn}
s dùng l nh \@schapter. L nh \@chapter và \@schapter dùng l n lư t các l nh \@makechapterhead
và \@makeschapterhead, đ đ nh d ng tiêu đ chương, và n u b n mu n thay đ i đ nh d ng
chương, b n c n đ nh nghĩa l i các l nh \@makechapterhead và \@makeschapterhead. Cách
d nh t đ làm đi u này là tìm mã c a nh ng l nh này trong report.cls và copy chúng vào trong
class file c a b n, mythesis, đã đ c p trên, và ch nh s a các l nh đ nh d ng thích h p.
Ví d , gi s r ng b n mu n có m t hàng xu t hi n trên và dư i tiêu đ chương và tiêu đ s xu t
hi n d ng ch in hoa nh (thông thư ng trên tiêu đ trang, tên c a m c xu t hi n trang bên trái và
tên chương xu t hi n trang bên ph i) b n làm như sau:
\renewcommand{\@makechapterhead}[1]{%
\vspace*{50\p@}%
{\parindent \z@ \raggedright \normalfont
\hrule % đư ng k ngang
\vspace{5pt}% % thêm kho ng cách theo chi u d c
\ifnum \c@secnumdepth >\m@ne
\huge\scshape \@chapapp\space \thechapter % đánh s chương
\par\nobreak
\vskip 20\p@
\fi
\interlinepenalty\@M
\Huge \scshape #1\par % tiêu đ chương
\vspace{5pt}% % thêm kho ng cách chi u d c
\hrule % đư ng k ngang
\nobreak
Trư c Sau Đ u Cu i Tr l i T i Ch m c 14
- \vskip 40\p@
}}
\renewcommand{\@makeschapterhead}[1]{%
\vspace*{50\p@}%
{\parindent \z@ \raggedright
\normalfont
\hrule % đư ng k ngang
\vspace{5pt}% % thêm kho ng cách chi u d c
\interlinepenalty\@M
\Huge \scshape #1\par % tiêu đ chương
\vspace{5pt}% % thêm kho ng cách chi u d c
\hrule % đư ng k ngang
\nobreak
\vskip 40\p@
}}
B n có th download file mythesis.cls có đính kèm t t c các ví d trong chương này.
4.4 Thêm vào ph n m c l c
Các phiên b n c a các l nh đánh s các m c không đư c thêm ph n m c l c đi u này đã đư c m c
đ nh trư c, nhưng b n v n có th thêm vào, s d ng:
\addcontentsline{file}{type}{văn b n}
Đ nh nghĩa
file Đây là ph n m r ng c a file trong đó n i dung đư c ghi lên. Do v y đây s là toc (table of
Trư c Sau Đ u Cu i Tr l i T i Ch m c 15
nguon tai.lieu . vn