hackademic 0.1.3 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e6fd35f68a4a0d43e53d5baf797570ae6fbb8b4e
4
- data.tar.gz: bff3fa30451d396c5585c6d9d08d29c762c7c971
3
+ metadata.gz: c2e7259df01f7ad5ae1790905497a2455230fd8a
4
+ data.tar.gz: 682e0d0194273a23ba78c8853b66b6fbe8454a2e
5
5
  SHA512:
6
- metadata.gz: 95a1282ccc6dee89182d6e481299477ee3c326893982f723f72251ea37efa85b80a7cfe5ac0cf20f73b052843ae5db6651929abe1e892196c5ce88852934067e
7
- data.tar.gz: 88bb3931469fd60ffef1778713ea8d988cb80ff7313368f210c1d0edba59845e9cefc9f7f10e0d41d5ee5a364b6b7933307c8dd39dd510513bade5c96afa0f5d
6
+ metadata.gz: 2caeaaf5f13b5452ab6fd9cade812ffa2fb944d2d7b27ceebf760a6eb20f419a0ab54254ec3bb5c717992291611d238bf8cd9f57983f84bda6ef5c7bd7c79444
7
+ data.tar.gz: 63ed6080284fc0265f53da0c5956c8f6ebda3133b2267d90cbb89d971168ed0dc83dd07b726a3f84c7570488361254531c76a7d1b23b43b5f3a8fe8197226d3a
data/README.md CHANGED
@@ -5,6 +5,6 @@
5
5
  ### Hackademic manages your plain-text academic workflow
6
6
 
7
7
 
