buildz 0.6.8__tar.gz → 0.6.9__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. {buildz-0.6.8/buildz.egg-info → buildz-0.6.9}/PKG-INFO +1 -1
  2. {buildz-0.6.8 → buildz-0.6.9}/buildz/__init__.py +1 -1
  3. buildz-0.6.9/buildz/base.py +55 -0
  4. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc/base.py +4 -2
  5. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc/confs.py +3 -1
  6. {buildz-0.6.8 → buildz-0.6.9}/buildz/pyz.py +1 -1
  7. {buildz-0.6.8 → buildz-0.6.9}/buildz/tz/__init__.py +1 -1
  8. buildz-0.6.9/buildz/tz/tio/__init__.py +3 -0
  9. buildz-0.6.9/buildz/tz/tio/base.py +7 -0
  10. buildz-0.6.9/buildz/tz/tio/getch.py +23 -0
  11. buildz-0.6.9/buildz/tz/tio/lx.py +38 -0
  12. buildz-0.6.9/buildz/tz/tio/test.py +12 -0
  13. buildz-0.6.9/buildz/tz/tio/win.py +8 -0
  14. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/listmapz.py +7 -1
  15. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/readz.py +1 -1
  16. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/xargs.py +3 -1
  17. {buildz-0.6.8 → buildz-0.6.9/buildz.egg-info}/PKG-INFO +1 -1
  18. {buildz-0.6.8 → buildz-0.6.9}/buildz.egg-info/SOURCES.txt +6 -0
  19. {buildz-0.6.8 → buildz-0.6.9}/setup.py +1 -1
  20. buildz-0.6.8/buildz/base.py +0 -21
  21. {buildz-0.6.8 → buildz-0.6.9}/LICENSE +0 -0
  22. {buildz-0.6.8 → buildz-0.6.9}/MANIFEST.in +0 -0
  23. {buildz-0.6.8 → buildz-0.6.9}/README.md +0 -0
  24. {buildz-0.6.8 → buildz-0.6.9}/buildz/__main__.py +0 -0
  25. {buildz-0.6.8 → buildz-0.6.9}/buildz/argx.py +0 -0
  26. {buildz-0.6.8 → buildz-0.6.9}/buildz/cmd.py +0 -0
  27. {buildz-0.6.8 → buildz-0.6.9}/buildz/db/__main__.py +0 -0
  28. {buildz-0.6.8 → buildz-0.6.9}/buildz/db/dv/basez.py +0 -0
  29. {buildz-0.6.8 → buildz-0.6.9}/buildz/db/dv/clickhousez.py +0 -0
  30. {buildz-0.6.8 → buildz-0.6.9}/buildz/db/dv/lib/readme +0 -0
  31. {buildz-0.6.8 → buildz-0.6.9}/buildz/db/dv/mysqlz.py +0 -0
  32. {buildz-0.6.8 → buildz-0.6.9}/buildz/db/dv/oraclez.py +0 -0
  33. {buildz-0.6.8 → buildz-0.6.9}/buildz/db/dv/structz.py +0 -0
  34. {buildz-0.6.8 → buildz-0.6.9}/buildz/db/install.txt +0 -0
  35. {buildz-0.6.8 → buildz-0.6.9}/buildz/db/run.conf +0 -0
  36. {buildz-0.6.8 → buildz-0.6.9}/buildz/db/runz.py +0 -0
  37. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/ioc/deal.py +0 -0
  38. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/ioc/help.py +0 -0
  39. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/myers/deal.py +0 -0
  40. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/myers/help.py +0 -0
  41. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/res/conf/ioc.js +0 -0
  42. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/res/conf/main.js +0 -0
  43. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/res/conf/myers.js +0 -0
  44. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/res/conf/search.js +0 -0
  45. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/res/conf/xf.js +0 -0
  46. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/res/help/default.js +0 -0
  47. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/res/help/ioc.js +0 -0
  48. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/res/help/myers.js +0 -0
  49. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/res/help/search.js +0 -0
  50. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/res/help/xf.js +0 -0
  51. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/res/test.js +0 -0
  52. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/search/deal.py +0 -0
  53. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/search/help.py +0 -0
  54. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/test.py +0 -0
  55. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/xf/deal.py +0 -0
  56. {buildz-0.6.8 → buildz-0.6.9}/buildz/demo/xf/help.py +0 -0
  57. {buildz-0.6.8 → buildz-0.6.9}/buildz/fz/__init__.py +0 -0
  58. {buildz-0.6.8 → buildz-0.6.9}/buildz/fz/dirz.py +0 -0
  59. {buildz-0.6.8 → buildz-0.6.9}/buildz/fz/fhs.py +0 -0
  60. {buildz-0.6.8 → buildz-0.6.9}/buildz/fz/fio.py +0 -0
  61. {buildz-0.6.8 → buildz-0.6.9}/buildz/fz/lsf.py +0 -0
  62. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/__init__.py +0 -0
  63. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/base.py +0 -0
  64. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/init.py +0 -0
  65. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc/conf.py +0 -0
  66. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc/single.py +0 -0
  67. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/base.py +0 -0
  68. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/call.py +0 -0
  69. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/calls.py +0 -0
  70. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/call_defaults.js +0 -0
  71. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/call_lists.js +0 -0
  72. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/calls_defaults.js +0 -0
  73. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/calls_lists.js +0 -0
  74. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/deal_lists.js +0 -0
  75. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/deals.js +0 -0
  76. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/env_lists.js +0 -0
  77. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/ioc_lists.js +0 -0
  78. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/iocf_lists.js +0 -0
  79. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/join_lists.js +0 -0
  80. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/list_lists.js +0 -0
  81. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/map_lists.js +0 -0
  82. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/mcall_defaults.js +0 -0
  83. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/mcall_lists.js +0 -0
  84. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/obj_cst_lists.js +0 -0
  85. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/obj_defaults.js +0 -0
  86. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/obj_lists.js +0 -0
  87. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/obj_set_lists.js +0 -0
  88. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/ovar_lists.js +0 -0
  89. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/ref_lists.js +0 -0
  90. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/var_lists.js +0 -0
  91. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/xfile_defaults.js +0 -0
  92. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/conf/xfile_lists.js +0 -0
  93. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/deal.py +0 -0
  94. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/demo.py +0 -0
  95. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/env.py +0 -0
  96. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/ioc.py +0 -0
  97. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/iocf.py +0 -0
  98. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/join.py +0 -0
  99. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/list.py +0 -0
  100. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/map.py +0 -0
  101. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/mcall.py +0 -0
  102. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/obj.py +0 -0
  103. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/ovar.py +0 -0
  104. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/ref.py +0 -0
  105. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/val.py +0 -0
  106. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/var.py +0 -0
  107. {buildz-0.6.8 → buildz-0.6.9}/buildz/ioc/ioc_deal/xfile.py +0 -0
  108. {buildz-0.6.8 → buildz-0.6.9}/buildz/tools.py +0 -0
  109. {buildz-0.6.8 → buildz-0.6.9}/buildz/tz/myers_diff.py +0 -0
  110. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/__init__.py +0 -0
  111. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/__main__.py +0 -0
  112. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/code.py +0 -0
  113. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/code_modify.py +0 -0
  114. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/copy_old.py +0 -0
  115. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/file.py +0 -0
  116. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/base.py +0 -0
  117. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/buffer.py +0 -0
  118. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/deal/listz.py +0 -0
  119. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/deal/lr.py +0 -0
  120. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/deal/lrval.py +0 -0
  121. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/deal/mapz.py +0 -0
  122. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/deal/nextz.py +0 -0
  123. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/deal/reval.py +0 -0
  124. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/deal/setz.py +0 -0
  125. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/deal/spc.py +0 -0
  126. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/deal/spt.py +0 -0
  127. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/deal/strz.py +0 -0
  128. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/exp.py +0 -0
  129. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/item.py +0 -0
  130. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/mg.py +0 -0
  131. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loader/pos.py +0 -0
  132. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/base.py +0 -0
  133. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/buffer.py +0 -0
  134. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/listz.py +0 -0
  135. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/lr.py +0 -0
  136. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/lrval.py +0 -0
  137. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/mapz.py +0 -0
  138. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/nextz.py +0 -0
  139. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/reval.py +0 -0
  140. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/setz.py +0 -0
  141. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/spc.py +0 -0
  142. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/spt.py +0 -0
  143. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/strz.py +0 -0
  144. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/strz_new.py +0 -0
  145. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/deal/strz_old.py +0 -0
  146. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/exp.py +0 -0
  147. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/item.py +0 -0
  148. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/mg.py +0 -0
  149. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/pos.py +0 -0
  150. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/test.py +0 -0
  151. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/loaderz/test1.py +0 -0
  152. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/mapz.py +0 -0
  153. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/read.py +0 -0
  154. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/stack.py +0 -0
  155. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/write.py +0 -0
  156. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/writer/base.py +0 -0
  157. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/writer/conf.py +0 -0
  158. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/writer/deal/jsonval.py +0 -0
  159. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/writer/deal/listz.py +0 -0
  160. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/writer/deal/mapz.py +0 -0
  161. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/writer/deal/reval.py +0 -0
  162. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/writer/deal/strz.py +0 -0
  163. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/writer/itemz.py +0 -0
  164. {buildz-0.6.8 → buildz-0.6.9}/buildz/xf/writer/mg.py +0 -0
  165. {buildz-0.6.8 → buildz-0.6.9}/buildz.egg-info/dependency_links.txt +0 -0
  166. {buildz-0.6.8 → buildz-0.6.9}/buildz.egg-info/top_level.txt +0 -0
  167. {buildz-0.6.8 → buildz-0.6.9}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: buildz
