高级bbcode相似标记分析器

django-content-bbcode的Python项目详细描述


django content bbcode
==bjango应用程序的类似于bbcode的解析器。


此应用程序基于我在rk.edu.pl网站上使用的标记解析器。它与bbcode非常相似,尽管它的设计是为了支持更高级的标记,从而提供更复杂的输出。我的用法示例:

*使用给定的slug链接到文章(取决于文章是一个类别还是一个页面,可能会应用不同的样式)
*在文章中突出显示代码块
*插入媒体相对路径给定的图像缩略图(可选alt文本、大小、标题等)

````
[rk:syntax lang=“bash”]
exportworkon_home=~/envs
mkdir-p$workon_home
source/usr/local/bin/virtualenvwrapper.sh
[/rk:syntax]
`````



`````
[rk:art slug=“some article slug”]
```

所以是bbcode调用了一些python代码,django orm even并返回动态输出。



how to use it
----
*您可以从pypi安装它:
`````
pip install django content bbcode
````

*将“content bbcode”添加到已安装的应用程序中
*您将获得“parse-content-bbcode”模板标记,您可以在文本模板中使用该模板标记的文本解析解析:
````
{{br/>{br/>{article.text解析内容安全}
````



<
<<









您还可以手动解析标签:
````
parser=cbcparser.contentbbcodparser()
result=parser.result=parser.parser解析标签(有些是文本)
`````````

`````````````````````````>
设置和使用必须为要使用的标记定义解析器。应用程序将在每个安装的应用程序中查找**tags.py**文件。在该文件中,它将查找**注册的“标记”字典。

示例:https://github.com/riklaunim/django-content-bbcode/blob/master/content-bbcode-demo/demo-u-application/tags.py

*字典键是标记*名称*类似于*rk:art*将*art*作为名称。
*字典值将是可调用的,通常一个函数有两个参数:字典列表和文本

*文本是替换标记的文本
*字典列表是给定标记的所有引用列表



给标记赋的属性
*code:将仅用于双标记(带有开始标记和结束标记的标记)

``````
[rk:mytag]code[/rk:mytag]
````



tags.py在不同的位置,然后您可以将“content-bbcode-u scan-modules”定义为“app-name”:“module-location”的字典。

克隆repo并运行:


````
pip install-r demo-demo-requirements.txt
````

>直接测试运行:

```````
````
```````
python manage.pypython manage.pypyt测试内容库bbcode-demo
`````

```
```
``````






<


```>
`````
此时,代码是在它超出了我的网站代码。它仍然需要一些重构/清理和很可能的regexp改进,
但它可以工作,至少应该:)


我将尝试发布,提交一些真正的标记,比如pygments语法突出显示等等。

我也对您的反馈、建议和请求感兴趣:)




credits
----
*标签加载器的灵感来自https://github.com/pozytywnie/django-javascript-settings配置加载器

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java中的继承代码解释   java在映射键集流上应用带有anyMatch()的谓词,并在谓词为false时返回一些结果   java Lucene如何处理文本并留下标点符号?(如创建customAnalyzer或其他任何内容)   java我从父ArrayList返回对象时遇到问题   优先级队列Java的优先级队列与minheap有何不同?   java ListView返回错误的列表和位置   Java系统。对性能的影响   包管理器初始化的java空指针异常   java找到数字数组中缺失数字的最快方法   ApacheHttpClient 4。使用Java应用程序x登录到hotfile   Android中JSON解析的java问题   java我们能检测出一个按键被压成碎片吗   java GAE对象化如何将查询结果用于另一个查询   spring如何在applicationContext中转换对象。xml到java注释