Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I ended up symlinking <code>dist</code> to <code>src</code> because we needed Yeoman to compile out SCSS and CoffeScript files. The bummer here is <code>yeoman server</code> cannot be running when you <code>yeoman build</code> to create the <code>dist</code> directory. Additionally <em>bummerish</em> is when you <code>yeoman server</code> again, it cleans up the <code>dist</code> directory. </p> <p>I plan on working on creating a yeoman generator for generator for Trigger and also add some grunt tasks that mimic the <code>Rakefile</code> tasks I created when we were testing and developing with Sinatra (e.g. <code>yeoman simulator</code>, <code>yeoman device</code>, <code>yeoman testflight</code>).</p> <p><strong>edit</strong>: I've added a few tasks directly to my <code>gruntfile.js</code> for now. I added <code>grunt-contrib-copy</code> and added the following subtasks. </p> <pre><code>copy: { app: { files: { "src/": "app/**", // core app files }, }, compass: { files: { "src/styles/": "temp/styles/**", // drop in the compiled coffeescript } }, coffee: { files: { "src/scripts/": "temp/scripts/**" // drop in the compiled scss } } }, </code></pre> <p>I added those tasks to the appropriate watch commands and added a new watch to watch the <code>app</code> dir.</p> <pre><code>watch: { coffee: { files: 'app/scripts/**/*.coffee', tasks: 'coffee copy:coffee reload' }, compass: { files: [ 'app/styles/**/*.{scss,sass}' ], tasks: 'compass copy:compass reload' }, app: { files: [ 'app/**/*.{html,png,json,css,js}' ], tasks: 'copy:app' }, } </code></pre> <p>Now <code>yeoman server</code>, which invokes <code>yeoman watch</code>, keeps <code>src</code> up to date.</p> <p>I also brought in <code>grunt-shell</code> to do the following. </p> <pre><code>shell: { forge_build: { command: 'forge build ios 2&gt;&amp;1 | tee output', stdout: true }, forge_run_device: { command: 'forge run ios --ios.device device', stdout: true }, forge_run: { command: 'forge run ios', stdout: true } } </code></pre> <p>And create some tasks like:</p> <pre><code>grunt.registerTask("sim", 'copy shell:forge_build shell:forge_run'); grunt.registerTask("device", 'copy shell:forge_build shell:forge_run_device'); </code></pre> <p>I'm not entirely happy with it, but it lets me keep running <code>yeoman server</code> and drop to a console elsewhere and run <code>yeoman device</code> to bring it up in the device. it also keeps the <code>src</code> directory in a place where it can be checked in. </p> <p>Eventually I'll move this to a yeoman plug in and add some more specific build tasks to clean up the src dir for the appropriate target (e.g. iOS, Android) to keep dir size small. </p> <p><strong>edit:</strong> I've created <code>grunt-forge</code> to help run <code>forge</code> from inside Yeoman. I've also blogged a bit about creating <a href="http://fooberry.com/2013/02/12/terse-triggerio-logging/" rel="nofollow">a more terse output for `forge</a>.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload