常规查看器
gviewer的Python项目详细描述
#通用查看器(gviewer)
[![构建状态](https://travis-ci.org/chhsiao90/gviewer.svg?branch=master)(https://travis ci.org/chhsiao90/gviewer)
[![覆盖状态](https://coveralls.io/repos/github/chhsiao90/gviewer/badge.svg?branch=master)(https://coveralls.io/github/chhsiao90/gviewer?branch=master)
**简单、重量轻、功能强大**
gviewer是一个终端ui库,它依赖于[urwid](https://github.com/urwid/urwid)简化了基于tui的报告系统的编写。
你可以编写一个强大的终端用户界面,用越来越少的代码显示和操作你想要的数据。
您可以看到并运行示例。
``shell
python examples/panama.py
````
类似于日志文件
使用eny类型的内容列表初始化
内容稍后将从gviewer import staticdatastore
data store=staticdatastore(data)
```
像订阅[zeromq]一样(http://zeromq.org/)publisher
``python
def register_func(on_消息):
some_listener.on_消息(on_消息)
````
displayer
>定义了如何将数据从数据存储显示到摘要/摘要/详细信息的显示方式
``python
``python
>来自gviewer导入basedisplayer,view,group,propsgroup,text,prop
mydisplayer类(basedisplayer):
def to_summary(self,message):
“
返回str或文本标记
引用:http://urwid.org/manual/displayattributes.html”
“
返回消息[”summary“]
def获取视图(self):
“返回包含视图标题的元组数组和将消息转换为详细信息的函数。”
返回[
(“view1”,self.view1),
(“view2”,self.view2),
]
def view1(self,消息):
“返回组”
返回视图(
[组(“title”,[消息[“view1”]]中的m的文本(m)]
)
def view2(self,消息):
“返回组”
返回视图(
[propsgroup(“title”,[属性(p[0],p[1])对于消息中的p[“view2”]]
)
```
显示程序)
viewer=gviewer(context)
viewer.start()
```
高级用法
摘要操作
将函数绑定到特定键以应用自定义操作,例如:从gviewer import gviewer导出
``python
,displayercontext
def custom_export(控制器、消息、小部件、*args,**kwargs):
打开(“导出”,“w”)为f:
f.write(str(message))
controller.notify(“文件是导出的”)
context=displayerContext(数据存储,显示,操作=操作([(“a”,“自定义导出”,custom_export))
viewer=gviewer(context)
````
``view actions
bind function to specific key to apply customize action,ex:export
```python
from gviewer import view,basedisplayer
class mydisplayer(basedisplayer):
def get_views(self):
return[(view,self.view)
def view(self,消息:
返回视图([],actions=actions([((“a”,“custom export”,self.custom戋export)))
def custom戋export(controller,message,*args,**kwargs):
打开(“export”,“w”)作为f:
f.write(str(message))
controller.notify(“file is export”)
````
内置操作
摘要
-/:搜索
-g:top
-g:bottom
-x:clear current item
-x:clear all items
-q:quit
-?:帮助
:帮助
[![构建状态](https://travis-ci.org/chhsiao90/gviewer.svg?branch=master)(https://travis ci.org/chhsiao90/gviewer)
[![覆盖状态](https://coveralls.io/repos/github/chhsiao90/gviewer/badge.svg?branch=master)(https://coveralls.io/github/chhsiao90/gviewer?branch=master)
**简单、重量轻、功能强大**
gviewer是一个终端ui库,它依赖于[urwid](https://github.com/urwid/urwid)简化了基于tui的报告系统的编写。
你可以编写一个强大的终端用户界面,用越来越少的代码显示和操作你想要的数据。
您可以看到并运行示例。
``shell
python examples/panama.py
````
类似于日志文件
使用eny类型的内容列表初始化
内容稍后将从gviewer import staticdatastore
data store=staticdatastore(data)
```
像订阅[zeromq]一样(http://zeromq.org/)publisher
``python
def register_func(on_消息):
some_listener.on_消息(on_消息)
displayer
>定义了如何将数据从数据存储显示到摘要/摘要/详细信息的显示方式
``python
``python
>来自gviewer导入basedisplayer,view,group,propsgroup,text,prop
mydisplayer类(basedisplayer):
def to_summary(self,message):
“
返回str或文本标记
引用:http://urwid.org/manual/displayattributes.html”
“
返回消息[”summary“]
def获取视图(self):
“返回包含视图标题的元组数组和将消息转换为详细信息的函数。”
返回[
(“view1”,self.view1),
(“view2”,self.view2),
]
def view1(self,消息):
“返回组”
返回视图(
[组(“title”,[消息[“view1”]]中的m的文本(m)]
)
def view2(self,消息):
“返回组”
返回视图(
[propsgroup(“title”,[属性(p[0],p[1])对于消息中的p[“view2”]]
)
```
viewer=gviewer(context)
viewer.start()
```
高级用法
摘要操作
将函数绑定到特定键以应用自定义操作,例如:从gviewer import gviewer导出
``python
,displayercontext
def custom_export(控制器、消息、小部件、*args,**kwargs):
打开(“导出”,“w”)为f:
f.write(str(message))
controller.notify(“文件是导出的”)
context=displayerContext(数据存储,显示,操作=操作([(“a”,“自定义导出”,custom_export))
viewer=gviewer(context)
````
``view actions
bind function to specific key to apply customize action,ex:export
```python
from gviewer import view,basedisplayer
class mydisplayer(basedisplayer):
def get_views(self):
return[(view,self.view)
def view(self,消息:
返回视图([],actions=actions([((“a”,“custom export”,self.custom戋export)))
def custom戋export(controller,message,*args,**kwargs):
打开(“export”,“w”)作为f:
f.write(str(message))
controller.notify(“file is export”)
````
内置操作
摘要
-/:搜索
-g:top
-g:bottom
-x:clear current item
-x:clear all items
-q:quit
-?:帮助
:帮助