github_cli 0.4.4 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. data/.gitignore +1 -0
  2. data/.travis.yml +0 -2
  3. data/CHANGELOG.md +14 -0
  4. data/Gemfile.lock +9 -3
  5. data/README.md +68 -48
  6. data/Rakefile +47 -1
  7. data/bin/gcli +18 -0
  8. data/bin/ghc +1 -17
  9. data/features/blob.feature +6 -6
  10. data/features/collaborator.feature +10 -10
  11. data/features/commit.feature +6 -6
  12. data/features/completion.feature +3 -3
  13. data/features/config.feature +55 -0
  14. data/features/content.feature +9 -9
  15. data/features/download.feature +11 -11
  16. data/features/email.feature +8 -8
  17. data/features/errors.feature +11 -9
  18. data/features/event.feature +20 -20
  19. data/features/executable.feature +4 -4
  20. data/features/follower.feature +13 -13
  21. data/features/fork.feature +6 -6
  22. data/features/gist.feature +22 -22
  23. data/features/hook.feature +14 -14
  24. data/features/init.feature +48 -0
  25. data/features/issue.feature +12 -12
  26. data/features/key.feature +12 -12
  27. data/features/label.feature +23 -23
  28. data/features/member.feature +13 -13
  29. data/features/milestone.feature +12 -12
  30. data/features/organization.feature +9 -9
  31. data/features/pull_request.feature +18 -18
  32. data/features/reference.feature +13 -13
  33. data/features/repository.feature +20 -20
  34. data/features/search.feature +10 -10
  35. data/features/search_commands.feature +4 -4
  36. data/features/support/hooks.rb +3 -1
  37. data/features/tag.feature +6 -6
  38. data/features/team.feature +28 -28
  39. data/features/tree.feature +5 -5
  40. data/features/usage.feature +3 -3
  41. data/features/user.feature +7 -7
  42. data/features/watching.feature +13 -13
  43. data/fixtures/simple_config +9 -8
  44. data/github_cli.gemspec +2 -2
  45. data/lib/github_cli/api.rb +3 -3
  46. data/lib/github_cli/cli.rb +96 -17
  47. data/lib/github_cli/config.rb +30 -9
  48. data/lib/github_cli/editor.rb +11 -6
  49. data/lib/github_cli/man/gcli-config.1 +102 -0
  50. data/lib/github_cli/man/gcli-config.1.txt +96 -0
  51. data/lib/github_cli/man/gcli-repo.1 +16 -0
  52. data/lib/github_cli/man/gcli-repo.1.txt +15 -0
  53. data/lib/github_cli/man/gcli.1 +34 -0
  54. data/lib/github_cli/man/gcli.1.txt +33 -0
  55. data/lib/github_cli/manpage.rb +42 -0
  56. data/lib/github_cli/pager.rb +1 -1
  57. data/lib/github_cli/terminal.rb +8 -2
  58. data/lib/github_cli/thor_ext.rb +12 -1
  59. data/lib/github_cli/vendor.rb +10 -0
  60. data/lib/github_cli/version.rb +1 -1
  61. data/lib/github_cli.rb +7 -2
  62. data/man/gcli-config.1.ronn +82 -0
  63. data/man/gcli-repo.1.ronn +7 -0
  64. data/man/gcli.1.ronn +29 -0
  65. data/spec/github_cli/config_spec.rb +21 -7
  66. metadata +43 -22
  67. data/features/settings.feature +0 -35
@@ -4,10 +4,15 @@ module GithubCLI
4
4
  class Config
5
5
 
6
6
  COMMAND_KEY = 'commands'
7
+
7
8
  COMMAND_HELP = 'help'
8
9
 
10
+ # Contains information of where the command is run from.
9
11
  attr_reader :root
10
12
 
13
+ # Location scope of currently used configuration file.
14
+ attr_reader :location
15
+
11
16
  def initialize(root, options={})