3
- Version: 0.6.8
3
+ Version: 0.6.9
4
4
  Summary: 配置读写(基于json格式进行简化)、ioc、以及其他工具代码。a json-base file format's read and write code by python, and codes to read and product object from configure file in such format(ioc), and other tool codes
5
5
  Home-page: https://github.com/buildCodeZ/buildz
6
6
  Author: Zzz
@@ -6,4 +6,4 @@ __version__="0.4.91"
6
6
  __author__ = "Zzz, emails: 1174534295@qq.com, 1309458652@qq.com"
7
7
 
8
8
  from .argx import fetch as args
9
- from .base import Base
9
+ from .base import Base, WBase
@@ -0,0 +1,55 @@
1
+ #coding=utf-8
2
+ from . import pyz
3
+ class Base:
4
+ def str(self):
5
+ return str(self.__class__)
6
+ def __str__(self):
7
+ return self.str()
8
+ def __repr__(self):
9
+ return self.__str__()
10
+ def __init__(self, *args, **maps):
11
+ self.init(*args, **maps)
12
+ def __call__(self, *args, **maps):
13
+ return self.call(*args, **maps)
14
+ def init(self, *args, **maps):
15
+ pass
16
+ def call(self, *args, **maps):
17
+ return self.deal(*args, **maps)
18
+ def deal(self, *args, **maps):
19
+ return None
20
+
21
+ pass
22
+
23
+ class WBase(Base):
24
+ def _open(self):
25
+ pass
26
+ def open(self):
27
+ self._open()
28
+ return pyz.with_out(self.close, True)
29
+ def _close(self):
30
+ pass
31
+ def close(self, exc_type, exc_val, exc_tb):
32
+ self._close()
33
+
34
+ pass
35
+
36
+ class With(Base):
37
+ def init(self, args=False):
38
+ self.args = args
39
+ def call(self, cls):
40
+ def _open(obj):
41
+ pass
42
+ def open(obj):
43
+ obj._open()
44
+ return pyz.with_out(obj.close, self.args)
45
+ def _close(obj):
46
+ pass
47
+ def close(obj):
48
+ obj._close()
49
+ cls._open = _open
50
+ cls._close = _close
51
+ cls.open = open
52
+ cls.close = close
53
+ return cls
54
+
55
+ pass
@@ -40,10 +40,12 @@ class EncapeData(Base):
40
40
  info: 额外的调用信息,目前只有object会用到里面的id字段,作为单例额外输入
