﻿HH Voice Studio Neon v3.1 - Hướng dẫn sử dụng chi tiết

======================================================================
1. Bản trong gói ZIP gồm những gì?
======================================================================

Bạn có thể dùng một trong hai gói:

- HHVoiceStudio_Neon.zip
  Bản nhẹ, chỉ có HHVoiceStudio.exe và file hướng dẫn này.
  Dùng khi bạn chỉ cần Edge TTS, VOICEVOX/AivisSpeech chạy ngoài, hoặc tự chọn thư mục Applio riêng.

- HHVoiceStudio_Neon_Applio_Full.zip
  Bản đầy đủ, có HHVoiceStudio.exe, file hướng dẫn và ApplioV3.6.2.zip.
  Khi cần Applio/RVC, tool có thể tự giải nén ApplioV*.zip thành thư mục Applio rồi tự nhận core.py và env\python.exe.

Lưu ý: Applio là công cụ RVC đổi màu giọng sau khi đã có audio. Applio không phải kho giọng TTS trực tiếp. Muốn đổi sang một giọng cụ thể, bạn vẫn cần có model RVC dạng .pth, tốt nhất kèm file .index.


======================================================================
2. Chạy tool lần đầu
======================================================================

1. Giải nén ZIP ra một thư mục riêng.
2. Mở HHVoiceStudio.exe.
3. Nếu Windows hỏi bảo mật, chọn More info > Run anyway nếu bạn tin file build.
4. Không nên chạy trong thư mục C:\Windows\System32 hoặc thư mục bị khóa quyền ghi.
5. Nên chọn một thư mục kết quả riêng trong mục Render > Thư mục kết quả.

Tool sẽ tự lưu cấu hình vào settings.json nằm cạnh file chạy.


======================================================================
3. Chọn giọng đọc TTS
======================================================================

Trong mục Voice:

- Engine:
  + Edge TTS online: dùng giọng Microsoft Edge online, cần internet.
  + VOICEVOX/AivisSpeech local: dùng engine Nhật local, cần mở server VOICEVOX hoặc AivisSpeech trước.

- Ngôn ngữ:
  Chọn Mỹ, Anh UK, Nhật, Trung, Hàn hoặc Tất cả.

- Giới tính:
  Chọn Nam, Nữ hoặc Tất cả.

- Giọng:
  Chọn voice trong danh sách. Voice có dấu * là voice được gợi ý dùng trước.

Với Edge TTS:
- Bấm Refresh Edge online để cập nhật danh sách voice mới nhất.
- Tốc độ có thể tăng đến +100%, nhưng đọc truyện thường nên dùng khoảng -12% đến +8%.

Với VOICEVOX/AivisSpeech:
1. Mở VOICEVOX Engine hoặc AivisSpeech Engine.
2. Đảm bảo URL là http://127.0.0.1:50021.
3. Chọn Engine = VOICEVOX/AivisSpeech local.
4. Bấm Tải giọng Nhật local.
5. Chọn speaker/style Nhật trong ô Giọng.


======================================================================
4. Nhập nội dung cần đọc
======================================================================

Bạn có thể nhập text theo 4 cách:

- Dán trực tiếp vào ô Nội dung cần đọc.
- Kéo-thả file .txt, .md hoặc .srt vào app.
- Kéo-thả một folder text vào app để nạp batch folder.
- Bấm Batch Folder > Chọn folder rồi bấm Nạp text.

Từ v2.11.2:
- Khi kéo-thả hoặc nạp folder, tool chỉ lấy nội dung thật trong file.
- Tool không tự chèn "### tên_file" vào nội dung nữa, nên sẽ không đọc nhầm tên file.

Từ v2.12.10:
- Batch xuất MP4 giữ đúng nguyên tắc 1 file text = 1 video MP4 hoàn chỉnh.
- Tool chỉ ghép các part nhỏ bên trong cùng một file text thành video của file đó.
- Tool không ghép nhiều file text khác nhau thành một video MP4 lớn.

Từ v2.12.11:
- Nếu một file text bị lỗi khi chạy batch, tool ghi log lỗi rồi tiếp tục chạy các file còn lại.
- Khi batch MP4 chạy thành công, thư mục kết quả chỉ giữ các file MP4 hoàn chỉnh và batch_manifest.json.
- Các thư mục tạm, audio tạm, playlist M3U và progress tạm sẽ được dọn sạch sau khi render xong.

