Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/blindFS/unite-workflow

unite.vim extentions for convenience similar to alfred-workflow
https://github.com/blindFS/unite-workflow

Last synced: about 2 months ago
JSON representation

unite.vim extentions for convenience similar to alfred-workflow

Awesome Lists containing this project

README

        

![ci](https://travis-ci.org/blindFS/unite-workflow.svg)

## What the hell?

I suppose you know what alfred-workflow is.
This vim plugin is a collection of unite.vim extentions as a alternative to it.

### github events

![ge](./screenshots/github_event.png)

Fetch recent github events of a certain user.

### github feeds

Fetch github timeline of a certain user(defaults to g:github_user).

### github repository searching

Search for github repos by keywords.

### github issues

NOTE:

* In order to edit issues or create new issue, you'll need [github-issues.vim](https://github.com/jaxbot/github-issues.vim)
* The default repository(if input omitted) is fetched by `git remote -v`.
* You could use input to specify a certain project, in the format of 'owner/repo'

![gi](./screenshots/github_issue.png)

### gist user

NOTE:This feature requires [gist-vim](https://github.com/mattn/gist-vim).

![gu](./screenshots/gist_user.png)

List public gists created by a certain user(defaults to g:github_user).
Actions:

* edit, open with `:Gist id`.
* start, open in a browser.

### gist searching

Search for gists.
Similar to gist-user.

### reddit

Fetch hot topics from reddit.
use `g:unite#workflow#reddit#front` to specify user front feed json url.
Should be like this `http://www.reddit.com/.json?feed={hash}&user={username}`.
If not, the fetching scope will be 'all'.
If used with input, the input is taken as subreddit like this:

![re](./screenshots/reddit.png)

### twitter

Twitter.

Available actions: tweet/retweet/reply/favorite.

![tw](./screenshots/twitter.png)

### dropbox

* files/directories hierarchy list
* search

![db](./screenshots/dropbox.png)

### wikipedia

Search for wiki, list matching entries, open selected in a browser.

### youtube

Search youtube, playlist/channel/video ...

### apropos

Fast manpage access.

![ap](./screenshots/apropos.png)

### toilet

Note: this feature requires executable 'toilet' or 'figlet'.

Use `g:unite#workflow#figlet_fonts#dir` to specify where the fonts are stored,
defaults to `/usr/share/figlet`.

![tl](./screenshots/toilet.png)

### emoji

Note: You may need extra font packages for correct displaying.
For example, arch users need ttf-symbola in AUR.

Search for emoji by description.

![em](./screenshots/emoji.png)

### v2ex

Latest topics of http://www.v2ex.com

![v2](./screenshots/v2ex.png)

### youdao

有道词典/翻译

![yd](./screenshots/youdao.png)

### music163

网易云音乐搜索

![163](./screenshots/music163.png)

### douban

豆瓣 音乐/电影/图书

![db](./screenshots/douban.png)

### zhihu

知乎日报

### turing

[图灵机器人](http://www.tuling123.com/openapi/cloud/home.jsp)

## Installation

You need these plugins installed and loaded.

* [unite.vim](https://github.com/shougo/unite.vim)
* [webapi-vim](https://github.com/mattn/webapi-vim)

Suggested plugins:

* [github-issues.vim](https://github.com/jaxbot/github-issues.vim) for github issue editing/creating.
* [gist-vim](https://github.com/mattn/gist-vim) for gist sources.

Then just use your preferred managing tool for this plugin.
If you'd like to load just a part of these features. I suggest that you use neobundle.vim:

``` vim
NeoBundleLazy 'farseer90718/unite-workflow', {
\ 'unite_sources' : [ your-list ],
\ 'depends' : [
\ 'mattn/webapi-vim',
\ 'mattn/gist-vim',
\ 'jaxbot/github-issues.vim']
\ }
```

## Customization

* `g:unite#workflow#show_icon` 0 to disable avatar display.
* `g:unite#workflow#reddit#front` as described above.
* `g:unite#workflow#figlet_fonts#dir` as described above.
* `g:unite#workflow#player` defaults to 'mplayer'.

Example:

``` vim
let g:unite#workflow#reddit#front = 'http://www.reddit.com/.json?feed=foo&user=bar'
call unite#custom#profile(
\ 'source/github/search, source/github/event, '.
\ 'source/github/feed, source/gist/search, '.
\ 'source/gist/user, source/v2ex, '.
\ 'source/reddit, source/wikipedia',
\ 'context', {
\ 'keep_focus' : 1,
\ 'no_quit' : 1
\ })
call unite#custom#profile(
\ 'source/youdao, source/toilet',
\ 'context', {
\ 'max_multi_lines' : 20,
\ 'winheight' : 20
\ })
nnoremap t :Unite youdao:
```

## Tips

* Press `` to refresh (change input in a faster way) in some sources.
* Some sources may have specialized actions, you can check the action list to find out.

## Contributing

* Bug report, feature request, other discussions are always welcome.
* Pull requests of new workflows are even better.

## License

MIT