1 Using Python-Markdown on the Command Line 2 ========================================= 3 4 While Python-Markdown is primarily a python library, a command line script is 5 included as well. While there are many other command line implementations 6 of Markdown, you may not have them installed, or you may prefer to use 7 Python-Markdown's various extensions. 8 9 Setup 10 ----- 11 12 Generally, you may simply call the ``markdown`` file from the command 13 line. However, if you have fully installed Markdown (``setup.py install`` or 14 ``easy_install``), then the ``markdown`` script will have been copied to 15 you Python "Scripts" directory. Different systems require different methods to 16 ensure that any files in the Python "Scripts" directory are on your system 17 path. 18 19 * **Windows**: 20 21 Assuming a default install on Windows, your "Scripts" directory is most 22 likely something like ``C:\\Python25\Scripts``. Verify the location of 23 your "Scripts" directory and add it to you system path. 24 25 Calling ``markdown`` from th ecommand line will call the wrapper batch file 26 ``markdown.bat`` in the "Scripts" directory created during install. 27 28 * **Linux**: 29 30 As each Linux distribution is different and we can't possibly document all 31 of them here, we'll provide a few helpful pointers: 32 33 * Some systems will automatically install the script on your path. Try it 34 and see if it works. Just run ``markdown`` from the command line. 35 36 * Other systems may maintain a separate "Scripts" directory which you 37 need to add to your path. Find it (check with your distribution) and 38 either add it to your path or make a symbolic link to it from your path. 39 40 * If you are sure ``markdown`` is on your path, but it still isn't being 41 found, check the permissions of the file and make sure it is executable. 42 43 As an alternative, you could just ``cd`` into the directory which contains 44 the source distribution, and run it from there. However, remember that your 45 markdown text files will not likely be in that directory, so it is much more 46 convenient to have ``markdown`` on your path. 47 48 The Basics 49 ---------- 50 51 To use ``markdown`` from the command line, run it as 52 53 $ markdown input_file.txt 54 55 or 56 57 $ markdown input_file.txt > output_file.html 58 59 More Options 60 ------------ 61 62 If you are using Python 2.3 or higher, you can also use advanced 63 command line options to specify encoding or to run extensions. 64 65 $ markdown --help 66 Usage: markdown INPUTFILE [options] 67 68 Options: 69 -h, --help show this help message and exit 70 -f OUTPUT_FILE, --file=OUTPUT_FILE 71 write output to OUTPUT_FILE 72 -e ENCODING, --encoding=ENCODING 73 encoding for input and output files 74 -q, --quiet suppress all messages 75 -v, --verbose print info messages 76 -s SAFE_MODE, --safe=SAFE_MODE 77 safe mode ('replace', 'remove' or 'escape' user's 78 HTML tag) 79 -o OUTPUT_FORMAT, --output_format=OUTPUT_FORMAT 80 Format of output. One of 'xhtml1' (default) or 81 'html4'. 82 --noisy print debug messages 83 -x EXTENSION, --extension=EXTENSION 84 load extension EXTENSION 85 86 Using Extensions 87 ---------------- 88 89 For an extension to be ran this way it must be provided in a module 90 which should be in your python path (see [[writing_extensions]] for details). 91 It can then be invoked by the name of that module: 92 93 $ markdown -x footnotes text_with_footnotes.txt > output.html 94 95 If the extension supports config options, you can pass them in as well: 96 97 $ markdown -x "footnotes(PLACE_MARKER=~~~~~~~~)" input.txt 98 99