1. #1
    Sencha User
    Join Date
    May 2010
    Location
    france
    Posts
    8
    Vote Rating
    0
    nicorem is on a distinguished road

      0  

    Default sass compass compile error

    sass compass compile error


    hello

    when i try to compile in ruby with "compass compile"
    i have this message
    Code:
    error my-theme.scss (line 759 : invalid css after ' ... "-ml" may only be used at the beginning of a selector
    and this other one :
    Code:
    parsebox(3px, 1) gt parsebox (3px,2)
    i already installed

    haml --pre
    compass --pre (0.12.alpha.0)
    sass --pre (3.2.0.alpha.21)
    ruby 1.9.2 p290


    thanks for help

    extjs makes me crazy

  2. #2
    Sencha - Community Support Team VinylFox's Avatar
    Join Date
    Mar 2007
    Location
    Baltimore, MD
    Posts
    1,501
    Vote Rating
    8
    VinylFox will become famous soon enough VinylFox will become famous soon enough

      0  

    Default


    You try it with stable versions of compass and sass yet?

  3. #3
    Sencha User
    Join Date
    May 2010
    Location
    france
    Posts
    8
    Vote Rating
    0
    nicorem is on a distinguished road

      0  

    Default


    hell
    yes but it is the same problem without the --pre option

  4. #4
    Sencha User
    Join Date
    May 2010
    Location
    france
    Posts
    8
    Vote Rating
    0
    nicorem is on a distinguished road

      0  

    Default


    hello
    i have installed compass 0.10.6 to test and now the error is
    Code:
    Syntax error: Not a valid color stop: #d1dff0 49%
            on line 55 of C:/extjs/lib/resources/sass/../../extjs/resources/themes/stylesheets/ext4/default/variables/_pickers.scss
            from line 9 of C:/extjs/lib/resources/sass/../../extjs/resources/themes/stylesheets/ext4/default/_variables.scss
            from line 8 of C:/extjs/lib/resources/sass/../../extjs/resources/themes/stylesheets/ext4/default/_all.scss
            from line 8 of C:/extjs/lib/resources/sass/my-ext-theme.scss
    i unstalled ruby to install the 1.87 version
    i tried all the solutions, that i read in the forum but it never works !!
    i tried with an other computer too
    i 'm using extjs 4.0.2a, is it the reason ?
    what can i do more ?

    thanks

  5. #5
    Sencha User
    Join Date
    May 2010
    Location
    france
    Posts
    8
    Vote Rating
    0
    nicorem is on a distinguished road

      0  

    Default


    After a long, long time searching
    the solution :
    i d'ont know if it is the best one, but it works for me

    1 ) follow the tutorial http://www.sencha.com/learn/theming/
    and be sure to install compass 0.11.5 (the same version as in the tutorial )

    Code:
     
    gem uninstall compass
    gem uninstall sass
    gem install compass --version 0.11.5
    if you do

    Code:
    gem install compass
    it will be the last version of compass that will be installed

    2) copy all the content of util.rbs in config.rbs
    Code:
    # $ext_path: This should be the path of where the ExtJS SDK is installed
    # Generally this will be in a lib/extjs folder in your applications root
    # <root>/lib/extjs
    $ext_path = "../../lib/extjs"
    
    # sass_path: the directory your Sass files are in. THIS file should also be in the Sass folder
    # Generally this will be in a resources/sass folder
    # <root>/resources/sass
    sass_path = File.dirname(__FILE__)
    
    # css_path: the directory you want your CSS files to be.
    # Generally this is a folder in the parent directory of your Sass files
    # <root>/resources/css
    css_path = File.join(sass_path, "..", "css")
    
    # output_style: The output style for your compiled CSS
    # nested, expanded, compact, compressed
    # More information can be found here http://sass-lang.com/docs/yardoc/file.SASS_REFERENCE.html#output_style
    output_style = :expanded
    
    # We need to load in the Ext4 themes folder, which includes all it's default styling, images, variables and mixins
    load File.join(File.dirname(__FILE__), $ext_path, 'resources', 'themes')
    
    
    module ExtJS4
      module SassExtensions
        module Functions
          module Utils
            def parsebox(list, n)
              assert_type n, :Number
              if !n.int?
                raise ArgumentError.new("List index #{n} must be an integer")
              elsif n.to_i < 1
                raise ArgumentError.new("List index #{n} must be greater than or equal to 1")
              elsif n.to_i > 4
                raise ArgumentError.new("A box string can't contain more then 4")
              end
    
              new_list = list.clone.to_a
              size = new_list.size
                          
              if n.to_i >= size
                if size == 1
                  new_list[1] = new_list[0]
                  new_list[2] = new_list[0]
                  new_list[3] = new_list[0]
                elsif size == 2
                  new_list[2] = new_list[0]
                  new_list[3] = new_list[1]
                elsif size == 3
                  new_list[3] = new_list[1]
                end
              end
              
              new_list.to_a[n.to_i - 1]
            end
            
            def parseint(value)
              Sass::Script::Number.new(value.to_i)
            end
            
            # Returns a background-image property for a specified images for the theme
            def theme_image(theme, path, without_url = false, relative = false)
              path = path.value
              theme = theme.value
              without_url = (without_url.class == FalseClass) ? without_url : without_url.value
              
              relative_path = "../images/"
              
              if relative
                if relative.class == Sass::Script::String
                  relative_path = relative.value
                  relative = true
                elsif relative.class == FalseClass || relative.class == TrueClass
                  relative = relative
                else
                  relative = relative.value
                end
              else
                relative = false
              end
              
              if relative
                image_path = File.join(relative_path, theme, path)
              else
              
               images_path=relative_path
                image_path = File.join(images_path, path)
              end
              
              if !without_url
                url = "url('#{image_path}')"
              else
                url = "#{image_path}"
              end
              
              Sass::Script::String.new(url)
            end
    
            def theme_image_exists(path)
              result = false
    
              where_to_look = path.value.gsub('../../resources', 'resources')
    
              if where_to_look && FileTest.exists?("#{where_to_look}")
                result = true
              end
    
              return Sass::Script::Bool.new(result)
            end
          end
        end
      end
    end
    
    module Sass::Script::Functions
      include ExtJS4::SassExtensions::Functions::Utils
    end
    and then

    Code:
    compass compile

Thread Participants: 1

Tags for this Thread