summaryrefslogtreecommitdiff
path: root/oh-my-zsh/plugins/encode64
diff options
context:
space:
mode:
authorAditya <bluenerd@protonmail.com>2023-02-27 20:04:56 +0530
committerAditya <bluenerd@protonmail.com>2023-02-27 20:04:56 +0530
commitedc449275b6c04445f58b108ca0937a87c1e8430 (patch)
tree9fd484d58145b616f29a78857cc0b1c8b1c18f05 /oh-my-zsh/plugins/encode64
parent6f5424ca96c4221ef433f545642669e9c104d0ed (diff)
add zsh
Diffstat (limited to 'oh-my-zsh/plugins/encode64')
-rw-r--r--oh-my-zsh/plugins/encode64/README.md73
-rw-r--r--oh-my-zsh/plugins/encode64/encode64.plugin.zsh27
2 files changed, 100 insertions, 0 deletions
diff --git a/oh-my-zsh/plugins/encode64/README.md b/oh-my-zsh/plugins/encode64/README.md
new file mode 100644
index 0000000..7cdf8c3
--- /dev/null
+++ b/oh-my-zsh/plugins/encode64/README.md
@@ -0,0 +1,73 @@
+# encode64
+
+Alias plugin for encoding or decoding using `base64` command.
+
+To use it, add `encode64` to the plugins array in your zshrc file:
+
+```zsh
+plugins=(... encode64)
+```
+
+## Functions and Aliases
+
+| Function | Alias | Description |
+| -------------- | ------ | -------------------------------------- |
+| `encode64` | `e64` | Encodes given data to base64 |
+| `encodefile64` | `ef64` | Encodes given file's content to base64 |
+| `decode64` | `d64` | Decodes given data from base64 |
+
+## Usage and examples
+
+### Encoding
+
+- From parameter
+
+ ```console
+ $ encode64 "oh-my-zsh"
+ b2gtbXktenNo
+ $ e64 "oh-my-zsh"
+ b2gtbXktenNo
+ ```
+
+- From piping
+
+ ```console
+ $ echo "oh-my-zsh" | encode64
+ b2gtbXktenNo==
+ $ echo "oh-my-zsh" | e64
+ b2gtbXktenNo==
+ ```
+
+### Encoding a file
+
+Encode a file's contents to base64 and save output to text file.
+**NOTE:** Takes provided file and saves encoded content as new file with `.txt` extension
+
+- From parameter
+
+ ```console
+ $ encodefile64 ohmyzsh.icn
+ ohmyzsh.icn's content encoded in base64 and saved as ohmyzsh.icn.txt
+ $ ef64 "oh-my-zsh"
+ ohmyzsh.icn's content encoded in base64 and saved as ohmyzsh.icn.txt
+ ```
+
+### Decoding
+
+- From parameter
+
+ ```console
+ $ decode64 b2gtbXktenNo
+ oh-my-zsh%
+ $ d64 b2gtbXktenNo
+ oh-my-zsh%
+ ```
+
+- From piping
+
+ ```console
+ $ echo "b2gtbXktenNoCg==" | decode64
+ oh-my-zsh
+ $ echo "b2gtbXktenNoCg==" | d64
+ oh-my-zsh
+ ```
diff --git a/oh-my-zsh/plugins/encode64/encode64.plugin.zsh b/oh-my-zsh/plugins/encode64/encode64.plugin.zsh
new file mode 100644
index 0000000..6927f52
--- /dev/null
+++ b/oh-my-zsh/plugins/encode64/encode64.plugin.zsh
@@ -0,0 +1,27 @@
+encode64() {
+ if [[ $# -eq 0 ]]; then
+ cat | base64
+ else
+ printf '%s' $1 | base64
+ fi
+}
+
+encodefile64() {
+ if [[ $# -eq 0 ]]; then
+ echo "You must provide a filename"
+ else
+ base64 -i $1 -o $1.txt
+ echo "${1}'s content encoded in base64 and saved as ${1}.txt"
+ fi
+}
+
+decode64() {
+ if [[ $# -eq 0 ]]; then
+ cat | base64 --decode
+ else
+ printf '%s' $1 | base64 --decode
+ fi
+}
+alias e64=encode64
+alias ef64=encodefile64
+alias d64=decode64