{"id":13896575,"url":"https://github.com/seifferth/vis-editorconfig","last_synced_at":"2025-07-17T13:30:28.357Z","repository":{"id":51450889,"uuid":"120456046","full_name":"seifferth/vis-editorconfig","owner":"seifferth","description":"An editorconfig plugin for the vis text editor","archived":false,"fork":false,"pushed_at":"2023-10-08T11:29:21.000Z","size":39,"stargazers_count":9,"open_issues_count":0,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-08-07T18:40:03.745Z","etag":null,"topics":["editorconfig","vis"],"latest_commit_sha":null,"homepage":null,"language":"Lua","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/seifferth.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}},"created_at":"2018-02-06T12:53:02.000Z","updated_at":"2024-02-04T06:34:28.000Z","dependencies_parsed_at":"2022-09-11T21:10:49.235Z","dependency_job_id":null,"html_url":"https://github.com/seifferth/vis-editorconfig","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seifferth%2Fvis-editorconfig","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seifferth%2Fvis-editorconfig/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seifferth%2Fvis-editorconfig/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seifferth%2Fvis-editorconfig/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/seifferth","download_url":"https://codeload.github.com/seifferth/vis-editorconfig/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226265521,"owners_count":17597222,"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":["editorconfig","vis"],"created_at":"2024-08-06T18:03:00.752Z","updated_at":"2025-07-17T13:30:28.322Z","avatar_url":"https://github.com/seifferth.png","language":"Lua","funding_links":[],"categories":["Lua"],"sub_categories":[],"readme":"# vis-editorconfig\n\nA [vis][vis] plugin for [editorconfig][ec].\n\n[vis]: https://github.com/martanne/vis\n[ec]: http://editorconfig.org/\n\n## Installation\n\nYou'll need the Lua wrapper for editorconfig-core installed. This can\nbe done through luarocks: `luarocks install editorconfig-core`\n\n```shell\ngit clone https://github.com/seifferth/vis-editorconfig \"$HOME/.config/vis/edconf\"\n```\n\nThen add `require('edconf')` to your `visrc.lua`.\n\nYou may use a different name for the local repository, if you like.\nYou could, for instance, use `$HOME/.config/vis/vis-editorconfig` and\n`require('vis-editorconfig')`.  Note, however, that the repository **must\nnot** be called `editorconfig`.  Since the editorconfig-core lua library\nis also called `editorconfig`, naming the repository `editorconfig`\nwill cause name conflicts that result in infinite recursion.\n\n## Functionality\n\nNot all editorconfig functionality is supported by vis and hence by this\nplugin. At this moment, there is full support for the following settings:\n\n- indent_style\n- indent_size\n- tab_width\n- insert_final_newline\n\nThe following settings are implemented partially and / or support is\nturned off by default:\n\n- spelling_language: Since vis does not support spellchecking\n  natively, this plugin will only set `vis.win.file.spell_language`\n  to the specified value. It is then up to the spellchecking plugin\n  to respect that variable.\n- trim_trailing_whitespace: Turned off by default, can be enabled\n  via `:set edconfhooks on`.\n- end_of_line: Turned off by default, partial support can be enabled\n  via `:set edconfhooks on`. Only `crlf` and `lf` are supported, plain\n  `cr` is not. The implementation is also very basic. If end_of_line\n  is set to `crlf`, a return character will be inserted at the end of\n  each line that does not yet end with `crlf`. If end_of_line is set\n  to `lf`, return characters at the end of a line will be stripped.\n  While I would encourage every vis user to stick to `lf` terminated\n  files, this might be convenient if, for some reason, they do need\n  to compose `crlf` terminated files.\n- max_line_length: Turned off by default, partial support can be\n  enabled via `:set edconfhooks on`. There is no straightforward way\n  to automatically wrap content that might be written in arbitrary\n  programming (or non-programming) languages. For that reason,\n  vis-editorconfig doesn't even try. If max_line_length is enabled,\n  vis-editorconfig issues a warning, however, indicating which lines\n  are longer than the specified length. Note that you will miss this\n  warning if you write your file with `:wq`, so if you care about it,\n  write it with `:w\u003cRETURN\u003e:q`.\n\nThe reason those last three settings are optional and turned off by\ndefault is their scalability. Each of those operations is implemented\nas a pre-save-hook with a complexity of O(n), where n is the filesize.\nSince vis is incredibly good at editing huge files efficiently, there\nseems to be a very real danger that those hooks could cause the editor\nto freeze just before a user's valuable changes are written to disk.\n\nYou can turn support for those pre-save-hooks on or off at any time\nby running\n\n    :set edconfhooks on\n\nor\n\n    :set edconfhooks off\n\nIf `edconfhooks` are enabled, they will be executed as configured in\n`.editorconfig`. If you want to take a less cautious approach and enable\nthese hooks by default, simply add an additional line below the module\nimport in `visrc.lua`:\n\n    require('editorconfig/edconf')\n    vis:command('set edconfhooks on')   -- supposing you did previously\n                                        -- require('vis')\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseifferth%2Fvis-editorconfig","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fseifferth%2Fvis-editorconfig","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseifferth%2Fvis-editorconfig/lists"}