{"id":16868952,"url":"https://github.com/liamnichols/nltool","last_synced_at":"2026-05-03T22:33:58.898Z","repository":{"id":72274932,"uuid":"220712923","full_name":"liamnichols/nltool","owner":"liamnichols","description":"A CLI interface for Apples NaturalLanguage framework","archived":false,"fork":false,"pushed_at":"2019-11-13T20:17:30.000Z","size":21,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-08-30T18:32:47.437Z","etag":null,"topics":["cli","macos","natural-language-processing","nlp","nlp-machine-learning","tagger","tokenizer"],"latest_commit_sha":null,"homepage":null,"language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/liamnichols.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2019-11-09T22:41:43.000Z","updated_at":"2023-02-16T00:53:26.000Z","dependencies_parsed_at":"2023-09-17T02:35:18.534Z","dependency_job_id":null,"html_url":"https://github.com/liamnichols/nltool","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/liamnichols/nltool","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liamnichols%2Fnltool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liamnichols%2Fnltool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liamnichols%2Fnltool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liamnichols%2Fnltool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/liamnichols","download_url":"https://codeload.github.com/liamnichols/nltool/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liamnichols%2Fnltool/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32587819,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T22:12:39.696Z","status":"ssl_error","status_checked_at":"2026-05-03T22:09:10.534Z","response_time":103,"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":["cli","macos","natural-language-processing","nlp","nlp-machine-learning","tagger","tokenizer"],"created_at":"2024-10-13T14:59:58.906Z","updated_at":"2026-05-03T22:33:58.864Z","avatar_url":"https://github.com/liamnichols.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# NLTool\n\nA command line interface wrapper around methods from Apple's NaturalLanguage framework.\n\n## Installation\n\n```\nmint install liamnichols/nltool\n```\n\n## Usage\n\nUse `nltool --help` for a list of commands and options. The two main supported commands are `tokenize` and `tagger tag`.\n\n### Examples\n\nPipe an input string and tag its contents:\n\n```\n$ curl -s http://whatthecommit.com/index.txt | nltool tagger tag LexicalClass --omit-whitespace --omit-punctuation\n+------------------------------------+\n| Tags for Lexicalclass (Word)       |\n+------------------------------------+\n| Index | Range   | Tag      | Value |\n+-------+---------+----------+-------+\n| 0     | 0..\u003c5   | Adverb   | Never |\n| 1     | 6..\u003c11  | Verb     | gonna |\n| 2     | 12..\u003c16 | Verb     | give  |\n| 3     | 17..\u003c20 | Pronoun  | you   |\n| 4     | 21..\u003c23 | Particle | up    |\n+-------+---------+----------+-------+\n```\n\nSee the built-in tag schemes available for a given token unit and language:\n\n```\n$ nltool tagger availableTagSchemes word en\n+-------------------------------------+\n| Available Tag Schemes for Word (en) |\n+-------------------------------------+\n| Language                            |\n| Script                              |\n| TokenType                           |\n| NameType                            |\n| LexicalClass                        |\n| NameTypeOrLexicalClass              |\n| Lemma                               |\n+-------------------------------------+\n```\n\nOutput the results in JSON format:\n\n```\n$ nltool tokenize \"First sentence. Second Sentence\" --unit sentence --json --pretty-print\n{\n  \"input\" : \"First sentence. Second Sentence\",\n  \"tokens\" : [\n    {\n      \"attributes\" : [\n\n      ],\n      \"range\" : [\n        0,\n        16\n      ],\n      \"value\" : \"First sentence. \"\n    },\n    {\n      \"attributes\" : [\n\n      ],\n      \"range\" : [\n        16,\n        31\n      ],\n      \"value\" : \"Second Sentence\"\n    }\n  ],\n  \"unit\" : \"sentence\"\n}\n```\n\nView help infromation for any command with `--help`:\n\n```\n$ nltool tagger tag --help                                                                   \n\nUsage: nltool tagger tag \u003cscheme\u003e [\u003cinput\u003e] [options]\n\nTags the input string against the configured tag schemes\n\nOptions:\n  --join-contractions    Contractions will be returned as one token.\n  --join-names           Typically, multiple-word names will be returned as multiple tokens, following the standard tokenization practice of the tagger.\n  --json                 Print output in JSON format\n  --omit-other           Omit tokens of type Other (non-linguistic items, such as symbols).\n  --omit-punctuation     Omit tokens of type Punctuation (all punctuation).\n  --omit-whitespace      Omit tokens of type Whitespace (whitespace of all sorts).\n  --omit-words           Omit tokens of type Word (items considered to be words).\n  --pretty-print         Pretty Print JSON output when using --json command\n  -h, --help             Show help information\n  -u, --unit \u003cvalue\u003e     Unit segmentation to tokenize by. Default is 'word'\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fliamnichols%2Fnltool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fliamnichols%2Fnltool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fliamnichols%2Fnltool/lists"}