среда, 16 октября 2013 г.

Столкнулся в compass с проблемой, что при фомировании спрайта функцией sprite-map составдяющие его картинки сортируются по размеру фала. Способа сортировать по имени файлов  в текущей версии Compass 0.12.2 (Alnilam) нет, поэтому правим исходный rb-скрипт:

/var/lib/gems/1.8/gems/compass-0.12.2/lib/compass/sass_extensions/sprites/layout_methods.rb

ищем код

            @images.sort! do |a,b| 
              if (b.size <=> a.size) === 0
                a.name <=> b.name
              else
                b.size <=> a.size
              end
            end

и меняем на

            @images.sort! do |a,b| 
#              if (b.size <=> a.size) === 0
                a.name <=> b.name
#              else
#                b.size <=> a.size
#              end
            end

понедельник, 30 сентября 2013 г.

Сейчас убил два часа послерабочего времени на то, чтобы удаленно на рабочей машине переинсталить ruby; установить sass и compass через gem; и создать для них кучу alias'ов.

Как всегда помог stackoverflow.com
http://stackoverflow.com/questions/19068382/sass-compile-error-stalenesscheckermutex-nameerror

step #1:  сделал reinstall ruby и gems
sudo apt-get purge ruby rubygems
sudo apt-get install ruby rubygems
step #2: установил sass и compass через gem
gem uninstall sass
gem uninstall compass
gem install sass --version 3.2.10
gem install compass
step #3: добавил alias в ~/.bashrc
alias compass='/var/lib/gems/1.8/gems/compass-0.12.2/bin/compass'
alias sass='/var/lib/gems/1.8/gems/sass-3.2.10/bin/sass'
alias sass-convert='/var/lib/gems/1.8/gems/sass-3.2.10/bin/sass-convert'
alias scss='/var/lib/gems/1.8/gems/sass-3.2.10/bin/scss'
В качестве приза мне стали доступны функции автоматической генерации css-спрайтов из под compass:
http://compass-style.org/help/tutorials/spriting/
http://compass-style.org/reference/compass/helpers/sprites/#sprite-map