Giter Site home page Giter Site logo

jfishe / vimtabcompletion Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 157 KB

Vim Argument Completer for PowerShell

License: MIT License

PowerShell 100.00%
powershell-module argumentcompleter vim powershell tabcompletion windows-powershell powershell-core

vimtabcompletion's Introduction

VimTabCompletion

Powershell Tab Completion for Vim

Author: [email protected]

Build status

VimTabCompletion was tested against Windows PowerShell 5.1 and PowerShell Core 7.0.3 on Windows. Refer to about_VimTabCompletion for features and limitations.

Installation

Vim

VimTabCompletion requires Vim in $env:PATH or $Env:VIMRUNTIME and recommends vim / vim-win32-installer.

To install with Chocolatey:

choco install vim

Ctags

VimTabCompletion requires readtags for tag completion and recommends universal-ctags / ctags.

To install with Chocolatey:

choco install universal-ctags

Git

VimTabCompletion requires git to locate the project root for use by ctags.

To install with Chocolatey:

choco install git

VimTabCompletion Module

VimTabCompletion exports PowerShell function TabExpansion but does not interfere with existing TabExpansion functions.

To install from PowerShell Gallery:

Find-Module -Name VimTabCompletion

# Version              Name                                Repository
# -------              ----                                ----------
# 1.2.0                VimTabCompletion                    PSGallery

# Use AllowClobber to update TabExpansion
Install-Module -Name VimTabCompletion -AllowClobber

# WARNING: The externally managed, dependent module 'vim' is not installed on
# this computer. To use the current module 'VimTabCompletion', ensure that its
# dependent module 'vim' is installed.
# WARNING: The externally managed, dependent module 'ctags' is not installed on
# this computer. To use the current module 'VimTabCompletion', ensure that its
# dependent module 'ctags' is installed.

Add Import-Module VimTabCompletion to $Env:PROFILE, because PowerShell does not activate completion until a module member is called in a session. Native commands like Vim are not module members.

Building

.\build.ps1

Publish to LocalRepo1

deploy.PSDeploy.ps1 uses a PSRepository defined by Set-PSRepository, e.g., LocalRepo1. To publish to a different location than PSGallery, change to the project root directory:

$Env:PublishToRepo = 'LocalRepo1' # Default: 'PSGallery'

# Not required if you ran .\build.ps1 in the current shell
$Env:PSModulePath = "$(pwd)\_build_dependencies_\;$env:PSModulePath"

Set-BuildEnvironment -Force

# Default: 'Unknown' when building locally. Reset by build.ps1.
$Env:BHBuildSystem = 'LocalRepo1'

# Override
.\build.ps1 -Task Distribute

Testing

VimTabCompletion requires Vim and readtags.

.\build.ps1 -Task Test

Change Log

git-chglog / git-chglog generates CHANGELOG.md. The template is in .chglog/CHANGELOG.tpl.md.

git-chglog -o CHANGELOG.md # To regenerate the change log
git-chglog 1.0.0..2.0.0 # To update with range of tags

License

vimtabcompletion's People

Contributors

jfishe avatar

Stargazers

 avatar

Watchers

 avatar  avatar

vimtabcompletion's Issues

vim -V10C:\ incorrect completion

  • vim -V10C:\ completes vim -V10C:'C:\$Recycle.Bin\'
  • vim -V10'C:\' completes vim -V10-V10'C:\data\'
  • tabexpansion2 -inputScript 'vim -V10C:\' -cursorColumn 11 | Select-Object -ExpandProperty CompletionMatches does not pre-pend -V10. PS uses C: as a word separator.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.