Từ v2.12.12:
- Thêm nhóm Châu Âu - tất cả trong phần Ngôn ngữ.
- Thêm voice Edge TTS mặc định cho Đức, Pháp, Tây Ban Nha, Ý, Hà Lan, Ba Lan, Bồ Đào Nha EU, Thụy Điển, Đan Mạch, Na Uy, Phần Lan, Séc, Hy Lạp, Hungary, Romania, Slovakia, Ukraina và Thổ Nhĩ Kỳ.
- Tạo thêm slot RVC theo các voice châu Âu để bạn đặt model .pth/.index vào rồi bấm Quét lại.

Từ v2.12.13:
- Sửa lỗi chữ tiếng Việt bị thành dấu hỏi như Ti?ng, Ch?u ?u trong danh sách ngôn ngữ/giọng.
- Sửa MP4 để dấu câu Nhật/Trung/Hàn như 、。！？」 không bị đứng đầu dòng hoặc đầu đoạn chữ chạy.
- Preview và file MP4 xuất ra dùng cùng logic sửa dấu câu để nhìn khớp hơn.

Từ v2.12.14:
- Nhúng toàn bộ gói RVC từ thư mục outputs\RVC vào tool.
- RVC được chia theo khu vực/quốc gia trong RVC_Models\Regional để dễ nhận biết.
- Danh sách model RVC hiển thị dạng có vùng/quốc gia, ví dụ Regional / Europe / France / ...
- Đổi icon app sang biểu tượng neon màu sắc có chữ HH.

Gợi ý chuẩn bị text:
- Nên chia đoạn rõ ràng.
- Nên có dấu chấm, dấu phẩy, dấu xuống dòng tự nhiên.
- Với tiếng Nhật/Trung/Hàn, nên dùng dấu câu bản địa nếu có thể.
- Nếu text lấy từ SRT, bật Tự dọn timestamp SRT để bỏ số thứ tự và mốc thời gian.


======================================================================
5. Humanize - làm giọng tự nhiên hơn
======================================================================

Trong mục Humanize:

- Preset:
  Chọn phong cách đọc sẵn như Tự nhiên, Ấm như podcast, Kể chuyện chậm, Đọc truyện ấm, Truyện đêm nhẹ, Cảm xúc sâu, Hồi hộp bí ẩn, Bi thương chậm, Lãng mạn dịu, Nhân vật trẻ, Phản diện trầm, Kể cổ tích, Anime thoại nhanh.

- Tốc độ:
  Điều chỉnh tốc độ đọc. Đọc truyện dài thường nên từ -12% đến +8%.

- Cao độ:
  Điều chỉnh pitch của TTS. Không nên chỉnh quá mạnh nếu muốn giọng tự nhiên.

- Âm lượng:
  Tăng/giảm âm lượng đầu ra.

- Nhịp nghỉ:
  Tăng khoảng nghỉ giữa câu/đoạn. Đọc truyện nên thử 1 đến 2.

- Tự tối ưu nhịp câu:
  Tool tự thêm nhịp nghỉ nhẹ ở câu dài, phù hợp với truyện và podcast.


======================================================================
6. Long Form Engine - đọc text dài
======================================================================

Các thông số quan trọng:

- Ký tự/chunk:
  Số ký tự mỗi đoạn render. Text càng dài thì cần chia chunk để ổn định.

- Luồng song song:
  Số chunk render cùng lúc. Edge TTS có thể dùng cao hơn; VOICEVOX bị giới hạn để tránh lỗi 500.

- File song song:
  Số file trong batch folder chạy cùng lúc.

- Nghỉ khi ghép:
  Khoảng im lặng chèn giữa các part khi ghép.

- Output:
  + Ghép thành 1 file: nên dùng cho hầu hết trường hợp.
  + Giữ từng part + playlist: chỉ dùng khi cần kiểm tra part.

Gợi ý:
- Text 10 phút: Ký tự/chunk 3000-4000, Luồng song song 4-6.
- Text 1-2 tiếng: Ký tự/chunk 3200-5000, Luồng song song 3-6 trước, tăng sau nếu ổn định.
- Nếu bị lỗi mạng, giảm Luồng song song xuống 2-3.
- Nếu dùng VOICEVOX/AivisSpeech, tool tự chia nhỏ hơn và retry 60 ký tự, sau đó 30 ký tự khi gặp HTTP 500.


