* lib/helpers: use `$OSTYPE` instead of `$(uname)`
* plugins/osx: use `$OSTYPE` instead of `$(uname)`
* plugins/boot2docker: use `$OSTYPE` instead of `$(uname)`
* plugins/python: use `$OSTYPE` instead of `$(uname)`
* plugins/base: use `$OSTYPE` instead of `$(uname)`
Alsö, use `[[` instead of `[` as the former has less insane argument handling being shell syntax rather than a builtin command that must emulate being a real binary
* completion/brew: use `$OSTYPE` instead of `$(uname)`
* completion/git: use `$OSTYPE` instead of `$(uname)`
Alsö, use `[[` instead of `[`.
* completion/fabric: use `$OSTYPE` instead of `uname`
* theme/demula: use `$OSTYPE` instead of `$(uname)`
* theme/rana: use `$OSTYPE` instead of `$(uname)`
Out of the box, `curl` reports success (via exit code) even if the
server returns an error, e.g. _429 Too Many Requests_ which was
sometimes the case with `http://myip.dnsomatic.com`. So, errors went
undetected.
There is the `--fail` switch which enables us to use the exit code the
way we need:
> -f, --fail
> (HTTP) Fail silently (no output at all) on server
> errors. This is mostly done to better enable scripts etc
> to better deal with failed attempts. In normal cases
> when an HTTP server fails to deliver a document, it
> returns an HTML document stating so (which often also
> describes why and more). This flag will prevent curl
> from outputting that and return error 22.
Use it to make the `myip()` deliver results reliably.
Some functions were specific to OS X, but were defined in the `base` plugin. I have moved them to the `osx` plugin:
* pman
* pcurl
* pri
As for `pcurl`, the `osx` plugin already had an existing `prevcurl` function, which was doing the same thing. I've aliased `pcurl` to simply call `prevcurl` to avoid breaking existing installations.
As far as I know the `open -fa $PREVIEW` thing only works on OS X, which means that these functions have only worked on OS X anyway.
add about-plugin metadata
chmod -x plugins
cleanup filenames to standardize on x.plugin.bash format
only plugin files intended to be executable from the command line should
contain a shebang line, and should be a+x.
Since it is referenced in the default .bash_profile and in aliases and
themes, why not make it an official plugin?
This creates a 'todo/' directory in /plugins/available, and installs
todo.sh and friends there. Tab completion and the 't' alias should work
out of the box.
Note: it was also necessary to modify .gitignore to ignore the files
todo.sh generates in custom/.
cite about-plugin metadata. This could be retrieved later, say by an
install script or other helper function, with:
cat ~/.bash_it/plugins/enabled/base.plugin.bash | metafor about-plugin
In this way, summaries of each plugin may be provided to give newcomers
(like me!) an overview.
also, rewrote plugins-help(), which didn't work very well on my system.
It now dynamically queries composure metadata.