hackademic 0.1.3 → 0.2.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.
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