======================================================================
7. Xuất MP3, WAV hoặc MP4
======================================================================

Trong mục Render:

1. Chọn Định dạng:
   - mp3: file audio nhẹ, dễ dùng.
   - wav: file audio không nén, phù hợp xử lý tiếp.
   - mp4: video có chữ chạy theo audio.

2. Chọn Thư mục kết quả.

3. Bấm Nghe thử 60s để kiểm tra nhanh.

4. Bấm Xuất file để render đầy đủ.

5. Nếu muốn mở file sau khi xong, bật Phát sau khi export.

FFmpeg:
- Xuất MP4 luôn cần ffmpeg.
- Edge TTS xuất WAV cần ffmpeg.
- VOICEVOX/AivisSpeech xuất MP3 cần ffmpeg.
- Nếu GUI báo chưa thấy ffmpeg, bấm Render > FFmpeg > Chọn/dò.
- Có thể đặt ffmpeg.exe cạnh HHVoiceStudio.exe.

GPU MP4:
- CPU x264 (ổn định): tương thích nhất.
- CUDA NVENC (nhanh): dùng GPU NVIDIA để encode MP4 nhanh.
- CUDA NVENC (chất lượng): đẹp hơn, chậm hơn một chút.
- Nếu máy không có h264_nvenc, tool tự fallback về CPU và ghi warning.


======================================================================
8. Batch Folder - chạy hàng loạt folder text
======================================================================

1. Chuẩn bị folder chứa nhiều file .txt, .md hoặc .srt.
2. Trong Batch Folder, bấm Chọn folder.
3. Bấm Nạp text nếu muốn xem/tính ước lượng trong ô nội dung.
4. Bấm Chạy batch để render từng file.

Tool sẽ:
- Render từng file text riêng.
- Hiển thị tiến trình file hiện tại.
- Hiển thị tiến trình tổng batch.
- Với MP3/WAV: có thể ghép các file audio thành một file cuối theo tên folder.
- Với MP4: mỗi file text sẽ là một video MP4 riêng, không ghép nhiều file text vào một video lớn.

Ví dụ:
- Folder: Truyen_A
- MP3/WAV: có thể xuất Truyen_A.mp3 hoặc Truyen_A.wav.
- MP4: xuất từng video riêng trong thư mục batch parts, ví dụ 0001_chuong_1.mp4, 0002_chuong_2.mp4.
- Log: Truyen_A_log.txt

Nếu bật Tự dọn part sau khi ghép:
- Với MP3/WAV, tool sẽ xóa thư mục part/work sau khi ghép thành công.
- Với MP4 batch nhiều file text, tool giữ thư mục chứa các video MP4 riêng để không làm mất kết quả.

Nếu dùng Applio/RVC trong batch:
- Mỗi file sẽ được TTS trước, sau đó đổi màu giọng bằng RVC.
- Output nên để Ghép thành 1 file.
- Không nên dùng Giữ từng part + playlist vì RVC đổi từng part có thể lệch màu giọng.


======================================================================
9. MP4 có chữ chạy theo voice
======================================================================

Chọn Định dạng = mp4.

Trong mục Video MP4 / chữ:

- Preset chữ:
  Chọn style nhanh như Truyện vàng cinematic, Neon cyan, Sách trắng rõ, Cảm xúc đỏ, Khung truyện tối, Short đọc vàng, Anime trắng viền.

- Đồng bộ:
  + Tự động: tool tự chọn cách đồng bộ tốt nhất.
  + Chuẩn Edge WordBoundary: dùng timestamp thật từ Edge TTS nếu có.
  + Ước lượng theo dòng: dùng duration audio để chia thời gian.

- Kiểu chữ:
  + Karaoke chạy chữ: chữ đổi màu theo đoạn đang đọc.
  + Hiện theo đoạn: không chạy từng chữ, đến đoạn nào thì hiện đoạn đó.

- Khổ video:
  + 1280x720
  + 1920x1080
  + 1080x1920

- Font:
  Chọn font hỗ trợ ngôn ngữ bạn dùng. Với tiếng Nhật nên thử Yu Gothic UI.

- Vị trí:
  Giữa màn hình, dưới màn hình hoặc trên màn hình.

