开明寻呼机:少寻呼。更多内容。博览群书。

kanten的Python项目详细描述


Kanten
==


开明寻呼机。更少的寻呼。更多内容。请广泛阅读。
——90年代初的传呼机?

这个程序的灵感来源于一个类似的应用程序,叫做
[豆腐](http://amarsagoo.info/tofu/),它是一个基于列的阅读器应用程序,其中列是水平排列的。考虑到计算机显示器的宽高比,我决定创建kanten作为unix寻呼机的替代品(更多且更少),它不限于80列。

todo
----
[x]水平进度条指示器
[x]计算出显示了多少列,并相应地调整pbar
[x]max columns should always show
[x]进度条应考虑所有可见列,如图所示
[x]顶部的一些垂直空格
[x]空格条应将整个屏幕移过(显示的列)
[x]使用鼠标滚动
[]中间鼠标按钮将X11粘贴寄存器的竞争粘贴到新的缓冲区中
[]在"v"(进入编辑器)
[]d和u(^d和^u)前进和后退一列(少用半屏)
[x]从stdin读取后处理键盘快捷键方法更少)
[]读取缓冲(填写前不要读取整个文件)
-必须修复正常的stdin管道(例如git log kanten)
-urwid's edit.py有一个延迟加载的示例
[]在xterm中,在kanten睡觉后鼠标交互中断-给出了什么?
-无法在xterm中单击以选择文本
-无法选择文本,即使在睡觉后也无法
[]双间距选项以便于阅读?
[x]从命令行指定文件名
[]解释kanten的演示文件(教程)
[]作为python包进行完整安装,入口点
[]在~/.config/kanten中配置但被参数覆盖
[x]可配置列数(通过-w或--width)
[x]自动计算大小(高度和列数)
[x]允许从命令行设置高度
[x]实现:设置命令
(:设置高度,:set width)
[x]'v'编辑文件,就像对stdin禁用less
-一样?至少如果没有遇到eof
-将不支持编辑stdin
[x]尊重$editor,如果editor未设置,则使用vim
[]如果我们检查vim是否存在,则会更好,否则在退出编辑时使用vi
[],刷新kanten中的文件
[]将文件打开到右侧行(至少左上一列的行)
-通过搜索或鼠标单击设置光标位置
-鼠标单击应取消突出显示当前搜索匹配项(如果有),而应突出显示整行-实际上-在urwid中使用widget focus infrastructure
可能有意义?
[]鼠标单击列检测按边距大小关闭
-从窗口宽度%列宽度/num列中查找
[]拖动单击事件进行分页(右键单击以前进等)
[]运行包装器以还原上一个屏幕?
-moar和bpython这样做,我认为
[](重构)将所有初始化移到一个函数中,以允许重新初始化
[]动态调整宽度
[](通过+和-命令,可能)
[]via":set width=40"
[]响应sigwinch并重新执行列数
-显示的数字已更改,因此pbar需要更新
[x]参数解析(例如add--help)
[x]隐藏进度条(ctrl-n是zathura使用的还是什么?)
[x]当前通过t实现
[]添加一个参数以禁用进度条
[]在h
上添加帮助对话框-不是吗?-这是反向搜索,但h和h以及f1
[x]种植的复活节彩蛋
[x]:帮助应该有效
[x]添加:命令模式
[x]支持:q
[x]支持:f对于文件信息
[]不允许删除命令模式下的":"提示
[]命令模式下的退格应该有效离开了吗?(就像vim
()历史(上下箭头)
()q:和:^f命令缓冲区?
[](可能)支持多个缓冲区?
-:n和:p(或:n)用于下一个和上一个
[]:e读取不同的文件?
-文件名选项卡完成:e
[x]。(点)重复上一个命令(向上或向下翻页、下一个等)
[]支持更多的键
[x]<;和>;
[x]z和w
[x]j和k(按页面确定)
[x]=要显示文件名/信息(ctrl-g也应该工作)
[x]ctrl-g应该只显示一次状态栏
[]其他?
[]f-永远向前(对于stdin)
[]控制键组合
[x]ctrl-v ctrl-f用于页面向前,ctrl-b用于返回
[x]ctrl-g用于文件信息
[]可能实施标记系统(顶行?)
-与less类似,marks只在程序执行期间有效
[]支持跳到特定行
-将与在该行编辑文件一起
-并允许我们在编辑后跳回同一行?
-跳转到当前突出显示内容的行
[]支持ctrl-i和ctrl-o位置列表跳转
[x]文本回流
[](可能)读取光标(如独裁者?)
[x]'g'转到开头
[]gg g0 g$和其他命令?
[]实现数字前缀
[x]'g'到末尾
[x]拆分框,以便它们部分适合
[x]剪裁太长的行,即使是一次性剪裁
[x]最后一行被剪裁的文本
[x]为当前允许剪裁
[x]列的单元格固定格式(间距)扩展:不要让它们
-boxadapter?
-选项("给定",宽度)?
-使用填充!!
[](对齐)"越少越好"行当前出错:\
[](重构)从一个填充(文本)开始,并在
中继续拆分-不要预拆分
-这样的方法将是搜索的合理方法,无论如何
-也就是说,在每一个例子中突出显示这个词,然后重新流动?
-或者至少要找到单词的位置,然后索引到
右/近似列
-还可以逐行滚动(菊花链可见列)
-在填充所有可见列之后停止
[x]使用/(四处搜索)
-使用框架小部件的页脚/页眉执行这个和:?
[x]输入do submit footer content
[x]esc重新调整窗口的焦点
[]通过-i命令行参数进行不区分大小写的搜索
[]通过incsearch进行增量搜索
[x]突出显示文本中的单词
[x]突出显示搜索的单词(切换到ansitext?)
[x]突出显示差异输出(通过"d",使用"d"禁用
[]detect diff output
[x]通过以下方式切换:set ft=diff
[x]force diff output with-d flag
[x]在打开.diff和.patch文件时使用diff output
[]处理跨多个列的diff行字符正确
-这样我们就可以阅读手册页
-看看grep的管道输出--color=always
-我想qt控制台对此有一些代码?
[x]用突出显示的版本替换搜索词
[]突出显示当前匹配的搜索项,与其他搜索项不同
-遍历内容,并将"重要"更改为其他搜索项工作:(
可能相关:
文件"/usr/lib/python2.7/dist packages/urwid/widget.py",第142行,缓存格式er validate_size(self,size,canv)
file"/usr/lib/python2.7/dist packages/urwid/widget.py",validate_size canv.rows(),size)中的第112行
urwid.widget.widgeterror:widget<;filler box widget<;columns box/flow widget>;valign='top'>;呈现(193 x 45)画布时传递大小(193,51
[x](可能)尝试缓存失效?不,_invalidate没有帮助
[x][cols.focus_position=0似乎成功了!
[]标记的bash完成(python argparse代码已经有了吗?)
-是的!使用https://github.com/kislyuk/argcomplete
[]编写一些测试,自述文件中有travis和工作服徽章?
[]看一下pudb xo和其他urwid应用程序是如何进行测试的
[]urwid测试在例如/home/pi/code/urwid/urwid/tests/test廑listbox.py
[]看一下@jlord在http://jlord.us/horizontal web上完成了什么进度条(可能在翻页后超时)
[]添加键盘快捷键时,应确保将其从其他位置删除
[]处理非常短的输入
-将第一列放在最左边的位置
[]休息并标记突出显示(如果可用)
[]使用pygments用于突出显示,在可能的情况下
[x]检测文件类型,至少按文件名
[x].diff和.patch for ft=diff
[].py for ft=python
[]查看rifle在ranger中的功能-使用这些插件/处理
[]修复小宽度和少量行的错误(外观丑陋的,空格/行
缺少换行符)
[x]清除运动键上的编辑文本
[]kanten.js
[]重构以删除实例变量
[]的全局变量编写kanten手册页
[]添加节以兼容更多和更少的
[]-f或--如果一个屏幕
导致在第一个屏幕上播放整个文件时自动退出较少,则退出。
[]-i或--ignore case
导致搜索忽略case;也就是说,大小写
被视为相同。如果搜索模式中出现任何大写字母,则忽略此选项;换句话说,如果
模式包含大写字母,则搜索不忽略大小写。
[]-i或--ignore-case
like-i,但搜索忽略大小写,即使模式包含
大写字母。
[]在
搜索分析
[]支持set ignorecase时添加\c和\c(分别不敏感和敏感)?设置SmartCase?
[]添加save as(以保存stdin输入)
[]中心单列
[]版本字符串
[]:version命令
[]对于ipython,当-t和-b\lim 0
[]时出现角点大小写:register.ipynb作为一个json lexer-able对象
pygments.lexers.web.jsonlexer
[]吞下最后一个空的横幅中的面板
[]使kanten变得重要(重构cli方面以使测试更容易)
[]错误高度超出了我的堆(关闭一个?)

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

推荐PyPI第三方库


热门话题
java我需要做什么来解析bundle-org。日食说唱在eclipse helios中无法解析ui?   json Java JSONSimple解析器   java如何使Hibernate、JBoss和Eclipse在单元测试中协同工作?   java使输出在每个循环中打印一次,而不是每次迭代   Java ArrayList remove()意外结果?   java删除服务器。来自sun应用程序服务器的策略   java在Tycho项目中为非OSGi JUnit测试添加testonly依赖项   java Hibernate TypedQuery在升级到版本5后失败(如果以以下方式结束)   java Mockito ArgumentCaptor不在catch块中捕获argurment   java GWT CheckBoxCell:如何添加更改处理程序?   java如何在不更改hibernatemapping的情况下防止字段被更新   Java中的虚拟TCPsocket   java如何通过我的应用程序在新版本的Androids上以编程方式更改其他应用程序的权限?   java文件被哪个进程锁定(安卓)?   SeleniumWebDriverJava中的按钮单击   基于Java的多线程客户端socket   清除文本字段时出现问题。clear()*JAVA**ANDROID*   安卓为什么会发生JavaJSON异常?