Use less to build all CSS files

CSS file names are now updated when visitor's browser must reload them
Allow files with .css extension to skip less compilation (IE6 invalid CSS syntax)
This commit is contained in:
Saivann 2013-10-22 03:17:02 -04:00
parent 25af20cceb
commit 6f034e71fb
5 changed files with 12 additions and 7 deletions

View file

@ -20,9 +20,9 @@ menu:
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
<title>{% capture title %}{% translate title %}{% endcapture %}{% if title != '' %}{{ title }}{% else %}{{ page.title }}{% endif %}</title> <title>{% capture title %}{% translate title %}{% endcapture %}{% if title != '' %}{{ title }}{% else %}{{ page.title }}{% endif %}</title>
{% lesscss main.less %} {% lesscss main.less %}
<!--[if lt IE 8]><link rel="stylesheet" type="text/css" href="/css/ie.css" /><script type="text/javascript" src="/js/ie.js"></script><![endif]--> <!--[if lt IE 8]>{% lesscss ie.css %}<script type="text/javascript" src="/js/ie.js"></script><![endif]-->
{% if page.lang == 'ar' or page.lang == 'fa' %}<link rel="stylesheet" type="text/css" href="/css/rtl.css">{% endif %} {% if page.lang == 'ar' or page.lang == 'fa' %}{% lesscss rtl.less %}{% endif %}
{% if page.lang == 'pl' or page.lang == 'ru' or page.lang == 'zh_CN' or page.lang == 'zh_TW' %}<link rel="stylesheet" type="text/css" href="/css/sans.css">{% endif %} {% if page.lang == 'pl' or page.lang == 'ru' or page.lang == 'zh_CN' or page.lang == 'zh_TW' %}{% lesscss sans.less %}{% endif %}
<script type="text/javascript" src="/js/main.js"></script> <script type="text/javascript" src="/js/main.js"></script>
<link rel="shortcut icon" href="/favicon.png"> <link rel="shortcut icon" href="/favicon.png">
<link rel="apple-touch-icon-precomposed" href="/img/logo_ios.png"/> <link rel="apple-touch-icon-precomposed" href="/img/logo_ios.png"/>

View file

@ -30,10 +30,15 @@ module Jekyll
Dir.chdir(less_dir) do Dir.chdir(less_dir) do
choices = Dir['**/*'].reject { |x| File.symlink?(x) } choices = Dir['**/*'].reject { |x| File.symlink?(x) }
if choices.include?(@file) if choices.include?(@file)
source = File.read(@file)
f = IO.popen("lessc -", "w+") if /\.css$/.match(@file)
f.write(source) f = file = File.new(@file, "r")
f.close_write() else
source = File.read(@file)
f = IO.popen("lessc -", "w+")
f.write(source)
f.close_write()
end
css = f.readlines().join() css = f.readlines().join()