{"id":22202233,"url":"https://github.com/rumkin/tc39-proposal-block-string","last_synced_at":"2026-02-25T10:40:57.243Z","repository":{"id":152260215,"uuid":"73640629","full_name":"rumkin/tc39-proposal-block-string","owner":"rumkin","description":"Block string","archived":false,"fork":false,"pushed_at":"2016-11-13T20:44:27.000Z","size":1,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-25T01:42:14.016Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rumkin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-11-13T20:21:01.000Z","updated_at":"2018-12-12T08:32:17.000Z","dependencies_parsed_at":null,"dependency_job_id":"cb73fbeb-8719-4cd5-8520-22ece62e910f","html_url":"https://github.com/rumkin/tc39-proposal-block-string","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rumkin/tc39-proposal-block-string","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rumkin%2Ftc39-proposal-block-string","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rumkin%2Ftc39-proposal-block-string/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rumkin%2Ftc39-proposal-block-string/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rumkin%2Ftc39-proposal-block-string/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rumkin","download_url":"https://codeload.github.com/rumkin/tc39-proposal-block-string/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rumkin%2Ftc39-proposal-block-string/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29818017,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-25T05:36:42.804Z","status":"ssl_error","status_checked_at":"2026-02-25T05:36:31.934Z","response_time":61,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-02T16:12:50.362Z","updated_at":"2026-02-25T10:40:57.212Z","avatar_url":"https://github.com/rumkin.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Block String\n\nAdd support of indentation string block to allow use a large block of strings into\nthe code without troubles with indentation.\n\nExample:\n\n```\n  let markdownString = @ \n    There is a __string__ with several paragraphs\n\n    Without quote escaping and so\n\n  let ymlString = @\n    base: element\n    items:\n      - item 1\n      - item 2\n  \n  let htmlString = @\n    \u003cp\u003eGood news everyone!\u003c/p\u003e\n  console.log(htmlString); // =\u003e \"\u003cp\u003eGood news everyone!\u003c/p\u003e\"\n  \n  let page = 'Main';\n  let jadeTemplate = jade(@@ // with js placeholders\n    html\n      head\n        title ${page}\n      body\n        h1 Page\n        p Hi block text\n  );\n```\n\nThis allow to avoid mess of quotation escaping and indentation for multiline strings.\nSo it allow to insert any other text inside js. Even js itself. Such string should get the first line\nindentation and cut it from start of each following line.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frumkin%2Ftc39-proposal-block-string","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frumkin%2Ftc39-proposal-block-string","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frumkin%2Ftc39-proposal-block-string/lists"}