41
41
  """
42
42
  if typez(data)==dict:
43
- pid = xf.g1(data, parent=None)
43
+ pid = xf.g1(data, parent=None, template=None, temp=None)
44
44
  if pid is not None:
45
45
  data = dict(data)
46
- del data['parent']
46
+ for pkey in "parent,temp,template".split(","):
47
+ if pkey in data:
48
+ del data[pkey]
47
49
  pids = pid
48
50
  if typez(pids)!=list:
49
51
  pids = [pid]
@@ -53,7 +53,9 @@ class Confs(Base):
53
53
  return sysdt
54
54
  def build_env_args_xf(self):
55
55
  data = xf.args()
56
- env = data['env']
56
+ if xf.is_args(data):
57
+ data = data.maps
58
+ env = xf.g(data, env={})
57
59
  self.envs_args = env
58
60
  self.flush_env(self.envs_args)
59
61
  def build_env_args_buildz(self):
@@ -3,7 +3,7 @@ import sys
3
3
  import os
4
4
  import hashlib
5
5
  import inspect
6
- from .base import Base
6
+ #from .base import Base, WBase
7
7
  class With:
8
8
  def __init__(self, fc_in, fc_out, args = False):
9
9
  self.fc_in = fc_in
@@ -3,7 +3,7 @@
3
3
 
4
4
  # 文件差异
5
5
  from .myers_diff import update as m_update, myers as m_steps, encode as m_encode, decode as m_decode,count as m_count
6
-
6
+ from .tio import *
7
7
  """
