https://github.com/nativescript/nativescript-dev-xcode
Apache cordova
https://github.com/nativescript/nativescript-dev-xcode
Last synced: 8 months ago
JSON representation
Apache cordova
- Host: GitHub
- URL: https://github.com/nativescript/nativescript-dev-xcode
- Owner: NativeScript
- License: apache-2.0
- Fork: true (apache/cordova-node-xcode)
- Created: 2019-03-18T10:09:45.000Z (about 7 years ago)
- Default Branch: main
- Last Pushed: 2024-02-20T15:13:06.000Z (over 2 years ago)
- Last Synced: 2024-04-14T04:51:32.096Z (about 2 years ago)
- Language: JavaScript
- Homepage:
- Size: 1.15 MB
- Stars: 2
- Watchers: 4
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# nativescript-dev-xcode
Parser utility for xcodeproj project files
Allows you to edit xcodeproject files and write them back out.
Forked from: [apache/cordova-node-xcode](https://github.com/apache/cordova-node-xcode)
## Example
```js
// 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