{"id":15062907,"url":"https://github.com/sdm-lang/emacs-sdml-fold","last_synced_at":"2026-02-17T09:45:04.948Z","repository":{"id":245949236,"uuid":"819628266","full_name":"sdm-lang/emacs-sdml-fold","owner":"sdm-lang","description":"Code folding support for SDML source files.","archived":false,"fork":false,"pushed_at":"2024-08-27T17:32:44.000Z","size":28,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-03T11:51:27.622Z","etag":null,"topics":["emacs","sdml"],"latest_commit_sha":null,"homepage":"","language":"Emacs Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sdm-lang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2024-06-24T22:34:39.000Z","updated_at":"2024-08-27T17:32:47.000Z","dependencies_parsed_at":"2024-06-25T01:24:35.256Z","dependency_job_id":"80ce8a3b-5d08-42d8-ac02-7998ea51bbb5","html_url":"https://github.com/sdm-lang/emacs-sdml-fold","commit_stats":null,"previous_names":["sdm-lang/emacs-sdml-fold"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sdm-lang/emacs-sdml-fold","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdm-lang%2Femacs-sdml-fold","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdm-lang%2Femacs-sdml-fold/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdm-lang%2Femacs-sdml-fold/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdm-lang%2Femacs-sdml-fold/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sdm-lang","download_url":"https://codeload.github.com/sdm-lang/emacs-sdml-fold/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdm-lang%2Femacs-sdml-fold/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264833280,"owners_count":23670617,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["emacs","sdml"],"created_at":"2024-09-24T23:48:23.479Z","updated_at":"2026-02-17T09:45:04.942Z","avatar_url":"https://github.com/sdm-lang.png","language":"Emacs Lisp","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SDML mode code-folding for Emacs\n\n![SDML Logo Text](https://raw.githubusercontent.com/sdm-lang/.github/main/profile/horizontal-text.svg)\n\nThis package provides code-folding features for SDML - the\n[Simple Domain Modeling Language](https://github.com/johnstonskj/tree-sitter-sdml) buffers.\n\n## Installing\n\nInstall the `ts-fold` library (See \u003chttps://github.com/emacs-tree-sitter/ts-fold\u003e)\nfirst which is a manual process unfortunately.\n\nInstall is easiest from MELPA, here's how with `use-package`. Note the hook clause\nto ensure this minor mode is always enabled for SDML source files.\n\n```elisp\n(use-package ts-fold\n  :load-path \"path/to/install\")\n\n(use-package sdml-fold\n  :after (ts-fold sdml-mode)\n  :hook (sdml-mode . sdml-fold-mode)\n```\n\nOr, interactively; `M-x package-install RET sdml-ispell RET`\n\n### Usage\n\nBlock Folding is provided by the `ts-fold-mode` minor mode based on the\nconfiguration in the constant `sdml-mode-tree-sitter-indent-scopes`. Note that\nfolding of groups of line comments is also supported.\n\n* `C-c C-s -` -- fold item\n* `C-c C-s +` -- unfold item\n* `C-c C-s C--` -- fold all items in buffer\n* `C-c C-s C-+` -- unfold all items in buffer\n* `C-c C-s /` -- unfold item and all children\n* `C-c C-s .` -- toggle fold/unfold state\n\nAs well as the mechanics of folding, the `ts-fold` package also has a fringe\nindicator support for windowed clients and this is enabled by default with\n`window-system` is non-`nil`.\n\nTo switch to left/right fringe (default is left-fringe):\n\n```elisp\n(setq ts-fold-indicators-fringe 'right-fringe)\n```\n\nTo lower/higher the fringe overlay's priority (default is 30):\n\n```elisp\n(setq ts-fold-indicators-priority 30)\n```\n\nThese options can be included in the `use-package` macro as shown below.\n\n```elisp\n(use-package sdml-fold\n  :after sdml-mode\n  :custom\n  (ts-fold-indicators-fringe 'right-fringe)\n  (ts-fold-indicators-priority 30)\n  :load-path \"/path/to/repo\")\n```\n\n## License(s)\n\nThe contents of this repository are made available under the following\nlicenses:\n\n### Apache-2.0\n\n\u003e ```text\n\u003e Copyright 2025 Simon Johnston \u003cjohnstonskj@gmail.com\u003e\n\u003e \n\u003e Licensed under the Apache License, Version 2.0 (the \"License\");\n\u003e you may not use this file except in compliance with the License.\n\u003e You may obtain a copy of the License at\n\u003e \n\u003e     http://www.apache.org/licenses/LICENSE-2.0\n\u003e \n\u003e Unless required by applicable law or agreed to in writing, software\n\u003e distributed under the License is distributed on an \"AS IS\" BASIS,\n\u003e WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n\u003e See the License for the specific language governing permissions and\n\u003e limitations under the License.\n\u003e ```\n\nSee the enclosed file [LICENSE-Apache](https://github.com/sdm-lang/emacs-sdml-fold/blob/main/LICENSE-APACHE).\n\n### MIT\n\n\u003e ```text\n\u003e Copyright 2025 Simon Johnston \u003cjohnstonskj@gmail.com\u003e\n\u003e \n\u003e Permission is hereby granted, free of charge, to any person obtaining a copy\n\u003e of this software and associated documentation files (the “Software”), to deal\n\u003e in the Software without restriction, including without limitation the rights to\n\u003e use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n\u003e the Software, and to permit persons to whom the Software is furnished to do so,\n\u003e subject to the following conditions:\n\u003e \n\u003e The above copyright notice and this permission notice shall be included in all\n\u003e copies or substantial portions of the Software.\n\u003e \n\u003e THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,\n\u003e INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A\n\u003e PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n\u003e HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n\u003e OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\n\u003e SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\u003e ```\n\nSee the enclosed file [LICENSE-MIT](https://github.com/sdm-lang/emacs-sdml-fold/blob/main/LICENSE-MIT).\n\n### Contributions\n\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in the work by you, as defined in the Apache-2.0 license, shall\nbe dual licensed as above, without any additional terms or conditions.\n\n## Changes\n\nThe `0.1.x` series are all pre-release and do not appear in ELPA/MELPA.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsdm-lang%2Femacs-sdml-fold","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsdm-lang%2Femacs-sdml-fold","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsdm-lang%2Femacs-sdml-fold/lists"}