8
8
  工具模块
9
9
  toolz简写成tz
@@ -0,0 +1,3 @@
1
+ #coding=utf-8
2
+
3
+ from .getch import getch
@@ -0,0 +1,7 @@
1
+ #coding=utf-8
2
+ from buildz.base import Base, WBase, With
3
+ @With(False)
4
+ class Getch(Base):
5
+ pass
6
+
7
+ pass
@@ -0,0 +1,23 @@
1
+ #coding=utf-8
2
+
3
+ from buildz import pyz
4
+ getch = None
5
+ if pyz.is_windows:
6
+ from . import win
7
+ getch = win.Getch()
8
+ else:
9
+ from . import lx
10
+ getch = lx.Getch()
11
+
12
+ pass
13
+ def open():
14
+ global getch
15
+ return getch.open()
16
+
17
+ pass
18
+
19
+ def close():
20
+ global getch
21
+ getch.close()
22
+
23
+ pass
@@ -0,0 +1,38 @@
1
+ #coding=utf-8
2
+ from . import base
3
+ import termios
4
+ import sys
5
+ import ctypes
6
+ import select
7
+ std = ctypes.cdll.LoadLibrary(None)
8
+ class Getch(base.Getch):
9
+ def __init__(self, timeout =0.01, cnt = 3):
10
+ attr = termios.tcgetattr(sys.stdin.fileno())
11
+ bak = list(attr)
12
+ attr[3] = attr[3] & ~(termios.ICANON|termios.ECHO)
13
+ self.bak = bak
14
+ self.attr = attr
15
+ self.sec = timeout
16
+ self.cnt = cnt
17
+ def _open(self):
18
+ termios.tcsetattr(sys.stdin.fileno(), termios.TCSANOW, self.attr)
19
+ def _close(self):
20
+ termios.tcsetattr(sys.stdin.fileno(), termios.TCSANOW, self.bak)
21
+ def call(self):
22
+ c = std.getchar()
23
+ if c==27:
24
+ next = False
25
+ # 没用
26
+ for i in range(self.cnt):
27
+ a,_b,_c = select.select([sys.stdin.fileno()], [], [], self.sec)
28
+ if len(a)>0:
29
+ next = True
30
+ break
31
+ if next:
32
+ rst = [c]
33
+ rst.append(std.getchar())
34
+ rst.append(std.getchar())
35
+ return rst
36
+ return c
37
+
38
+ pass
@@ -0,0 +1,12 @@
1
+ #coding=utf-8
2
+
3
+ from buildz.tz import getch
4
+ getch.init()
5
+ while True:
6
+ c = getch()
7
+ print(f"getch: {c}")
8
+ if c==b'q'[0]:
9
+ break
10
+
11
+ pass
12
+ getch.close()
@@ -0,0 +1,8 @@
1
+ #coding=utf-8
2
+ import ctypes
3
+ from . import base
4
+ class Getch(base.Getch):
5
+ def call(self):
6
+ return ctypes.cdll.msvcrt._getch()
7
+
8
+ pass
@@ -15,8 +15,9 @@ class ListMapDeal(lr.LRDeal):
15
15
  """
16
16
  分隔符,有分隔符后将缓存的数据当作字符串
17
17
  """
