{"id":13661805,"url":"https://github.com/preservim/vim-wordy","last_synced_at":"2025-12-17T14:38:48.095Z","repository":{"id":13305763,"uuid":"15992077","full_name":"preservim/vim-wordy","owner":"preservim","description":"Uncover usage problems in your writing","archived":false,"fork":false,"pushed_at":"2022-02-13T12:37:47.000Z","size":532,"stargazers_count":722,"open_issues_count":14,"forks_count":22,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-05-24T12:05:47.918Z","etag":null,"topics":["prose","vim","vim-plugin","writing"],"latest_commit_sha":null,"homepage":"","language":"Vim script","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/preservim.png","metadata":{"files":{"readme":"README.markdown","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}},"created_at":"2014-01-17T06:30:49.000Z","updated_at":"2025-05-24T04:01:27.000Z","dependencies_parsed_at":"2022-09-08T13:22:57.900Z","dependency_job_id":null,"html_url":"https://github.com/preservim/vim-wordy","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/preservim/vim-wordy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/preservim%2Fvim-wordy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/preservim%2Fvim-wordy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/preservim%2Fvim-wordy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/preservim%2Fvim-wordy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/preservim","download_url":"https://codeload.github.com/preservim/vim-wordy/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/preservim%2Fvim-wordy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27783768,"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","status":"online","status_checked_at":"2025-12-17T02:00:08.291Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["prose","vim","vim-plugin","writing"],"created_at":"2024-08-02T05:01:41.929Z","updated_at":"2025-12-17T14:38:48.081Z","avatar_url":"https://github.com/preservim.png","language":"Vim script","funding_links":[],"categories":["Vim script","plugins for writing"],"sub_categories":[],"readme":"# vim-wordy\n\n\u003e Uncover usage problems in your writing\n\n\u003cbr/\u003e\n\n- - -\n![demo](https://i.imgur.com/cXDCwdE.gif)\n- - -\n\n## Features of the _wordy_ plugin\n\n* Pure Vimscript; no external services or libraries needed\n* Uses Vim’s native spell-check engine\n* Includes 16 dictionaries covering different types of word usage\n* Buffer-scoped configuration (leaves your global settings alone)\n* Unicode-friendly, including support for ‘typographic quotes’\n* User-configurable ring of dictionaries\n* *NEW* adjectives and adverbs, to help you detect overuse\n\n## What is _wordy_?\n\n_wordy_ is not a grammar checker. Nor is it a guide to proper word usage.\nRather, _wordy_ is a lightweight tool to assist you in identifying\nthose words and phrases known for their history of misuse, abuse, and\noveruse, at least according to usage experts.\n\nFor example, if _wordy_ highlights `moreover` in your document, a word for\nwhich no good usage exists, you should consider a rewrite to eliminate it.\nBut if _wordy_ highlights `therefore` in a sentence where you can demonstrate\nthe usage is sound, you can elect to keep it —_wordy_ be damned.\n\n## Why _wordy_?\n\nOff-the-shelf proofreading software can scan your text for potential problems\nand provide comprehensive feedback. However, it may require a complex\nsoftware installation or transmission of your work to a remote server for\nchecking.\n\n_wordy_ stands ready as a simple alternative to these comprehensive tools,\nfocusing narrowly on identifying potential problems that might otherwise\nbe missed. To compensate for _wordy_’s bare-bones approach, it’s best used\nin concert with the [literature on usage][lit] (Strunk and White, e.g.)\nand websites like the [English Language \u0026 Usage Stack Exchange][ese].\n\n[lit]: https://www.amazon.com/s/ref=nb_sb_noss_2?url=search-alias%3Dstripbooks\u0026field-keywords=English+Usage\n[ese]: https://english.stackexchange.com\n\n## Requirements\n\n_wordy_ may require a recent version of Vim.\n\n## Installation\n\nYou can install using your favorite Vim package manager. (E.g.,\n[Pathogen][pathogen], [Vundle][vundle], or [Plug][plug].) If you are using\na recent version of vim or neovim, you can also use native package\nsupport. (See [:help packages][packages].)\n\n[pathogen]: https://github.com/tpope/vim-pathogen\n[vundle]: https://github.com/VundleVim/Vundle.vim\n[plug]: https://github.com/junegunn/vim-plug\n[packages]: https://vimhelp.org/repeat.txt.html#packages\n\n## Configuration\n\n### On demand\n\nUsing this plugin’s commands does not require any special configuration.\n\nImportant note: on the first use of each of the plugin’s dictionaries,\na spell file will be built. This produces a message that resembles:\n\n```\nReading word file /Users/reede/.vim/bundle/vim-wordy/data/en/weasel.dic ...\nCompressing word tree...\nCompressed 618 of 1738 nodes; 1120 (64%) remaining\nWriting spell file /Users/reede/.vim/bundle/vim-wordy/spell/weasel.en.utf-8.spl ...\nDone!\nEstimated runtime memory use: 5600 bytes\nPress ENTER or type command to continue\n```\n\nAs instructed, press the enter key and it will disturb you no longer, at\nleast until _wordy_ feels the urge to build again.\n\n### Ring navigation\n\nDefine your own ring of dictionaries, overriding the default one in your\n`.vimrc`:\n\n```vim\nlet g:wordy#ring = [\n  \\ 'weak',\n  \\ ['being', 'passive-voice', ],\n  \\ 'business-jargon',\n  \\ 'weasel',\n  \\ 'puffery',\n  \\ ['problematic', 'redundant', ],\n  \\ ['colloquial', 'idiomatic', 'similies', ],\n  \\ 'art-jargon',\n  \\ ['contractions', 'opinion', 'vague-time', 'said-synonyms', ],\n  \\ 'adjectives',\n  \\ 'adverbs',\n  \\ ]\n```\n\nYou can navigate the ring with the following commands:\n\n```vim\n:NextWordy\n:PrevWordy\n```\n\nOptionally map a key in your `.vimrc` to rapidly cycle through the\nring's dictionaries:\n\n```vim\nnoremap \u003csilent\u003e \u003cF8\u003e :\u003cC-u\u003eNextWordy\u003ccr\u003e\nxnoremap \u003csilent\u003e \u003cF8\u003e :\u003cC-u\u003eNextWordy\u003ccr\u003e\ninoremap \u003csilent\u003e \u003cF8\u003e \u003cC-o\u003e:NextWordy\u003ccr\u003e\n```\n\nYou can browse through a flattened list of dictionaries\nspecified in your ring with:\n\n```vim\n:Wordy \u003ctab\u003e\n```\n\nand optionally map a key such as `\\w` in your `.vimrc` to it by\n\n```vim\nif !\u0026wildcharm | set wildcharm=\u003cC-z\u003e | endif\nexecute 'nnoremap \u003cleader\u003ew :Wordy\u003cspace\u003e'.nr2char(\u0026wildcharm)\n```\n\n## Using _wordy_\n\nYou’ll use the commands that follow to enable _wordy_. To disable it and\nrestore your previous spell environment, enter the command:\n\n```vim\n:NoWordy\n```\n\nUse Vim’s _Normal_ mode commands for navigating misspelled words to\ngo to those words flagged by _wordy_.\n\n* `]s`\t\t\t- Move to next misspelled word after the cursor.\n* `[s`\t\t\t- Like `]s` but search backwards\n\n### Weak and lazy usage\n\n```vim\n:Wordy weak\n```\n\nWeak and lazy words are common in first drafts.\n\nWe sabotage our writing though weak language, kicking the legs out from\nbeneath our verbs and tearing at the foundations of our nouns, watering\ndown the very points that we are trying to drive home.\n\n* “I _got_ up at precisely 8 AM.” (weak)\n* “I woke up at precisely 8 AM.” (better)\n\nWe diminish the weight of our ideas by adding modifiers and fillers.\n\n* “That night was _perhaps_ the most important moment of my life, and I don't _think_ I'll ever forget it.” (weak)\n* “That night was the most important moment of my life, and I'll never forget it.” (better)\n\nWords can also be weakened through overuse.\n\n* “He _actually_ drove to work in the blizzard.” (weak)\n* “He drove to work in spite of the blizzard.” (better)\n\nWhen using this dictionary, scrutinize each highlighted word or phrase,\nasking whether it detracts from the point you are trying to make.\n\n### Redundant and problematic usage\n\n```vim\n:Wordy redundant\n:Wordy problematic\n```\n\nDid you ever receive an ‘advance warning’ when a mere warning would do?\nWhy plan when you can ‘plan ahead’? Why need a thought to ‘occur to you’\nwhen the thought can merely ‘occur’?\n\nBut redundancies may not actually be redundant: ‘invited guests’ may not\nif some of the guests have crashed your event. Or dialect differences can\nerase redundancies, as the British will ‘protest against’ where Americans\nwill simply ‘protest’.\n\nSee [50 Problem Words and Phrases][1] for more detail on those issues\ntargeted by _problematic_.\n\n[1]: https://www.dailywritingtips.com/50-problem-words-and-phrases/\n\n### Puffery and Jargon\n\n\u003e “The man embodies _authenticity_; his _disruptive_ ideas on\n\u003e _self-actualization_ reflect his _dynamic_ and _transformative_\n\u003e personality.” (puffery and jargon)\n\n```vim\n:Wordy puffery\n:Wordy business-jargon\n:Wordy art-jargon\n```\n\nInstead of puffery, demonstrate through details.\n\n* “The Empire State Building is _breathtakingly_ tall.” (puffery)\n* “My ears popped several times during the rapid ascent to the 80th\n  floor.” (better)\n\n### Manipulative language\n\n```vim\n:Wordy weasel\n```\n\nWords can be used to hide or obscure a weak position, or to cast doubt on\na strong one. They can be used to mislead, to evade blame, or to claim credit\nwhere none has been earned.\n\n* “mistakes were made”\n* “discounted up to 50% off”\n* “most voters feel that my opponent can’t be trusted”\n\nAssuming that you’re not intentionally trying to manipulate others, you\nwill seek to purge such loaded language from your writing.\n\n### To be and the passive voice\n\n```vim\n:Wordy being\n:Wordy passive-voice\n```\n\nYou may find this dictionary useful in avoiding overuse of the many forms\nof the verb to be, often found in overly-passive sentences.\n\n### Colloquialisms, Idioms, and Similies\n\n```vim\n:Wordy colloquial\n:Wordy idiomatic\n:Wordy similies\n```\n\nDictionaries for uncovering the tired cliché, including colloquial and\nidiomatic phrases scraped from Wiktionary and Wikipedia.\n\n### Adjectives and Adverbs\n\n```vim\n:Wordy adjectives\n:Wordy adverbs\n```\n\nDictionaries to help you detect the overuse of modifiers.\n\n### Miscellaneous\n\n```vim\n:Wordy said-synonyms\n:Wordy opinion\n:Wordy contractions\n:Wordy vague-time\n```\n\nA few dictionaries to serve specific needs.\n\nIf you’re writing to be neutral, you will want to avoid editorializing\n(`opinion`) and loaded use of ‘said’ (`said-synonyms`).\n\nIf you’re writing formally, you’ll want to identify unintentional\ncontractions with `contractions`. A warning that it’s not yet capturing most\ninstances of “’s”, such as “Joe’s not here.”\n\nAnd finally, `vague-time` finds where you are using vague descriptions of\ntime where you could be more specific.\n\n## Configuration\n\nChange where `vim-wordy` stores cached spelling files using:\n\n```\nlet g:wordy_spell_dir = '/home/my-user/wordy'\n```\n\n## See also\n\n* [danielbmarques/vim-ditto][vd] - new plugin to highlight repeated words\n* [Words To Avoid in Creative Writing][wa] - a brief guide to usage by writer Cary Morton\n\n[vd]: https://github.com/danielbmarques/vim-ditto\n[wa]: https://darlingmionette.deviantart.com/art/Words-To-Avoid-152886782\n\nIf you find this plugin useful, you may want to check out these others\noriginally by [@reedes][re]:\n\n* [vim-colors-pencil][cp] - color scheme for Vim inspired by IA Writer\n* [vim-lexical][lx] - building on Vim’s spell-check and thesaurus/dictionary completion\n* [vim-litecorrect][lc] - lightweight auto-correction for Vim\n* [vim-pencil][pn] - rethinking Vim as a tool for writers\n* [vim-textobj-quote][qu] - extends Vim to support typographic (‘curly’) quotes\n* [vim-textobj-sentence][ts] - improving on Vim's native sentence motion command\n* [vim-thematic][th] - modify Vim’s appearance to suit your task and environment\n* [vim-wheel][wh] - screen-anchored cursor movement for Vim\n* [vim-wordchipper][wc] - power tool for shredding text in Insert mode\n\n[re]: https://github.com/reedes\n[cp]: https://github.com/preservim/vim-colors-pencil\n[lx]: https://github.com/preservim/vim-lexical\n[lc]: https://github.com/preservim/vim-litecorrect\n[pn]: https://github.com/preservim/vim-pencil\n[ts]: https://github.com/preservim/vim-textobj-sentence\n[qu]: https://github.com/preservim/vim-textobj-quote\n[th]: https://github.com/preservim/vim-thematic\n[wh]: https://github.com/preservim/vim-wheel\n[wc]: https://github.com/preservim/vim-wordchipper\n\n## Future development\n\nThis early version targets English usage issues and utf-8 encoding.\nSupport for other languages will be added if there’s interest. (Hint: pull\nrequests!)\n\n_wordy_ is a work in progress. If you’ve spotted a problem or have an idea\non improving this plugin, please post it to the [GitHub project issue\npage][issues]. Contributions are welcome.\n\n[issues]: https://github.com/preservim/vim-wordy/issues\n\n\u003c!-- vim: set tw=74 :--\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpreservim%2Fvim-wordy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpreservim%2Fvim-wordy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpreservim%2Fvim-wordy/lists"}