├── .github
├── ISSUE_TEMPLATE
│ ├── bug_report.md
│ └── feature_request.md
├── PULL_REQUEST_TEMPLATE.md
└── workflows
│ └── github-pages.yml
├── .gitignore
├── .gitmodules
├── LICENSE
├── README.md
├── Vagrantfile
├── alien-minimal.plugin.zsh
├── alien-minimal.zsh
├── alien-minimal.zsh-theme
├── amrc.zsh
├── modules
├── init.zsh
├── prompt.zsh
├── sections_general.zsh
├── sections_vcs.zsh
├── sections_version.zsh
├── symbols.zsh
├── themes
│ ├── default.zsh
│ ├── hex
│ │ └── soft.zsh
│ ├── mono.zsh
│ ├── mono_bright.zsh
│ ├── soft.zsh
│ └── terminal.zsh
└── viprompt.zsh
└── previewer
├── index.html
└── index.js
/.github/ISSUE_TEMPLATE/bug_report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug report
3 | about: Create a report to help us improve
4 | title: ''
5 | labels: ''
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Describe the bug**
11 | A clear and concise description of what the bug is.
12 |
13 | **To Reproduce**
14 | Steps to reproduce the behavior:
15 | 1. Go to '...'
16 | 2. Click on '....'
17 | 3. Scroll down to '....'
18 | 4. See error
19 |
20 | **Expected behavior**
21 | A clear and concise description of what you expected to happen.
22 |
23 | **Screenshots**
24 | If applicable, add screenshots to help explain your problem.
25 |
26 | **Environment:**
27 | - Plugin Manager: [ antigen | zplug | ... ]
28 | - ZSH Version:
29 | - Operating System: [ name and version ]
30 | - Terminal Emulator: [ name and version ]
31 |
32 | **Additional context**
33 | Add any other context about the problem here.
34 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: Suggest an idea for this project
4 | title: ''
5 | labels: ''
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Is your feature request related to a problem? Please describe.**
11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12 |
13 | **Describe the solution you'd like**
14 | A clear and concise description of what you want to happen.
15 |
16 | **Describe alternatives you've considered**
17 | A clear and concise description of any alternative solutions or features you've considered.
18 |
19 | **Additional context**
20 | Add any other context or screenshots about the feature request here.
21 |
--------------------------------------------------------------------------------
/.github/PULL_REQUEST_TEMPLATE.md:
--------------------------------------------------------------------------------
1 | * **Please check if the PR fulfills these requirements**
2 | - [ ] The commit message follows our guidelines
3 | - [ ] Docs have been added / updated in README.md (for features)
4 |
5 |
6 | * **What kind of change does this PR introduce?** (Bug fix, feature, docs update, ...)
7 |
8 |
9 |
10 | * **What is the current behavior?** (You can also link to an open issue here)
11 |
12 |
13 |
14 | * **What is the new behavior (if this is a feature change)?**
15 |
16 |
17 |
18 | * **Does this PR introduce a breaking change?** (What changes might users need to make in their configuration due to this PR?)
19 |
20 |
21 |
22 | * **Other information**:
23 |
--------------------------------------------------------------------------------
/.github/workflows/github-pages.yml:
--------------------------------------------------------------------------------
1 | # Sample workflow for building and deploying a Jekyll site to GitHub Pages
2 | name: Deploy GitHub Pages
3 |
4 | on:
5 | # Runs on pushes targeting the default branch
6 | push:
7 | branches: ["master"]
8 |
9 | # Allows you to run this workflow manually from the Actions tab
10 | workflow_dispatch:
11 |
12 | # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
13 | permissions:
14 | contents: read
15 | pages: write
16 | id-token: write
17 |
18 | # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
19 | # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
20 | concurrency:
21 | group: "pages"
22 | cancel-in-progress: false
23 |
24 | jobs:
25 | # Build job
26 | build:
27 | runs-on: ubuntu-latest
28 | steps:
29 | - name: Checkout
30 | uses: actions/checkout@v4
31 | - name: Setup Pages
32 | uses: actions/configure-pages@v5
33 | - name: Build with Jekyll
34 | uses: actions/jekyll-build-pages@v1
35 | with:
36 | source: ./
37 | destination: ./_site
38 | - name: Upload artifact
39 | uses: actions/upload-pages-artifact@v3
40 |
41 | # Deployment job
42 | deploy:
43 | environment:
44 | name: github-pages
45 | url: ${{ steps.deployment.outputs.page_url }}
46 | runs-on: ubuntu-latest
47 | needs: build
48 | steps:
49 | - name: Deploy to GitHub Pages
50 | id: deployment
51 | uses: actions/deploy-pages@v4
52 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | *.log
3 | .vagrant/
4 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "libs/zsh-async"]
2 | path = libs/zsh-async
3 | url = https://github.com/mafredri/zsh-async.git
4 | [submodule "libs/promptlib"]
5 | path = libs/promptlib
6 | url = https://github.com/eendroroy/promptlib-zsh.git
7 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2016-2024 indrajit
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # alien-minimal
2 |
3 | **alien-minimal** theme is faster than many other themes.
4 |
5 | **Why?** It updates part of the prompt asynchronously – the time-consuming processing like git status checking,
6 | git dirty copy checking and so on
7 |
8 | **How?** It starts a background job for these processes, and in the meantime shows initial prompt and lets you use the
9 | terminal as you would normally.
10 |
11 | **alien-minimal** is **independent** of any library/framework like Oh-My-Zsh or Prezto.
12 |
13 | ## Installation
14 |
15 | Add the following line in `~/.zshrc` depending on zsh plugin manager
16 |
17 | ##### [antigen](https://github.com/zsh-users/antigen):
18 |
19 | ```zsh
20 | antigen theme eendroroy/alien-minimal alien-minimal
21 | ```
22 |
23 | ##### [zgen](https://github.com/tarjoilija/zgen):
24 |
25 | ```zsh
26 | zgen load eendroroy/alien-minimal
27 | ```
28 |
29 | ##### [zplug](https://github.com/zplug/zplug):
30 |
31 | ```zsh
32 | zplug "eendroroy/alien-minimal"
33 | ```
34 |
35 | ##### [oh-my-zsh: Overriding and Adding Themes](https://github.com/robbyrussell/oh-my-zsh/wiki/Customization#overriding-and-adding-themes)
36 |
37 | ```zsh
38 | # if using git 2.13 or higher
39 | git clone --recurse-submodules https://github.com/eendroroy/alien-minimal.git ${ZSH_CUSTOM}/themes/alien-minimal
40 |
41 | # if lower version use
42 | cd ${ZSH_CUSTOM}/themes/alien-minimal
43 | git clone https://github.com/eendroroy/alien-minimal.git
44 | git submodule update --init --recursive # --remote
45 | ```
46 |
47 | Then set `ZSH_THEME="alien-minimal/alien-minimal"` in the `~/.zshrc` file.
48 |
49 | ## Customizations
50 |
51 | **add configurations in `~/.amrc`**
52 |
53 | ### Sections
54 |
55 | #### Available sections:
56 |
57 | - am_ssh_st
58 | - am_prompt_start_tag
59 | - am_prompt_dir
60 | - am_prompt_end_tag
61 | - am_venv
62 | - am_version_prompt
63 | - am_vcs_prompt
64 | - am_space
65 | - am_vi_prompt
66 |
67 | #### `am_vcs_prompt` configuration
68 |
69 | Git:
70 |
71 | - am_git_symbol
72 | - am_git_rebasing
73 | - am_git_branch
74 | - am_git_left_right_master
75 | - am_git_commit_time
76 | - am_git_rev
77 | - am_git_stash
78 | - am_git_left_right
79 | - am_git_dirty
80 |
81 | Mercurial:
82 |
83 | - am_hg_symbol
84 | - am_hg_branch
85 | - am_hg_rev
86 |
87 | Subversion:
88 |
89 | - am_svn_symbol
90 | - am_svn_rev
91 |
92 | #### A sample sensible configuration
93 |
94 | ```zsh
95 | AM_VERSIONS_PROMPT=()
96 |
97 | AM_GIT_SECTION=(
98 | am_git_symbol
99 | am_git_rebasing
100 | am_git_branch
101 | am_git_left_right_master
102 | am_git_commit_time
103 | am_git_rev
104 | am_git_stash
105 | am_git_left_right
106 | am_git_dirty
107 | )
108 |
109 | AM_HG_SECTION=(
110 | am_hg_symbol
111 | am_hg_branch
112 | am_hg_rev
113 | )
114 |
115 | AM_SVN_SECTION=(
116 | am_svn_symbol
117 | am_svn_rev
118 | )
119 |
120 | AM_LEFT_SECTION=(
121 | am_space
122 | am_ssh_st
123 | am_prompt_start_tag
124 | am_prompt_dir
125 | am_prompt_end_tag
126 | am_venv
127 | am_space
128 | )
129 |
130 | AM_RIGHT_SECTION=(
131 | am_version_prompt
132 | am_vcs_prompt
133 | )
134 | ```
135 |
136 | ### Update left prompt asynchronously
137 |
138 | ```zsh
139 | export AM_ASYNC_L_PROMPT=1
140 | ```
141 |
142 | ### Show initial new line
143 |
144 | Always show a new line
145 |
146 | ```zsh
147 | export AM_INITIAL_LINE_FEED=1
148 | ```
149 |
150 | Unset `AM_INITIAL_LINE_FEED` to stop printing a new line.
151 |
152 | ### Add start tag and end tag:
153 |
154 | ```zsh
155 | export AM_PROMPT_START_TAG='-->' # previously `PROMPT_START_TAG`
156 | export AM_PROMPT_END_TAG='\ $' # previously `PROMPT_END_TAG`
157 | export AM_PROMPT_START_TAG_COLOR=81 # previously `PROMPT_START_TAG_COLOR`
158 | export AM_PROMPT_END_TAG_COLOR=81 # previously `PROMPT_END_TAG_COLOR`
159 | ```
160 |
161 | **Result:**
162 |
163 | ```zsh
164 | --> ~ $
165 | --> ~ $ 1
166 | (venv) --> python-project $
167 | (venv) --> python-project $ 130
168 | ```
169 |
170 | You can additionally show the error color on prompt start tag:
171 |
172 | ```zsh
173 | export AM_ERROR_ON_START_TAG=1
174 | ```
175 |
176 | _Note: if `AM_PROMPT_START_TAG` is empty, this configuration will be ignored._
177 |
178 | ### Show versions:
179 |
180 | Available version are:
181 | `PYTHON`,`PYTHON_S`,`RUBY`,`RUBY_S`,`JAVA`,`JAVA_S`,`GO`,`GO_S`,`ELIXIR`,`ELIXIR_S`,
182 | `CRYSTAL`,`CRYSTAL_S`,`NODE`,`NODE_S`,`PHP`,`PHP_S`,`GRADLE`,`MAVEN`
183 |
184 | ```zsh
185 | export AM_VERSIONS_PROMPT=(RUBY PYTHON JAVA GO CRYSTAL NODE PHP ELIXIR GRADLE)
186 | ```
187 |
188 | Customize Separator:
189 |
190 | ```zsh
191 | export AM_VERSION_PROMPT_SEP='|'
192 | ```
193 |
194 | _Note: Prompt maintain declaration order._
195 |
196 | ### Configure dirname in prompt:
197 |
198 | ```zsh
199 | export AM_DIR_EXPANSION_LEVEL=2
200 | ```
201 |
202 | ### Hide exit code:
203 |
204 | ```zsh
205 | export AM_HIDE_EXIT_CODE=1
206 | ```
207 |
208 | ### Keep previous RPROMPT:
209 |
210 | ```zsh
211 | export AM_KEEP_PROMPT=1
212 | ```
213 |
214 | ### Color themes:
215 |
216 | ```zsh
217 | 1. export AM_THEME=mono
218 | 2. export AM_THEME=mono_bright
219 | 3. export AM_THEME=terminal
220 | 4. export AM_THEME=soft
221 | 5. export AM_THEME=default
222 | ```
223 |
224 | _Note: **Unset `AM_THEME` to use default color scheme.**_
225 |
226 | **Apart from these default themes, custom colors can be defined:**
227 |
228 | Use [previewer](https://eendroroy.github.io/alien-minimal/previewer/) to easily preview colors.
229 |
230 | ```zsh
231 | export AM_VCS_COLOR=1 # color for VCS (G: M: V:)
232 | export AM_SSH_COLOR=11 # color for ssh indicator
233 | export AM_VI_INSERT_COLOR=11 # color for vi insert mode indicator
234 | export AM_VI_NORMAL_COLOR=11 # color for vi normal mode indicator
235 | export AM_NORMAL_COLOR=12 # color for normal text
236 | export AM_ERROR_COLOR=1 # color for ERROR
237 | export AM_REV_COLOR=14 # color for VCS Revision number
238 | export AM_BRANCH_COLOR=10 # color for VCS BRANCH name
239 | export AM_LEFT_RIGHT_COLOR=3 # color for GIT Left-Right status
240 | export AM_STASH_COLOR=3 # color for GIT stash count
241 | export AM_BARE_COLOR=3 # color for GIT bare repo indicator
242 | export AM_COMMIT_SINCE_COLOR=6 # color for last commit time
243 | export AM_FADE_COLOR=8 # color for fade text color
244 | export AM_VENV_COLOR=8 # color fir python virtual env text
245 | export AM_PYTHON_COLOR=2 # color for python version text
246 | export AM_RUBY_COLOR=1 # color for ruby version text
247 | export AM_JAVA_COLOR=15 # color for java version text
248 | export AM_TIMER_COLOR=14 # color for command execution time
249 | ```
250 |
251 | Or creating a new theme file:
252 |
253 | __/path/to/custom/theme.zsh__
254 |
255 | ```zsh
256 | #!/usr/bin/env zsh
257 |
258 | am_theme(){
259 | AM_VCS_COLOR=248
260 | AM_SSH_COLOR=143
261 | AM_VI_INSERT_COLOR=143
262 | AM_VI_NORMAL_COLOR=143
263 | AM_NORMAL_COLOR=39
264 | AM_ERROR_COLOR=208
265 | AM_REV_COLOR=248
266 | AM_BRANCH_COLOR=78
267 | AM_LEFT_RIGHT_COLOR=222
268 | AM_STASH_COLOR=222
269 | AM_BARE_COLOR=222
270 | AM_COMMIT_SINCE_COLOR=244
271 | AM_FADE_COLOR=242
272 | AM_VENV_COLOR=245
273 | AM_PYTHON_COLOR=40
274 | AM_RUBY_COLOR=196
275 | AM_JAVA_COLOR=178
276 | AM_GO_COLOR=81
277 | AM_ELIXIR_COLOR=81
278 | AM_CRYSTAL_COLOR=8
279 | AM_NODE_COLOR=2
280 | AM_PHP_COLOR=5
281 | AM_GRADLE_COLOR=2
282 | AM_MAVEN_COLOR=3
283 | AM_TIMER_COLOR=248
284 | AM_PROMPT_START_TAG_COLOR=39
285 | AM_PROMPT_END_TAG_COLOR=39
286 | AM_GIT_TRACKED_COLOR=78
287 | AM_GIT_UN_TRACKED_COLOR=208
288 | AM_LEFT_RIGHT_COLOR=252
289 | }
290 | ```
291 |
292 | Then activate the theme using:
293 |
294 | ```zsh
295 | export AM_CUSTOM_THEME_PATH=/path/to/custom/theme.zsh
296 | ```
297 |
298 | ### Nerd Font:
299 |
300 | **Nerd Font must be installed [nerd-fonts](https://github.com/ryanoasis/nerd-fonts)**
301 |
302 | Enable Nerd Font
303 |
304 | ```zsh
305 | export AM_USE_NERD_FONT=1 # previously `USE_NERD_FONT`
306 | ```
307 |
308 | ### customize symbols
309 |
310 | ```zsh
311 | export AM_GIT_STASH_SYM='@'
312 | export AM_GIT_BARE_SYM='☢'
313 | export AM_GIT_SYM='G'
314 | export AM_HG_SYM='H'
315 | export AM_SVN_SYM='S'
316 | export AM_SSH_SYM='[S]'
317 | export AM_JAVA_SYM='JAVA:'
318 | export AM_PY_SYM='PY:'
319 | export AM_RB_SYM='RB:'
320 | export AM_GO_SYM='GO:'
321 | export AM_ELIXIR_SYM='EX:'
322 | export AM_CRYSTAL_SYM='CR:'
323 | export AM_NODE_SYM='⬡ '
324 | export AM_PHP_SYM='PHP:'
325 | export AM_GRADLE_SYM='GRADLE:'
326 | export AM_MAVEN_SYM='MVN:'
327 | export AM_GIT_REBASING_SYMBOL='⇋'
328 | export AM_GIT_PUSH_SYM='↑'
329 | export AM_GIT_PULL_SYM='↓'
330 | export AM_LEFT_RIGHT_SEP='|'
331 | export AM_VIM_INSERT_SYM='(i)'
332 | export AM_VIM_NORMAL_SYM='(n)'
333 | ```
334 |
335 | _Note: this overrides `AM_USE_NERD_FONT` configuration._
336 |
337 | ## Libraries Used
338 |
339 | - ['zsh-async'](https://github.com/mafredri/zsh-async) by **[@mafredri](https://github.com/mafredri)**
340 | - ['promptlib-zsh'](https://github.com/eendroroy/promptlib-zsh) by **[@eendroroy](https://github.com/eendroroy)**
341 |
342 | ## License
343 |
344 | The project is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
345 |
--------------------------------------------------------------------------------
/Vagrantfile:
--------------------------------------------------------------------------------
1 | # -*- mode: ruby -*-
2 | # vi: set ft=ruby :
3 |
4 | Vagrant.configure("2") do |config|
5 | config.vm.box = "minimal/trusty64"
6 |
7 | config.vm.box_check_update = false
8 | config.vbguest.auto_update = false
9 |
10 | # config.vm.network "private_network", ip: "192.168.33
11 | config.vm.synced_folder ".", "/home/vagrant/alien-minimal"
12 |
13 | config.vm.provider "virtualbox" do |vb|
14 | vb.gui = false
15 | vb.memory = 128
16 | end
17 |
18 | config.vm.provision "shell", privileged: false, inline: <<-SHELL
19 | sudo apt-get update
20 | sudo apt-get install -y git zsh
21 | __line_num=$(grep -nr 'vagrant:' /etc/passwd | awk -F':' '{print $1}')
22 | sudo sed -i "${__line_num}s|/bin/bash|$(which zsh)|g" /etc/passwd
23 | git clone https://github.com/eendroroy/dotfiles.git ~/.dotfiles
24 | cd ~/.dotfiles
25 | bash install.sh
26 | SHELL
27 | end
28 |
--------------------------------------------------------------------------------
/alien-minimal.plugin.zsh:
--------------------------------------------------------------------------------
1 | alien-minimal.zsh
--------------------------------------------------------------------------------
/alien-minimal.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | if [[ -f ~/.amrc ]]; then
4 | # shellcheck disable=SC1090
5 | source ~/.amrc
6 | else
7 | echo
8 | print -P "%F{red} ===> '~/.amrc' file not found, creating dummy '~/.amrc' file ... %f"
9 | echo
10 | cp "${0:A:h}/amrc.zsh" ~/.amrc
11 | fi
12 |
13 | THEME_ROOT=${0:A:h}
14 |
15 | source "${THEME_ROOT}/libs/promptlib/activate"
16 | source "${THEME_ROOT}/libs/zsh-async/async.zsh"
17 |
18 | source "${THEME_ROOT}/modules/init.zsh"
19 | source "${THEME_ROOT}/modules/symbols.zsh"
20 | source "${THEME_ROOT}/modules/sections_general.zsh"
21 | source "${THEME_ROOT}/modules/sections_vcs.zsh"
22 | source "${THEME_ROOT}/modules/sections_version.zsh"
23 | source "${THEME_ROOT}/modules/prompt.zsh"
24 | source "${THEME_ROOT}/modules/viprompt.zsh"
25 |
26 | precmd() {
27 | autoload -U add-zsh-hook
28 | setopt prompt_subst
29 | am_load_theme
30 | __import_env
31 |
32 | if [[ ${AM_ASYNC_L_PROMPT} == 1 ]]; then
33 | am_async_l_prompt
34 | else
35 | # shellcheck disable=SC2034
36 | PROMPT="$(am_l_prompt_render)"
37 | fi
38 |
39 | # shellcheck disable=SC2034
40 | [[ ${AM_KEEP_PROMPT} != 1 ]] && RPROMPT=""
41 | am_async_r_prompt
42 | }
43 |
--------------------------------------------------------------------------------
/alien-minimal.zsh-theme:
--------------------------------------------------------------------------------
1 | alien-minimal.zsh
--------------------------------------------------------------------------------
/amrc.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | ## ===> THEME
4 | # export AM_THEME=default
5 |
6 | ## ===> SECTIONS
7 | # export AM_VERSIONS_PROMPT=()
8 | # export AM_GIT_SECTION=(am_git_symbol am_git_rebasing am_git_branch am_git_left_right_master am_git_commit_time am_git_rev am_git_stash am_git_left_right am_git_dirty)
9 | # export AM_HG_SECTION=(am_hg_symbol am_hg_branch am_hg_rev)
10 | # export AM_SVN_SECTION=(am_svn_symbol am_svn_rev)
11 | # export AM_LEFT_SECTION=(am_space am_prompt_dir am_space)
12 | # export AM_RIGHT_SECTION=(am_version_prompt am_vcs_prompt)
13 |
14 | ## ===> CONFIGS
15 | # export AM_ASYNC_L_PROMPT=1
16 | # export AM_INITIAL_LINE_FEED=0
17 | # export AM_USE_NERD_FONT=1
18 | # export AM_DIR_EXPANSION_LEVEL=1
19 |
20 | ## ===> SYMBOLS
21 | # export AM_VERSION_PROMPT_SEP='|'
22 | # export AM_JAVA_SYM='JAVA:'
23 | # export AM_PY_SYM='PY:'
24 | # export AM_RB_SYM='RB:'
25 | # export AM_GO_SYM='GO:'
26 | # export AM_ELIXIR_SYM='EX:'
27 | # export AM_CRYSTAL_SYM='CR:'
28 | # export AM_NODE_SYM='⬡ '
29 | # export AM_PHP_SYM='PHP:'
30 | # export AM_HG_SYM='H'
31 | # export AM_SVN_SYM='S'
32 | # export AM_SSH_SYM='[S]'
33 | # export AM_GIT_SYM='G'
34 | # export AM_GIT_REBASING_SYMBOL='⇋'
35 | # export AM_GIT_PUSH_SYM='↑'
36 | # export AM_GIT_PULL_SYM='↓'
37 | # export AM_GIT_STASH_SYM='@'
38 | # export AM_GIT_BARE_SYM='☢'
39 | # export AM_PROMPT_START_TAG=''
40 | # export AM_PROMPT_END_TAG=''
41 |
42 | ## ===> COLORS
43 | # export AM_VCS_COLOR=248
44 | # export AM_SSH_COLOR=143
45 | # export AM_NORMAL_COLOR=39
46 | # export AM_ERROR_COLOR=208
47 | # export AM_REV_COLOR=248
48 | # export AM_BRANCH_COLOR=78
49 | # export AM_LEFT_RIGHT_COLOR=222
50 | # export AM_STASH_COLOR=222
51 | # export AM_BARE_COLOR=222
52 | # export AM_COMMIT_SINCE_COLOR=244
53 | # export AM_FADE_COLOR=242
54 | # export AM_VENV_COLOR=245
55 | # export AM_PYTHON_COLOR=40
56 | # export AM_RUBY_COLOR=196
57 | # export AM_JAVA_COLOR=178
58 | # export AM_GO_COLOR=81
59 | # export AM_ELIXIR_COLOR=81
60 | # export AM_CRYSTAL_COLOR=8
61 | # export AM_NODE_COLOR=2
62 | # export AM_PHP_COLOR=5
63 | # export AM_GRADLE_COLOR=5
64 | # export AM_TIMER_COLOR=248
65 | # export AM_PROMPT_START_TAG_COLOR=39
66 | # export AM_PROMPT_END_TAG_COLOR=39
67 | # export AM_GIT_TRACKED_COLOR=78
68 | # export AM_GIT_UN_TRACKED_COLOR=208
69 |
--------------------------------------------------------------------------------
/modules/init.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | __import_env() {
4 | env | grep --color=never "ENV_VERSION=\|^VIRTUAL_ENV=\|^AM_" | while IFS=$'\n' read -r line; do
5 | eval "export $(echo "${line}" | awk -F'=' '{print $1"=\""$2"\""}')" > /dev/null
6 | done
7 | }
8 |
9 | THEME_DIR="${0:A:h}/themes"
10 |
11 | am_load_theme(){
12 | if [[ -z "${AM_CUSTOM_THEME_PATH}" ]]; then
13 | if [[ -z "${AM_THEME}" ]]; then
14 | source "${THEME_DIR}/default.zsh"
15 | else
16 | # shellcheck disable=SC1090
17 | source "${THEME_DIR}/${AM_THEME}.zsh"
18 | fi
19 | else
20 | if [[ -f "${AM_CUSTOM_THEME_PATH}" ]]; then
21 | # shellcheck disable=SC1090
22 | source "${AM_CUSTOM_THEME_PATH}"
23 | else
24 | printf "\n ==> (WARN) Theme file at '%s' not found. Loading default ...\n" "$AM_CUSTOM_THEME_PATH"
25 | source "${THEME_DIR}/default.zsh"
26 | fi
27 | fi
28 | am_theme
29 | }
30 |
31 | [[ -z "${AM_DIR_EXPANSION_LEVEL}" ]] && AM_DIR_EXPANSION_LEVEL=1
32 | [[ -z "${AM_VI_PROMPT_VAL}" ]] && AM_VI_PROMPT_VAL=""
--------------------------------------------------------------------------------
/modules/prompt.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | [[ -z "${AM_VERSIONS_PROMPT}" ]] && AM_VERSIONS_PROMPT=()
4 |
5 | [[ -z "${AM_GIT_SECTION}" ]] && AM_GIT_SECTION=(
6 | am_git_symbol
7 | am_git_rebasing
8 | am_git_branch
9 | am_git_left_right_master
10 | am_git_commit_time
11 | am_git_rev
12 | am_git_stash
13 | am_git_left_right
14 | am_git_dirty
15 | )
16 |
17 | [[ -z "${AM_HG_SECTION}" ]] && AM_HG_SECTION=(
18 | am_hg_symbol
19 | am_hg_branch
20 | am_hg_rev
21 | )
22 |
23 | [[ -z "${AM_SVN_SECTION}" ]] && AM_SVN_SECTION=(
24 | am_svn_symbol
25 | am_svn_rev
26 | )
27 |
28 | [[ -z "${AM_LEFT_SECTION}" ]] && AM_LEFT_SECTION=(
29 | am_ssh_st
30 | am_prompt_start_tag
31 | am_prompt_dir
32 | am_vi_prompt
33 | am_prompt_end_tag
34 | am_venv
35 | )
36 |
37 | [[ -z "${AM_RIGHT_SECTION}" ]] && AM_RIGHT_SECTION=(
38 | am_version_prompt
39 | am_vcs_prompt
40 | )
41 |
42 | am_r_prompt_render(){
43 | __r_prompt_val=""
44 | if [[ ${#AM_RIGHT_SECTION[@]} -ne 0 ]]; then
45 | LOOP_INDEX=0
46 | for section in "${AM_RIGHT_SECTION[@]}"; do
47 | [[ ${LOOP_INDEX} != "0" ]] && __r_prompt_val+=" "
48 | __r_prompt_val+="$($section)"
49 | LOOP_INDEX=$((LOOP_INDEX + 1))
50 | done
51 | fi
52 | echo -ne "${__r_prompt_val}" | tr -s ' '
53 | }
54 |
55 | am_l_prompt_render(){
56 | __l_prompt_val=""
57 | if [[ ${#AM_LEFT_SECTION[@]} -ne 0 ]]; then
58 | LOOP_INDEX=0
59 | for section in "${AM_LEFT_SECTION[@]}"; do
60 | [[ ${LOOP_INDEX} != "0" ]] && __l_prompt_val+=" "
61 | __l_prompt_val+="$($section)"
62 | LOOP_INDEX=$((LOOP_INDEX + 1))
63 | done
64 | fi
65 |
66 | [[ "${AM_INITIAL_LINE_FEED}" == 1 ]] && __l_prompt_val=$'\n'"${__l_prompt_val}"
67 | echo -ne "${__l_prompt_val}" | tr -s ' '
68 | }
69 |
70 | r_prompt_completed(){
71 | # shellcheck disable=SC2034
72 | RPROMPT=$(echo "${3}" | tr -s ' ')
73 | zle && zle reset-prompt
74 | }
75 |
76 | am_async_r_prompt(){
77 | async_init
78 | async_stop_worker "right_prompt_$$"
79 | async_start_worker "right_prompt_$$" -n
80 | async_register_callback "right_prompt_$$" r_prompt_completed
81 | async_job "right_prompt_$$" am_r_prompt_render
82 | }
83 |
84 | l_prompt_completed(){
85 | # shellcheck disable=SC2034
86 | PROMPT=$(echo "${3}" | tr -s ' ')
87 | zle && zle reset-prompt
88 | }
89 |
90 | am_async_l_prompt(){
91 | async_init
92 | async_stop_worker "left_prompt_$$"
93 | async_start_worker "left_prompt_$$" -n
94 | async_register_callback "left_prompt_$$" l_prompt_completed
95 | async_job "left_prompt_$$" am_l_prompt_render
96 | }
--------------------------------------------------------------------------------
/modules/sections_general.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | am_version_prompt(){
4 | if [[ ${#AM_VERSIONS_PROMPT[@]} -ne 0 ]]; then
5 | LOOP_INDEX=0
6 | for version in "${AM_VERSIONS_PROMPT[@]}"; do
7 | [[ ${LOOP_INDEX} == "0" ]] && version_prompt_val+="%F{$AM_FADE_COLOR}[%f"
8 | [[ ${LOOP_INDEX} != "0" ]] && version_prompt_val+="%F{$AM_FADE_COLOR}${AM_VERSION_PROMPT_SEP}%f"
9 |
10 | [[ ${version} == "PYTHON" ]] && version_prompt_val+="$(am_python_version)"
11 | [[ ${version} == "PYTHON_S" ]] && version_prompt_val+="$(am_python_short_version)"
12 | [[ ${version} == "RUBY" ]] && version_prompt_val+="$(am_ruby_version)"
13 | [[ ${version} == "RUBY_S" ]] && version_prompt_val+="$(am_ruby_short_version)"
14 | [[ ${version} == "JAVA" ]] && version_prompt_val+="$(am_java_version)"
15 | [[ ${version} == "JAVA_S" ]] && version_prompt_val+="$(am_java_short_version)"
16 | [[ ${version} == "GO" ]] && version_prompt_val+="$(am_go_version)"
17 | [[ ${version} == "GO_S" ]] && version_prompt_val+="$(am_go_short_version)"
18 | [[ ${version} == "ELIXIR" ]] && version_prompt_val+="$(am_elixir_version)"
19 | [[ ${version} == "ELIXIR_S" ]] && version_prompt_val+="$(am_elixir_short_version)"
20 | [[ ${version} == "CRYSTAL" ]] && version_prompt_val+="$(am_crystal_version)"
21 | [[ ${version} == "CRYSTAL_S" ]] && version_prompt_val+="$(am_crystal_short_version)"
22 | [[ ${version} == "NODE" ]] && version_prompt_val+="$(am_node_version)"
23 | [[ ${version} == "NODE_S" ]] && version_prompt_val+="$(am_node_short_version)"
24 | [[ ${version} == "PHP" ]] && version_prompt_val+="$(am_php_version)"
25 | [[ ${version} == "PHP_S" ]] && version_prompt_val+="$(am_php_short_version)"
26 | [[ ${version} == "GRADLE" ]] && version_prompt_val+="$(am_gradle_version)"
27 | [[ ${version} == "MAVEN" ]] && version_prompt_val+="$(am_maven_version)"
28 |
29 | LOOP_INDEX=$((LOOP_INDEX + 1))
30 | done
31 |
32 | [[ "$LOOP_INDEX" != "0" ]] && version_prompt_val+="%F{$AM_FADE_COLOR}]%f"
33 | fi
34 |
35 | echo -n "${version_prompt_val}"
36 |
37 | unset LOOP_INDEX version_prompt_val
38 | }
39 |
40 | am_vcs_prompt(){
41 | __vcs_prompt_value=""
42 | if [[ $(am_is_git) == 1 ]]; then
43 | if [[ ${#AM_GIT_SECTION[@]} -ne 0 ]]; then
44 | LOOP_INDEX=0
45 | for section in "${AM_GIT_SECTION[@]}"; do
46 | [[ ${LOOP_INDEX} != "0" ]] && __vcs_prompt_value+=" "
47 | __vcs_prompt_value+="$($section)"
48 | LOOP_INDEX=$((LOOP_INDEX + 1))
49 | done
50 | fi
51 | elif [[ $(am_is_hg) == 1 ]]; then
52 | if [[ ${#AM_HG_SECTION[@]} -ne 0 ]]; then
53 | LOOP_INDEX=0
54 | for section in "${AM_GIT_SECTION[@]}"; do
55 | [[ ${LOOP_INDEX} != "0" ]] && __vcs_prompt_value+=" "
56 | __vcs_prompt_value+="$($section)"
57 | LOOP_INDEX=$((LOOP_INDEX + 1))
58 | done
59 | fi
60 | elif [[ $(am_is_svn) == 1 ]]; then
61 | if [[ ${#AM_SVN_SECTION[@]} -ne 0 ]]; then
62 | LOOP_INDEX=0
63 | for section in "${AM_GIT_SECTION[@]}"; do
64 | [[ ${LOOP_INDEX} != "0" ]] && __vcs_prompt_value+=" "
65 | __vcs_prompt_value+="$($section)"
66 | LOOP_INDEX=$((LOOP_INDEX + 1))
67 | done
68 | fi
69 | fi
70 | echo -ne "${__vcs_prompt_value}"
71 | unset __vcs_prompt_value LOOP_INDEX
72 | }
73 |
74 | am_prompt_end_tag() {
75 | echo -ne "%F{$AM_PROMPT_END_TAG_COLOR}${AM_PROMPT_END_TAG}%f"
76 | }
77 |
78 | am_prompt_start_tag(){
79 | if [[ ${AM_ERROR_ON_START_TAG} == 1 && ${AM_PROMPT_START_TAG} != "" ]]; then
80 | echo -ne "%(?.%F{$AM_PROMPT_START_TAG_COLOR}${AM_PROMPT_START_TAG}%f.%F{$AM_ERROR_COLOR}${AM_PROMPT_START_TAG}%f)"
81 | else
82 | echo -ne "%F{$AM_PROMPT_START_TAG_COLOR}${AM_PROMPT_START_TAG}%f"
83 | fi
84 | }
85 |
86 | am_prompt_dir(){
87 | if [[ ${AM_ERROR_ON_START_TAG} == 1 && ${AM_PROMPT_START_TAG} != "" ]]; then
88 | echo -ne "%F{$AM_NORMAL_COLOR}%${AM_DIR_EXPANSION_LEVEL}~%f"
89 | else
90 | echo -ne "%(?.%F{$AM_NORMAL_COLOR}%${AM_DIR_EXPANSION_LEVEL}~%f.%F{$AM_ERROR_COLOR}%B%${AM_DIR_EXPANSION_LEVEL}~%b%f)"
91 | fi
92 | [[ ${AM_HIDE_EXIT_CODE} -ne 1 ]] && echo -ne "%(?.. %F{$AM_FADE_COLOR}%?%f)"
93 | }
94 |
95 | am_space(){
96 | echo -ne " "
97 | }
98 |
99 | am_is_git(){
100 | echo -ne "$(plib_is_git)"
101 | }
102 |
103 | am_git_branch(){
104 | echo -ne "%B%F{$AM_BRANCH_COLOR}$(plib_git_branch)%f%b"
105 | }
106 |
107 | am_git_rev(){
108 | echo -ne "%F{$AM_REV_COLOR}$(plib_git_rev)%f"
109 | }
110 |
111 | am_git_dirty(){
112 | [[ -z "${AM_GIT_TRACKED_COLOR}" ]] && AM_GIT_TRACKED_COLOR=green
113 | [[ -z "${AM_GIT_UN_TRACKED_COLOR}" ]] && AM_GIT_UN_TRACKED_COLOR=red
114 |
115 | [[ -z "${AM_GIT_ADD_SYM}" ]] && AM_GIT_ADD_SYM='+'
116 | [[ -z "${AM_GIT_DEL_SYM}" ]] && AM_GIT_DEL_SYM='-'
117 | [[ -z "${AM_GIT_MOD_SYM}" ]] && AM_GIT_MOD_SYM='⭑'
118 | [[ -z "${AM_GIT_NEW_SYM}" ]] && AM_GIT_NEW_SYM='?'
119 |
120 | __git_status=$(plib_git_status)
121 |
122 | __mod_t=$(plib_git_staged_mod "$__git_status")
123 | __add_t=$(plib_git_staged_add "$__git_status")
124 | __del_t=$(plib_git_staged_del "$__git_status")
125 |
126 | __mod_ut=$(plib_git_unstaged_mod "$__git_status")
127 | __add_ut=$(plib_git_unstaged_add "$__git_status")
128 | __del_ut=$(plib_git_unstaged_del "$__git_status")
129 |
130 | __new=$(plib_git_status_new "$__git_status")
131 |
132 | DIRTY=''
133 | [[ "$__add_t" != "0" ]] && DIRTY+="%F{$AM_GIT_TRACKED_COLOR}${AM_GIT_ADD_SYM}%f "
134 | [[ "$__add_ut" != "0" ]] && DIRTY+="%F{$AM_GIT_UN_TRACKED_COLOR}${AM_GIT_ADD_SYM}%f "
135 | [[ "$__mod_t" != "0" ]] && DIRTY+="%F{$AM_GIT_TRACKED_COLOR}${AM_GIT_MOD_SYM}%f "
136 | [[ "$__mod_ut" != "0" ]] && DIRTY+="%F{$AM_GIT_UN_TRACKED_COLOR}${AM_GIT_MOD_SYM}%f "
137 | [[ "$__del_t" != "0" ]] && DIRTY+="%F{$AM_GIT_TRACKED_COLOR}${AM_GIT_DEL_SYM}%f "
138 | [[ "$__del_ut" != "0" ]] && DIRTY+="%F{$AM_GIT_UN_TRACKED_COLOR}${AM_GIT_DEL_SYM}%f "
139 | [[ "$__new" != "0" ]] && DIRTY+="%F{$AM_GIT_UN_TRACKED_COLOR}${AM_GIT_NEW_SYM}%f "
140 |
141 | if [[ "$DIRTY" != '' ]]; then
142 | echo -ne "${DIRTY}"
143 | fi
144 |
145 | unset __git_status __mod_t __add_t __del_t __mod_ut __add_ut __del_ut __new DIRTY
146 | }
147 |
148 | am_git_left_right(){
149 | [[ -z "${AM_GIT_PUSH_SYM}" ]] && AM_GIT_PUSH_SYM='↑'
150 | [[ -z "${AM_GIT_PULL_SYM}" ]] && AM_GIT_PULL_SYM='↓'
151 |
152 | __git_left_right=$(plib_git_left_right)
153 |
154 | __pull=$(echo "$__git_left_right" | awk '{print $2}' | tr -d ' \n')
155 | __push=$(echo "$__git_left_right" | awk '{print $1}' | tr -d ' \n')
156 |
157 | [[ "$__pull" != 0 ]] && [[ "$__pull" != '' ]] && __push_pull="${__pull}${AM_GIT_PULL_SYM}"
158 | [[ -n "$__push_pull" ]] && __push_pull+=' '
159 | [[ "$__push" != 0 ]] && [[ "$__push" != '' ]] && __push_pull+="${__push}${AM_GIT_PUSH_SYM}"
160 |
161 | if [[ "$__push_pull" != '' ]]; then
162 | echo -ne "%F{$AM_LEFT_RIGHT_COLOR}${__push_pull}%f"
163 | fi
164 |
165 | unset __git_left_right __pull __push __push_pull
166 | }
167 |
168 | am_git_left_right_master(){
169 | [[ -z "${AM_LEFT_RIGHT_SEP}" ]] && AM_LEFT_RIGHT_SEP='|'
170 |
171 | __git_left_right=$(plib_git_left_right_master)
172 |
173 | __left=$(echo "$__git_left_right" | awk '{print $1}' | tr -d ' \n')
174 | __right=$(echo "$__git_left_right" | awk '{print $2}' | tr -d ' \n')
175 |
176 | __left_right="${__left}${AM_LEFT_RIGHT_SEP}${__right}"
177 |
178 | if [[ "$__left_right" != '0|0' ]]; then
179 | echo -ne "%F{$AM_LEFT_RIGHT_COLOR}${__left}${AM_LEFT_RIGHT_SEP}${__right}%f"
180 | fi
181 |
182 | unset __git_left_right __left __right __left_right
183 | }
184 |
185 | am_git_stash(){
186 | if [[ "$(plib_git_is_bare)" == 1 ]]; then
187 | echo -ne "%F{$AM_BARE_COLOR}${AM_GIT_BARE_SYM}${__stash}%f"
188 | else
189 | __stash=$(plib_git_stash)
190 | if [[ "$__stash" != "0" ]]; then
191 | echo -ne "%F{$AM_STASH_COLOR}${AM_GIT_STASH_SYM}${__stash}%f"
192 | fi
193 | fi
194 | }
195 |
196 | am_git_commit_time(){
197 | echo -ne "%F{$AM_COMMIT_SINCE_COLOR}[$(plib_git_commit_since)]%f"
198 | }
199 |
200 | am_git_rebasing(){
201 | if [[ $(plib_is_git_rebasing) == 1 ]]; then
202 | echo -ne "%F{$AM_ERROR_COLOR}${AM_GIT_REBASING_SYMBOL}%f"
203 | fi
204 | }
205 |
206 | am_git_symbol(){
207 | echo -ne "%F{$AM_VCS_COLOR}${AM_GIT_SYM}%f"
208 | }
209 |
210 | am_is_hg(){
211 | echo -ne "$(plib_is_hg)"
212 | }
213 |
214 | am_hg_branch(){
215 | echo -ne "%B%F{$AM_BRANCH_COLOR}$(plib_hg_branch)%f%b";
216 | }
217 |
218 | am_hg_rev(){
219 | echo -ne "%F{$AM_REV_COLOR}$(plib_hg_rev)%f";
220 | }
221 |
222 | am_hg_symbol(){
223 | echo -ne "%F{$AM_VCS_COLOR}${AM_HG_SYM}:%f"
224 | }
225 |
226 | am_is_svn(){
227 | plib_is_svn
228 | }
229 |
230 | am_svn_rev(){
231 | echo -n "%B%F{$AM_REV_COLOR}$(plib_svn_rev)%f%b";
232 | }
233 |
234 | am_svn_symbol(){
235 | echo -ne "%F{$AM_VCS_COLOR}${AM_SVN_SYM}:%f"
236 | }
237 |
238 | am_ssh_st(){
239 | __ssh_st=$(plib_ssh_st)
240 | if [[ ${__ssh_st} != "" ]]
241 | then
242 | echo -n "%F{$AM_SSH_COLOR}${AM_SSH_SYM}%f"
243 | else
244 | echo -ne ""
245 | fi
246 | }
--------------------------------------------------------------------------------
/modules/sections_vcs.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | am_version_prompt(){
4 | if [[ ${#AM_VERSIONS_PROMPT[@]} -ne 0 ]]; then
5 | LOOP_INDEX=0
6 | for version in "${AM_VERSIONS_PROMPT[@]}"; do
7 | [[ ${LOOP_INDEX} == "0" ]] && version_prompt_val+="%F{$AM_FADE_COLOR}[%f"
8 | [[ ${LOOP_INDEX} != "0" ]] && version_prompt_val+="%F{$AM_FADE_COLOR}${AM_VERSION_PROMPT_SEP}%f"
9 |
10 | [[ ${version} == "PYTHON" ]] && version_prompt_val+="$(am_python_version)"
11 | [[ ${version} == "PYTHON_S" ]] && version_prompt_val+="$(am_python_short_version)"
12 | [[ ${version} == "RUBY" ]] && version_prompt_val+="$(am_ruby_version)"
13 | [[ ${version} == "RUBY_S" ]] && version_prompt_val+="$(am_ruby_short_version)"
14 | [[ ${version} == "JAVA" ]] && version_prompt_val+="$(am_java_version)"
15 | [[ ${version} == "JAVA_S" ]] && version_prompt_val+="$(am_java_short_version)"
16 | [[ ${version} == "GO" ]] && version_prompt_val+="$(am_go_version)"
17 | [[ ${version} == "GO_S" ]] && version_prompt_val+="$(am_go_short_version)"
18 | [[ ${version} == "ELIXIR" ]] && version_prompt_val+="$(am_elixir_version)"
19 | [[ ${version} == "ELIXIR_S" ]] && version_prompt_val+="$(am_elixir_short_version)"
20 | [[ ${version} == "CRYSTAL" ]] && version_prompt_val+="$(am_crystal_version)"
21 | [[ ${version} == "CRYSTAL_S" ]] && version_prompt_val+="$(am_crystal_short_version)"
22 | [[ ${version} == "NODE" ]] && version_prompt_val+="$(am_node_version)"
23 | [[ ${version} == "NODE_S" ]] && version_prompt_val+="$(am_node_short_version)"
24 | [[ ${version} == "PHP" ]] && version_prompt_val+="$(am_php_version)"
25 | [[ ${version} == "PHP_S" ]] && version_prompt_val+="$(am_php_short_version)"
26 | [[ ${version} == "GRADLE" ]] && version_prompt_val+="$(am_gradle_version)"
27 | [[ ${version} == "MAVEN" ]] && version_prompt_val+="$(am_maven_version)"
28 |
29 | LOOP_INDEX=$((LOOP_INDEX + 1))
30 | done
31 |
32 | [[ "$LOOP_INDEX" != "0" ]] && version_prompt_val+="%F{$AM_FADE_COLOR}]%f"
33 | fi
34 | echo -n "${version_prompt_val}"
35 | }
36 |
37 | am_vcs_prompt(){
38 | __vcs_prompt_value=""
39 | if [[ $(am_is_git) == 1 ]]; then
40 | if [[ ${#AM_GIT_SECTION[@]} -ne 0 ]]; then
41 | LOOP_INDEX=0
42 | for section in "${AM_GIT_SECTION[@]}"; do
43 | [[ ${LOOP_INDEX} != "0" ]] && __vcs_prompt_value+=" "
44 | __vcs_prompt_value+="$($section)"
45 | LOOP_INDEX=$((LOOP_INDEX + 1))
46 | done
47 | fi
48 | elif [[ $(am_is_hg) == 1 ]]; then
49 | if [[ ${#AM_HG_SECTION[@]} -ne 0 ]]; then
50 | LOOP_INDEX=0
51 | for section in "${AM_HG_SECTION[@]}"; do
52 | [[ ${LOOP_INDEX} != "0" ]] && __vcs_prompt_value+=" "
53 | __vcs_prompt_value+="$($section)"
54 | LOOP_INDEX=$((LOOP_INDEX + 1))
55 | done
56 | fi
57 | elif [[ $(am_is_svn) == 1 ]]; then
58 | if [[ ${#AM_SVN_SECTION[@]} -ne 0 ]]; then
59 | LOOP_INDEX=0
60 | for section in "${AM_SVN_SECTION[@]}"; do
61 | [[ ${LOOP_INDEX} != "0" ]] && __vcs_prompt_value+=" "
62 | __vcs_prompt_value+="$($section)"
63 | LOOP_INDEX=$((LOOP_INDEX + 1))
64 | done
65 | fi
66 | fi
67 | echo -ne "${__vcs_prompt_value}"
68 | unset __vcs_prompt_value LOOP_INDEX
69 | }
70 |
71 | am_prompt_end_tag() {
72 | echo -ne "%F{$AM_PROMPT_END_TAG_COLOR}${AM_PROMPT_END_TAG}%f"
73 | }
74 |
75 | am_prompt_start_tag(){
76 | if [[ ${AM_ERROR_ON_START_TAG} == 1 && ${AM_PROMPT_START_TAG} != "" ]]; then
77 | echo -ne "%(?.%F{$AM_PROMPT_START_TAG_COLOR}${AM_PROMPT_START_TAG}%f.%F{$AM_ERROR_COLOR}${AM_PROMPT_START_TAG}%f)"
78 | else
79 | echo -ne "%F{$AM_PROMPT_START_TAG_COLOR}${AM_PROMPT_START_TAG}%f"
80 | fi
81 | }
82 |
83 | am_prompt_dir(){
84 | if [[ ${AM_ERROR_ON_START_TAG} == 1 && ${AM_PROMPT_START_TAG} != "" ]]; then
85 | echo -ne "%F{$AM_NORMAL_COLOR}%${AM_DIR_EXPANSION_LEVEL}~%f"
86 | else
87 | echo -ne "%(?.%F{$AM_NORMAL_COLOR}%${AM_DIR_EXPANSION_LEVEL}~%f.%F{$AM_ERROR_COLOR}%B%${AM_DIR_EXPANSION_LEVEL}~%b%f)"
88 | fi
89 | [[ ${AM_HIDE_EXIT_CODE} -ne 1 ]] && echo -ne "%(?.. %F{$AM_FADE_COLOR}%?%f)"
90 | }
91 |
92 | am_space(){
93 | echo -ne " "
94 | }
95 |
96 | am_is_git(){
97 | echo -ne "$(plib_is_git)"
98 | }
99 |
100 | am_git_branch(){
101 | echo -ne "%B%F{$AM_BRANCH_COLOR}$(plib_git_branch)%f%b"
102 | }
103 |
104 | am_git_rev(){
105 | echo -ne "%F{$AM_REV_COLOR}$(plib_git_rev)%f"
106 | }
107 |
108 | am_git_dirty(){
109 | [[ -z "${AM_GIT_TRACKED_COLOR}" ]] && AM_GIT_TRACKED_COLOR=green
110 | [[ -z "${AM_GIT_UN_TRACKED_COLOR}" ]] && AM_GIT_UN_TRACKED_COLOR=red
111 |
112 | [[ -z "${AM_GIT_ADD_SYM}" ]] && AM_GIT_ADD_SYM='+'
113 | [[ -z "${AM_GIT_DEL_SYM}" ]] && AM_GIT_DEL_SYM='-'
114 | [[ -z "${AM_GIT_MOD_SYM}" ]] && AM_GIT_MOD_SYM='⭑'
115 | [[ -z "${AM_GIT_NEW_SYM}" ]] && AM_GIT_NEW_SYM='?'
116 |
117 | __git_status=$(plib_git_status)
118 |
119 | __mod_t=$(plib_git_staged_mod "$__git_status")
120 | __add_t=$(plib_git_staged_add "$__git_status")
121 | __del_t=$(plib_git_staged_del "$__git_status")
122 |
123 | __mod_ut=$(plib_git_unstaged_mod "$__git_status")
124 | __add_ut=$(plib_git_unstaged_add "$__git_status")
125 | __del_ut=$(plib_git_unstaged_del "$__git_status")
126 |
127 | __new=$(plib_git_status_new "$__git_status")
128 |
129 | DIRTY=''
130 | [[ "$__add_t" != "0" ]] && DIRTY+="%F{$AM_GIT_TRACKED_COLOR}${AM_GIT_ADD_SYM}%f "
131 | [[ "$__add_ut" != "0" ]] && DIRTY+="%F{$AM_GIT_UN_TRACKED_COLOR}${AM_GIT_ADD_SYM}%f "
132 | [[ "$__mod_t" != "0" ]] && DIRTY+="%F{$AM_GIT_TRACKED_COLOR}${AM_GIT_MOD_SYM}%f "
133 | [[ "$__mod_ut" != "0" ]] && DIRTY+="%F{$AM_GIT_UN_TRACKED_COLOR}${AM_GIT_MOD_SYM}%f "
134 | [[ "$__del_t" != "0" ]] && DIRTY+="%F{$AM_GIT_TRACKED_COLOR}${AM_GIT_DEL_SYM}%f "
135 | [[ "$__del_ut" != "0" ]] && DIRTY+="%F{$AM_GIT_UN_TRACKED_COLOR}${AM_GIT_DEL_SYM}%f "
136 | [[ "$__new" != "0" ]] && DIRTY+="%F{$AM_GIT_UN_TRACKED_COLOR}${AM_GIT_NEW_SYM}%f "
137 |
138 | if [[ "$DIRTY" != '' ]]; then
139 | echo -ne "${DIRTY}"
140 | fi
141 |
142 | unset __mod_ut __new_ut __add_ut __mod_t __new_t __add_t __del DIRTY
143 | }
144 |
145 | am_git_left_right(){
146 | [[ -z "${AM_GIT_PUSH_SYM}" ]] && AM_GIT_PUSH_SYM='↑'
147 | [[ -z "${AM_GIT_PULL_SYM}" ]] && AM_GIT_PULL_SYM='↓'
148 |
149 | __git_left_right=$(plib_git_left_right)
150 |
151 | __pull=$(echo "$__git_left_right" | awk '{print $2}' | tr -d ' \n')
152 | __push=$(echo "$__git_left_right" | awk '{print $1}' | tr -d ' \n')
153 |
154 | [[ "$__pull" != 0 ]] && [[ "$__pull" != '' ]] && __pushpull="${__pull}${AM_GIT_PULL_SYM}"
155 | [[ -n "$__pushpull" ]] && __pushpull+=' '
156 | [[ "$__push" != 0 ]] && [[ "$__push" != '' ]] && __pushpull+="${__push}${AM_GIT_PUSH_SYM}"
157 |
158 | if [[ "$__pushpull" != '' ]]; then
159 | echo -ne "%F{$AM_LEFT_RIGHT_COLOR}${__pushpull}%f"
160 | fi
161 | }
162 |
163 | am_git_left_right_master(){
164 | [[ -z "${AM_LEFT_RIGHT_SEP}" ]] && AM_LEFT_RIGHT_SEP='|'
165 |
166 | __git_left_right=$(plib_git_left_right_master)
167 |
168 | __left=$(echo "$__git_left_right" | awk '{print $1}' | tr -d ' \n')
169 | __right=$(echo "$__git_left_right" | awk '{print $2}' | tr -d ' \n')
170 |
171 | __left_right="${__left}${AM_LEFT_RIGHT_SEP}${__right}"
172 |
173 | if [[ "$__left_right" != '0|0' ]]; then
174 | echo -ne "%F{$AM_LEFT_RIGHT_COLOR}${__left}${AM_LEFT_RIGHT_SEP}${__right}%f"
175 | fi
176 | }
177 |
178 | am_git_stash(){
179 | if [[ "$(plib_git_is_bare)" == 1 ]]; then
180 | echo -ne "%F{$AM_BARE_COLOR}${AM_GIT_BARE_SYM}${__stash}%f"
181 | else
182 | __stash=$(plib_git_stash)
183 | if [[ "$__stash" != "0" ]]; then
184 | echo -ne "%F{$AM_STASH_COLOR}${AM_GIT_STASH_SYM}${__stash}%f"
185 | fi
186 | fi
187 | }
188 |
189 | am_git_commit_time(){
190 | echo -ne "%F{$AM_COMMIT_SINCE_COLOR}[$(plib_git_commit_since)]%f"
191 | }
192 |
193 | am_git_rebasing(){
194 | if [[ $(plib_is_git_rebasing) == 1 ]]; then
195 | echo -ne "%F{$AM_ERROR_COLOR}${AM_GIT_REBASING_SYMBOL}%f"
196 | fi
197 | }
198 |
199 | am_git_symbol(){
200 | echo -ne "%F{$AM_VCS_COLOR}${AM_GIT_SYM}%f"
201 | }
202 |
203 | am_is_hg(){
204 | echo -ne "$(plib_is_hg)"
205 | }
206 |
207 | am_hg_branch(){
208 | echo -ne "%B%F{$AM_BRANCH_COLOR}$(plib_hg_branch)%f%b";
209 | }
210 |
211 | am_hg_rev(){
212 | echo -ne "%F{$AM_REV_COLOR}$(plib_hg_rev)%f";
213 | }
214 |
215 | am_hg_symbol(){
216 | echo -ne "%F{$AM_VCS_COLOR}${AM_HG_SYM}:%f"
217 | }
218 |
219 | am_is_svn(){
220 | plib_is_svn
221 | }
222 |
223 | am_svn_rev(){
224 | echo -n "%B%F{$AM_REV_COLOR}$(plib_svn_rev)%f%b";
225 | }
226 |
227 | am_svn_symbol(){
228 | echo -ne "%F{$AM_VCS_COLOR}${AM_SVN_SYM}:%f"
229 | }
230 |
--------------------------------------------------------------------------------
/modules/sections_version.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | # shellcheck disable=SC2154
4 |
5 | am_venv(){
6 | echo -ne "%F{$AM_VENV_COLOR}$(plib_venv)%f"
7 | }
8 |
9 | am_python_version(){
10 | echo -ne "%F{$AM_PYTHON_COLOR}${AM_PY_SYM}$(plib_python_version)%f"
11 | }
12 |
13 | am_python_short_version(){
14 | echo -ne "%F{$AM_PYTHON_COLOR}${AM_PY_SYM}$(plib_python_major_minor_version)%f"
15 | }
16 |
17 | am_ruby_version(){
18 | echo -ne "%F{$AM_RUBY_COLOR}${AM_RB_SYM}$(plib_ruby_version)%f"
19 | }
20 |
21 | am_ruby_short_version(){
22 | echo -ne "%F{$AM_RUBY_COLOR}${AM_RB_SYM}$(plib_ruby_major_minor_version)%f"
23 | }
24 |
25 | am_java_version(){
26 | echo -ne "%F{$AM_JAVA_COLOR}${AM_JAVA_SYM}$(plib_java_version)%f"
27 | }
28 |
29 | am_java_short_version(){
30 | echo -ne "%F{$AM_JAVA_COLOR}${AM_JAVA_SYM}$(plib_java_major_version)%f"
31 | }
32 |
33 | am_go_version(){
34 | echo -ne "%F{$AM_GO_COLOR}${AM_GO_SYM}$(plib_go_version)%f"
35 | }
36 |
37 | am_go_short_version(){
38 | echo -ne "%F{$AM_GO_COLOR}${AM_GO_SYM}$(plib_go_major_minor_version)%f"
39 | }
40 |
41 | am_elixir_version(){
42 | echo -ne "%F{$AM_ELIXIR_COLOR}${AM_ELIXIR_SYM}$(plib_elixir_version)%f"
43 | }
44 |
45 | am_elixir_short_version(){
46 | echo -ne "%F{$AM_ELIXIR_COLOR}${AM_ELIXIR_SYM}$(plib_elixir_major_minor_version)%f"
47 | }
48 |
49 | am_crystal_version(){
50 | echo -ne "%F{$AM_CRYSTAL_COLOR}${AM_CRYSTAL_SYM}$(plib_crystal_version)%f"
51 | }
52 |
53 | am_crystal_short_version(){
54 | echo -ne "%F{$AM_CRYSTAL_COLOR}${AM_CRYSTAL_SYM}$(plib_crystal_major_minor_version)%f"
55 | }
56 |
57 | am_node_version(){
58 | echo -ne "%F{$AM_NODE_COLOR}${AM_NODE_SYM}$(plib_node_version)%f"
59 | }
60 |
61 | am_node_short_version(){
62 | echo -ne "%F{$AM_NODE_COLOR}${AM_NODE_SYM}$(plib_node_major_minor_version)%f"
63 | }
64 |
65 | am_php_version(){
66 | echo -ne "%F{$AM_PHP_COLOR}${AM_PHP_SYM}$(plib_php_version)%f"
67 | }
68 |
69 | am_php_short_version(){
70 | echo -ne "%F{$AM_PHP_COLOR}${AM_PHP_SYM}$(plib_php_major_minor_version)%f"
71 | }
72 |
73 | am_gradle_version(){
74 | echo -ne "%F{$AM_GRADLE_COLOR}${AM_GRADLE_SYM}$(plib_gradle_version)%f"
75 | }
76 |
77 | am_maven_version(){
78 | echo -ne "%F{$AM_MAVEN_COLOR}${AM_MAVEN_SYM}$(plib_maven_version)%f"
79 | }
80 |
--------------------------------------------------------------------------------
/modules/symbols.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | # shellcheck disable=SC2034
4 | [[ -z "${AM_GIT_STASH_SYM}" ]] && AM_GIT_STASH_SYM='@'
5 | [[ -z "${AM_GIT_BARE_SYM}" ]] && AM_GIT_BARE_SYM='☢'
6 |
7 | [[ -z "${AM_VERSION_PROMPT_SEP}" ]] && AM_VERSION_PROMPT_SEP='|'
8 |
9 | [[ -z "${AM_PROMPT_START_TAG}" ]] && AM_PROMPT_START_TAG='_'
10 | [[ -z "${AM_PROMPT_END_TAG}" ]] && AM_PROMPT_END_TAG='$'
11 |
12 | [[ -z "${AM_VIM_INSERT_SYM}" ]] && AM_VIM_INSERT_SYM='(i)'
13 | [[ -z "${AM_VIM_NORMAL_SYM}" ]] && AM_VIM_NORMAL_SYM='(n)'
14 |
15 | if [[ ${AM_USE_NERD_FONT} = 1 ]]; then
16 | [[ -z "${AM_GIT_SYM}" ]] && AM_GIT_SYM=''
17 | [[ -z "${AM_HG_SYM}" ]] && AM_HG_SYM=' '
18 | [[ -z "${AM_SSH_SYM}" ]] && AM_SSH_SYM=' '
19 |
20 | [[ -z "${AM_JAVA_SYM}" ]] && AM_JAVA_SYM=' '
21 | [[ -z "${AM_PY_SYM}" ]] && AM_PY_SYM=' '
22 | [[ -z "${AM_RB_SYM}" ]] && AM_RB_SYM=' '
23 | [[ -z "${AM_GO_SYM}" ]] && AM_GO_SYM=' '
24 | [[ -z "${AM_ELIXIR_SYM}" ]] && AM_ELIXIR_SYM=' '
25 | [[ -z "${AM_CRYSTAL_SYM}" ]] && AM_CRYSTAL_SYM=' '
26 | [[ -z "${AM_NODE_SYM}" ]] && AM_NODE_SYM=' '
27 | [[ -z "${AM_PHP_SYM}" ]] && AM_PHP_SYM=' '
28 | [[ -z "${AM_GRADLE_SYM}" ]] && AM_GRADLE_SYM=' '
29 | [[ -z "${AM_MAVEN_SYM}" ]] && AM_MAVEN_SYM=' '
30 |
31 | [[ -z "${AM_GIT_ADD_SYM}" ]] && AM_GIT_ADD_SYM=''
32 | [[ -z "${AM_GIT_DEL_SYM}" ]] && AM_GIT_DEL_SYM=''
33 | [[ -z "${AM_GIT_MOD_SYM}" ]] && AM_GIT_MOD_SYM=''
34 | [[ -z "${AM_GIT_NEW_SYM}" ]] && AM_GIT_NEW_SYM=''
35 | [[ -z "${AM_GIT_PUSH_SYM}" ]] && AM_GIT_PUSH_SYM=''
36 | [[ -z "${AM_GIT_PULL_SYM}" ]] && AM_GIT_PULL_SYM=''
37 | else
38 | [[ -z "${AM_GIT_SYM}" ]] && AM_GIT_SYM='G'
39 | [[ -z "${AM_HG_SYM}" ]] && AM_HG_SYM='H'
40 | [[ -z "${AM_SVN_SYM}" ]] && AM_SVN_SYM='S'
41 | [[ -z "${AM_SSH_SYM}" ]] && AM_SSH_SYM='[S]'
42 |
43 | [[ -z "${AM_JAVA_SYM}" ]] && AM_JAVA_SYM='JAVA:'
44 | [[ -z "${AM_PY_SYM}" ]] && AM_PY_SYM='PY:'
45 | [[ -z "${AM_RB_SYM}" ]] && AM_RB_SYM='RB:'
46 | [[ -z "${AM_GO_SYM}" ]] && AM_GO_SYM='GO:'
47 | [[ -z "${AM_ELIXIR_SYM}" ]] && AM_ELIXIR_SYM='EX:'
48 | [[ -z "${AM_CRYSTAL_SYM}" ]] && AM_CRYSTAL_SYM='CR:'
49 | [[ -z "${AM_NODE_SYM}" ]] && AM_NODE_SYM='NODE:'
50 | [[ -z "${AM_PHP_SYM}" ]] && AM_PHP_SYM='PHP:'
51 | [[ -z "${AM_GRADLE_SYM}" ]] && AM_GRADLE_SYM='GRADLE:'
52 | [[ -z "${AM_MAVEN_SYM}" ]] && AM_MAVEN_SYM='MVN:'
53 |
54 | [[ -z "${AM_GIT_REBASING_SYMBOL}" ]] && AM_GIT_REBASING_SYMBOL='⇋'
55 | [[ -z "${AM_GIT_PUSH_SYM}" ]] && AM_GIT_PUSH_SYM='↑'
56 | [[ -z "${AM_GIT_PULL_SYM}" ]] && AM_GIT_PULL_SYM='↓'
57 | [[ -z "${AM_LEFT_RIGHT_SEP}" ]] && AM_LEFT_RIGHT_SEP='|'
58 | fi
59 |
--------------------------------------------------------------------------------
/modules/themes/default.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | am_theme(){
4 | [[ -z ${AM_VCS_COLOR} ]] && AM_VCS_COLOR=248
5 | [[ -z ${AM_SSH_COLOR} ]] && AM_SSH_COLOR=143
6 | [[ -z ${AM_VI_INSERT_COLOR} ]] && AM_VI_INSERT_COLOR=143
7 | [[ -z ${AM_VI_NORMAL_COLOR} ]] && AM_VI_NORMAL_COLOR=143
8 | [[ -z ${AM_NORMAL_COLOR} ]] && AM_NORMAL_COLOR=39
9 | [[ -z ${AM_ERROR_COLOR} ]] && AM_ERROR_COLOR=208
10 | [[ -z ${AM_REV_COLOR} ]] && AM_REV_COLOR=248
11 | [[ -z ${AM_BRANCH_COLOR} ]] && AM_BRANCH_COLOR=78
12 | [[ -z ${AM_LEFT_RIGHT_COLOR} ]] && AM_LEFT_RIGHT_COLOR=222
13 | [[ -z ${AM_STASH_COLOR} ]] && AM_STASH_COLOR=${AM_LEFT_RIGHT_COLOR}
14 | [[ -z ${AM_BARE_COLOR} ]] && AM_BARE_COLOR=${AM_LEFT_RIGHT_COLOR}
15 | [[ -z ${AM_COMMIT_SINCE_COLOR} ]] && AM_COMMIT_SINCE_COLOR=244
16 | [[ -z ${AM_FADE_COLOR} ]] && AM_FADE_COLOR=242
17 | [[ -z ${AM_VENV_COLOR} ]] && AM_VENV_COLOR=245
18 | [[ -z ${AM_PYTHON_COLOR} ]] && AM_PYTHON_COLOR=40
19 | [[ -z ${AM_RUBY_COLOR} ]] && AM_RUBY_COLOR=196
20 | [[ -z ${AM_JAVA_COLOR} ]] && AM_JAVA_COLOR=178
21 | [[ -z ${AM_GO_COLOR} ]] && AM_GO_COLOR=81
22 | [[ -z ${AM_ELIXIR_COLOR} ]] && AM_ELIXIR_COLOR=81
23 | [[ -z ${AM_CRYSTAL_COLOR} ]] && AM_CRYSTAL_COLOR=8
24 | [[ -z ${AM_NODE_COLOR} ]] && AM_NODE_COLOR=2
25 | [[ -z ${AM_PHP_COLOR} ]] && AM_PHP_COLOR=5
26 | [[ -z ${AM_GRADLE_COLOR} ]] && AM_GRADLE_COLOR=2
27 | [[ -z ${AM_MAVEN_COLOR} ]] && AM_MAVEN_COLOR=3
28 | [[ -z ${AM_TIMER_COLOR} ]] && AM_TIMER_COLOR=248
29 | [[ -z ${AM_PROMPT_START_TAG_COLOR} ]] && AM_PROMPT_START_TAG_COLOR=39
30 | [[ -z ${AM_PROMPT_END_TAG_COLOR} ]] && AM_PROMPT_END_TAG_COLOR=39
31 | [[ -z ${AM_GIT_TRACKED_COLOR} ]] && AM_GIT_TRACKED_COLOR=78
32 | [[ -z ${AM_GIT_UN_TRACKED_COLOR} ]] && AM_GIT_UN_TRACKED_COLOR=208
33 | [[ -z ${AM_LEFT_RIGHT_COLOR} ]] && AM_LEFT_RIGHT_COLOR=252
34 | }
35 |
--------------------------------------------------------------------------------
/modules/themes/hex/soft.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | am_theme(){
4 | [[ -z ${AM_VCS_COLOR} ]] && AM_VCS_COLOR=#A0A0A0
5 | [[ -z ${AM_SSH_COLOR} ]] && AM_SSH_COLOR=#E6C242
6 | [[ -z ${AM_VI_INSERT_COLOR} ]] && AM_VI_INSERT_COLOR=#E6C242
7 | [[ -z ${AM_VI_NORMAL_COLOR} ]] && AM_VI_NORMAL_COLOR=#E6C242
8 | [[ -z ${AM_NORMAL_COLOR} ]] && AM_NORMAL_COLOR=#88C0D0
9 | [[ -z ${AM_ERROR_COLOR} ]] && AM_ERROR_COLOR=#BF616A
10 | [[ -z ${AM_REV_COLOR} ]] && AM_REV_COLOR=#B48EAD
11 | [[ -z ${AM_BRANCH_COLOR} ]] && AM_BRANCH_COLOR=#8CBA86
12 | [[ -z ${AM_LEFT_RIGHT_COLOR} ]] && AM_LEFT_RIGHT_COLOR=#EACB8A
13 | [[ -z ${AM_STASH_COLOR} ]] && AM_STASH_COLOR=${AM_LEFT_RIGHT_COLOR}
14 | [[ -z ${AM_BARE_COLOR} ]] && AM_BARE_COLOR=${AM_LEFT_RIGHT_COLOR}
15 | [[ -z ${AM_COMMIT_SINCE_COLOR} ]] && AM_COMMIT_SINCE_COLOR=#A5A5A5
16 | [[ -z ${AM_FADE_COLOR} ]] && AM_FADE_COLOR=#4C566B
17 | [[ -z ${AM_VENV_COLOR} ]] && AM_VENV_COLOR=#C8AE48
18 | [[ -z ${AM_PYTHON_COLOR} ]] && AM_PYTHON_COLOR=#3570A1
19 | [[ -z ${AM_RUBY_COLOR} ]] && AM_RUBY_COLOR=#FF6665
20 | [[ -z ${AM_JAVA_COLOR} ]] && AM_JAVA_COLOR=#FEBB6F
21 | [[ -z ${AM_GO_COLOR} ]] && AM_GO_COLOR=#76E1FE
22 | [[ -z ${AM_ELIXIR_COLOR} ]] && AM_ELIXIR_COLOR=#432459
23 | [[ -z ${AM_CRYSTAL_COLOR} ]] && AM_CRYSTAL_COLOR=#010101
24 | [[ -z ${AM_NODE_COLOR} ]] && AM_NODE_COLOR=#79B264
25 | [[ -z ${AM_PHP_COLOR} ]] && AM_PHP_COLOR=#7277AE
26 | [[ -z ${AM_GRADLE_COLOR} ]] && AM_GRADLE_COLOR=#1E9BC4
27 | [[ -z ${AM_MAVEN_COLOR} ]] && AM_MAVEN_COLOR=#D74330
28 | [[ -z ${AM_TIMER_COLOR} ]] && AM_TIMER_COLOR=#B48EAD
29 | [[ -z ${AM_PROMPT_START_TAG_COLOR} ]] && AM_PROMPT_START_TAG_COLOR=#88C0D0
30 | [[ -z ${AM_PROMPT_END_TAG_COLOR} ]] && AM_PROMPT_END_TAG_COLOR=#88C0D0
31 | [[ -z ${AM_GIT_TRACKED_COLOR} ]] && AM_GIT_TRACKED_COLOR=#89BB9D
32 | [[ -z ${AM_GIT_UN_TRACKED_COLOR} ]] && AM_GIT_UN_TRACKED_COLOR=#BA8888
33 | }
34 |
--------------------------------------------------------------------------------
/modules/themes/mono.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | am_theme(){
4 | [[ -z ${AM_VCS_COLOR} ]] && AM_VCS_COLOR=242
5 | [[ -z ${AM_SSH_COLOR} ]] && AM_SSH_COLOR=244
6 | [[ -z ${AM_VI_INSERT_COLOR} ]] && AM_VI_INSERT_COLOR=244
7 | [[ -z ${AM_VI_NORMAL_COLOR} ]] && AM_VI_NORMAL_COLOR=244
8 | [[ -z ${AM_NORMAL_COLOR} ]] && AM_NORMAL_COLOR=250
9 | [[ -z ${AM_ERROR_COLOR} ]] && AM_ERROR_COLOR=250
10 | [[ -z ${AM_REV_COLOR} ]] && AM_REV_COLOR=240
11 | [[ -z ${AM_BRANCH_COLOR} ]] && AM_BRANCH_COLOR=246
12 | [[ -z ${AM_LEFT_RIGHT_COLOR} ]] && AM_LEFT_RIGHT_COLOR=255
13 | [[ -z ${AM_STASH_COLOR} ]] && AM_STASH_COLOR=${AM_LEFT_RIGHT_COLOR}
14 | [[ -z ${AM_BARE_COLOR} ]] && AM_BARE_COLOR=${AM_LEFT_RIGHT_COLOR}
15 | [[ -z ${AM_COMMIT_SINCE_COLOR} ]] && AM_COMMIT_SINCE_COLOR=242
16 | [[ -z ${AM_FADE_COLOR} ]] && AM_FADE_COLOR=242
17 | [[ -z ${AM_VENV_COLOR} ]] && AM_VENV_COLOR=246
18 | [[ -z ${AM_PYTHON_COLOR} ]] && AM_PYTHON_COLOR=243
19 | [[ -z ${AM_RUBY_COLOR} ]] && AM_RUBY_COLOR=240
20 | [[ -z ${AM_JAVA_COLOR} ]] && AM_JAVA_COLOR=247
21 | [[ -z ${AM_GO_COLOR} ]] && AM_GO_COLOR=251
22 | [[ -z ${AM_ELIXIR_COLOR} ]] && AM_ELIXIR_COLOR=251
23 | [[ -z ${AM_CRYSTAL_COLOR} ]] && AM_CRYSTAL_COLOR=8
24 | [[ -z ${AM_NODE_COLOR} ]] && AM_NODE_COLOR=246
25 | [[ -z ${AM_PHP_COLOR} ]] && AM_PHP_COLOR=246
26 | [[ -z ${AM_GRADLE_COLOR} ]] && AM_GRADLE_COLOR=244
27 | [[ -z ${AM_MAVEN_COLOR} ]] && AM_MAVEN_COLOR=248
28 | [[ -z ${AM_TIMER_COLOR} ]] && AM_TIMER_COLOR=242
29 | [[ -z ${AM_PROMPT_START_TAG_COLOR} ]] && AM_PROMPT_START_TAG_COLOR=250
30 | [[ -z ${AM_PROMPT_END_TAG_COLOR} ]] && AM_PROMPT_END_TAG_COLOR=250
31 | [[ -z ${AM_GIT_TRACKED_COLOR} ]] && AM_GIT_TRACKED_COLOR=250
32 | [[ -z ${AM_GIT_UN_TRACKED_COLOR} ]] && AM_GIT_UN_TRACKED_COLOR=246
33 | [[ -z ${AM_LEFT_RIGHT_COLOR} ]] && AM_LEFT_RIGHT_COLOR=252
34 | }
35 |
--------------------------------------------------------------------------------
/modules/themes/mono_bright.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | am_theme(){
4 | [[ -z ${AM_VCS_COLOR} ]] && AM_VCS_COLOR=247
5 | [[ -z ${AM_SSH_COLOR} ]] && AM_SSH_COLOR=249
6 | [[ -z ${AM_VI_INSERT_COLOR} ]] && AM_VI_INSERT_COLOR=249
7 | [[ -z ${AM_VI_NORMAL_COLOR} ]] && AM_VI_NORMAL_COLOR=249
8 | [[ -z ${AM_NORMAL_COLOR} ]] && AM_NORMAL_COLOR=255
9 | [[ -z ${AM_ERROR_COLOR} ]] && AM_ERROR_COLOR=255
10 | [[ -z ${AM_REV_COLOR} ]] && AM_REV_COLOR=245
11 | [[ -z ${AM_BRANCH_COLOR} ]] && AM_BRANCH_COLOR=251
12 | [[ -z ${AM_LEFT_RIGHT_COLOR} ]] && AM_LEFT_RIGHT_COLOR=255
13 | [[ -z ${AM_STASH_COLOR} ]] && AM_STASH_COLOR=${AM_LEFT_RIGHT_COLOR}
14 | [[ -z ${AM_BARE_COLOR} ]] && AM_BARE_COLOR=${AM_LEFT_RIGHT_COLOR}
15 | [[ -z ${AM_COMMIT_SINCE_COLOR} ]] && AM_COMMIT_SINCE_COLOR=247
16 | [[ -z ${AM_FADE_COLOR} ]] && AM_FADE_COLOR=247
17 | [[ -z ${AM_VENV_COLOR} ]] && AM_VENV_COLOR=251
18 | [[ -z ${AM_PYTHON_COLOR} ]] && AM_PYTHON_COLOR=248
19 | [[ -z ${AM_RUBY_COLOR} ]] && AM_RUBY_COLOR=245
20 | [[ -z ${AM_JAVA_COLOR} ]] && AM_JAVA_COLOR=252
21 | [[ -z ${AM_GO_COLOR} ]] && AM_GO_COLOR=254
22 | [[ -z ${AM_ELIXIR_COLOR} ]] && AM_ELIXIR_COLOR=254
23 | [[ -z ${AM_CRYSTAL_COLOR} ]] && AM_CRYSTAL_COLOR=8
24 | [[ -z ${AM_NODE_COLOR} ]] && AM_NODE_COLOR=249
25 | [[ -z ${AM_PHP_COLOR} ]] && AM_PHP_COLOR=248
26 | [[ -z ${AM_GRADLE_COLOR} ]] && AM_GRADLE_COLOR=246
27 | [[ -z ${AM_MAVEN_COLOR} ]] && AM_MAVEN_COLOR=250
28 | [[ -z ${AM_TIMER_COLOR} ]] && AM_TIMER_COLOR=247
29 | [[ -z ${AM_PROMPT_START_TAG_COLOR} ]] && AM_PROMPT_START_TAG_COLOR=255
30 | [[ -z ${AM_PROMPT_END_TAG_COLOR} ]] && AM_PROMPT_END_TAG_COLOR=255
31 | [[ -z ${AM_GIT_TRACKED_COLOR} ]] && AM_GIT_TRACKED_COLOR=255
32 | [[ -z ${AM_GIT_UN_TRACKED_COLOR} ]] && AM_GIT_UN_TRACKED_COLOR=251
33 | [[ -z ${AM_LEFT_RIGHT_COLOR} ]] && AM_LEFT_RIGHT_COLOR=254
34 | }
35 |
--------------------------------------------------------------------------------
/modules/themes/soft.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | am_theme(){
4 | [[ -z ${AM_VCS_COLOR} ]] && AM_VCS_COLOR=248
5 | [[ -z ${AM_SSH_COLOR} ]] && AM_SSH_COLOR=154
6 | [[ -z ${AM_VI_INSERT_COLOR} ]] && AM_VI_INSERT_COLOR=154
7 | [[ -z ${AM_VI_NORMAL_COLOR} ]] && AM_VI_NORMAL_COLOR=154
8 | [[ -z ${AM_NORMAL_COLOR} ]] && AM_NORMAL_COLOR=81
9 | [[ -z ${AM_ERROR_COLOR} ]] && AM_ERROR_COLOR=197
10 | [[ -z ${AM_REV_COLOR} ]] && AM_REV_COLOR=74
11 | [[ -z ${AM_BRANCH_COLOR} ]] && AM_BRANCH_COLOR=122
12 | [[ -z ${AM_LEFT_RIGHT_COLOR} ]] && AM_LEFT_RIGHT_COLOR=226
13 | [[ -z ${AM_STASH_COLOR} ]] && AM_STASH_COLOR=${AM_LEFT_RIGHT_COLOR}
14 | [[ -z ${AM_BARE_COLOR} ]] && AM_BARE_COLOR=${AM_LEFT_RIGHT_COLOR}
15 | [[ -z ${AM_COMMIT_SINCE_COLOR} ]] && AM_COMMIT_SINCE_COLOR=103
16 | [[ -z ${AM_FADE_COLOR} ]] && AM_FADE_COLOR=242
17 | [[ -z ${AM_VENV_COLOR} ]] && AM_VENV_COLOR=245
18 | [[ -z ${AM_PYTHON_COLOR} ]] && AM_PYTHON_COLOR=40
19 | [[ -z ${AM_RUBY_COLOR} ]] && AM_RUBY_COLOR=196
20 | [[ -z ${AM_JAVA_COLOR} ]] && AM_JAVA_COLOR=178
21 | [[ -z ${AM_GO_COLOR} ]] && AM_GO_COLOR=81
22 | [[ -z ${AM_ELIXIR_COLOR} ]] && AM_ELIXIR_COLOR=99
23 | [[ -z ${AM_CRYSTAL_COLOR} ]] && AM_CRYSTAL_COLOR=8
24 | [[ -z ${AM_NODE_COLOR} ]] && AM_NODE_COLOR=41
25 | [[ -z ${AM_PHP_COLOR} ]] && AM_PHP_COLOR=57
26 | [[ -z ${AM_GRADLE_COLOR} ]] && AM_GRADLE_COLOR=64
27 | [[ -z ${AM_MAVEN_COLOR} ]] && AM_MAVEN_COLOR=161
28 | [[ -z ${AM_TIMER_COLOR} ]] && AM_TIMER_COLOR=248
29 | [[ -z ${AM_PROMPT_START_TAG_COLOR} ]] && AM_PROMPT_START_TAG_COLOR=12
30 | [[ -z ${AM_PROMPT_END_TAG_COLOR} ]] && AM_PROMPT_END_TAG_COLOR=12
31 | [[ -z ${AM_GIT_TRACKED_COLOR} ]] && AM_GIT_TRACKED_COLOR=122
32 | [[ -z ${AM_GIT_UN_TRACKED_COLOR} ]] && AM_GIT_UN_TRACKED_COLOR=181
33 | [[ -z ${AM_LEFT_RIGHT_COLOR} ]] && AM_LEFT_RIGHT_COLOR=254
34 | }
35 |
--------------------------------------------------------------------------------
/modules/themes/terminal.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | am_theme(){
4 | [[ -z ${AM_VCS_COLOR} ]] && AM_VCS_COLOR=1
5 | [[ -z ${AM_SSH_COLOR} ]] && AM_SSH_COLOR=11
6 | [[ -z ${AM_VI_INSERT_COLOR} ]] && AM_VI_INSERT_COLOR=11
7 | [[ -z ${AM_VI_NORMAL_COLOR} ]] && AM_VI_NORMAL_COLOR=11
8 | [[ -z ${AM_NORMAL_COLOR} ]] && AM_NORMAL_COLOR=12
9 | [[ -z ${AM_ERROR_COLOR} ]] && AM_ERROR_COLOR=1
10 | [[ -z ${AM_REV_COLOR} ]] && AM_REV_COLOR=14
11 | [[ -z ${AM_BRANCH_COLOR} ]] && AM_BRANCH_COLOR=10
12 | [[ -z ${AM_LEFT_RIGHT_COLOR} ]] && AM_LEFT_RIGHT_COLOR=3
13 | [[ -z ${AM_STASH_COLOR} ]] && AM_STASH_COLOR=${AM_LEFT_RIGHT_COLOR}
14 | [[ -z ${AM_BARE_COLOR} ]] && AM_BARE_COLOR=${AM_LEFT_RIGHT_COLOR}
15 | [[ -z ${AM_COMMIT_SINCE_COLOR} ]] && AM_COMMIT_SINCE_COLOR=6
16 | [[ -z ${AM_FADE_COLOR} ]] && AM_FADE_COLOR=8
17 | [[ -z ${AM_VENV_COLOR} ]] && AM_VENV_COLOR=8
18 | [[ -z ${AM_PYTHON_COLOR} ]] && AM_PYTHON_COLOR=2
19 | [[ -z ${AM_RUBY_COLOR} ]] && AM_RUBY_COLOR=1
20 | [[ -z ${AM_JAVA_COLOR} ]] && AM_JAVA_COLOR=15
21 | [[ -z ${AM_GO_COLOR} ]] && AM_GO_COLOR=6
22 | [[ -z ${AM_ELIXIR_COLOR} ]] && AM_ELIXIR_COLOR=13
23 | [[ -z ${AM_CRYSTAL_COLOR} ]] && AM_CRYSTAL_COLOR=8
24 | [[ -z ${AM_NODE_COLOR} ]] && AM_NODE_COLOR=2
25 | [[ -z ${AM_PHP_COLOR} ]] && AM_PHP_COLOR=5
26 | [[ -z ${AM_GRADLE_COLOR} ]] && AM_GRADLE_COLOR=2
27 | [[ -z ${AM_MAVEN_COLOR} ]] && AM_MAVEN_COLOR=3
28 | [[ -z ${AM_TIMER_COLOR} ]] && AM_TIMER_COLOR=14
29 | [[ -z ${AM_PROMPT_START_TAG_COLOR} ]] && AM_PROMPT_START_TAG_COLOR=12
30 | [[ -z ${AM_PROMPT_END_TAG_COLOR} ]] && AM_PROMPT_END_TAG_COLOR=12
31 | [[ -z ${AM_GIT_TRACKED_COLOR} ]] && AM_GIT_TRACKED_COLOR=10
32 | [[ -z ${AM_GIT_UN_TRACKED_COLOR} ]] && AM_GIT_UN_TRACKED_COLOR=1
33 | [[ -z ${AM_LEFT_RIGHT_COLOR} ]] && AM_LEFT_RIGHT_COLOR=15
34 | }
35 |
--------------------------------------------------------------------------------
/modules/viprompt.zsh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env zsh
2 |
3 | am_vi_prompt() {
4 | echo -ne "${AM_VI_PROMPT_VAL}"
5 | }
6 |
7 | __render_vi_prompt() {
8 | case "${KEYMAP}" in
9 | vicmd)
10 | AM_VI_PROMPT_VAL="%B%F{$AM_VI_NORMAL_COLOR}${AM_VIM_NORMAL_SYM}%f%b"
11 | ;;
12 | main|viins)
13 | AM_VI_PROMPT_VAL="%B%F{$AM_VI_INSERT_COLOR}${AM_VIM_INSERT_SYM}%f%b"
14 | ;;
15 | esac
16 | precmd
17 | zle && zle reset-prompt
18 | }
19 |
20 | zle-line-init() {
21 | __render_vi_prompt
22 | }
23 |
24 | zle-keymap-select() {
25 | __render_vi_prompt
26 | }
27 |
28 | zle -N zle-line-init
29 | zle -N zle-keymap-select
30 |
--------------------------------------------------------------------------------
/previewer/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | (venv)
8 | >
9 | alien-minimal
10 | $
11 | |
12 |
13 | [
14 | PY:1.2.3
15 | |
16 | RB:1.2.3
17 | |
18 | JAVA:1.2.3
19 | |
20 | GO:1.2.3
21 | |
22 | EX:1.2.3
23 | |
24 | CR:1.2.3
25 | |
26 | NODE:1.2.3
27 | |
28 | PHP:1.2.3
29 | |
30 | GRADLE:1.2.3
31 | |
32 | MVN:1.2.3
33 | ]
34 | G
35 | master
36 | 0|75
37 | [1Y,8M,5D]
38 | abcdef
39 | @5
40 | 2↓1↑
41 | +
42 | *
43 | -
44 | ?
45 | |
46 |
47 |
48 |
49 | (venv)
50 | >
51 | alien-minimal
52 | $
53 | 1
54 | |
55 |
56 | [
57 | PY:1.2.3
58 | |
59 | RB:1.2.3
60 | |
61 | JAVA:1.2.3
62 | |
63 | GO:1.2.3
64 | |
65 | EX:1.2.3
66 | |
67 | CR:1.2.3
68 | |
69 | NODE:1.2.3
70 | |
71 | PHP:1.2.3
72 | |
73 | GRADLE:1.2.3
74 | |
75 | MVN:1.2.3
76 | ]
77 | G
78 | master
79 | 0|75
80 | [1Y,8M,5D]
81 | abcdef
82 | @5
83 | 2↓1↑
84 | +
85 | *
86 | -
87 | ?
88 | |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
210 | |
211 |
212 |
215 | |
216 |
217 |
218 |
219 |
220 |
--------------------------------------------------------------------------------
/previewer/index.js:
--------------------------------------------------------------------------------
1 | function updateTheme() {
2 | var AM_VCS_COLOR = document.getElementById("AM_VCS_COLOR").value;
3 | var AM_SSH_COLOR = document.getElementById("AM_SSH_COLOR").value;
4 | var AM_NORMAL_COLOR = document.getElementById("AM_NORMAL_COLOR").value;
5 | var AM_ERROR_COLOR = document.getElementById("AM_ERROR_COLOR").value;
6 | var AM_REV_COLOR = document.getElementById("AM_REV_COLOR").value;
7 | var AM_BRANCH_COLOR = document.getElementById("AM_BRANCH_COLOR").value;
8 | var AM_LEFT_RIGHT_COLOR = document.getElementById("AM_LEFT_RIGHT_COLOR").value;
9 | var AM_STASH_COLOR = document.getElementById("AM_STASH_COLOR").value;
10 | var AM_BARE_COLOR = document.getElementById("AM_BARE_COLOR").value;
11 | var AM_COMMIT_SINCE_COLOR = document.getElementById("AM_COMMIT_SINCE_COLOR").value;
12 | var AM_FADE_COLOR = document.getElementById("AM_FADE_COLOR").value;
13 | var AM_VENV_COLOR = document.getElementById("AM_VENV_COLOR").value;
14 | var AM_PYTHON_COLOR = document.getElementById("AM_PYTHON_COLOR").value;
15 | var AM_RUBY_COLOR = document.getElementById("AM_RUBY_COLOR").value;
16 | var AM_JAVA_COLOR = document.getElementById("AM_JAVA_COLOR").value;
17 | var AM_GO_COLOR = document.getElementById("AM_GO_COLOR").value;
18 | var AM_ELIXIR_COLOR = document.getElementById("AM_ELIXIR_COLOR").value;
19 | var AM_CRYSTAL_COLOR = document.getElementById("AM_CRYSTAL_COLOR").value;
20 | var AM_NODE_COLOR = document.getElementById("AM_NODE_COLOR").value;
21 | var AM_PHP_COLOR = document.getElementById("AM_PHP_COLOR").value;
22 | var AM_GRADLE_COLOR = document.getElementById("AM_GRADLE_COLOR").value;
23 | var AM_MAVEN_COLOR = document.getElementById("AM_MAVEN_COLOR").value;
24 | var AM_TIMER_COLOR = document.getElementById("AM_TIMER_COLOR").value;
25 | var AM_PROMPT_START_TAG_COLOR = document.getElementById("AM_PROMPT_START_TAG_COLOR").value;
26 | var AM_PROMPT_END_TAG_COLOR = document.getElementById("AM_PROMPT_END_TAG_COLOR").value;
27 | var AM_GIT_TRACKED_COLOR = document.getElementById("AM_GIT_TRACKED_COLOR").value;
28 | var AM_GIT_UN_TRACKED_COLOR = document.getElementById("AM_GIT_UN_TRACKED_COLOR").value;
29 |
30 | var AM_VCS_COLOR_PREVIEW = document.getElementsByClassName("AM_VCS_COLOR_PREVIEW"); for(var i = 0; i < AM_VCS_COLOR_PREVIEW.length; i++) {AM_VCS_COLOR_PREVIEW[i].style.color = AM_VCS_COLOR;}
31 | var AM_SSH_COLOR_PREVIEW = document.getElementsByClassName("AM_SSH_COLOR_PREVIEW"); for(var i = 0; i < AM_SSH_COLOR_PREVIEW.length; i++) {AM_SSH_COLOR_PREVIEW[i].style.color = AM_SSH_COLOR;}
32 | var AM_NORMAL_COLOR_PREVIEW = document.getElementsByClassName("AM_NORMAL_COLOR_PREVIEW"); for(var i = 0; i < AM_NORMAL_COLOR_PREVIEW.length; i++) {AM_NORMAL_COLOR_PREVIEW[i].style.color = AM_NORMAL_COLOR;}
33 | var AM_ERROR_COLOR_PREVIEW = document.getElementsByClassName("AM_ERROR_COLOR_PREVIEW"); for(var i = 0; i < AM_ERROR_COLOR_PREVIEW.length; i++) {AM_ERROR_COLOR_PREVIEW[i].style.color = AM_ERROR_COLOR;}
34 | var AM_REV_COLOR_PREVIEW = document.getElementsByClassName("AM_REV_COLOR_PREVIEW"); for(var i = 0; i < AM_REV_COLOR_PREVIEW.length; i++) {AM_REV_COLOR_PREVIEW[i].style.color = AM_REV_COLOR;}
35 | var AM_BRANCH_COLOR_PREVIEW = document.getElementsByClassName("AM_BRANCH_COLOR_PREVIEW"); for(var i = 0; i < AM_BRANCH_COLOR_PREVIEW.length; i++) {AM_BRANCH_COLOR_PREVIEW[i].style.color = AM_BRANCH_COLOR;}
36 | var AM_LEFT_RIGHT_COLOR_PREVIEW = document.getElementsByClassName("AM_LEFT_RIGHT_COLOR_PREVIEW"); for(var i = 0; i < AM_LEFT_RIGHT_COLOR_PREVIEW.length; i++) {AM_LEFT_RIGHT_COLOR_PREVIEW[i].style.color = AM_LEFT_RIGHT_COLOR;}
37 | var AM_STASH_COLOR_PREVIEW = document.getElementsByClassName("AM_STASH_COLOR_PREVIEW"); for(var i = 0; i < AM_STASH_COLOR_PREVIEW.length; i++) {AM_STASH_COLOR_PREVIEW[i].style.color = AM_STASH_COLOR;}
38 | var AM_BARE_COLOR_PREVIEW = document.getElementsByClassName("AM_BARE_COLOR_PREVIEW"); for(var i = 0; i < AM_BARE_COLOR_PREVIEW.length; i++) {AM_BARE_COLOR_PREVIEW[i].style.color = AM_BARE_COLOR;}
39 | var AM_COMMIT_SINCE_COLOR_PREVIEW = document.getElementsByClassName("AM_COMMIT_SINCE_COLOR_PREVIEW"); for(var i = 0; i < AM_COMMIT_SINCE_COLOR_PREVIEW.length; i++) {AM_COMMIT_SINCE_COLOR_PREVIEW[i].style.color = AM_COMMIT_SINCE_COLOR;}
40 | var AM_FADE_COLOR_PREVIEW = document.getElementsByClassName("AM_FADE_COLOR_PREVIEW"); for(var i = 0; i < AM_FADE_COLOR_PREVIEW.length; i++) {AM_FADE_COLOR_PREVIEW[i].style.color = AM_FADE_COLOR;}
41 | var AM_VENV_COLOR_PREVIEW = document.getElementsByClassName("AM_VENV_COLOR_PREVIEW"); for(var i = 0; i < AM_VENV_COLOR_PREVIEW.length; i++) {AM_VENV_COLOR_PREVIEW[i].style.color = AM_VENV_COLOR;}
42 | var AM_PYTHON_COLOR_PREVIEW = document.getElementsByClassName("AM_PYTHON_COLOR_PREVIEW"); for(var i = 0; i < AM_PYTHON_COLOR_PREVIEW.length; i++) {AM_PYTHON_COLOR_PREVIEW[i].style.color = AM_PYTHON_COLOR;}
43 | var AM_RUBY_COLOR_PREVIEW = document.getElementsByClassName("AM_RUBY_COLOR_PREVIEW"); for(var i = 0; i < AM_RUBY_COLOR_PREVIEW.length; i++) {AM_RUBY_COLOR_PREVIEW[i].style.color = AM_RUBY_COLOR;}
44 | var AM_JAVA_COLOR_PREVIEW = document.getElementsByClassName("AM_JAVA_COLOR_PREVIEW"); for(var i = 0; i < AM_JAVA_COLOR_PREVIEW.length; i++) {AM_JAVA_COLOR_PREVIEW[i].style.color = AM_JAVA_COLOR;}
45 | var AM_GO_COLOR_PREVIEW = document.getElementsByClassName("AM_GO_COLOR_PREVIEW"); for(var i = 0; i < AM_GO_COLOR_PREVIEW.length; i++) {AM_GO_COLOR_PREVIEW[i].style.color = AM_GO_COLOR;}
46 | var AM_ELIXIR_COLOR_PREVIEW = document.getElementsByClassName("AM_ELIXIR_COLOR_PREVIEW"); for(var i = 0; i < AM_ELIXIR_COLOR_PREVIEW.length; i++) {AM_ELIXIR_COLOR_PREVIEW[i].style.color = AM_ELIXIR_COLOR;}
47 | var AM_CRYSTAL_COLOR_PREVIEW = document.getElementsByClassName("AM_CRYSTAL_COLOR_PREVIEW"); for(var i = 0; i < AM_CRYSTAL_COLOR_PREVIEW.length; i++) {AM_CRYSTAL_COLOR_PREVIEW[i].style.color = AM_CRYSTAL_COLOR;}
48 | var AM_NODE_COLOR_PREVIEW = document.getElementsByClassName("AM_NODE_COLOR_PREVIEW"); for(var i = 0; i < AM_NODE_COLOR_PREVIEW.length; i++) {AM_NODE_COLOR_PREVIEW[i].style.color = AM_NODE_COLOR;}
49 | var AM_PHP_COLOR_PREVIEW = document.getElementsByClassName("AM_PHP_COLOR_PREVIEW"); for(var i = 0; i < AM_PHP_COLOR_PREVIEW.length; i++) {AM_PHP_COLOR_PREVIEW[i].style.color = AM_PHP_COLOR;}
50 | var AM_GRADLE_COLOR_PREVIEW = document.getElementsByClassName("AM_GRADLE_COLOR_PREVIEW"); for(var i = 0; i < AM_GRADLE_COLOR_PREVIEW.length; i++) {AM_GRADLE_COLOR_PREVIEW[i].style.color = AM_GRADLE_COLOR;}
51 | var AM_MAVEN_COLOR_PREVIEW = document.getElementsByClassName("AM_MAVEN_COLOR_PREVIEW"); for(var i = 0; i < AM_MAVEN_COLOR_PREVIEW.length; i++) {AM_MAVEN_COLOR_PREVIEW[i].style.color = AM_MAVEN_COLOR;}
52 | var AM_TIMER_COLOR_PREVIEW = document.getElementsByClassName("AM_TIMER_COLOR_PREVIEW"); for(var i = 0; i < AM_TIMER_COLOR_PREVIEW.length; i++) {AM_TIMER_COLOR_PREVIEW[i].style.color = AM_TIMER_COLOR;}
53 | var AM_PROMPT_START_TAG_COLOR_PREVIEW = document.getElementsByClassName("AM_PROMPT_START_TAG_COLOR_PREVIEW"); for(var i = 0; i < AM_PROMPT_START_TAG_COLOR_PREVIEW.length; i++) {AM_PROMPT_START_TAG_COLOR_PREVIEW[i].style.color = AM_PROMPT_START_TAG_COLOR;}
54 | var AM_PROMPT_END_TAG_COLOR_PREVIEW = document.getElementsByClassName("AM_PROMPT_END_TAG_COLOR_PREVIEW"); for(var i = 0; i < AM_PROMPT_END_TAG_COLOR_PREVIEW.length; i++) {AM_PROMPT_END_TAG_COLOR_PREVIEW[i].style.color = AM_PROMPT_END_TAG_COLOR;}
55 | var AM_GIT_TRACKED_COLOR_PREVIEW = document.getElementsByClassName("AM_GIT_TRACKED_COLOR_PREVIEW"); for(var i = 0; i < AM_GIT_TRACKED_COLOR_PREVIEW.length; i++) {AM_GIT_TRACKED_COLOR_PREVIEW[i].style.color = AM_GIT_TRACKED_COLOR;}
56 | var AM_GIT_UN_TRACKED_COLOR_PREVIEW = document.getElementsByClassName("AM_GIT_UN_TRACKED_COLOR_PREVIEW"); for(var i = 0; i < AM_GIT_UN_TRACKED_COLOR_PREVIEW.length; i++) {AM_GIT_UN_TRACKED_COLOR_PREVIEW[i].style.color = AM_GIT_UN_TRACKED_COLOR;}
57 |
58 | var rawConfig = "\n"
59 | + "#!/usr/bin/env zsh\n"
60 | + "\n"
61 | + "am_theme(){\n"
62 | + " [[ -z ${AM_VCS_COLOR} ]] && AM_VCS_COLOR="+ AM_VCS_COLOR +"\n"
63 | + " [[ -z ${AM_SSH_COLOR} ]] && AM_SSH_COLOR="+ AM_SSH_COLOR +"\n"
64 | + " [[ -z ${AM_NORMAL_COLOR} ]] && AM_NORMAL_COLOR="+ AM_NORMAL_COLOR +"\n"
65 | + " [[ -z ${AM_ERROR_COLOR} ]] && AM_ERROR_COLOR="+ AM_ERROR_COLOR +"\n"
66 | + " [[ -z ${AM_REV_COLOR} ]] && AM_REV_COLOR="+ AM_REV_COLOR +"\n"
67 | + " [[ -z ${AM_BRANCH_COLOR} ]] && AM_BRANCH_COLOR="+ AM_BRANCH_COLOR +"\n"
68 | + " [[ -z ${AM_LEFT_RIGHT_COLOR} ]] && AM_LEFT_RIGHT_COLOR="+ AM_LEFT_RIGHT_COLOR +"\n"
69 | + " [[ -z ${AM_STASH_COLOR} ]] && AM_STASH_COLOR="+ AM_STASH_COLOR +"\n"
70 | + " [[ -z ${AM_BARE_COLOR} ]] && AM_BARE_COLOR="+ AM_BARE_COLOR +"\n"
71 | + " [[ -z ${AM_COMMIT_SINCE_COLOR} ]] && AM_COMMIT_SINCE_COLOR="+ AM_COMMIT_SINCE_COLOR +"\n"
72 | + " [[ -z ${AM_FADE_COLOR} ]] && AM_FADE_COLOR="+ AM_FADE_COLOR +"\n"
73 | + " [[ -z ${AM_VENV_COLOR} ]] && AM_VENV_COLOR="+ AM_VENV_COLOR +"\n"
74 | + " [[ -z ${AM_PYTHON_COLOR} ]] && AM_PYTHON_COLOR="+ AM_PYTHON_COLOR +"\n"
75 | + " [[ -z ${AM_RUBY_COLOR} ]] && AM_RUBY_COLOR="+ AM_RUBY_COLOR +"\n"
76 | + " [[ -z ${AM_JAVA_COLOR} ]] && AM_JAVA_COLOR="+ AM_JAVA_COLOR +"\n"
77 | + " [[ -z ${AM_GO_COLOR} ]] && AM_GO_COLOR="+ AM_GO_COLOR +"\n"
78 | + " [[ -z ${AM_ELIXIR_COLOR} ]] && AM_ELIXIR_COLOR="+ AM_ELIXIR_COLOR +"\n"
79 | + " [[ -z ${AM_CRYSTAL_COLOR} ]] && AM_CRYSTAL_COLOR="+ AM_CRYSTAL_COLOR +"\n"
80 | + " [[ -z ${AM_NODE_COLOR} ]] && AM_NODE_COLOR="+ AM_NODE_COLOR +"\n"
81 | + " [[ -z ${AM_PHP_COLOR} ]] && AM_PHP_COLOR="+ AM_PHP_COLOR +"\n"
82 | + " [[ -z ${AM_GRADLE_COLOR} ]] && AM_GRADLE_COLOR="+ AM_GRADLE_COLOR +"\n"
83 | + " [[ -z ${AM_MAVEN_COLOR} ]] && AM_MAVEN_COLOR="+ AM_MAVEN_COLOR +"\n"
84 | + " [[ -z ${AM_TIMER_COLOR} ]] && AM_TIMER_COLOR="+ AM_TIMER_COLOR +"\n"
85 | + " [[ -z ${AM_PROMPT_START_TAG_COLOR} ]] && AM_PROMPT_START_TAG_COLOR="+ AM_PROMPT_START_TAG_COLOR +"\n"
86 | + " [[ -z ${AM_PROMPT_END_TAG_COLOR} ]] && AM_PROMPT_END_TAG_COLOR="+ AM_PROMPT_END_TAG_COLOR +"\n"
87 | + " [[ -z ${AM_GIT_TRACKED_COLOR} ]] && AM_GIT_TRACKED_COLOR="+ AM_GIT_TRACKED_COLOR +"\n"
88 | + " [[ -z ${AM_GIT_UN_TRACKED_COLOR} ]] && AM_GIT_UN_TRACKED_COLOR="+ AM_GIT_UN_TRACKED_COLOR +"\n"
89 | + "}"
90 |
91 |
92 | document.getElementById("raw-config").value = rawConfig
93 | }
94 |
95 | updateTheme()
96 |
97 | var colors = document.getElementsByClassName("color");
98 | for (var i = 0; i < colors.length; i++) { colors[i].onchange = function() {updateTheme();} }
99 |
100 |
--------------------------------------------------------------------------------