xcode
parser for xcodeproj/project.pbxproj files
Last updated a year ago by erisu .
Apache-2.0 · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install xcode 
SYNC missed versions from official npm registry.

cordova-node-xcode

NPM

Node CI

Parser utility for xcodeproj project files

Allows you to edit xcodeproject files and write them back out.

based on donated code from alunny / node-xcode

Example

// API is a bit wonky right now
var xcode = require('xcode'),
    fs = require('fs'),
    projectPath = 'myproject.xcodeproj/project.pbxproj',
    myProj = xcode.project(projectPath);

// parsing is async, in a different process
myProj.parse(function (err) {
    myProj.addHeaderFile('foo.h');
    myProj.addSourceFile('foo.m');
    myProj.addFramework('FooKit.framework');
   
    fs.writeFileSync(projectPath, myProj.writeSync());
    console.log('new project written');
});

Working on the parser

If there's a problem parsing, you will want to edit the grammar under lib/parser/pbxproj.pegjs. You can test it online with the PEGjs online thingy at https://pegjs.org/online - I have had some mixed results though.

Tests under the test/parser directory will compile the parser from the grammar. Other tests will use the prebuilt parser (lib/parser/pbxproj.js).

To rebuild the parser js file after editing the grammar, run:

npm run pegjs

(and be sure to restore the Apache license notice in lib/parser/pbxproj.js before committing)

License

Apache V2

Current Tags

  • 3.0.1                                ...           latest (a year ago)
  • 3.0.2-nightly.2021.9.17.8b98cabc                                ...           nightly (11 days ago)

341 Versions

Downloads
Today 944
This Week 6,858
This Month 1,254,807
Last Day 5,914
Last Week 79,545
Last Month 2,024,780
Dependencies (2)
Dev Dependencies (3)
Dependents (517)

Copyright 2014 - 2021 © npmmirror.com |