2 releases
0.1.1 | May 1, 2019 |
---|---|
0.1.0 | Apr 21, 2019 |
#373 in Text editors
15KB
418 lines
Octolo
Octo To Local, Open files with local editor from GitHub web.
Supported Platforms
Operating Systems
- Linux
- Mac OS
Editors
- Neovim
- Visual Studio Code
- JetBrains IDEs
And, you can execute any command with editor kind cmd
.
Browsers
- Firefox
- Chrome
- Chromium
note: Although not well tested, Opera, Edge and Vivaldi may run with configuration that same as Chrome.
Installation
Install Native Application
Because we use Native Messaging API, you should install native application.
with curl
Executable binary is available for each releases.
for Linux
# In any directory conteined in $PATH
$ curl -Lo octolo https://github.com/rail44/octolo/releases/latest/download/octolo-x86_64-unknown-linux-musl
$ chmod a+x octolo
for Mac OS
# In any directory conteined in $PATH
$ curl -Lo octolo https://github.com/rail44/octolo/releases/latest/download/octolo-x86_64-apple-darwin
$ chmod a+x octolo
with Cargo
$ cargo install octolo
Configuration
Create ~/.config/octolo/octolo.toml
like bellow.
# Comment out browsers your using
browser_list = [
# "Firefox",
# "Chromium",
# "Chrome"
]
# If you have configuration ghq.root, Octolo will use it as default
# root = "/home/john/src"
# path = github.com/{{user}}/{{repository}}
# Use configurations for editor your using
[[editors]]
kind = "neovim"
# The address that nvim listening. By default, Octolo uses $NVIM_LISTEN_ADDRESS
# address = ""
[[editors]]
kind = "visual-studio-code"
bin = "/usr/local/bin/code" # Path of $(which code)
[[editors]]
kind = "jetbrains-ide"
name = "IntelliJ IDEA" # or "PHPStorm", "RubyMine" ...
bin = "/usr/local/bin/idea" # Path of $(which idea)
# Or, you can execute any commands.
# cmd should be defined with handlebars syntax.
[[editors]]
kind = "cmd"
cmd = [
"your-favorite-cli",
"-f {{path}}",
"-l {{line}}"
]
Once creating configuration, run bellow
$ octolo cofig dump
# Dump full config with optional fields...
$ octolo manifest
# Dump Native Messaging Manifests for each browsers
$ octolo manifest -w
# And place it!
Manifests contains absolute path for octolo. When you change location of it, you should redo above.
Install WebExtension
Firefox: https://addons.mozilla.org/ja/firefox/addon/octolo/
Chrome: https://chrome.google.com/webstore/detail/octolo/igdmgdknajejkdpaonpnpjedakhppiob
Then, you can open files by right-click menu from GitHub Web!
Bulid
WebExtension
# In `extension` dir
$ npm install
$ npm run build
Native
# In `native` dir
$ cargo build
Dependencies
~6–8.5MB
~151K SLoC