Chinaunix首页 | 论坛 | 博客
  • 博客访问: 455888
  • 博文数量: 45
  • 博客积分: 2526
  • 博客等级: 少校
  • 技术积分: 478
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-12 21:04
文章分类

全部博文(45)

文章存档

2014年(1)

2011年(1)

2010年(3)

2009年(22)

2008年(18)

我的朋友

分类: Python/Ruby

2009-08-22 14:09:55

markdown工具,可以将txt转化成html格式。这一类工具的作用是将按一定格式写成的可读性强的文本文件
转化为结构化的标准xhtml或html。markdown最初用perl写成,后来移植到python,java,php.这里主要
介绍下python-markdown的用法。

python-markdown模块使用有两个模式,一种是做为独立的命令行,另外一种是做为python的模块使用。
1. 命令行模式
在Fedora下,命令行名称是markdown:

[ray@localhost markdown]$ markdown
Usage: markdown INPUTFILE [options]

Options:
  -h, --help            show this help message and exit
  -f OUTPUT_FILE, --file=OUTPUT_FILE
                        write output to OUTPUT_FILE
  -e ENCODING, --encoding=ENCODING
                        encoding for input and output files
  -q, --quiet           suppress all messages
  -v, --verbose         print info messages
  -s SAFE_MODE, --safe=SAFE_MODE
                        same mode ('replace', 'remove' or 'escape'  user's
                        HTML tag)
  --noisy               print debug messages
  -x EXTENSION, --extension=EXTENSION
                        load extension EXTENSION

使用起来很简单, 直接运行markdown input.txt > output.html即可。例如:
[ray@localhost markdown]$ cat notes.txt
Who am I?
===========
This is Ray Chen speaking.

Where am I from?
====================
I'm from SH, China. I love this place.

What's next?
=================
  * nothing
  * sleep
  * study
  * reading book


[ray@localhost markdown]$ markdown notes.txt > notes.html
[ray@localhost markdown]$ cat notes.html

Who am I?


This is Ray Chen speaking.



Where am I from?


I'm from SH, China. I love this place.



What's next?



     

  •      nothing
     


  •  

  •      sleep
     


  •  

  •      study
     


  •  

  •      reading book
     


  • 2. 模块用法
    [ray@localhost markdown]$ cat test_markdown.py
    #!/usr/bin/python

    import markdown
    import codecs

    # Open input file in read, utf-8 mode
    input_file = codecs.open("notes.txt", mode="r", encoding="utf8")
    text = input_file.read()
    html = markdown.markdown(text)

    # print
    print html

    # Write string html to disk
    output_file = codecs.open("notes_py.html", mode="w", encoding="utf8")
    output_file.write(html)

    [ray@localhost markdown]$ python test_markdown.py

    Who am I?


    This is Ray Chen speaking.



    Where am I from?


    I'm from SH, China. I love this place.



    What's next?



       

    •      nothing
       


    •  

    •      sleep
       


    •  

    •      study
       


    •  

    •      reading book
       


    [ray@localhost markdown]$ cat notes_py.html

    Who am I?


    This is Ray Chen speaking.



    Where am I from?


    I'm from SH, China. I love this place.



    What's next?



       

    •      nothing
       


    •  

    •      sleep
       


    •  

    •      study
       


    •  

    •      reading book
       



    • 后记:
      markdown工具在很多程序中用到,比如说wordpress, pybb等,特别适合wiki, blog,forum等。

      参考:
      http://blog.rogerz.cn/archives/401

阅读(11019) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~