分享一些 vim 插件
In 未分类 on 2015年05月11日 by view: 2,108
0

先是环境:在 windows 上用 VMware 安装了 ubuntu,用 ubuntu 运行终端。可以用 VMware 文件共享、网络文件共享、nginx、ftp 实现两个操作系统的文件共享

linux 主目录配置文件保存在 github:https://github.com/feix760/yuan

如果换一台电脑,我只需要 git clone --recursive myGithubPath 就可以拿到以前的配置文件

vim 的插件可以用 Bundle 来管理,只要在.vimrc 用 Plugin ‘XXX’ 指明需要的插件,随后用

自动安装新插件

下面是我的 .vimrc 插件配置的部分,随后介绍各个插件的用途

Plugin ‘gmarik/Vundle.vim’

Bundle 插件管理插件

Plugin ‘vim-scripts/L9’

vim 基础库

Plugin ‘majutsushi/tagbar’

插件 taglist 的替代品,函数名称等的预览窗口,如果要预览 js,需要安装命令 jsctags

(?windows 用此标记 windows 可能无法支持)

Plugin ‘mattn/emmet-vim’

zen coding

Plugin ‘kien/ctrlp.vim’

使用 Ctrl+p 搜索文件

Plugin ‘scrooloose/nerdtree’

Plugin ‘ivalkeen/nerdtree-execute’

vim 内置文件目录树的替代品

Plugin ‘scrooloose/nerdcommenter’

注释代码

Plugin ‘godlygeek/tabular’

代码对齐

Plugin ‘MarcWeber/vim-addon-mw-utils’

Plugin ‘tomtom/tlib_vim’

Plugin ‘garbas/vim-snipmate’

snimate snippet 代码模板,sublime 里也有 snippet,但 vim 的更灵活强大,基本是脚本了。

Plugin ‘tpope/vim-fugitive’

Plugin ‘juneedahamed/svnj.vim’

git svn 插件,可以 diff, blame, log 等,下面是 diff (?windows)

Plugin ‘yssl/QFEnter’

Qickfix 窗口里的快捷键

Plugin ‘feix760/autospace’

个人版 js 自动补全空格

Plugin ‘feix760/taboo.vim’

自定义 tab 标头

Plugin ‘Chiel92/vim-autoformat’

格式化代码,需要 shell 命令的支持 (?windows)

Plugin ‘tpope/vim-repeat’

点命令 ( . 重复上一次修改) 的扩展

Plugin ‘tpope/vim-surround’

括号、引号、html 标签等的快速修改,比如:

‘name’ -> “name”

<a class="active" >XX</a> -> <div class="active" >XX</div>

强烈推荐《Vim 实用技巧》:

Chrome 插件网络相关接口的应用
In 未分类 on 2015年05月08日 by view: 1,255
0
  • chrome.webRequest.XXX 用于网络流量的统计监控、修改请求和响应
  • chrome.proxy.XXX 用于代理的管理

抓包的时候偶尔会遇到返回的 json 串在 prevew 窗口不能显示成对象的形式,如下:

理想的:

这种情况是响应头 content-type 不正确造成的,可以使用 chrome.webRequest.onHeadersReceived.addListener() 修改响应头

相应的可以用 chrome.webRequest.onBeforeSendHeaders.addListener() 修改请求头

两个接口可以修改几乎所有的头,包括 cookie 相关的,因此可以实现一个 cookie 的管理

自定义请求/响应头的插件:

https://github.com/feix760/chrome_custom-headers

某个 tab cookie 独立的插件 (可以让浏览器登录多个账号):

https://github.com/feix760/Chrome_CookieSeparator

chrome.proxy.XXX 可以实现 SwitchySharp 的功能

chrome.webRequest.XXX 不能做到修改响应数据、host 映射等。虽然从安全的角度思考这是异想天开,但有自由访问文件系统的接口(需要用户 2 次确认这种权限),如果能做到真想把 fiddler 的功能集成到 chrome 里去

使用 Xposed 强制 androidwebView 开启 debug 模式
In 未分类 on 2015年04月01日 by view: 4,812
0

https://developer.chrome.com/devtools/docs/remote-debugging 我们可以知道在 android 4.4+可以通过在 apk 中使用下面的代码开启 webview 的 chrome 远程调试

但我们开发中接触的 apk 往往是第三方的,没谁会为我们开启 webContentsDebuggingEnabled。而 Xposed 能强制做到这一点

Xposed

Xposed 能够勾住 (Hook) Android 应用程序对象的方法,实现 AOP,一个简单的例子:

上面的代码可以为 QQ 打开 WebView 的 webContentsDebuggingEnabled

Xposed 工作原理可以参考文档: https://github.com/rovo89/XposedBridge/wiki/Development-tutorial

没有详细的 API 页面, 因为 API 也就几个,可以查看源代码: https://github.com/rovo89/XposedBridge/tree/master/src/de/robv/android/xposed

馋图

拿来主义

1、需要 android 4.4+ Root 手机

2、安装 Xposed 框架

3、已开启 QQ WebView 的 Apk: webviewdebughook.Apk