LaTeX

Không biên dịch ra tiếng Việt được với kiểu văn bản amsart

BBạn Loan có hỏi Math2IT là tại sao bạn dùng kiểu văn bản amsart để soạn thảo một bài báo khoa học về Toán nhưng khi biên dịch thì tiếng Việt hiển thị không đúng. Do tính chất riêng tư của tài liệu nên Math2IT không có đăng lên đây để bạn đọc theo dõi. Math2IT chỉ muốn nói vài ý về file .tex mà bạn ấy gởi như sau

  1. amsart là một gói lệnh định dạng văn bản cũng tương tự như article  dùng trong \documentclass , tuy nhiên gói này tập trung chủ yếu cho việc gõ các tài liệu toán học. 
  2. Có thể tóm tắt sơ qua nội dung chính của file tex mà bạn ấy gởi như sau

Bạn thấy rằng trong đoạn code trên, đã thiếu một dòng lệnh rất rất cơ bản để có thể biên dịch được tiếng Việt trong LaTeX, đó chính là dòng lệnh

Sau một hồi “thử và thay”, tôi phát hiện vấn đề nằm ở nội dung của \title{...} . Nếu như trong \title{...}  bạn chỉ dùng tiếng Anh thì sẽ biên dịch hoàn toàn bình thường. Nhưng khi bạn dùng tiếng Việt thì sẽ xuất hiện lỗi như trên, tại sao vậy?

Lý do là vì gói lệnh amsart dùng một phương thức đặc biệt để viết in hoa trong cái tựa đề mà cách thức này lại không hỗ trợ utf8 . Thành ra khi biên dịch sẽ gặp lỗi ngay chỗ cái tựa đề nếu ta dùng tiếng Việt (hoặc các thứ tiếng khác ngoài tiếng Anh, ví dụ như tiếng Pháp).

Để giải quyết vấn đề trên, rất đơn giản, bạn thêm vào gói lệnh sau

Gói lện này cũng hoạt động tốt với utf8x.

Tổng kết lại, chỉ cần thêm vào đoạn code gốc 2 câu lệnh sau là có thể biên dịch ra tiếng Việt một cách bình thường

Đinh Anh Thi

Đinh Anh Thi

Sáng lập Math2IT. Hiện Thi đang là nghiên cứu sinh tại Pháp về chuyên ngành Toán Ứng Dụng. Anh mong muốn tổng hợp và chia sẻ kiến thức Toán thực tế, Khoa học ứng dụng và Tin học thường thức đến tất cả mọi người dưới dạng dễ tiếp cận và tự nhiên nhất.

Muốn nói gì không bạn ơi?

15 Nhận xét vào "Không biên dịch ra tiếng Việt được với kiểu văn bản amsart"

Thông báo của
avatar
Sắp xếp theo:   mới nhất | cũ nhất | nhiều lượt thích nhất
Mai Lan
Khách

Bạn ơi, cho mình hỏi. với đoạn tex sau, Mình dùng trên HDH windown thì chạy bình thường. trong đó mình dùng miktex và texmaker. Nhưng khi chuyển sang ubuntu, dùng texlive, texmaker. không để lệnh tiếng việt thì chạy được, nhưng để lệnh tiếng việt báo lỗi tại dòng sau dong tiếng việt. Tại sao vậy. Giup mình với, cảm ơn bạn

\documentclass[a4paper,12pt,oneside]{article}
\usepackage{amssymb,amsthm,makeidx,enumerate,amsmath}
%\usepackage[utf8]{vietnam}
\usepackage{fancyhdr}
\usepackage{longtable}
\usepackage{graphicx,xcolor}
\usepackage{extsizes}
\usepackage{array}
\usepackage{pifont}
\usepackage{picinpar}
\usepackage{diagbox}
\usepackage{subfig}
\usepackage[left=2.64cm,right=2cm,top=2cm,bottom=2cm]{geometry}
\setlength{\parskip}{0.2cm}
\numberwithin{equation}{section}
\usepackage{arydshln}
\usepackage{wrapfig}
\usepackage{pgf,tikz}
\usetikzlibrary{arrows}
\pagestyle{empty}
\usepackage{multicol}
\usepackage{pstricks-add}
\usepackage{pgf,tikz}
\usetikzlibrary{arrows}
\usepackage{pstricks}
%\input{tabvar.tex}

\makeindex

\begin{document}

cộng hòa xã hội chủ nghĩa việt nam

hello VietNam

\dfrac{x}{2}=1

\newpage
\addcontentsline{toc}{chapter}{\indexname}
\printindex

\end{document}

Math2IT
Admin

Mình chạy thấy không bị lỗi như bạn nói nhưng lại bị một lỗi khác liên quan đến gói lệnh ps-tricks. Bạn thử chạy lại đoạn code dưới đây xem có bị lỗi không nhé. Và bạn copy lỗi mà bạn đã gặp gởi cho mình xem luôn thể nhé.


