All Projects → alecdibble → nama

alecdibble / nama

Licence: GPL-3.0 License
Namespaced Aliases: organize and easily find aliases using autocomplete & namespacing

Programming Languages

javascript
184084 projects - #8 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to nama

tipz
Gives you helpful hints when you execute a command for which you have an alias defined
Stars: ✭ 24 (-7.69%)
Mutual labels:  aliases, alias
frontal
An Angular select/dropdown component
Stars: ✭ 20 (-23.08%)
Mutual labels:  autocomplete
tiny-autocomplete
A small and snappy (2k minified+gzipped!) JavaScript autocomplete plugin for Zepto and jQuery
Stars: ✭ 33 (+26.92%)
Mutual labels:  autocomplete
go-getoptions
Fully featured Go (golang) command line option parser with built-in auto-completion support.
Stars: ✭ 41 (+57.69%)
Mutual labels:  autocomplete
react-native-dropdown-autocomplete
Autocomplete input with dropdown modal component for React native. Useful for pages with multiple autocomplete's.
Stars: ✭ 97 (+273.08%)
Mutual labels:  autocomplete
pymolshortcuts
The repository pymolschortucts contains the a collection of shortcuts that are loaded on startup of PyMOL. These shortcuts enable websearches from within PyMOL as well as many other convienent functions that make work in PyMOL more productive..
Stars: ✭ 34 (+30.77%)
Mutual labels:  aliases
psonic
Sonic is a super fast auto suggestion engine built by the team at crisp.chat, a customer engagement platform. its built in Rust and they officially support a javascript client, but if you want to use sonic via php, this is the library that you can look for. Completely unit tested, and adheres to modern coding standards, and offers a clean api to…
Stars: ✭ 90 (+246.15%)
Mutual labels:  autocomplete
clui
A command system with extra steps
Stars: ✭ 18 (-30.77%)
Mutual labels:  autocomplete
stance
Learned string similarity for entity names using optimal transport.
Stars: ✭ 27 (+3.85%)
Mutual labels:  aliases
td-completes-me
A Simple Auto Completion Engine for Touch Designer
Stars: ✭ 85 (+226.92%)
Mutual labels:  autocomplete
extensions
Angular Material Extensions Library.
Stars: ✭ 203 (+680.77%)
Mutual labels:  autocomplete
ripz
💡 ripgrep-powered zsh plugin alias reminder
Stars: ✭ 23 (-11.54%)
Mutual labels:  aliases
dotfiles
Dotfiles for my NixOS system based on Dracula theme
Stars: ✭ 39 (+50%)
Mutual labels:  alias
EasyGoServer
一个能够仅仅依赖你创建好的 sql 文件,就能 自动帮你生成基础服务端框架代码 的 go server 框架
Stars: ✭ 49 (+88.46%)
Mutual labels:  autocomplete
autocomplete
Simple accessible autocomplete for vanilla javacript with support for remote & local data, ~3KB gzip
Stars: ✭ 38 (+46.15%)
Mutual labels:  autocomplete
SwitchCaseGenerator
An Xcode Source Editor Extension that generates a swift switch case statement based on selected enum cases
Stars: ✭ 63 (+142.31%)
Mutual labels:  autocomplete
bash aliases
A project to collect useful bash aliases.
Stars: ✭ 25 (-3.85%)
Mutual labels:  alias
lsp signature.nvim
LSP signature hint as you type
Stars: ✭ 915 (+3419.23%)
Mutual labels:  autocomplete
tabnine-vim
Vim client for TabNine. https://vimawesome.com/plugin/tabnine-vim
Stars: ✭ 652 (+2407.69%)
Mutual labels:  autocomplete
SSTMCSPGAAS
Stupidly Simple Tiny Minimal Coming Soon Page Generator As A Service
Stars: ✭ 23 (-11.54%)
Mutual labels:  alias

nama

Namespaced Aliases: organize and easily find aliases using autocomplete & namespacing

npm npm Join the chat at https://gitter.im/namespaced-aliases/community

About

An open-source command line utility to supercharge your aliases. Features include alias namespacing & tab autocomplete. By having easy access to all of your aliases, you can speed up your development or devOps workflow.

