npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@unisnips/unisnips

v0.8.0

Published

cli of unisnips project, convert ultisnips snippet to vscode/atom and other targets

Downloads

9

Readme

Unisips

Unisnips is a set of tools to parse and generate expandable snippets, aiming to be the bridge between different editor/plugin/code-exapand-apps. It parses snippet sources (so far only a subset of UltiSnips is supported) and converts them to different targets.

You can keep only one set of expressive code templates - AKA snippets - and free yourself the chore of rewriting snippets to fit specifications of different platforms.

:construction: Still under active development, feel free to open issues.

See the demo site

:sparkles: Features

Parses source to a list of interchangable data for further use

See the demo site's DEBUG panel.

Supported sources

UltiSnips

  1. Positional placholder (aka 'TabStop' in UltiSnips)
snippet subsec "most common and simple"
---------------- $1 ----------------------
----------------end $1 -------------------
endsnippet

snippet with_default "with default value"
function ${1:name} {
  ${2://body}
}
endsnippet

snippet nested "nested tabstop"
${0:outer and ${1://inner}}
endsnippet
  1. 'VISUAL' placeholder
snippet ret  "return value"
ret ${VISUAL}
endsnippet
  1. script code block
snippet test_shell "shell code"
should print date: `! date`
endsnippet

snippet test_js "javascript code"
should print date: `!js new Date()`
endsnippet

Supported targets

Usage

Node cli

Install

npm i -g @unisnips/unisnips
# or
yarn global add @unisnips/unisnips

Example

unisnips convert --target vscode -i ~/.vim/Ultisnips/typescript.snippets -o ~/vscodesnippets/typescript.json

Roadmaps

  • [x] Port a subset of UltiSnips parser to TypeScript, enable some basic and mostly used features

  • [x] Add more builtin variables, may be useful in some targets (such as vscode's $CURRENT_YEAR)

  • [ ] Parses transformers and convert them to vscode