\documentclass[a4paper,12pt,oneside]{article}
\usepackage{amssymb,amsthm,makeidx,enumerate,amsmath}
\usepackage[utf8]{vietnam}
\usepackage{fancyhdr}
\usepackage{longtable}
\usepackage{graphicx,xcolor}
\usepackage{extsizes}
\usepackage{array}
\usepackage{pifont}
\usepackage{picinpar}
\usepackage{diagbox}
\usepackage{subfig}
\usepackage[left=2.64cm,right=2cm,top=2cm,bottom=2cm]{geometry}
\setlength{\parskip}{0.2cm}
\numberwithin{equation}{section}
\usepackage{arydshln}
\usepackage{wrapfig}
%\usepackage{pgf,tikz}
%\usetikzlibrary{arrows}
\pagestyle{empty}
\usepackage{multicol}
%\usepackage{pstricks-add}
%\usepackage{pgf,tikz}
%\usetikzlibrary{arrows}
%\usepackage{pstricks}
%\input{tabvar.tex}

\makeindex

\begin{document}

cộng hòa xã hội chủ nghĩa việt nam

hello VietNam

\dfrac{x}{2}=1

\newpage
\addcontentsline{toc}{chapter}{\indexname}
\printindex

\end{document}

Mai Lan
Khách

nếu mình để
% \usepackage[utf8]{vietnam}
thì chạy bình thường ko bị lỗi gói ps-tricks
chỉ là chữ tiếng việt ko suất ra được tiếng việt thôi

Mai Lan
Khách

http://www.upsieutoc.com/image/54i0

vẫn bị lỗi bạn ạ

Math2IT
Admin

Bạn thử biên dịch đoạn code sau đây xem có bị lỗi chỗ tiếng Việt không nhé (tạo một file mới để thử)

\documentclass{article}

\usepackage[utf8]{vietnam}

\begin{document}

cộng hòa xã hội chủ nghĩa việt nam

\end{document}

Mai Lan
Khách

vẫn bị lỗi y như vậy bạn ạ. hay mình cài tex có vấn đề gì rồi. còn bị luôn cái lỗi font như sau nữa. lúc trước dùng bên win ko sao cả
http://www.upsieutoc.com/image/54KI

Math2IT
Admin
1. Rất có thể bạn chưa chọn UTF8 trong trình soạn thảo của TeXMaker. Cách chọn : Configure TeXMaker > Editor > Editor font encoding > UTF8. 2. Đoạn code mình đưa bạn thử là đoạn code cơ bản nhất để test xem bạn có thể biên dịch ra được tiếng Việt hay không. Nếu bạn biên dịch mà bị lỗi thì chứng tỏ texlive bạn có vấn đề. Khi cài bạn có dùng “texlive-full” không? Mình đề nghị bạn cài lại texlive bằng dòng lệnh “sudo apt-get install texlive-full” 3. Bạn gởi cho mình cái file bạn đang làm… Xem thêm »
Mai Lan
Khách

http://www.mediafire.com/file/9xmd2gehh8emhs5/vd2.tex

Mình cảm ơn bạn nhiều nha 🙂

Math2IT
Admin

Mình đã download file của bạn về, đúng là bị lỗi font khó hiểu. Mình dự đoán là do trình soạn thảo text của bạn chọn bộ gõ không chuẩn nên thế. Hiện tại giải pháp mình có thể nghĩ ra chỉ là xóa và cài lại texmaker và texlive mà thôi hà. Bạn cũng nên thử soạn thảo (gõ lại chứ không phải copy-paste) một đoạn tex đơn giản nào đó bằng một phần mềm khác với texmaker để xem xem vấn đề có phải do texmaker hay ko.

lantuan
Khách

Mình cảm ơn bạn. không hiểu sao đang dùng được tự dưng bị vậy. may mà mình còn một bản dự phòng. Tuy ko đủ dữ liệu như bản sau, nhưng đánh lại cũng nhanh hơn được, ko đến nỗi mất hết. Để mình cài thử TeXstudio xem thế nào. Cảm ơn bạn nhiều nhé

Lam Le Xuan
Khách

Bài viết rất hay và hữu ích, cám ơn tác giả rất nhiều

Hoan
Khách

Bạn ơi cho mình hỏi là trước mình dùng gói vietnam thì biên dịch tiếng Việt các phần như part, chapter đều dịch ra tiếng Việt, nhưng nếu sử dụng gói fontspec và biên dịch bằng xelatex thì các chữ trên vẫn giữ nguyên. Bạn cho hỏi làm thế nào để sửa được sang tiếng Việt? Cám ơn bạn.

wpDiscuz