Closed quangnhat185 closed 4 years ago
@quangnhat185 cảm ơn em. Có một số thứ mình phải tìm cách sửa:
chapters/chxx.md
lại. File chapters/all_chapters*.md
là do anh code ghép các file kia lại (mã nguồn trong file run.py
). Mình cần tìm cách ghép từ nhiều file nhỏ lại bằng code của em. Em thử xem được không, có gì ping anh.Thay vì dùng python thì mình dùng pandoc để tạo file pdf được không?
Hi @quangnhat185 Mình có thử tạo file pdf bằng pandoc thì có kết quả như sau: all_chapters_vietnamese_only.pdf
Mình dùng cú pháp pandoc sau để tạo file:
pandoc -f gfm -V linkcolor:blue --pdf-engine=xelatex -V geometry:margin=2cm\
-V mainfont="Times New Roman"\
-V geometry:a4paper\
-V fontsize=12pt\
all_chapters_vietnamese_only.md -o all_chapters_vietnamese_only.pdf
Tuy nhiên, xuất hiện những warning sau:
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no Γ£ö (U+2714) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no 𝛽 (U+1D6FD) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no 𝛽 (U+1D6FD) in font Times New Roman/OT:script=latn;languag
[WARNING] Missing character: There is no 𝛽 (U+1D6FD) in font Times New Roman/OT:script=latn;languag
Mình không tạo file all_chapters được vì mình bị lỗi sau:
Error producing PDF.
! LaTeX Error: Something's wrong--perhaps a missing \item.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.340 \end{quote}
Mình đang dùng pandoc 2.8.0.1
Mong những thứ này giúp được bạn
https://learnbyexample.github.io/tutorial/ebook-generation/customizing-pandoc/
Thay vì dùng python thì mình dùng pandoc để tạo file pdf được không?
Thank @rootonchair nhiều, lúc đầu mình cũng tính dùng pandoc nhưng Latex không hỗ trợ tốt cho font tiếng Việt nên lỗi nhiều. Tuy nhiên pandoc lại hỗ trợ link subsection cho nên có thể mình sẽ nghiên cứu xem có cách nào sửa lỗi Latex không.
Mình có thử tạo file pdf bằng pandoc thì có kết quả như sau: all_chapters_vietnamese_only.pdf
Bản này đã click từ link đến chương được. Nhưng vẫn còn một số thứ anh muốn sửa:
chxx.md
chứ không phải từ file tổng hợp.@tiepvupsu Em đã fix được lỗi link subsection mà vẫn giữ được font gốc markdown. Vấn đề là do cú pháp hyperlink của markdown [#refer-to-something] không hỗ trợ tiếng việt nên khi convert qua pdf file tất cả link id bằng tiếng việt bị lỗi. Hiện tại em đang sửa thủ công từng chap nhưng sau này mình có thể thay toàn bộ phần mục lục về dạng
Vấn đề thứ 2 em đang gặp nữa là khi mình convert từng file sang pdf thì hyperlink giữa các chapter bị mất. Nếu merge các file markdown thành một file lớn như anh đã làm với all_chapters.md thì link hoạt động tốt nhưng em không biết làm sao căn được bắt đầu mỗi chap thì sang một trang mới với định dạng markdown :disappointed:
@quangnhat185 bạn đã thử cách nhúng HTML giữa các chap khi gộp chưa?
Mình kiếm được câu trả lời này trên SO và có vẻ khá phù hợp với cách của bạn nữa
- @tiepvupsu Em đã fix được lỗi link subsection mà vẫn giữ được font gốc markdown. Vấn đề là do cú pháp hyperlink của markdown [#refer-to-something] không hỗ trợ tiếng việt nên khi convert qua pdf file tất cả link id bằng tiếng việt bị lỗi. Hiện tại em đang sửa thủ công từng chap nhưng sau này mình có thể thay toàn bộ phần mục lục về dạng
.
Đừng làm thủ công em ơi, có cách lập trình được không? Viết thêm đoạn python vào thì sao?
@quangnhat185 anh đã áp dụng cách trên SO mà @rootonchair đề cập tại branch này: https://github.com/aivivn/Machine-Learning-Yearning-Vietnamese-Translation/blob/chapter_separator/chapters/all_chapters.md
Em thử chạy lại xem nó có tách được trang ra không?
@quangnhat185 anh đã áp dụng cách trên SO mà @rootonchair đề cập tại branch này: https://github.com/aivivn/Machine-Learning-Yearning-Vietnamese-Translation/blob/chapter_separator/chapters/all_chapters.md
Em thử chạy lại xem nó có tách được trang ra không?
YAY! IT WORKS :tada: ! Em thử convert trực tiếp từ file từ file md mà anh @tiepvupsu sửa thì không được, nhưng khi convert sang html rồi add dòng <div style="page-break-after: always;"></div>
mà @rootonchair recommend thì thành công. Sau này mình có thể dùng python để tự động add dòng này vào file html. Mọi người có thể tham khảo file test ở dưới.
test_introduction_break_line.pdf
Đừng làm thủ công em ơi, có cách lập trình được không? Viết thêm đoạn python vào thì sao?
Ý em là lúc này mình đang dùng cú pháp [1. Chương 1][#1-chương-1]
thì bị lỗi font hyperlink (hình). Em thử sửa file markdown về dạng html <a href="#chuong-1">
thì chạy ok nên em nghĩ mình có thể sửa lại file run.py phần gộp mục lục để sửa lỗi này.
@quangnhat185 đẹp rồi em. Em làm bản hoàn chỉnh cho cả hai version nhé (song ngữ và chỉ tiếng Việt). Em cũng tách riêng phần tên Part thành 1 trang giống như trong bản gốc tiếng Anh nhé.
Em có tạo được một file bash sao cho chỉ cần chạy file đó là ra luôn mỗi khi phải cập nhật không?
@quangnhat185 đẹp rồi em. Em làm bản hoàn chỉnh cho cả hai version nhé (song ngữ và chỉ tiếng Việt). Em cũng tách riêng phần tên Part thành 1 trang giống như trong bản gốc tiếng Anh nhé.
Em có tạo được một file bash sao cho chỉ cần chạy file đó là ra luôn mỗi khi phải cập nhật không?
Hiện tại em đang làm một file run_pdf_converter.py, sau khi chạy file run.py rồi chạy file này thì nó sẽ tự động cập nhật file pdf. Còn nếu không thì em có thể viết dưới dạng module import vào file run.py rồi sau này chỉ cần chạy một file là đủ. Không biết có phải đúng ý anh không?
@quangnhat185 em cho luôn vào file run.py
đi, sau này chỉ chạy một lần là đủ.
@quangnhat185 có cập nhật gì không em?
@quangnhat185 có cập nhật gì không em?
Em vẫn đang đánh vật với automate việc sửa lỗi link subsection tron file pdf với lại mấy hôm nay em hơi bận nữa. Hay là em tạo một PR upload 2 file PDF trước (có đủ link subsection, page break) còn PR này để tập trung làm automate thôi anh?
@quangnhat185 có cập nhật gì không em?
Em vẫn đang đánh vật với automate việc sửa lỗi link subsection tron file pdf với lại mấy hôm nay em hơi bận nữa. Hay là em tạo một PR upload 2 file PDF trước (có đủ link subsection, page break) còn PR này để tập trung làm automate thôi anh?
Được em. Em cứ tạo file pdf từ bản có sẵn đi rồi anh approve luôn.
Phần link subsection em cứ tạo một PR riêng, khó chỗ nào thì cc anh để anh xem có giải quyết được không.
Nhân tiện, em tham gia slack nhóm dịch đi để tiện thảo luận: https://docs.google.com/forms/d/e/1FAIpQLScYforPRBn0oDhqSV_zTpzkxCAf0F7Cke13QS2tqXrJ8LxisQ/viewform
Em close PR này để mở PR mới tập trung vào lỗi em đang gặp
Theo issue #376 của a Tiệp mình tạo một file python chỉ cần chạy (với điều kiện đã install các dependencies) thì sẽ convert 2 files markdown all_chapters.md và all_chapters_vietnamese_only.md ra file pdf. Các packages và operating system mình sử dụng bao gồm:
File pdf khi xuất ra có chất lượng khá tốt nhưng sắp xếp giữa các chương chưa được đẹp. Nếu các bạn có phương án để khắc phục vấn đề trên thì có thể góp ý ở PR này.
file mẫu pdf