12
17
  @root = root
13
18
  @local_config = local_options_file
@@ -20,15 +25,15 @@ module GithubCLI
20
25
  end
21
26
 
22
27
  def [](key)
23
- data[key] || data[COMMAND_KEY][key] rescue nil
28
+ data[key] || data["#{COMMAND_KEY}.#{key}"] rescue nil
24
29
  end
25
30
 
26
31
  def fetch(key, default=nil)
27
- data[key] || default || raise(IndexError.new("key #{key} not found"))
32
+ self[key] || default || raise(IndexError.new("key #{key} not found"))
28
33
  end
29
34
 
30
35
  def delete(key)
31
- @data.delete(key)
36
+ data.delete(key)
32
37
  end
33
38
 
34
39
  def data
@@ -39,11 +44,27 @@ module GithubCLI
39
44
  data.keys
40
45
  end
41
46
 
47
+ def all
48
+ data
49
+ end
50
+
51
+ def pretty(pattern="")
52
+ all.keys.zip(all.values).map do |el|
53
+ el.last.nil? ? [el.first, 'UNDEFINED'] : el
54
+ end.select { |el| el.first =~ /^#{pattern}.*$/i }
55
+ end
56
+
57
+ def location=(loc)
58
+ @location = loc
59
+ @data = nil
60
+ end
61
+
42
62
  def save(config)
43
- config[COMMAND_KEY] = {}
44
63
  Command.all.each do |cmd|
45
- if !cmd.namespace.empty? && cmd.name != COMMAND_HELP
46
- config[COMMAND_KEY]["#{cmd.namespace}-#{cmd.name}"] = { }
64
+ composite_key = "#{COMMAND_KEY}.#{cmd.namespace}.#{cmd.name}"
65
+ if !cmd.namespace.empty? && cmd.name != COMMAND_HELP &&
66
+ !config.has_key?(composite_key)
67
+ config[composite_key]= {}
47
68
  end
48
69
  end
49
70
  File.open(path, 'w', 0600) do |file|
@@ -62,7 +83,7 @@ module GithubCLI
62
83
  end
63
84
 
64
85
  def path
65
- if File.exists?(local_options_file)
86
+ if location == 'local' || File.exists?(local_options_file)
66
87
  local_options_file
67
88
  else
68
89
  global_options_file
@@ -80,7 +101,7 @@ module GithubCLI
80
101
  Pathname.new File.join(Thor::Util.user_home, ".githubrc")
81
102
  rescue ArgumentError
82
103
  GithubCLI.ui.warn "Unable to find ~/.githubrc because the HOME environment variable is not set"
83
- nil
104
+ exit 1
84
105
  end
85
106
  end
86
107
 
@@ -88,7 +109,7 @@ module GithubCLI
88
109
  unless data[key] == value
89
110
  data[key] = value
90
111
  data.delete(key) if value.nil?
91
- save data.to_yaml
112
+ save data
92
113
  end
93
114
  value
94
115
  end
@@ -4,22 +4,27 @@ module GithubCLI
4
4
  # This class determines editor to use to open the output.
5
5
  class Editor
6
6
 
7
- def initialize(options={})
7
+ attr_accessor :filename
8
+
9
+ def initialize(filename, options={})
10
+ @filename = filename
8
11
  end
9
12
 
10
13
  def editor
11
- editors = [ ENV['GHC_EDITOR'], ENV['VISUAL'], ENV['EDITOR'], 'vi' ]
12
- editor = GithubCLI.config['editor']
13
- editor ||= editors.find { |e| !e.nil? && !e.empty? }
14
+ editors = [ ENV['GCLI_EDITOR'], ENV['VISUAL'], ENV['EDITOR'], 'vi' ]
15
+ editors.unshift(GithubCLI.config['core.editor'])
16
+ editors.compact.uniq.find { |editor| System.command? editor }
14
17
  end
15
18
 
16
- def open(name)
19
+ def open(name=nil)
17
20
  if editor
18
- command = "#{editor} #{name}"
21
+ command = "#{editor} #{filename}"
19
22
  success = system(command)
20
23
  GithubCLI.ui.info "Could not run '#{command}'" unless success
24
+ exit success
21
25
  else
22
26
  GithubCLI.info("To open output, set $EDITOR or $VISUL")
27
+ exit 1
23
28
  end
24
29
  end
25
30
 
@@ -0,0 +1,102 @@
1
+ .\" generated with Ronn/v0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
+ .
4
+ .TH "GCLI\-CONFIG" "1" "July 2012" "" ""
5
+ .
6
+ .SH "NAME"
7
+ \fBgcli\-config\fR \- Get or set global or local configuration options
8
+ .
9
+ .SH "SYNOPSIS"
10
+ \fBgcli config\fR \-\-global|\-\-local name [value]
11
+ .
12
+ .br
13
+ \fBgcli config\fR \-\-global|\-\-local \fB\-l | \-list\fR [name_regex]
14
+ .
15
+ .br
16
+ \fBgcli config\fR \-\-global|\-\-local \fB\-e | \-\-edit\fR
17
+ .
18
+ .SH "DESCRIPTION"
19
+ You can query/set options with this command\. The name is actually a hash key string that is a composite one, nested with dots\. If only name is provided, a value will be retrieved\. If two parameters are given then value will be set or updated depending whether it already exists or not\.\en
20
+ .
21
+ .P
22
+ There two types of config files, global and project specific\. When modifying options ensure that you modifying the correct config\.
23
+ .
24
+ .P
25
+ This command line will fail (with the exit code ret) if:
26
+ .
27
+ .IP "1." 4
28
+ The config file is invalid\.
29
+ .
30
+ .IP "" 0
31
+ .
32
+ .SH "OPTIONS"
33
+ .
34
+ .TP
35
+ \fB\-\-global\fR
36
+ Writes configuration settings to global ~/\.githubrc file inside user home directory\.
37
+ .
38
+ .TP
39
+ \fB\-\-local\fR
40
+ Writes cofinguration settings inside the current directory to the \.githubrc file\.
41
+ .
42
+ .TP
43
+ \fB\-l, \-\-list\fR
44
+ List all variables set in config file\.
45
+ .
46
+ .TP
47
+ \fB\-e, \-\-edit\fR
48
+ Opens an editor to modify the specified config file\.
49
+ .
50
+ .IP
51
+ Defaults to \fBvi\fR editor if non specified\. It first looks inside \-\-global or \-\-local config, then searches environement variables \fBEDITOR\fR and \fBVISUAL\fR before assuming default\.
52
+ .
53
+ .SH "CONFIGURATION FILE"
54
+ The \fBgcli\fR configuration file contains a number of variables that affect the way the GitHub API is quried\.
55
+ .
56
+ .SS "SYNTAX"
57
+ The configuration file is written in \fByaml\fR\. Therfore all formatting rules are derived from yaml specification\.
58
+ .
59
+ .SS "VARIABLES"
60
+ .
61
+ .TP
62
+ \fBauth\.token\fR
63
+ Authentication token\.
64
+ .
65
+ .TP
66
+ \fBauth\.basic\fR
67
+ Basic credentials in the form \fBlogin:password\fR\.
68
+ .
69
+ .TP
70
+ \fBcore\.endpoint\fR
71
+ Sets host path used as the base for all requests to GitHub API v3\.
72
+ .
73
+ .TP
74
+ \fBcore\.editor\fR
75
+ Sets the editor to be used when opening files\. By default \fBvi\fR is specified\.
76
+ .
77
+ .TP
78
+ \fBcore\.pager\fR
79
+ The command that will be used to paginate output\. Can be overridden with PAGER environment variable\. less
80
+ .
81
+ .TP
82
+ \fBcore\.no\-pager\fR
83
+ false
84
+ .
85
+ .TP
86
+ \fBcore\.no\-color\fR
87
+ If set to true disables color output\. By default is set to false\.
88
+ .
89
+ .TP
90
+ \fBcore\.format\fR
91
+ Determines output formatting\. Defaults to table output\.
92
+ .
93
+ .TP
94
+ \fBcore\.auto\fR
95
+ Automatic pagination of requests to GitHub\.
96
+ .
97
+ .TP
98
+ \fBcore\.aliases\fR
99
+ Global aliases used by commands\.
100
+ .
101
+ .SH "AUTHOR"
102
+ Piotr Murach
@@ -0,0 +1,96 @@
1
+ GCLI-CONFIG(1) GCLI-CONFIG(1)
2
+
3
+
4
+
5
+ NAME
6
+ gcli-config - Get or set global or local configuration options
7
+
8
+ SYNOPSIS
9
+ gcli config --global|--local name [value]
10
+ gcli config --global|--local -l | -list [name_regex]
11
+ gcli config --global|--local -e | --edit
12
+
13
+ DESCRIPTION
14
+ You can query/set options with this command. The name is actually a
15
+ hash key string that is a composite one, nested with dots. If only name
16
+ is provided, a value will be retrieved. If two parameters are given
17
+ then value will be set or updated depending whether it already exists
18
+ or not.\n
19
+
20
+ There two types of config files, global and project specific. When mod-
21
+ ifying options ensure that you modifying the correct config.
22
+
23
+ This command line will fail (with the exit code ret) if:
24
+
25
+ 1. The config file is invalid.
26
+
27
+
28
+
29
+ OPTIONS
30
+ --global
31
+ Writes configuration settings to global ~/.githubrc file inside
32
+ user home directory.
33
+
34
+ --local
35
+ Writes cofinguration settings inside the current directory to
36
+ the .githubrc file.
37
+
38
+ -l, --list
39
+ List all variables set in config file.
40
+
41
+ -e, --edit
42
+ Opens an editor to modify the specified config file.
43
+
44
+ Defaults to vi editor if non specified. It first looks inside
45
+ --global or --local config, then searches environement variables
46
+ EDITOR and VISUAL before assuming default.
47
+
48
+ CONFIGURATION FILE
49
+ The gcli configuration file contains a number of variables that affect
50
+ the way the GitHub API is quried.
51
+
52
+ SYNTAX
53
+ The configuration file is written in yaml. Therfore all formatting
54
+ rules are derived from yaml specification.
55
+
56
+ VARIABLES
57
+ auth.token
58
+ Authentication token.
59
+
60
+ auth.basic
61
+ Basic credentials in the form login:password.
62
+
63
+ core.endpoint
64
+ Sets host path used as the base for all requests to GitHub API
65
+ v3.
66
+
67
+ core.editor
68
+ Sets the editor to be used when opening files. By default vi is
69
+ specified.
70
+
71
+ core.pager
72
+ The command that will be used to paginate output. Can be over-
73
+ ridden with PAGER environment variable. less
74
+
75
+ core.no-pager
76
+ false
77
+
78
+ core.no-color
79
+ If set to true disables color output. By default is set to
80
+ false.
81
+
82
+ core.format
83
+ Determines output formatting. Defaults to table output.
84
+
85
+ core.auto
86
+ Automatic pagination of requests to GitHub.
87
+
88
+ core.aliases
89
+ Global aliases used by commands.
90
+
91
+ AUTHOR
92
+ Piotr Murach
93
+
94
+
95
+
96
+ July 2012 GCLI-CONFIG(1)
@@ -0,0 +1,16 @@
1
+ .\" generated with Ronn/v0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
+ .
4
+ .TH "GCLI\-REPO" "1" "July 2012" "" ""
5
+ .
6
+ .SH "NAME"
7
+ \fBgcli\-repo\fR \- Manage repository data
8
+ .
9
+ .SH "SYNOPSIS"
10
+ \fBgcli repo\fR \fBbranches\fR user repo
11
+ .
12
+ .br
13
+ \fBgcli repo\fR \fBcontribs|contributors\fR user repo
14
+ .
15
+ .br
16
+
@@ -0,0 +1,15 @@
1
+ GCLI-REPO(1) GCLI-REPO(1)
2
+
3
+
4
+
5
+ NAME
6
+ gcli-repo - Manage repository data
7
+
8
+ SYNOPSIS
9
+ gcli repo branches user repo
10
+ gcli repo contribs|contributors user repo
11
+
12
+
13
+
14
+
15
+ July 2012 GCLI-REPO(1)
@@ -0,0 +1,34 @@
1
+ .\" generated with Ronn/v0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
+ .
4
+ .TH "GCLI" "1" "July 2012" "" ""
5
+ .
6
+ .SH "NAME"
7
+ \fBgcli\fR \- Command Line Access to GitHub API v3
8
+ .
9
+ .SH "SYNOPSIS"
10
+ \fBgcli\fR COMMAND SUBCOMMAND [\fIargs\fR]
11
+ .
12
+ .SH "DESCRIPTION"
13
+ The \fBgcli\fR utility integrates command line with GitHub API v3\.
14
+ .
15
+ .SH "OPTIONS"
16
+ .
17
+ .TP
18
+ \fB\-\-token\fR
19
+ Authentication token\.
20
+ .
21
+ .TP
22
+ \fB\-\-no\-color\fR
23
+ Prints output without color\.
24
+ .
25
+ .TP
26
+ \fB\-\-pager\fR
27
+ Sets command to be used for paging results\. This option can be also set in the configuration file\.
28
+ .
29
+ .TP
30
+ \fB\-\-verbose\fR
31
+ Include
32
+ .
33
+ .SH "AUTHOR"
34
+ Piotr Murach
@@ -0,0 +1,33 @@
1
+ GCLI(1) GCLI(1)
2
+
3
+
4
+
5
+ NAME
6
+ gcli - Command Line Access to GitHub API v3
7
+
8
+ SYNOPSIS
9
+ gcli COMMAND SUBCOMMAND [args]
10
+
11
+ DESCRIPTION
12
+ The gcli utility integrates command line with GitHub API v3.
13
+
14
+ OPTIONS
15
+ --token
16
+ Authentication token.
17
+
18
+ --no-color
19
+ Prints output without color.
20
+
21
+ --pager
22
+ Sets command to be used for paging results. This option can be
23
+ also set in the configuration file.
24
+
25
+ --verbose
26
+ Include
27
+
28
+ AUTHOR
29
+ Piotr Murach
30
+
31
+
32
+
33
+ July 2012 GCLI(1)
@@ -0,0 +1,42 @@
1
+ # encoding: utf-8
2
+
3
+ module GithubCLI
4
+ module Manpage
5
+ extend self
6
+
7
+ MANPAGES = %w[
8
+ gcli-config.1
9
+ ]
10
+
11
+ def has?(command)
12
+ yield self if MANPAGES.include? command
13
+ end
14
+
15
+ # The groff command with extra arguments to turn
16
+ # roff into terminal output
17
+ def groff
18
+ "groff -Wall -mtty-char -mandoc -Tascii"
19
+ end
20
+
21
+ # Check if groff is installed on the system
22
+ def has_groff?
23
+ System.command? 'groff'
24
+ end
25
+
26
+ # Check if man is installed on the system
27
+ def has_man?
28
+ System.command? 'man'
29
+ end
30
+
31
+ def show(command)
32
+ root = File.expand_path("../man", __FILE__)
33
+
34
+ if has_groff?
35
+ system "#{groff} #{root}/#{command} | #{Pager.pager_command}"
36
+ else
37
+ system "#{Pager.pager_command} #{root}/#{command}.txt"
38
+ end
39
+ end
40
+
41
+ end # Manpage
42
+ end # GithubCLI
@@ -62,5 +62,5 @@ module GithubCLI
62
62
  read_io.close
63
63
  end
64
64
  end
65
- end # System
65
+ end # Pager
66
66
  end # GithubCLI
@@ -68,7 +68,8 @@ module GithubCLI
68
68
  end
69
69
 
70
70
  def print_command_not_found(cmd)
71
- GithubCLI.ui.info "ghc: '#{cmd}' is not a ghc command. See 'ghc --help'."
71
+ exec_name = GithubCLI.executable_name
72
+ GithubCLI.ui.info "#{exec_name}: '#{cmd}' is not a #{exec_name} command. See '#{exec_name} --help'."
72
73
  end
73
74
 
74
75
  def print_usage(flags, command='<command>')
@@ -76,11 +77,16 @@ module GithubCLI
76
77
 
77
78
  #{GithubCLI.program_name}
78
79
 
79
- Usage: ghc #{GithubCLI::Command::Usage.new(command, flags).format_usage }
80
+ Usage: #{GithubCLI.executable_name} #{GithubCLI::Command::Usage.new(command, flags).format_usage }
80
81
 
81
82
  TEXT
82
83
  end
83
84
 
85
+ def print_config(pattern=nil)
86
+ GithubCLI.ui.info "Configuration options:"
87
+ GithubCLI.ui.print_table GithubCLI.config.pretty(pattern)
88
+ end
89
+
84
90
  end
85
91
 
86
92
  end # Terminal
@@ -1,5 +1,6 @@
1
- require 'github_cli'
1
+ $:.unshift File.expand_path('../vendor/thor', __FILE__)
2
2
  require 'thor'
3
+ require 'github_cli'
3
4
 
4
5
  class Thor
5
6
  include Thor::Base
@@ -51,8 +52,18 @@ class Thor
51
52
  end
52
53
  end
53
54
 
55
+ MANPAGES = %w[
56
+ gcli-config.1
57
+ ]
58
+
54
59
  desc "help <command>", "Describe available commands or one specific command"
55
60
  def help(task = nil, subcommand = false)
61
+ command = "gcli-#{task}.1"
62
+
63
+ GithubCLI::Manpage.has?(command) do |manpage|
64
+ manpage.show(command) && return
65
+ end
66
+
56
67
  task ? self.class.task_help(shell, task) : self.class.help(shell, subcommand)
57
68
  end
58
69
  end # Thor
@@ -0,0 +1,10 @@
1
+ vendor_dir = File.expand_path('../vendor', __FILE__)
2
+
3
+ # Add any vendored libraries into search path
4
+ Dir.glob(vendor_dir + '/*').each do |dir|
5
+ $LOAD_PATH.unshift File.join(dir, 'lib')
6
+ end
7
+ $:.unshift File.expand_path('../vendor/thor', __FILE__)
8
+
9
+ require 'thor'
10
+ require 'thor/group'
@@ -1,3 +1,3 @@
1
1
  module GithubCLI
2
- VERSION = "0.4.4"
2
+ VERSION = "0.5.0"
3
3
  end
data/lib/github_cli.rb CHANGED
@@ -2,8 +2,7 @@
2
2
 
3
3
  require 'yaml'
4
4
  require 'pathname'
5
- require 'thor'
6
- require 'thor/group'
5
+ require 'github_cli/vendor'
7
6
  require 'github_api'
8
7
  require 'github_cli/thor_ext'
9
8
  require 'github_cli/version'
@@ -19,6 +18,8 @@ module GithubCLI
19
18
  autoload :Terminal, 'github_cli/terminal'
20
19
  autoload :System, 'github_cli/system'
21
20
  autoload :Pager, 'github_cli/pager'
21
+ autoload :Editor, 'github_cli/editor'
22
+ autoload :Manpage, 'github_cli/manpage'
22
23
  autoload :Commands, 'github_cli/commands'
23
24
  autoload :Helpers, 'github_cli/helpers'
24
25
  autoload :Formatter, 'github_cli/formatter'
@@ -42,6 +43,10 @@ module GithubCLI
42
43
  @ui ||= UI.new
43
44
  end
44
45
 
46
+ def executable_name
47
+ File.basename($PROGRAM_NAME)
48
+ end
49
+
45
50
  def default_configfile
46
51
  Helpers.default_configfile
47
52
  end
@@ -0,0 +1,82 @@
1
+ gcli-config(1) - Get or set global or local configuration options
2
+ =================================================================
3
+
4
+ ## SYNOPSIS
5
+
6
+ `gcli config` --global|--local name [value]<br>
7
+ `gcli config` --global|--local `-l | -list` [name_regex]<br>
8
+ `gcli config` --global|--local `-e | --edit`
9
+
10
+ ## DESCRIPTION
11
+
12
+ You can query/set options with this command. The name is actually a hash key
13
+ string that is a composite one, nested with dots. If only name is provided, a
14
+ value will be retrieved. If two parameters are given then value will be set
15
+ or updated depending whether it already exists or not.\n
16
+
17
+ There two types of config files, global and project specific. When modifying
18
+ options ensure that you modifying the correct config.
19
+
20
+ This command line will fail (with the exit code ret) if:
21
+
22
+ 1. The config file is invalid.
23
+
24
+ ## OPTIONS
25
+
26
+ * `--global`:
27
+ Writes configuration settings to global ~/.githubrc file inside user home directory.
28
+
29
+ * `--local`:
30
+ Writes cofinguration settings inside the current directory to the .githubrc file.
31
+
32
+ * `-l, --list`:
33
+ List all variables set in config file.
34
+
35
+ * `-e, --edit`:
36
+ Opens an editor to modify the specified config file.
37
+
38
+ Defaults to `vi` editor if non specified. It first looks inside --global or --local config, then searches environement variables `EDITOR` and `VISUAL` before assuming default.
39
+
40
+ ## CONFIGURATION FILE
41
+
42
+ The `gcli` configuration file contains a number of variables that affect the way the GitHub API is quried.
43
+
44
+ ### SYNTAX
45
+
46
+ The configuration file is written in `yaml`. Therfore all formatting rules are derived from yaml specification.
47
+
48
+ ### VARIABLES
49
+
50
+ * `auth.token`:
51
+ Authentication token.
52
+
53
+ * `auth.basic`:
54
+ Basic credentials in the form `login:password`.
55
+
56
+ * `core.endpoint`:
57
+ Sets host path used as the base for all requests to GitHub API v3.
58
+
59
+ * `core.editor`:
60
+ Sets the editor to be used when opening files. By default `vi` is specified.
61
+
62
+ * `core.pager`:
63
+ The command that will be used to paginate output. Can be overridden with PAGER environment variable. less
64
+
65
+ * `core.no-pager`:
66
+ false
67
+
68
+ * `core.no-color`:
69
+ If set to true disables color output. By default is set to false.
70
+
71
+ * `core.format`:
72
+ Determines output formatting. Defaults to table output.
73
+
74
+ * `core.auto`:
75
+ Automatic pagination of requests to GitHub.
76
+
77
+ * `core.aliases`:
78
+ Global aliases used by commands.
79
+
80
+ ## AUTHOR
81
+
82
+ Piotr Murach
@@ -0,0 +1,7 @@
1
+ gcli-repo(1) - Manage repository data
2
+ =====================================
3
+
4
+ ## SYNOPSIS
5
+
6
+ `gcli repo` `branches` user repo<br>
7
+ `gcli repo` `contribs|contributors` user repo<br>