- Căn chữ:
  Căn giữa, căn trái hoặc căn phải.

- Khung chữ:
  Không khung, nền mờ sau chữ hoặc khung nền đặc.

- Màu sáng:
  Màu chữ đang được đọc.

- Màu chờ:
  Màu chữ chưa đọc.

- Viền, Nền, Màu khung:
  Chỉnh màu viền chữ, nền video và khung sau chữ.

- Rộng khung, Cao khung:
  Điều chỉnh kích thước khung chữ.

- Rộng chữ:
  Điều chỉnh vùng chữ để tránh tràn.

Độ chuẩn chữ/audio:
- Edge TTS + WordBoundary là chuẩn nhất vì có timestamp từ engine.
- VOICEVOX/AivisSpeech dùng audio_query mora timing, gần chuẩn với tiếng Nhật nhưng không phải word-level thật.
- Applio/RVC chạy sau TTS. Tool scale timing theo duration audio sau RVC để giảm lệch.


======================================================================
10. Applio/RVC - nhúng kèm và đổi màu giọng
======================================================================

Applio/RVC dùng để đổi màu giọng sau khi TTS đã tạo audio.

Cách dùng bản full dễ nhất trên máy khác:

1. Giải nén HHVoiceStudio_Neon_Applio_Full.zip ra một thư mục mới.
2. Mở HHVoiceStudio.exe.
3. Trong khung Applio / RVC đổi giọng, bấm Bật RVC tự động.
   - Nếu chỉ có ApplioV*.zip, tool sẽ tự giải nén thành thư mục Applio.
   - Tool tự nhận core.py và env\python.exe của Applio.
   - Tool tự tạo thư mục RVC_Models cạnh HHVoiceStudio.exe.
   - Tool tự tạo slot voice, quét model và tự chọn model theo voice nếu có.

4. Nếu trạng thái báo chưa có model .pth, bấm Mở nơi thả model.
5. Copy model RVC vào thư mục vừa mở.
   - Nếu model tải về là file .zip/.rar/.7z, hãy giải nén trước.
   - Tool chỉ nhận model thật dạng .pth, tốt nhất kèm .index.
   - Nên để mỗi giọng trong một thư mục riêng.
   - Ví dụ: RVC_Models\TenGiong\TenGiong.pth
   - Nếu có file .index, đặt chung thư mục với .pth.

6. Quay lại tool và bấm Quét lại.
7. Bấm Nghe thử 60s hoặc Xuất file.

Lưu ý rất quan trọng:
- Không mở HHVoiceStudio.exe trực tiếp bên trong file ZIP.
- Hãy giải nén cả thư mục trước, sau đó mới chạy EXE.
- Nếu mở trực tiếp trong ZIP, Windows chỉ bung tạm riêng EXE ra Temp, làm tool không thấy thư mục Applio.

Nếu bạn đã có Applio giải nén riêng:
- Bấm Chọn Applio khác.
- Chọn thư mục chứa core.py của Applio.
- Tool vẫn ưu tiên thư mục RVC_Models cạnh EXE để dễ copy sang máy khác.

Nếu bạn đã có thư mục model riêng:
- Bấm Chọn model.
- Chọn thư mục chứa các file .pth/.index.
- Bấm Quét lại.

Slot RVC theo từng voice:

- Tool có thể tạo sẵn slot cho toàn bộ voice Edge TTS và VOICEVOX/AivisSpeech hiện có.
- Bản mới tự tạo slot khi bấm Bật RVC tự động.
- Bấm Mở nơi thả model để mở đúng thư mục của voice TTS đang chọn.
- Ví dụ:
  + Edge\ja-JP\ja-JP-NanamiNeural\
  + Edge\en-US\en-US-JennyNeural\
  + Edge\ko-KR\ko-KR-SunHiNeural\
  + Edge\zh-CN\zh-CN-XiaoxiaoNeural\
  + VOICEVOX\ja-JP\voicevox_0\
- Tool tự bật Auto model theo voice. Khi chọn voice TTS nào, tool sẽ ưu tiên model .pth nằm trong slot của voice đó.
- Nếu slot chưa có .pth, tool sẽ dùng model bạn chọn tay trong dòng Model.

