go-enry/_testdata/JSON/GMS2_Project.yyp
Miguel Molina 8ff885a3a8
implement IsGenerated helper to filter out generated files
Closes #17

Implements the IsGenerated helper function to filter out generated
files using the rules and matchers in:
- https://github.com/github/linguist/blob/master/lib/linguist/generated.rb

Since the vast majority of matchers have very different logic, it cannot
be autogenerated directly from linguist like other logics in enry, so it's
translated by hand.

There are three different types of matchers in this implementation:
- By extension, which mark as generated based only in the extension. These
  are the fastest matchers, so they're done first.
- By file name, which matches patterns against the filename. These
  are performed in second place. Unlike linguist, we try to use string
  functions instead of regexps as much as possible.
- Finally, the rest of the matchers, which go into the content and try
  to identify if they're generated or not based on the content. Unlike
  linguist, we try to only read the content we need and not split it
  all unless it's necessary and use byte functions instead of regexps
  as much as possible.

Signed-off-by: Miguel Molina <miguel@erizocosmi.co>
2020-05-28 08:55:13 +02:00

374 lines
13 KiB
JSON

{
"id": "62aa8308-837c-4613-a44e-a1306eee5c3c",
"modelName": "GMProject",
"mvc": "1.0",
"IsDnDProject": false,
"configs": [
],
"option_ecma": false,
"parentProject": {
"id": "18731a27-007b-4c7c-802b-b7eac446e27a",
"modelName": "GMProjectParent",
"mvc": "1.0",
"alteredResources": [
{
"Key": "ed6a955d-5826-4f98-a450-10b414266c27",
"Value": {
"configDeltas": [
"inherited"
],
"id": "a3c2778c-ba48-40f4-b180-c31dd0bf91c2",
"resourcePath": "options\\main\\options_main.yy",
"resourceType": "GMMainOptions"
}
}
],
"hiddenResources": [
],
"projectPath": "${base_project}"
},
"resources": [
{
"Key": "05f45e8d-a727-4650-b0c2-0ac5f793f164",
"Value": {
"id": "6f75d81a-3fe8-484f-8178-ce66c6b9b8cf",
"resourcePath": "views\\05f45e8d-a727-4650-b0c2-0ac5f793f164.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "128687b6-cf4b-4bad-bfec-52960e01a538",
"Value": {
"id": "ec6296c1-a5d9-4c21-b3e3-5d4363a2070c",
"resourcePath": "views\\128687b6-cf4b-4bad-bfec-52960e01a538.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "1e95eeaf-b11a-44a2-a1b0-bd201f6366ee",
"Value": {
"id": "b109c79d-b9d0-4d6a-8b13-e460efb93824",
"resourcePath": "views\\1e95eeaf-b11a-44a2-a1b0-bd201f6366ee.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "227a1abf-7147-4a8b-bb31-62a5d3a9a07e",
"Value": {
"id": "d2010bb7-ac3c-4717-a93e-edb7e447e257",
"resourcePath": "objects\\obj_king\\obj_king.yy",
"resourceType": "GMObject"
}
},
{
"Key": "297651c9-b7a7-4a65-97f1-8ceb3b64f65d",
"Value": {
"id": "ab37c354-5987-4384-ae57-4edb8c73110d",
"resourcePath": "views\\297651c9-b7a7-4a65-97f1-8ceb3b64f65d.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "2d0a83ba-80a2-40b2-8805-93347555ef97",
"Value": {
"id": "cb703663-2592-4c26-bfbb-a11a76390b27",
"resourcePath": "objects\\par_depthobject\\par_depthobject.yy",
"resourceType": "GMObject"
}
},
{
"Key": "2ea73365-b6f1-4bd1-a454-d57a67e50684",
"Value": {
"id": "1136167c-dc54-4c46-b98d-c616e004866b",
"resourcePath": "views\\2ea73365-b6f1-4bd1-a454-d57a67e50684.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "31ff7d32-f0cd-4e2e-a129-338e3e580a1a",
"Value": {
"id": "027854a7-69ad-4dd9-bb97-94cf1cd09c90",
"resourcePath": "sprites\\spr_shadow\\spr_shadow.yy",
"resourceType": "GMSprite"
}
},
{
"Key": "48b46420-2f90-4794-9064-b6fdfad99fbd",
"Value": {
"id": "843e68a6-9d39-4f4c-99b0-7e2beb280bdc",
"resourcePath": "views\\48b46420-2f90-4794-9064-b6fdfad99fbd.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "4c4a5f6b-851e-45f2-9d16-4e770693d0d6",
"Value": {
"id": "d27ca460-a737-425d-b658-fda4e232da2d",
"resourcePath": "views\\4c4a5f6b-851e-45f2-9d16-4e770693d0d6.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "53f34530-342f-440f-8cd3-3df3c5bfc232",
"Value": {
"id": "7189b8af-fafa-4643-b05a-1efec553c075",
"resourcePath": "views\\53f34530-342f-440f-8cd3-3df3c5bfc232.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "556893b0-c414-45f4-b592-5ae7021b4e74",
"Value": {
"id": "aec12608-534e-4e2c-ad54-c3996c929309",
"resourcePath": "objects\\depthsorter\\depthsorter.yy",
"resourceType": "GMObject"
}
},
{
"Key": "583b7bc3-11a0-419c-8028-17f69745ce53",
"Value": {
"id": "f6fd0fc5-a491-4c44-b798-e69b3ff043f7",
"resourcePath": "sprites\\spr_knight\\spr_knight.yy",
"resourceType": "GMSprite"
}
},
{
"Key": "5fd06095-db49-460e-9954-34d8113518c0",
"Value": {
"id": "043b6ae1-c67b-4478-8d4a-98c54da49c59",
"resourcePath": "views\\5fd06095-db49-460e-9954-34d8113518c0.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "62e5c66d-8c36-4bc8-af71-c4119d077b56",
"Value": {
"id": "57e7a582-a710-4c41-9549-aa504dc9b2b0",
"resourcePath": "sprites\\spr_player_idle\\spr_player_idle.yy",
"resourceType": "GMSprite"
}
},
{
"Key": "638c7030-5359-4b3c-8e90-60cb3fcb9704",
"Value": {
"id": "60e7c880-7135-4f49-adb6-92520a22ca65",
"resourcePath": "objects\\obj_greentree\\obj_greentree.yy",
"resourceType": "GMObject"
}
},
{
"Key": "78fc92d3-2675-43e1-a794-30066b3aea37",
"Value": {
"id": "7b9e43bd-7dbc-4b55-b3a5-88176788511a",
"resourcePath": "objects\\obj_knight\\obj_knight.yy",
"resourceType": "GMObject"
}
},
{
"Key": "82f217a6-9373-47d2-85d9-14ce23a512a0",
"Value": {
"id": "bf7cdb17-ee68-4006-b102-afa68538dd7e",
"resourcePath": "views\\82f217a6-9373-47d2-85d9-14ce23a512a0.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "83d63ce4-d03f-444b-b478-522ad5b314a9",
"Value": {
"id": "a927ec72-d381-4816-9d70-c9b78f3e9eb0",
"resourcePath": "views\\83d63ce4-d03f-444b-b478-522ad5b314a9.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "8a96eadc-2360-466a-ae4a-7a71b1cfda17",
"Value": {
"id": "f5608dcf-9a81-490d-9373-fa59fc44fdbf",
"resourcePath": "tilesets\\tileset_1\\tileset_1.yy",
"resourceType": "GMTileSet"
}
},
{
"Key": "8df8cbdc-c273-479a-83c9-496f2e62d294",
"Value": {
"id": "a74e5eb9-978f-47f3-aa50-20b7a3fa9baa",
"resourcePath": "views\\8df8cbdc-c273-479a-83c9-496f2e62d294.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "9c35e2b5-ef9d-468c-8d88-8e8636785ca0",
"Value": {
"id": "fe440907-a939-4974-83aa-853900a43472",
"resourcePath": "views\\9c35e2b5-ef9d-468c-8d88-8e8636785ca0.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "a09f41cd-a4f3-4818-9942-6c258e8a0b0e",
"Value": {
"id": "ae291c5c-f27e-44a2-a6a7-8192ba7a8297",
"resourcePath": "views\\a09f41cd-a4f3-4818-9942-6c258e8a0b0e.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "a9188620-a624-4a5a-83ae-a1b53faf038b",
"Value": {
"id": "3a6a5b33-9543-4fad-922d-403ffb3e8fa2",
"resourcePath": "options\\linux\\options_linux.yy",
"resourceType": "GMLinuxOptions"
}
},
{
"Key": "a9c4bc40-93a0-4449-a951-9bfc82428101",
"Value": {
"id": "6b8e239a-9414-498c-85ae-23d5f8c1cb90",
"resourcePath": "objects\\obj_collision\\obj_collision.yy",
"resourceType": "GMObject"
}
},
{
"Key": "aa4ccde8-d128-4dfe-a243-5efe2da9ff0d",
"Value": {
"id": "41ccb1a0-cf8e-4b28-a1fb-ce53f209bcd0",
"resourcePath": "views\\aa4ccde8-d128-4dfe-a243-5efe2da9ff0d.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "ac913661-4852-4ce1-89ce-3a031aed6119",
"Value": {
"id": "09ddc355-efe1-4b77-9431-3bc87009e880",
"resourcePath": "sprites\\spr_tileset1\\spr_tileset1.yy",
"resourceType": "GMSprite"
}
},
{
"Key": "acfe2407-bee7-4ce9-ac58-d3327085f21b",
"Value": {
"id": "201500e6-154c-4c05-8221-57fdd65f74e7",
"resourcePath": "sprites\\spr_player\\spr_player.yy",
"resourceType": "GMSprite"
}
},
{
"Key": "af01d96e-a301-41cc-9c82-eb60af19cbae",
"Value": {
"id": "34f0d902-d0aa-4ab8-8d02-9d91150b816c",
"resourcePath": "views\\af01d96e-a301-41cc-9c82-eb60af19cbae.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "b4fe38c4-c338-4d32-b85f-1b41d9a2446d",
"Value": {
"id": "ae19ee11-6b01-4f2b-8f55-adf5cb081961",
"resourcePath": "sprites\\spr_collision\\spr_collision.yy",
"resourceType": "GMSprite"
}
},
{
"Key": "b68cebe1-d0fa-44ed-8a26-595c2885a1fc",
"Value": {
"id": "1f6a859b-68fa-4564-bcb6-1fe387319eb4",
"resourcePath": "views\\b68cebe1-d0fa-44ed-8a26-595c2885a1fc.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "bd8b3db8-e5e6-44f1-bfcf-45d3242a0122",
"Value": {
"id": "4450def6-f270-4dd7-8896-c9d8ac34be9b",
"resourcePath": "sprites\\spr_scout\\spr_scout.yy",
"resourceType": "GMSprite"
}
},
{
"Key": "bffbcd96-a8c7-431f-af4f-7f66e8f84189",
"Value": {
"id": "bfee4d13-6e16-41f6-9fb7-095126af6fcd",
"resourcePath": "rooms\\rm_1\\rm_1.yy",
"resourceType": "GMRoom"
}
},
{
"Key": "cc3b80a7-5d09-4bea-b9c8-b093f1b244c8",
"Value": {
"id": "ac219fd8-ba00-4bff-857c-93d7cdb409c8",
"resourcePath": "views\\cc3b80a7-5d09-4bea-b9c8-b093f1b244c8.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "cc98d028-7bdd-4680-85f3-c87a7baa481e",
"Value": {
"id": "a84e7ce1-a928-4a86-bd79-8355f266e12e",
"resourcePath": "options\\windows\\options_windows.yy",
"resourceType": "GMWindowsOptions"
}
},
{
"Key": "d3e83dba-5be8-436f-866d-9a5a2120adb1",
"Value": {
"id": "ca2f0120-77ec-4bb4-8b0b-c12af28e2db0",
"resourcePath": "views\\d3e83dba-5be8-436f-866d-9a5a2120adb1.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "d74cdac8-2717-46a5-a8ed-5f732e02a268",
"Value": {
"id": "3b26d2bb-6a56-4a30-9c5a-47c3bcc83bb9",
"resourcePath": "views\\d74cdac8-2717-46a5-a8ed-5f732e02a268.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "e3e41b8b-b981-42ce-aab7-e6265764c7a8",
"Value": {
"id": "a24e4fd7-f4da-4da0-aff1-da1bb864c0b4",
"resourcePath": "views\\e3e41b8b-b981-42ce-aab7-e6265764c7a8.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "f1fbb653-bca3-4725-9e81-6a3556760d0c",
"Value": {
"id": "76dcd643-64fe-49d6-83ff-e15184b56150",
"resourcePath": "objects\\obj_scout\\obj_scout.yy",
"resourceType": "GMObject"
}
},
{
"Key": "f418569b-3bdd-4706-a0e4-364317f54032",
"Value": {
"id": "1292899d-f280-4f75-93b4-b2ad6099dd3d",
"resourcePath": "options\\mac\\options_mac.yy",
"resourceType": "GMMacOptions"
}
},
{
"Key": "f48fa589-53e5-4ce0-a010-c16b38192e31",
"Value": {
"id": "e950beb0-3503-4c3d-9cb9-8743c91d7c94",
"resourcePath": "views\\f48fa589-53e5-4ce0-a010-c16b38192e31.yy",
"resourceType": "GMFolder"
}
},
{
"Key": "fd46d5b1-fe49-4ecf-b809-0a2449808fbe",
"Value": {
"id": "09d46108-701a-4592-906f-bcb479008507",
"resourcePath": "sprites\\spr_tree\\spr_tree.yy",
"resourceType": "GMSprite"
}
}
],
"script_order": [
],
"tutorial": ""
}