dv3500ea có một câu trả lời chm2pdf tuyệt vời , nhưng tôi thích đọc chúng dưới dạng tệp html.
Nói ngắn gọn:
sudo apt-get install libchm-bin
extract_chmLib myFile.chm outdir
Nguồn: http://www.ubuntugeek.com/how-to-convert-chm-files-to-html-or-pdf-files.html
Sau đó mở ra ./outdir/index.html
để xem các tập tin html được chuyển đổi! Yaaay! Tốt hơn nhiều. Bây giờ tôi có thể điều hướng nó giống như một tệp .chm, nhưng tôi cũng có thể sử dụng trình duyệt Chrome của mình để tìm kiếm các trang cho văn bản, dễ dàng in, v.v.
Hãy thực hiện một lệnh được gọi là chm2html
Đây là một kịch bản hay tôi đã viết.
- Sao chép và dán đoạn script dưới đây vào một tập tin
chm2html.py
- Làm cho nó thực thi:
chmod +x chm2html.py
- Tạo một
~/bin
thư mục nếu bạn chưa có:mkdir ~/bin
- Tạo một liên kết tượng trưng đến chm2html.py trong
~/bin
thư mục của bạn :ln -s ~/path/to/chm2html.py ~/bin/chm2html
- Đăng xuất khỏi Ubuntu sau đó đăng nhập lại hoặc tải lại đường dẫn của bạn với
source ~/.bashrc
- Sử dụng nó!
chm2html myFile.chm
. Điều này sẽ tự động chuyển đổi tệp .chm và đặt các tệp .html vào một thư mục mới được gọi ./myFile
, sau đó nó tạo ra một liên kết tượng trưng được gọi là ./myFile_index.html
trỏ tới ./myFile/index.html
.
chm2html.py
tập tin:
#!/usr/bin/python3
"""
chm2html.py
- convert .chm files to .html, using the command shown here, with a few extra features (folder names, shortcuts, etc):
http://www.ubuntugeek.com/how-to-convert-chm-files-to-html-or-pdf-files.html
- (this is my first ever python shell script to be used as a bash replacement)
Gabriel Staples
www.ElectricRCAircraftGuy.com
Written: 2 Apr. 2018
Updated: 2 Apr. 2018
References:
- http://www.ubuntugeek.com/how-to-convert-chm-files-to-html-or-pdf-files.html
- format: `extract_chmLib book.chm outdir`
- http://www.linuxjournal.com/content/python-scripts-replacement-bash-utility-scripts
- http://www.pythonforbeginners.com/system/python-sys-argv
USAGE/Python command format: `./chm2html.py fileName.chm`
- make a symbolic link to this target in ~/bin: `ln -s ~/GS/dev/shell_scripts-Linux/chm2html/chm2html.py ~/bin/chm2html`
- Now you can call `chm2html file.chm`
- This will automatically convert the fileName.chm file to .html files by creating a fileName directory where you are,
then it will also create a symbolic link right there to ./fileName/index.html, with the symbolic link name being
fileName_index.html
"""
import sys, os
if __name__ == "__main__":
# print("argument = " + sys.argv[1]); # print 1st argument; DEBUGGING
# print(len(sys.argv)) # DEBUGGING
# get file name from input parameter
if (len(sys.argv) <= 1):
print("Error: missing .chm file input parameter. \n"
"Usage: `./chm2html.py fileName.chm`. \n"
"Type `./chm2html -h` for help. `Exiting.")
sys.exit()
if (sys.argv[1]=="-h" or sys.argv[1]=="h" or sys.argv[1]=="help" or sys.argv[1]=="-help"):
print("Usage: `./chm2html.py fileName.chm`. This will automatically convert the fileName.chm file to\n"
".html files by creating a directory named \"fileName\" right where you are, then it will also create a\n"
"symbolic link in your current folder to ./fileName/index.html, with the symbolic link name being fileName_index.html")
sys.exit()
file = sys.argv[1] # Full input parameter (fileName.chm)
name = file[:-4] # Just the fileName part, withOUT the extension
extension = file[-4:]
if (extension != ".chm"):
print("Error: Input parameter must be a .chm file. Exiting.")
sys.exit()
# print(name) # DEBUGGING
# Convert the .chm file to .html
command = "extract_chmLib " + file + " " + name
print("Command: " + command)
os.system(command)
# Make a symbolic link to ./name/index.html now
pwd = os.getcwd()
target = pwd + "/" + name + "/index.html"
# print(target) # DEBUGGING
# see if target exists
if (os.path.isfile(target) == False):
print("Error: \"" + target + "\" does not exist. Exiting.")
sys.exit()
# make link
ln_command = "ln -s " + target + " " + name + "_index.html"
print("Command: " + ln_command)
os.system(ln_command)
print("Operation completed successfully.")