Quan trọng:
- Edge TTS và VOICEVOX là giọng đọc TTS, không phải model RVC.
- Không thể chỉ copy tên giọng Edge/VOICEVOX là có model RVC.
- Muốn Applio đổi màu giọng, vẫn cần file model RVC thật dạng .pth, tốt nhất kèm .index.
- Các kho model cộng đồng như voice-models.com có thể là nguồn tham khảo, nhưng bạn cần tự kiểm tra quyền sử dụng của từng model trước khi đưa vào tool.
- Không nên dùng model giọng người thật nếu bạn không có quyền hoặc chưa được cho phép.

Catalog mẫu từ voice-models.com:

- Tool có file RVC_Models\VOICE_MODELS_COM_PACK.txt.
- File này chứa khoảng 30 link model tham khảo cho Nhật, Trung, Hàn và Anh/Mỹ.
- Trong tool, bấm Mở catalog model mẫu để xem danh sách này.
- Đây chỉ là catalog link, không phải model đã tải sẵn.
- Nếu muốn tải bằng script, dùng:

  .venv\Scripts\python.exe download_voice_models_pack.py --i-have-rights

- Có thể lọc:

  .venv\Scripts\python.exe download_voice_models_pack.py --i-have-rights --language Japanese --limit 3

- Script chỉ nên dùng khi bạn đã kiểm tra quyền sử dụng model.
- Link Google Drive có thể không tải tự động được; hãy mở link thủ công nếu cần.

Thông số Applio/RVC:

- Pitch RVC:
  0 nếu cùng tone. +12 tăng một octave. -12 giảm một octave.

- Index:
  20-50% thường giữ màu giọng tốt mà ít bị mé tiếng.
  Nếu model không có .index, tool tự chạy index = 0.

- Protect:
  25-40% thường ổn cho đọc truyện dài, giúp giảm vỡ/phá âm.

- F0:
  rmvpe thường ổn định nhất.
  Nếu lỗi, thử fcpe hoặc crepe-tiny.

- Embed:
  contentvec là mặc định.
  Với model chuyên Nhật/Hàn/Trung có thể thử japanese-hubert-base, korean-hubert-base hoặc chinese-hubert-base nếu model hỗ trợ.

- Split audio dài:
  Nên bật khi xử lý audio dài.

- Clean noise RVC:
  Chỉ bật nếu output bị nhiễu; bật quá mạnh có thể làm mất chi tiết giọng.

Lưu ý quan trọng:
- ApplioV3.6.2.zip là engine portable, không đảm bảo có sẵn custom voice model để đổi giọng.
- Nếu danh sách Model = 0, hãy thêm model RVC .pth/.index vào RVC_Models hoặc chọn folder model khác.
- Không nên đổi giọng bằng RVC từng part nhỏ nếu muốn giọng đều. Hãy dùng Ghép thành 1 file.


======================================================================
11. VOICEVOX/AivisSpeech local
======================================================================

VOICEVOX/AivisSpeech phù hợp khi bạn cần nhiều style tiếng Nhật hơn Edge TTS.

Cách dùng:
1. Mở VOICEVOX Engine hoặc AivisSpeech Engine.
2. Kiểm tra server chạy ở http://127.0.0.1:50021.
3. Trong tool, chọn Engine = VOICEVOX/AivisSpeech local.
4. Bấm Tải giọng Nhật local.
5. Chọn speaker/style trong ô Giọng.

Nếu gặp HTTP 500:
- Thử giảm tốc độ/pitch/volume về gần mặc định.
- Thử đổi speaker/style khác.
- Khởi động lại VOICEVOX/AivisSpeech Engine.
- Tool đã tự chia nhỏ 120 ký tự, retry 60 ký tự, rồi 30 ký tự để giảm lỗi.


======================================================================
12. Lỗi thường gặp và cách xử lý
======================================================================

1. Không thấy ffmpeg
- Bấm Render > FFmpeg > Chọn/dò.
- Hoặc đặt ffmpeg.exe cạnh HHVoiceStudio.exe.
- Nếu dùng bản Applio full, trong Applio có ffmpeg.exe nhưng tool render MP4 vẫn nên nhận ffmpeg ở PATH hoặc cạnh EXE.

2. Applio/RVC không có model
- Applio engine không đồng nghĩa với có custom voice model.
- Bấm Bật RVC tự động, sau đó bấm Mở nơi thả model cho voice đang chọn.
- Giải nén model tải về nếu cần, rồi thêm file .pth/.index vào thư mục slot vừa mở.
- Bấm Quét lại.

