Simiki

代码高亮

代码高亮使用的是 Pygments 库. 一个强大的代码语法高亮套件.

配色主题

首先生成自己喜欢的高亮配色主题CSS样式文件.

主题一般都会自带代码高亮样式文件.

# 获取高亮配色主题列表
pygmentize -L styles

# 生成高亮配色主题CSS文件
pygmentize -f html -S <colortheme name> -a .hlcode > syntax.css

Wiki使用语法高亮

注意: 首先保证熟悉Markdown的语法格式

indented code blocks. 最简单的方式, 缩进一个tab并且代码顶部有Shebang:

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-

    if __name__ == "__main__":
        print("Hello World!")

效果如下:

1
2
3
4
5
#!/usr/bin/env python
# -*- coding: utf-8 -*-

if __name__ == "__main__":
    print("Hello World!")

fenced code blocks, 包括以下几种风格:

PHP extra's syntax, 上下各四个波浪号:

~~~~
#!/usr/bin/env python
# -*- coding: utf-8 -*-

if __name__ == "__main__":
    print("Hello World!")
~~~~

效果如下:

1
2
3
4
5
#!/usr/bin/env python
# -*- coding: utf-8 -*-

if __name__ == "__main__":
    print("Hello World!")

同时还可以指定语言类型(支持的语言标签名称):

~~~~{.python}
#!/usr/bin/env python
# -*- coding: utf-8 -*-

if __name__ == "__main__":
    print("Hello World!")
~~~~

########### 或者 ###########

~~~~.python
#!/usr/bin/env python
# -*- coding: utf-8 -*-

if __name__ == "__main__":
    print("Hello World!")
~~~~

效果如下

#!/usr/bin/env python
# -*- coding: utf-8 -*-

if __name__ == "__main__":
    print("Hello World!")

Github fenced code blocks, 用三个反引号将代码块前后阔起来, 不需要缩进:

```python
#!/usr/bin/env python
# -*- coding: utf-8 -*-

if __name__ == "__main__":
    print("Hello World!")
```

效果如下

#!/usr/bin/env python
# -*- coding: utf-8 -*-

if __name__ == "__main__":
    print("Hello World!")

最后, 代码高亮还可以进一步通过背景颜色高亮指定的行:

~~~~{.python hl_lines="1 3"}
#!/usr/bin/env python
# -*- coding: utf-8 -*-

if __name__ == "__main__":
    print("Hello World!")
~~~~

########### 或者 ###########

```python hl_lines="1 3"
import sys

if __name__ == __main__:
    sys.exit()
```

效果如下:

import sys

if __name__ == __main__:
    sys.exit()

更多详细的使用方法可以见 Python-Markdown 的文档: