aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrandon Mathis <brandon@imathis.com>2011-08-10 18:14:56 -0400
committerBrandon Mathis <brandon@imathis.com>2011-08-10 18:15:10 -0400
commit0e072543dad52537ad2f445b5c718488c379144c (patch)
tree7828aaa7f256a70d9a62bac01b5b0a3e74b5fd84
parent9c2f64d20cd881054abe09247c26162118afe541 (diff)
downloadmy_new_personal_website-0e072543dad52537ad2f445b5c718488c379144c.tar.xz
my_new_personal_website-0e072543dad52537ad2f445b5c718488c379144c.zip
added support for preserving customized source/index.html during template updates. Moved the blog index code to a partial in source/_includes/blog_index.html
Diffstat (limited to '')
-rw-r--r--.themes/classic/source/_includes/blog_index.html40
-rw-r--r--.themes/classic/source/index.html43
-rw-r--r--Rakefile5
3 files changed, 47 insertions, 41 deletions
diff --git a/.themes/classic/source/_includes/blog_index.html b/.themes/classic/source/_includes/blog_index.html
new file mode 100644
index 00000000..c77ea7d0
--- /dev/null
+++ b/.themes/classic/source/_includes/blog_index.html
@@ -0,0 +1,40 @@
+<div class="blog-index">
+{% assign index = true %}
+{% for post in paginator.posts %}
+{% assign content = post.content %}
+ <article>
+ {% include article.html %}
+ </article>
+{% endfor %}
+<nav role="pagination">
+ <div>
+ {% if paginator.next_page %}
+ <a class="prev" href="/page{{paginator.next_page}}/">&larr; Older</a>
+ {% endif %}
+ <a href="/blog/archives">Blog Archives</a>
+ {% if paginator.previous_page and paginator.previous_page > 1 %}
+ <a class="next" href="/page{{paginator.previous_page}}/">Newer &rarr;</a>
+ {% elsif paginator.previous_page %}
+ <a class="next" href="/">Newer &rarr;</a>
+ {% endif %}
+ </div>
+</nav>
+{% if site.disqus_short_name %}
+<script type="text/javascript">
+ var disqus_shortname = '{{ site.disqus_short_name }}';
+ (function () {
+ var s = document.createElement('script'); s.async = true;
+ s.type = 'text/javascript';
+ s.src = 'http://' + disqus_shortname + '.disqus.com/count.js';
+ (document.getElementsByTagName('HEAD')[0] || document.getElementsByTagName('BODY')[0]).appendChild(s);
+ }());
+</script>
+{% endif %}
+</div>
+<aside role=sidebar>
+ {% if site.blog_index_asides.size %}
+ {% include_array blog_index_asides %}
+ {% else %}
+ {% include_array default_asides %}
+ {% endif %}
+</aside>
diff --git a/.themes/classic/source/index.html b/.themes/classic/source/index.html
index 7f4c0e12..fa5310a9 100644
--- a/.themes/classic/source/index.html
+++ b/.themes/classic/source/index.html
@@ -1,44 +1,5 @@
---
layout: default
-footer: false
---
-<div class="blog-index">
-{% assign index = true %}
-{% for post in paginator.posts %}
-{% assign content = post.content %}
- <article>
- {% include article.html %}
- </article>
-{% endfor %}
-<nav role="pagination">
- <div>
- {% if paginator.next_page %}
- <a class="prev" href="/page{{paginator.next_page}}/">&larr; Older</a>
- {% endif %}
- <a href="/blog/archives">Blog Archives</a>
- {% if paginator.previous_page and paginator.previous_page > 1 %}
- <a class="next" href="/page{{paginator.previous_page}}/">Newer &rarr;</a>
- {% elsif paginator.previous_page %}
- <a class="next" href="/">Newer &rarr;</a>
- {% endif %}
- </div>
-</nav>
-{% if site.disqus_short_name %}
-<script type="text/javascript">
- var disqus_shortname = '{{ site.disqus_short_name }}';
- (function () {
- var s = document.createElement('script'); s.async = true;
- s.type = 'text/javascript';
- s.src = 'http://' + disqus_shortname + '.disqus.com/count.js';
- (document.getElementsByTagName('HEAD')[0] || document.getElementsByTagName('BODY')[0]).appendChild(s);
- }());
-</script>
-{% endif %}
-</div>
-<aside role=sidebar>
- {% if site.blog_index_asides.size %}
- {% include_array blog_index_asides %}
- {% else %}
- {% include_array default_asides %}
- {% endif %}
-</aside>
+
+{% include blog_index.html %}
diff --git a/Rakefile b/Rakefile
index 86e07b5d..dd309637 100644
--- a/Rakefile
+++ b/Rakefile
@@ -1,6 +1,10 @@
require "rubygems"
require "bundler/setup"
+# If you customize your site's index page setting custom_index to true
+# will preserve your changes when running `rake update_source`
+custom_index = false
+
## -- Rsync Deploy config -- ##
# Be sure your public key is listed in your server's ~/.ssh/authorized_keys file
ssh_user = "user@domain.com"
@@ -150,6 +154,7 @@ task :update_source, :theme do |t, args|
system "mkdir -p #{source_dir}; cp -R #{themes_dir}/"+theme+"/source/. #{source_dir}"
system "cp -Rn #{source_dir}.old/. #{source_dir}"
system "cp -Rf #{source_dir}.old/_includes/custom/. #{source_dir}/_includes/custom/"
+ system "cp -Rf #{source_dir}.old/index.html #{source_dir}" if custom_index
puts "## Updated #{source_dir} ##"
end