<commit_before>module.exports = function(grunt) {

    // config
    grunt.initConfig({

        less: {
            build: {
                expand: true,
                cwd: 'src/less/',
                src: ['**/*.less'],
                dest: 'build/css/',
                ext: '.css'
            }
        },

        csslint: {
            check: {
                src: '<%= less.build.dest %>**/*.css'
            }
        },

        watch: {
            less2css: {
                files: 'src/css/*.less',
                tasks: ['less', 'csslint']
            }
        },

        typescript: {
            build: {
                expand: true,
                cwd: 'src/ts/',
                src: ['**/*.ts', '!node_modules/**/*.ts'],
                dest: 'build/js/',
                ext: '.js',
                options: {
                    noImplicitAny: true
                }
            }
        }

    });

    // plugin
    grunt.loadNpmTasks('grunt-contrib-less');
    grunt.loadNpmTasks('grunt-contrib-csslint');
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.loadNpmTasks('grunt-typescript');

    // tasks
    grunt.registerTask('default', ['less', 'csslint', 'typescript']);

};<commit_msg>Edit  gruntfile: create task less2css<commit_after>module.exports = function(grunt) {

    // config
    grunt.initConfig({

        less: {
            build: {
                expand: true,
                cwd: 'src/less/',
                src: ['**/*.less'],
                dest: 'build/css/',
                ext: '.css'
            }
        },

        csslint: {
            check: {
                src: '<%= less.build.dest %>**/*.css'
            }
        },

        watch: {
            less: {
                files: 'src/less/**/*.less',
                tasks: ['less', 'csslint']
            }
        },

        typescript: {
            build: {
                expand: true,
                cwd: 'src/ts/',
                src: ['**/*.ts', '!node_modules/**/*.ts'],
                dest: 'build/js/',
                ext: '.js',
                options: {
                    noImplicitAny: true
                }
            }
        }

    });

    // plugin
    grunt.loadNpmTasks('grunt-contrib-less');
    grunt.loadNpmTasks('grunt-contrib-csslint');
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.loadNpmTasks('grunt-typescript');

    // tasks
    grunt.registerTask('less2css', ['less', 'csslint']);
    grunt.registerTask('default', ['less2css', 'typescript']);

};
{'fraction_non_alphanumeric': 0.16430260047281323, 'fraction_numerical': 0.0015760441292356187, 'mean_word_length': 1.1193656093489148, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2165411', 'n_tokens_mistral': 791, 'n_tokens_neox': 736, 'n_words': 114}