18
- def init(self, left, right):
18
+ def init(self, left, right, as_map = False):
19
19
  super().init(left, right, "listmap")
20
+ self.as_map = as_map
20
21
  def types(self):
21
22
  return ['list']
22
23
  def build(self, obj):
@@ -48,6 +49,11 @@ class ListMapDeal(lr.LRDeal):
48
49
  lst.append(obj.val)
49
50
  i+=1
50
51
  if len(mp)==0:
52
+ if self.as_map:
53
+ if len(lst)==0:
54
+ return item.Item(mp, type="map", is_val=1)
55
+ else:
56
+ return item.Item(Args(lst, mp), type='args', is_val=1)
51
57
  return item.Item(lst, type="list", is_val=1)
52
58
  elif len(lst)==0:
53
59
  return item.Item(mp, type="map", is_val=1)
@@ -96,7 +96,7 @@ def build_args(as_bytes=False):
96
96
  # mgs.add(mapz.MapDeal("{", "}"))
97
97
  mgs.add(listmapz.ListMapDeal("(", ")"))
98
98
  mgs.add(listmapz.ListMapDeal("[", "]"))
99
- mgs.add(listmapz.ListMapDeal("{", "}"))
99
+ mgs.add(listmapz.ListMapDeal("{", "}", True))
100
100
  build_val(mgs)
101
101
  #1,0,0,1: 没引号当r"..."
102
102
  #1,0,1,1: 没引导当"..."
@@ -1,5 +1,6 @@
1
1
  #coding=utf-8
2
- from .read import loads
2
+ #from .read import loads
3
+ from .readz import loads, loadx
3
4
  import sys
4
5
  def fetch(argv = None):
5
6
  if argv is None:
@@ -7,6 +8,7 @@ def fetch(argv = None):
7
8
  argv = [str(k) for k in argv]
8
9
  s = " ".join(argv)
9
10
  s = s.strip()
11
+ return loadx(s, True)
10
12
  lrs = [["",""]]
11
13
  if len(s)==0:
12
14
  return None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: buildz
3
- Version: 0.6.8
3
+ Version: 0.6.9
4
4
  Summary: 配置读写(基于json格式进行简化)、ioc、以及其他工具代码。a json-base file format's read and write code by python, and codes to read and product object from configure file in such format(ioc), and other tool codes
5
5
  Home-page: https://github.com/buildCodeZ/buildz
6
6
  Author: Zzz
@@ -98,6 +98,12 @@ buildz/ioc/ioc_deal/conf/xfile_defaults.js
98
98
  buildz/ioc/ioc_deal/conf/xfile_lists.js
99
99
  buildz/tz/__init__.py
100
100
  buildz/tz/myers_diff.py
101
+ buildz/tz/tio/__init__.py
102
+ buildz/tz/tio/base.py
103
+ buildz/tz/tio/getch.py
104
+ buildz/tz/tio/lx.py
105
+ buildz/tz/tio/test.py
106
+ buildz/tz/tio/win.py
101
107
  buildz/xf/__init__.py
102
108
  buildz/xf/__main__.py
103
109
  buildz/xf/code.py
@@ -7,7 +7,7 @@ from setuptools import setup, find_packages
7
7
 
8
8
  setup(
9
9
  name = 'buildz',
10
- version = '0.6.8',
10
+ version = '0.6.9',
11
11
  keywords='buildz',
12
12
  long_description=open('README.md', 'r', encoding="utf-8").read(),
13
13
  long_description_content_type='text/markdown',
@@ -1,21 +0,0 @@
1
- #coding=utf-8
2
-
3
- class Base:
4
- def str(self):
5
- return str(self.__class__)
6
- def __str__(self):
7
- return self.str()
8
- def __repr__(self):
9
- return self.__str__()
10
- def __init__(self, *args, **maps):
11
- self.init(*args, **maps)
12
- def __call__(self, *args, **maps):
13
- return self.call(*args, **maps)
14
- def init(self, *args, **maps):
15
- pass
16
- def call(self, *args, **maps):
17
- return self.deal(*args, **maps)
18
- def deal(self, *args, **maps):
19
- return None
20
-
21
- pass
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes