{"id":15136035,"url":"https://github.com/abrookins/wraptocolumn","last_synced_at":"2026-01-23T00:43:29.498Z","repository":{"id":8345060,"uuid":"9904157","full_name":"abrookins/WrapToColumn","owner":"abrookins","description":"An IntelliJ plugin that wraps text","archived":false,"fork":false,"pushed_at":"2024-08-27T03:39:04.000Z","size":9537,"stargazers_count":63,"open_issues_count":19,"forks_count":12,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-21T18:09:50.606Z","etag":null,"topics":["datagrip","intellij","pycharm","rubymine","webstorm"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","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/abrookins.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING.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":"2013-05-07T04:54:01.000Z","updated_at":"2025-01-15T11:50:02.000Z","dependencies_parsed_at":"2024-09-21T10:00:47.054Z","dependency_job_id":"a924afdb-ce53-46fa-90e6-3cd1ae92e6ba","html_url":"https://github.com/abrookins/WrapToColumn","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abrookins%2FWrapToColumn","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abrookins%2FWrapToColumn/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abrookins%2FWrapToColumn/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abrookins%2FWrapToColumn/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/abrookins","download_url":"https://codeload.github.com/abrookins/WrapToColumn/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240063928,"owners_count":19742227,"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":["datagrip","intellij","pycharm","rubymine","webstorm"],"created_at":"2024-09-26T06:03:46.494Z","updated_at":"2026-01-07T19:13:19.049Z","avatar_url":"https://github.com/abrookins.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Wrap to Column: An IntelliJ Plugin That Wraps Text\n\nThis plugin wraps text to a maximum line width. It is intended as a replacement\nfor the `gq` command in Vim and `fill-paragraph` in Emacs, which are both dear\nto my heart.\n\n## Supported IntelliJ Editors\n\nThis plugin should work in any IntelliJ editor, including IntelliJ IDEA Community,\nPyCharm, RubyMine, WebStorm, etc.\n\n## Editor Actions\n\nThis plugin adds two new _actions_ to IntelliJ editors that you can use to wrap text:\n\n- Wrap Line to Column: **Wraps selected text or the current line if no text is\n  selected**. This is useful for IdeaVim users who wish to pair the command with\n  motions like `vip` (select current paragraph).\n\n- Wrap Paragraph to Column: **Wraps all lines in the current paragraph**. A\n  paragraph is defined as text offset by blank lines -- including lines that\n  only start with what looks like comment syntax (e.g., `//   `). Selected text\n  is ignored (no selection is needed).\n  \nTo learn how to you call these actions, read the _How To Use the Plugin_ section \nin this readme.\n\n## Installing\n\nInstall the plugin from an IntelliJ editor (like IntelliJ Ultimate, PyCharm,\netc.) inside the Preferences -\u003e Plugins window.\n\n### From Within an IntelliJ Editor\n\nFollow these steps to install this plugin from within an IntelliJ editor:\n \n* Open Preferences -\u003e Plugins and click _Marketplace_\n* Search for \"Wrap to column\"\n* Choose Wrap to Column\n* Click Install\n* Restart the editor when prompted\n\n### From GitHub\n\nTo install the latest zip from GitHub:\n\n* Either clone the repository or download the latest release\n  (https://github.com/abrookins/WrapToColumn/releases)\n* Open your IntelliJ editor of choice\n* Choose Preferences -\u003e Plugins -\u003e Install plugin from disk\n* Choose the **WrapToColumn.zip** (not the .jar file) file in the source\n  checkout or your Downloads folder\n\n## How To Use the Plugin\n\nTo use this plugin, you trigger one of its actions (Wrap Line to Column,\nWrap Paragraph to Column) with a keyboard shortcut, menu item, IdeaVim\ncommand, or using [Search Everywhere](https://blog.jetbrains.com/idea/2020/05/when-the-shift-hits-the-fan-search-everywhere/).\n\nExample usage:\n\n**To wrap the line you're currently editing**, run the Wrap Line to Column action.\n\n**To wrap all of the lines in the _paragraph_ that you are editing**, run the Wrap Paragraph to Column action.\n\n**To wrap multiple lines and paragraphs in a file**, select the text to wrap, then run the Wrap Line to Column action (this plugin wraps selected text).\n\n### Keyboard Shortcuts\n\nThe keyboard shortcuts for the **Wrap Line to Column** action are:\n\n* Mac: Command + Control + Shift + W\n* PC: Control + Alt + Shift + W\n\nThe keyboard shortcuts for the **Wrap Paragraph to Column** action are:\n\n* Mac: Command + Control + Shift + P\n* PC: Control + Alt + Shift + P\n\nFeel free to change these in your keymap (Preferences -\u003e Keymap) or IeaVim\nconfiguration file!\n\n### Menu Items\n\nMenu items should exist for both commands in the Edit drop-down menu:\n\n* Edit -\u003e Wrap Line to Column\n* Edit -\u003e Wrap Paragraph to Column\n\n### IdeaVim\n\nWhen using IdeaVim, you can invoke the above commands using the following\nactions:\n* Wrap Line to Column: `com.andrewbrookins.idea.wrap.WrapAction`\n* Wrap Paragraph to Column: `com.andrewbrookins.idea.wrap.WrapParagraphAction`\n\nFor example, you can add the following line to `.ideavimrc` to emulate Vim's\n`gq` command:\n\n```\nnmap gq :action com.andrewbrookins.idea.wrap.WrapAction\u003cCR\u003e\n```\n\n## Settings\n\n### How Does WrapToColumn Determine the Line Length?\n\nThe maximum width of wrapped text is based on one of the following settings, in\nthis order of priority:\n \n1. The \"Right margin override\" setting found in the Wrap to Column settings panel\n\n2. The right column setting configured for the language of the currently active\n  editor tab\n\n3. The editor's default right column setting\n\nRead _Overriding the maximum line length_ in this README to learn how to set the\n**right margin override** setting for the WrapToColumn plugin.\n\n### Overriding the Maximum Line Length\n\nBy default, this plugin uses your configured global or language-specific right\nmargin setting as the column width to wrap at. However, you may provide a column\nwidth that will override both of these settings.\n\nThis setting exists in Settings (Preferences on OS X) -\u003e Tools -\u003e Wrap to Column.\n\nThe setting is named **Right margin override**. This should be an integer that\nrepresents the column at which the plugin will wrap text, similar to IntelliJ's\n\"right margin\" setting.\n\n### Minimum Raggedness (Alpha!)\n\nBy default, text is wrapped using a greedy line-breaking algorithm. This can\nresult in some lines having more whitespace than others.\n\nYou can turn on an alternative \"minimum raggedness\" algorithm in Settings -\u003e\nTools -\u003e Wrap to Column. When this setting is on, the plugin will reconfigure\ntext in a paragraph to produce the least amount of whitespace possible.\n\nThis feature is (still!) an **alpha** and may go away. Try it and see if\nyou like it!\n\n### Tab Width Setting\n\nAny lines that contain tabs (or are prefixed with tabs as an indent) will be\nreflowed as if the tabs were characters spaced using the **tab size** you have\nset in IntelliJ for the language you are editing.\n\nThis setting exists in the _Code Style_ section of the IntelliJ settings page.\n\nAs a result of this behavior, text will look right to you if your tab width is 4,\nbut not to your co-maintainer whose tab width is 8. This seems to be the best\ntrade-off.\n\n## Monospaced Versus Variable Width Fonts\n\nThis plugin reflows selected text by assuming that each character takes one\ncolumn's worth of space (except tabs, which are expanded to your tab width).\n\nThis works fine with monospaced fonts. However, if you use a variable-width\nfont, which seems to be common for some languages like Chinese (see issue #11),\nthen the individual glyphs of the font take up more than one column.\n\nThe plugin will still wrap your text to e.g. 80 characters wide, but the\nposition won't match IntelliJ's right margin guide.\n\nAnyway, I recommend that you use a monospaced font if you can.\n\n\n## Roadmap\n\n* Bug fixes\n\n## Developing\n\nThis project uses gradle.\n\nTo run tests, use the `tests` gradle command.\n\nTo build the plugin zip, use the `buildPlugin` gradle command.\n\n\n## License\n\nThis plugin is licensed under the GPLv2 and Apache License 2.0. See COPYING.txt\nand LICENSE.txt.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabrookins%2Fwraptocolumn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fabrookins%2Fwraptocolumn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabrookins%2Fwraptocolumn/lists"}