8
- © 2016 Kizmeta and Matthew Petty [\@lodestone](https://git.io/lodestone)
8
+ © 2016 Kizmeta and Matthew Petty [@lodestone](https://git.io/lodestone)
9
9
 
10
10
  LICENSE MIT
data/hackademic.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'hackademic'
3
- s.version = '0.1.3'
3
+ s.version = '0.2.0'
4
4
  s.date = '2016-01-03'
5
5
  s.summary = "Create and manage your academic workflow"
6
6
  s.description = "Hackademic manages your plain-text academic workflow."
data/lib/hackademic.rb CHANGED
@@ -7,55 +7,107 @@ class Hackademic < Thor
7
7
 
8
8
  include Thor::Actions
9
9
 
10
- Hackademic.source_root('$HOME')
10
+ Hackademic.source_root('$HOME/Dropbox')
11
11
 
12
- desc "setup [DIRECTORY]", "Setup a new Hackademic repository at [DIRECTORY]"
13
- def setup(directory)
12
+ desc "setup [FOLDER]", "Setup a new Hackademic repository at [FOLDER]"
13
+ def setup(root_directory)
14
14
 
15
- say "--------------------------------------------------------------", :blue
16
- say "Hackademic Setup:", :blue
15
+ say "--------------------------------------------------------------", :cyan
16
+ say "Hackademic Setup:", :green
17
+ say "⫸⫸⫸ Setting up main Hackademic folder structure:", :yellow
17
18
 
19
+ directory = "#{root_directory}/Hackademic"
18
20
  empty_directory(directory)
19
- empty_directory("#{directory}/Libraries")
20
- empty_directory("#{directory}/Libraries/_MINE")
21
- empty_directory("#{directory}/Meta")
22
- empty_directory("#{directory}/Notes")
23
- empty_directory("#{directory}/Projects")
21
+
22
+ empty_directory "#{directory}/Libraries"
23
+ empty_directory "#{directory}/Libraries/My-Library"
24
+ create_file "#{directory}/Libraries/My-Library/References.bib"
25
+
26
+ empty_directory "#{directory}/Meta"
27
+
28
+ say "⫸⫸⫸ Initializing version control (git) for Notes database:", :yellow
29
+ empty_directory "#{directory}/Notes"
30
+ create_file "#{directory}/Notes/SampleNote.md"
31
+ unless File.exists? "#{directory}/Notes/.git"
32
+ inside "#{directory}/Notes" do
33
+ run "git init ."
34
+ run "git add ."
35
+ run "git commit -m 'Initial commit of Notes Database'"
36
+ end
37
+ end
38
+
39
+ empty_directory "#{directory}/Projects"
40
+
41
+ say "»»»»» Done!", :green
42
+ say "--------------------------------------------------------------", :cyan
24
43
 
25
44
  end
26
45
 
27
- desc "new [PROJECT]", "Setup a new Hackademic project called [PROJECT]"
28
- def new(project)
46
+ desc "new [PROJECTNAME]", "Setup a new Hackademic project called [PROJECTNAME]"
47
+ def new(project_name)
48
+ say "--------------------------------------------------------------", :cyan
49
+ say "⫸⫸⫸⫸ Setting up project #{project_name}!", :cyan
50
+
51
+ project = "~/Dropbox/Hackademic/Projects/#{project_name}"
29
52
  empty_directory(project)
30
- empty_directory("#{project}/_WORK_")
53
+
54
+ say "»»»»» Creating *_WORKING_* directory:", :green
55
+ empty_directory("#{project}/_WORKING_")
56
+ template '../templates/DRAFT.md.tt', "#{project}/_WORKING_/DRAFT.md"
57
+
58
+ say "»»»»» Creating *Archive* directory:", :green
31
59
  empty_directory("#{project}/Archive")
32
- empty_directory("#{project}/Back2it")
33
- empty_directory("#{project}/Resources")
60
+ create_file "#{project}/Archive/.gitkeep"
61
+
62
+ say "»»»»» Creating *To-Process* directory:", :green
63
+ empty_directory("#{project}/To-Process")
64
+ create_file "#{project}/To-Process/.gitkeep"
65
+
66
+ say "»»»»» Creating *Project Notes* directory:", :green
34
67
  empty_directory("#{project}/Resources/Notes")
68
+ create_file "#{project}/Resources/Notes/.gitkeep"
69
+
70
+ say "»»»»» Creating *Resources* directory:", :green
71
+ empty_directory("#{project}/Resources")
72
+ template '../templates/Config.yml.tt', "#{project}/Resources/Config.yml"
73
+
74
+ empty_directory("#{project}/Resources/Figures")
75
+ create_file "#{project}/Resources/Figures/.gitkeep"
76
+
77
+ empty_directory("#{project}/Resources/Data")
78
+ create_file "#{project}/Resources/Data/.gitkeep"
79
+
80
+ empty_directory("#{project}/Resources/templates")
81
+ create_file "#{project}/Resources/templates/.gitkeep"
82
+
83
+ say "»»»»» Creating *Versions* directory:", :green
35
84
  empty_directory("#{project}/Versions")
36
- empty_directory("#{project}/Projects")
85
+ create_file "#{project}/Versions/.gitkeep"
86
+
87
+ say "»»»»» Creating final files:", :green
88
+ @project_name = project_name
89
+ template "../templates/README.md.tt", "#{project}/README.md"
90
+ template '../templates/CHANGELOG.md.tt', "#{project}/CHANGELOG.md"
91
+ template '../templates/TODO.txt.tt', "#{project}/TODO.txt"
92
+
93
+ say "»»»»» Initializing version control (git) for project...", :green
94
+ inside "#{project}" do
95
+ run "git init .", {:capture => true}
96
+ run "git add .", {:capture => true}
97
+ run "git commit -m 'Initial commit of #{project_name}'", {:capture => true}
98
+ end
99
+
100
+ say "⫸⫸⫸⫸ DONE!", :cyan
101
+ say "⫸⫸⫸⫸ Project created at #{project}", :cyan
102
+ say "--------------------------------------------------------------", :cyan
37
103
  end
38
104
 
39
105
  def self.source_root
40
106
  File.dirname(__FILE__)
41
107
  end
42
108
 
43
- def create_config_file
44
- template('templates/config.yml', "#{name}/Resources/config.yml")
45
- end
46
-
47
- def create_test_file
48
- test = options[:test_framework] == "rspec" ? :spec : :test
49
- create_file "#{name}/#{test}/#{name}_#{test}.rb"
50
- end
109
+ no_tasks {
51
110
 
52
- def copy_licence
53
- if yes?("Use MIT license?")
54
- # Make a copy of the MITLICENSE file at the source root
55
- copy_file "MITLICENSE", "#{name}/MITLICENSE"
56
- else
57
- say "Shame on you…", :red
58
- end
59
- end
111
+ }
60
112
 
61
113
  end
@@ -0,0 +1 @@
1
+ # CHANGELOG
File without changes
@@ -0,0 +1,3 @@
1
+ # MAIN DRAFT FOR <%= @project_name %>
2
+
3
+ *Write lots of good stuff here*
@@ -0,0 +1,9 @@
1
+ # <%= @project_name %>
2
+
3
+ ## Initial Project TODO
4
+
5
+ - Add a git remote and push upstream
6
+ - Change this README.md file
7
+ - Add credits to README.md
8
+ - Look over Resources/Config.yml
9
+ - Make sure to update CHANGELOG.md periodically!
@@ -0,0 +1 @@
1
+ # TODO.txt
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hackademic
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthew Petty
@@ -25,6 +25,11 @@ files:
25
25
  - lib/hackademic.rb
26
26
  - lib/hackademy/hackademy.rb
27
27
  - lib/hackademy/setup.rb
28
+ - templates/CHANGELOG.md.tt
29
+ - templates/Config.yml.tt
30
+ - templates/DRAFT.md.tt
31
+ - templates/README.md.tt
32
+ - templates/TODO.txt.tt
28
33
  homepage: http://github.com/kizmeta/hackademic
29
34
  licenses:
30
35
  - MIT