Compatability

Currently only supports the bash shell. Other shells are going to be tested & implemented in the future.

Installation

Installing using NPM

npm install -g nama
nama-install
source ~/.bashrc

If you run into permissions errors, please run this command:

npm install -g nama --unsafe-perm=true

If that still gives permissions issues, please follow this guide to fixing npm permissions issues. You should not need sudo to install this.

Installing on Ubuntu

sudo apt-get install build-essential
npm install -g nama
nama-install
source ~/.bashrc

If you run into permissions issues, please follow this guide to fixing npm permissions issues. You should not need sudo to install this.

Installing on MacOS

Also, make sure your shell sources ~/.bashrc whenever a new window terminal opens. If you are running MacOS, make sure the following line is in your ~/.bash_profile file:

[ -r ~/.bashrc ] && . ~/.bashrc

You can easily add it by running this command:

echo '[ -r ~/.bashrc ] && . ~/.bashrc' >> ~/.bash_profile

Cloud Sync

AliaSync is a service I created to sync & store nama aliases in the cloud. To create a free AliaSync account & enable nama sync:

npm install nama-sync
nama-sync

More information can found at the nama-sync repository.

Usage

Name - Namespaced Aliases

List all namespaces

na

Create & deleting namespaces

To create a namespace: na c [namespace-name] or na create [namespace-name]

To delete an existing namespace: na rm [namespace-name] or na delete [namespace-name]

Creating a new alias in a namespace

na c [namespace] [alias] [command] or na create [namespace] [alias] [command]

Running an alias

na [namespace] [alias]

Running an alias in the current console

If you want to run a command like cd that will affect your current console, you must use the nac command. Currently, the mechanism that allows the nac command to work makes the autocomplete situation intermittent.

na c test1 gohome 'cd ~/'
nac test1 gohome

Please file an issue or PR if you find a potential solution to this problem.

Reference

nama - namespaced aliases
       Store, quickly access, and organize
       your aliases. Auto-complete too!

na [-a] [namespace]
     (-a)            Lists all commands for all namespaces
     [namespace]     List commands for the namespace


na c [namespace]
na create [namespace]
     Creates a namespace/folder to organize your aliases
       Example:     na c utils

na c [namespace] [alias] "[command]"<-Enclosed in quotes
na create [namespace] [alias] "[command]"<-Enclosed in quotes
     Creates an alias in a namespace
       Example:     na c utils echo_info "echo 'info'"

na [namespace] [alias]
     Runs your alias
       Example: a utils echo_info

nac [namespace] [alias]
     Runs your alias in the current console
     Lets commands like cd work correctly

     Note: autocomplete work intermittently for commands
     in this mode

na rm [namespace] [alias]
na delete [namespace] [alias]
     Deletes an alias in a namespace

You can also use nama in the place of na for any command above.

Limitations

Protected namespaces

Current, you cannot use the namespace completion due to the mechanics of the autocompletion script.

Change Log

Date Version Change Description
3/1/2019 0.9.1 More validations, fixed bashrc double line, updated gif
3/1/2019 0.9.0 Added nac command to handle commands like cd, added warning, removed old na alias, added invalid character validations
2/23/2019 0.8.1 Fixed issue with running commands in current shell, Fixed bug with sqlite table init
2/23/2019 0.8.0 Changed a command to na to help prevent unintended errors with other commands
2/19/2019 0.7.0 Integrated with nama-sync
2/8/2019 0.6.2 Changed the way installation works
2/6/2019 0.6.1 Fixed small bug introduced during the merge
2/5/2019 0.6.0 Sped up autocomplete functionality significantly
12/4/2018 0.5.6 Changed the way in which commands were referenced globally
12/4/2018 0.5.3 Fixed dependency issues
11/27/2018 0.5.1 Fixed issue with remove command
11/23/2018 0.5.0 Updated to use the tabtabtab autocompletion library
11/14/2018 0.4.0 Refactor to utilize sqlite
11/11/2018 0.3.0 Added default shortcut, refactor
11/9/2018 0.2.2 Added removal feature, updated installation script
11/8/2018 0.1.0 Initial release
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].