ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

Git​Hub​Issue

by divinites ST3

A sublime text plug-in to manage GitHub repo issues :fire:

Details

Installs

  • Total 557
  • Win 280
  • OS X 171
  • Linux 106
Dec 15 Dec 14 Dec 13 Dec 12 Dec 11 Dec 10 Dec 9 Dec 8 Dec 7 Dec 6 Dec 5 Dec 4 Dec 3 Dec 2 Dec 1 Nov 30 Nov 29 Nov 28 Nov 27 Nov 26 Nov 25 Nov 24 Nov 23 Nov 22 Nov 21 Nov 20 Nov 19 Nov 18 Nov 17 Nov 16 Nov 15 Nov 14 Nov 13 Nov 12 Nov 11 Nov 10 Nov 9 Nov 8 Nov 7 Nov 6 Nov 5 Nov 4 Nov 3 Nov 2 Nov 1
Windows 0 0 0 0 0 0 2 3 2 1 1 0 2 0 0 1 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 1 0 0 0 0 2 0 0 1 0 2 0 2 0
OS X 0 1 0 0 0 0 2 0 1 2 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 1 1 0 1 0 0 0 0 0 0 1 0 1 0 0 0 1 0 2
Linux 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0 0 0 0 0 0 0

Readme

Source
raw.​githubusercontent.​com

GitHub-Issues

Introduction

This plugin aims at providing a convenient way to write and update issues inside sublime text. Instead of opening a external Internet browser, this plug-in open a new buffer and let users to write/modify issue content using Markdown natively within sublime Text.

It was initially inspired by github-issues.vim.

Features

  • Create/post/update/open/close github issues inside Sublime Text.

  • Browse/navigate the issue list of any public repos and users' private repos.

  • Auto-complete issue titles, labels and issue participants.

  • Using Markdown as the default syntax of issue, allowing users to choose other syntaxes as well.

Installation

Search GitHubIssue in Package Control Channel. After installation, you will need to restart Sublime Text.

Configuration

Set-ups:

  • Open Preferences -> Package Settings -> Github Issue

  • Open Settings - User

  • There is a sample configuration in Settings - Default

  • Ten options available:

{
    "token": "",
    "username": "",
    "password": "",
    "debug": 0,
    "syntax": "Packages/Markdown/Markdown.sublime-syntax",
    "wrap_width": 80,
    "draw_centered": true,
    "split_line_width": 0,
    "issue_title_completion": true,
    "user_completion": true,
    "label_completion": true,
    "commit_completion": true,
    "commit_completion_trigger": "&",
    "disable_vintageous": true
}

Authentication:

Token means the github access token, you can get one from this link

Attention! To have a usable token, it would be safe to choose the following scopes when generating the token:

  • admin:org_hook,

  • admin:public_key,

  • admin:repo_hook,

  • gist,

  • notifications,

  • repo

If you find without one or more scopes listed above, the plug-in also works properly, please submit an issue. After testing, I will modify the scope list.

Alternatively, you can use password (not recommended, since username and password will be stored in the configuration file in plain text). The program will first look at whether token is set, if no token, it will then look at pasword option.

To sum up, the username is always required, passowrd and token are optional but at least one of them should be provided.

Customisation

  • “syntax” is your preferred markdown syntax for issue view.

  • “wrap_width” is the same as “wrap_width” in preference.sublime-settings, but limited to issue views, default value 80.

  • “draw_centered” is the same as “draw_centered” in preferences.sublime-settings, also limited to issue view, default value: False.

  • “split_line_width” is the width of split lines. default value is 0, which means that it will be the same as wrap_width.

Auto-Completion

GitHubIssue offers a range of auto-completion options:

  • “issue_title_completion”, “user_completion” and “label_completion” are autocompletion flags:

  • “issue_title_completion” autocompletes other issue titles, so that users can easily refer them;

  • “user_completion” autocompletes issue participants, so that users can easily @ them;

  • “label_completion” autocompletes labels (only available in the “##Label :” line, triggered by @).

  • “commit_completion”: you type commitment messages, auto-completes commit SHA. default “true”.

  • “commit_completion_trigger”: the trigger for commit auto-completion, default value “&”.

Miscellaneous

  • “debug” is a flag, if it is set to 1, the plug-in will print every single step and output in sublime console. Normally it should be set to 0.

  • “disable_local_repositories”: normally, GitHub Issue will use git command to automatically discover github repos on the side-bar. If you do not want GitHub Issue to do so, please sent this flag to true. Default value is false.

  • “disable_vintageous”: if this is set true, issue list will also be shown in normal mode.

After installing this plug-in, it would be better to restart sublime text to make the plug-in work.

Commands and Shortcuts

Commands

All commands are runnable through Command Palette, please have a look at Command Palette.sublime-commands and type GithubIssue to get more ideas about the commands available.

[
    {
        "caption": "GitHub Issue: Show Open Issues",
        "args": {"per_page": 30},
        "command": "show_github_issue_list"
    },
    {
        "caption": "GitHub Issue: Show All Issues",
        "args": {"state": "all", "per_page": 30},
        "command": "show_github_issue_list"
    },
    {
        "caption": "GitHub Issue: Show Issue",
        "args": {},
        "command": "show_github_issue"
    },
    {
        "caption": "GitHub Issue: Create Issue",
        "args": {},
        "command": "new_github_issue"
    },
    {
        "caption": "GitHub Issue: post/update Issue",
        "args": {},
        "command": "post_or_update_issue"
    },
    {
        "caption": "GitHub Issue: close/reopen Issue",
        "args": {},
        "command": "update_and_close_or_reopen_issue"
    },
]

Shortcuts

You can define your own shortcut, but some shortcut keys are pre-defined for your convenience.

  • In an issue List view, Press Enter to open a particular issue, Press Right/Left Arrow turn to issue page down/up.

  • In an issue List view, Press Ctrl + Right/Left Arrow to goto last/first page of issues.

  • In an issue List view, Press Ctrl + r to refresh open issue list, Ctrl + Shift + r to refresh all issue list.

  • In an issue view, Press Super+S(Ctrl+S in Windows)to sync current issue or comments with Github

  • in an issue view, you can press Ctrl + shift + u to toggle open/close an issue.

Illustration

  • Show issue list:

  • Create an Issue:

  • Update an Issue:

  • Add a comment:

  • Delete a comment:

  • Modify a comment:

  • Auto-completion of labels, if a label does not exist, it will be automatically created.

  • Auto-Completion of commits, issue references and other participants.

Change Log

  • 0.0.1: First public version, only show list works.

  • 0.1.0: All basic function works.

  • 1.0.0: Add messages, dependencies and ready for Package Control Channel.

  • 1.1.0: Add the feature that users can directly enter repo information and write issues/comments.

  • 1.2.0: Add logging system and solve CRLF problems.

  • 1.3.0: Add issue syntax customization and adjust cursor position.

  • 1.5.0: Add issue list pagination and page view control

  • 1.6.0: Add basic label support

  • 2.0.0: Add auto-completion support

  • 2.1.0: Add protection to the issue header and add a command “post_or_update_issue”

  • 2.2.0: various minor improvements

  • 2.3.0: Add commit auto-completion

  • 2.5.0: Refactoring

  • 2.6.0: Add a linklist structure to issue view, add refresh list option, reformat issue and comment header lines.