阴暗面
a8的Python项目详细描述
a8,最讨厌的ide
(c)2011,pida作者
许可证gpl v3(http://www.gnu.org/copyleft/gpl.html)
the one true ide™,pida ide的继承者。一个超轻量级的ide,它嵌入了vim,一个终端模拟器,以及一个文件浏览器,使它们一起工作。
*[安装](安装)
*[配置]
*[键盘快捷键](键盘快捷键)
*[扩展名](扩展名)
*[常见问题](常见问题)
*[有意中断](有意中断)
*[提示ssh和技巧](ssh技巧和技巧)
![a8 screenshot](https://lh4.googleusercontent.com/-PtipCpFvTcc/TvpPhtdtTeI/AAAAAAAADI0/tUVBvU3uLAA/s0-d/a8.png)
----
## Installation ##
⠠⠊⠝⠎⠞⠁⠇⠇⠁⠞⠊⠕⠝
```
$ pip install a8
```
Remember the system dependencies:
```
# apt get install vim gtk python-gtk2 python vte python dbus
```
(非Debian发行版,请给我加一行。)
----
不是这样,因为我从来没有计划过用一种以上的方式来使用它。
作为键值的映射:
```
foo1:blah
foo2:
foo3:blah
```
如果存在默认值(或未设置其他值):
```
终端:
"彩色前景":未设置,
"彩色背景":未设置,
"退格绑定":未设置,
"光标闪烁模式":未设置,
"光标形状":未设置,
"字体":未设置,
"允许加粗":未设置,
"可听见的铃声":未设置,
"模拟":未设置,
"指针自动隐藏":未设置,
"按键盘滚动":未设置,
"按输出滚动":未设置,
"滚动行":1000,
"可见铃声":未设置,
"单词字符":"-a-za-z0-9,./?%&μ;
````
35 35 35 35 35 35 35 35 35 \35 35 35 35 \35 35 35 35 \35 \\
会话类型:'none';不记得会话(会话的别名:false")
会话类型:'local'将会话存储在./.a8中,只要abominade运行
会话类型:'user'默认值,将会话存储在~/.a8
````
键盘快捷键##
内部A8动作
2。自定义shell命令通过创建文件来定义键盘快捷键:
` ~/.a8/shortcuts.yaml`
>此文件应包含以下格式的键和值:
`<;action>;<;shortcut>;`
`key:<;shortcut>;`
`[cmd:<;命令>;]`
`[cwd:<;工作目录>;]`
`[env:<;environment>;]`
,其中action是定义要执行的操作的字符串,快捷键是一个快捷字符串。
>可用操作是(默认情况下):
*`shell(<;alt>;t)`
*`FOCUCUCUCUCUVIM(<;alt>;e)`
>
<
<
<
*`FOCUCUCUCUCUU终端(<;alt>;r)`
*`FOCUCUCUU缓冲区(<;alt>;b)``
>*`FOCUCUCUCUCUCUCUU缓冲区(<;FOCUCUCUCUCUU缓冲区(<;FOCUCUCUCUb r/>*`焦点文件(<;alt>;m)`
*`FOCU终端(<;alt>;gt;i)`
*`FOCU书签(<;alt>;k)`
*`PREV缓冲区(<;alt>;向上)`
*`下一个缓冲区(<;alt>;向下)`
*`PREV缓冲区(<;alt>;向上)`
*`FOCU终端(<;alt>;向左)`
*`FOCU终端(<;alt>;lt;gt;lt;lt;lt;lt;lt;lt;lt;gt;gt;gt;i)``
=>>*`PREV缓冲区(<;lt;lt;alt是的g)`
*`切换展开的文件(<;alt>;x)`(0.11及更高版本)
*`关闭所有的缓冲区(alt>;lt;alt>;c)`
*`浏览首页(alt>;lt;alt>;h)`
35 35 35 35 35<
*按`<;shift>;向上键和`<;shift>;向下键的其他热键
/><
/>*在终端中,上br/>快捷方式格式35;
格式类似于`<;control>;a`或`<;shift>;<;alt>;f1`或`<;release>;z`(最后一个
用于释放键)。解析器相当自由,允许小写或大写,还允许使用缩写,如`<;ctl>;`和`<;ctrl>;`。可以使用"向上"、"向下"、"向左"、"向右"等键,但请注意,按键不会传递到底层应用程序、终端或vim。
它们的格式不同于内部A8快捷方式。它们应该是"custom"键值列表的一部分。列表中的每个项至少应将键"key"定义为上述格式的快捷字符串。此外,它们还可以定义"cmd"、"cwd"和"env"键。这些命令用于使用命令执行新终端。
j
cmd:ifconfig
```
----
这是通过以下概念实现的:
1。延伸
2.signals
因为我们只是使用python,所以所有a8 api对同一进程中的任何python代码都是公共的,这是有意的。如果你想通过滥用这个来破坏它,那么就去破坏它吧。
扩展是任何具有可调用"setup"属性的python模块或实例。"setup"的签名应该是:
```
def setup(app):
"My setup function"。
````
当然,这可以是在一个对象中,签名应该是:
`````
class myextension(object):
def setup(self,app):
"My setup function.""
``
扩展名列在配置文件的"extensions"键下,应该是可导入的名称,例如"a8.a8-example-ext",这是一个让您开始使用的示例。如果从模块导入属性,则可以使用":"符号,例如"path.mymodule:myattr",该符号适用于实例作为扩展。
它能接触到一切。很糟糕,但这是有意的。
任何事情都可以用这个来实现。
它们不在内部使用,因此主要表现为禁止操作。它们使用"app.connect"连接,可以使用"app.emit"发出。
`app.connect`接受一个信号名和一个要调用的回调。回调只传递关键字参数,因此更正参数的名称很重要。下面是一个连接到插件中"文件已保存"信号的示例。下面列出了所有可用的信号和参数。
```
*|*description*
------------------------
`添加的文件项` `文件名`文件项显示在文件管理器中在编辑器中打开的文件|
因为它们不在内部使用,所以基本上没有成本。
----
###
abominade不希望取代[http://pida.co.uk pida],怎么可能呢?因此,如果您需要一些特殊的PIDA功能,请继续使用PIDA。
[有意中断](有意中断)
在Mac上是否有效?###
可能有困难。您将需要x、gtk、dbus,所有这些都支持python。(以及可能的精神帮助)
《故意破坏故意故意留下来的特征有意留下来的特征。这是一个非常简单的工具,但本质上是为我编写的。如果您想要一个真正的应用程序,请尝试
[https://bitbucket.org/aafshar/pida-main/wiki/home pida]。abominade的动机是制作一个为我量身定做的ide。
*国际化(我只使用英语)
*非vim编辑器(我只使用vim)
*语言支持(我不觉得那些大纲视图有用)
*版本控制支持(命令行是够了)
*项目支持(替换为书签)
*图形用户界面配置(纯文本就足够了)
*图形用户界面快捷方式配置(作为图形用户界面配置)
*窗口管理(分离、移动、悬停、浮动)
*保存布局
*文档(好的,所以pida也没有任何文档!)
*很多选项(不需要让我使用的东西成为可选的。)
*gtk的操作是一种痛苦
*glade/gtkbuilder是一种痛苦
*gtk的股票图标完全无用
*statusbar/toolbar/menubar
----
ssh提示和技巧##
如果在远程主机上编辑大量代码,您可以通过sshfs在本地挂载项目目录
。
如果您在ssh会话中cd,使相对路径
不再与本地当前目录匹配,但如果您配置ssh的
,则此操作将中断!escapechar设置,您可以在本地挂起ssh、cd并恢复ssh。
###screen/tmux
对于abominade的
终端窗格中的一些终端,最好使用gnu screen或tmux,因为很容易意外关闭abominade并丢失您的终端历史。