3. Applio báo lỗi core.py hoặc python.exe
- Nếu dùng bản full, bấm Bật RVC tự động để tool tự nhận.
- Nếu chọn thủ công, chọn đúng:
  + Applio = thư mục chứa core.py hoặc chọn core.py.
  + Python = Applio\env\python.exe.

4. MP4 chữ bị lệch nhẹ sau RVC
- RVC có thể làm duration audio thay đổi nhẹ.
- Tool đã scale timing theo audio RVC, nhưng với model xử lý quá mạnh vẫn có thể lệch.
- Thử tắt Clean noise RVC hoặc giảm Protect/Clean.

5. Render batch quá chậm
- Với Edge TTS có thể tăng Luồng song song và File song song.
- Với VOICEVOX hoặc Applio/RVC, không nên tăng quá cao vì dễ quá tải engine.

6. File xuất còn part_0001
- Bật Tự dọn part sau khi ghép.
- Chọn Output = Ghép thành 1 file.

7. Kéo-thả file video vào nhưng bị đọc tên file
- Tool hiện chỉ nạp nội dung từ .txt/.md/.srt.
- Nếu bạn muốn đọc subtitle từ video, hãy xuất transcript/subtitle thành .srt hoặc .txt trước.


======================================================================
13. Gợi ý cấu hình nhanh
======================================================================

Đọc truyện tiếng Nhật bằng Edge:
- Voice: ja-JP-NanamiNeural hoặc ja-JP-KeitaNeural.
- Preset: Kể chuyện chậm hoặc Truyện đêm nhẹ.
- Tốc độ: -8% đến -15%.
- Nhịp nghỉ: 1-2.
- MP4: Karaoke chạy chữ hoặc Hiện theo đoạn.

Đọc truyện tiếng Nhật bằng VOICEVOX:
- Chọn engine VOICEVOX/AivisSpeech local.
- Tải giọng Nhật local.
- Chọn style hợp nội dung.
- Luồng song song: 1-2.
- Nếu lỗi 500, đổi style hoặc restart engine.

Đọc truyện + đổi màu giọng bằng Applio/RVC:
- Chọn Edge hoặc VOICEVOX làm giọng nền.
- Bật Applio/RVC sau TTS.
- Chọn model .pth/.index.
- Index: 30%.
- Protect: 33%.
- F0: rmvpe.
- Output: Ghép thành 1 file.

Batch folder xuất MP3:
- Định dạng: mp3.
- Ký tự/chunk: 3200-5000.
- Luồng song song: 3-6.
- File song song: 2-3 với Edge; 1 với VOICEVOX/Applio nếu cần ổn định.

Batch folder xuất MP4:
- Định dạng: mp4.
- GPU MP4: CUDA NVENC nếu máy có NVIDIA và ffmpeg hỗ trợ.
- File song song: 1-2 để tránh quá tải.
- Kiểm tra Preview MP4 trước khi chạy hàng loạt.


======================================================================
14. Ghi chú cuối
======================================================================

- Tool không clone giọng người thật cụ thể.
- Tool dùng Edge TTS, VOICEVOX/AivisSpeech và model RVC mà bạn cung cấp.
- Nếu dùng model RVC của bên thứ ba, hãy kiểm tra quyền sử dụng của model đó.
- Với dự án dài nhiều giờ, nên render thử 1-2 phút trước để kiểm tra giọng, chữ, timing và âm lượng.

Từ v2.12.15:
- Khi xuất MP4, dấu câu vẫn được giữ đầy đủ.
- Tool tự kéo dấu câu bị rơi ở đầu dòng/đầu đoạn về cuối dòng trước cho mọi ngôn ngữ.
- Sửa trường hợp tiếng Anh/Âu bị mất dấu chấm, dấu phẩy khi chữ chạy theo âm thanh.


Từ v3.1:
- Sửa triệt để lỗi MP4 bị mất dấu câu khi dùng timing theo audio/word boundary.
- Dấu câu ở giữa/cuối câu được giữ nguyên theo text gốc.
- Nếu dấu câu bị rơi vào đầu dòng/đầu đoạn chữ, tool chỉ kéo riêng dấu đó về cuối dòng trước, không làm mất chữ phía sau.

