56 Commits
Author SHA1 Message Date
Mathias Fredriksson fcd942622d 1.5.0 2017-01-20 16:43:37 +02:00
Mathias FredrikssonandGitHub 17e81f37ce Check and set prompt_opts when not using promptinit (#277)
The `prompt_opts` array only has an effect when the theme is loaded via
promptinit (`prompt pure`). Previously they were not set when pure was
loaded via `source /path/to/pure.zsh` as is the case with e.g. antigen,
antibody, etc.

This commit attempts to detect whenever pure is not autoloaded via
promptinit and manually sets the options in `prompt_opts`.

Fixes #276.
2017-01-20 09:59:40 +02:00
Mathias FredrikssonandGitHub e06fd4af63 Check for git arrows asynchronously (#272)
Previously `command git rev-list --left-right --count HEAD...@'{u}'`
was run in a subshell, and upon `git fetch` completion, run once again.
This is now done as an async job (`prompt_pure_async_git_arrows`) and
is also called within `prompt_pure_async_git_fetch` to return the arrow
status immediately after `git fetch` has completed, this saves us from
waiting until the git fetch is done to only then execute a new async
job to check the arrow status.

Changes in git arrow / git dirty status are also handled better and
`prompt_pure_preprompt_render` is not called unless they actually
changed.
2017-01-19 17:30:19 +02:00
Mathias FredrikssonandSindre Sorhus 3dd645970e Evaluate $PROMPT at render time (#274)
This allows $PURE_PROMPT_SYMBOL to be modified at any point.
2017-01-18 23:29:19 +07:00
Mathias FredrikssonandSindre Sorhus 6ec0029ac5 Update zsh-async to 1.5.0 (#271) 2017-01-17 17:46:32 +07:00
Mathias FredrikssonandSindre Sorhus ee0c6a445a Disable interactive passwords in SSH for git fetch (#269)
This commit fixes a problem where SSH (used by Git) is able to
interactively prompt for a password that can not be redirected to
`/dev/null`.

An interactive SSH password prompt inside the async worker does three
things:
1. Leave the `git fetch` hanging due to waiting for input
2. Capture part of the input to the async worker, thus creating
   nonsense commands
3. Use some characters from future async jobs as a password and
   attempts to login

Even if this was fixed in `zsh-async`, it is still good to disable the
password prompt to avoid issue numero uno.
2017-01-16 10:10:36 +07:00
Mathias FredrikssonandSindre Sorhus 7f27952888 Change integration examples from commands to configuration lines (#265) 2016-12-19 17:30:56 +01:00
Mathias FredrikssonandSindre Sorhus 71f9326028 Readme improvements (#259) 2016-12-17 17:27:44 +01:00
Mathias FredrikssonandSindre Sorhus 1715edafcf Add issue template (#260) 2016-12-12 22:46:11 +01:00
Mathias Fredriksson 26fff0cefa 1.4.1 2016-12-12 19:06:11 +02:00
Mathias Fredriksson 787cab6d89 Update zsh-async to fix issue with zsh 5.3 2016-12-12 09:56:09 +02:00
Mathias FredrikssonandGitHub 5ccc336b35 Restore prompt_subst setopt when rendering prompt (#231)
We store the user setting for `prompt_subst` before changing it in the
local scope of `prompt_pure_preprompt_render`. This allows us to restore
it when we render the real prompt (`PS1`) through `zle .redraw-prompt`.

Fixes #230.
2016-09-20 16:56:12 +03:00
Mathias Fredriksson d826130a1a Update zsh-async to fix multi-space path bug
If a directory was named `hello  world` (two spaces) this would
previously have resulted in pure trying to `cd` into `hello world` (one
space) to perform git actions. This issue was fixed in zsh-async 1.3.0.

There might also have been other cases, e.g. a newline in the directory
name.
2016-09-02 20:22:01 +03:00
Mathias Fredriksson 780d1a5a08 Prevent parameter expansion in preprompt
By unsetting `prompt_subst` for the `prompt_pure_preprompt_render`
function we can avoid e.g. git branch names with a `$`-sign to be
expanded as parameters.

Fixes #224 and #225 (as a result of 6cbd49a).
2016-08-25 19:00:23 +03:00
Mathias Fredriksson 753ef290f8 Revert "Fix double variable interpolation in branch name"
This reverts commit 6cbd49ad5c because it
broke users prompts if they didn't have `prompt_subst` set.
2016-08-25 18:49:07 +03:00
Mathias Fredriksson 6cbd49ad5c Fix double variable interpolation in branch name
This commit prevents a git branch named e.g. `$TMPPREFIX` from being
expanded into the actual contents of the `$TMPPREFIX` variable.

Fixes #224.
2016-08-25 12:22:38 +03:00
Mathias Fredriksson 211b49481e 1.4.0 2016-07-27 18:04:27 +03:00
Mathias FredrikssonandGitHub e3f1f87fc3 Compare expanded preprompt when rendering (#214)
* Compare expanded preprompt when rendering

The expanded content of the preprompt was not considered previously when
checking if the content had changed. E.g. path changes were never detected.
The typeset (definition) and assignment are performed on separate lines as it
would cause issues otherwise.

Fixes #213.
2016-07-27 12:04:49 +03:00
Mathias Fredriksson a0a3e88480 Use zle reset-prompt to restore cursor instead of relying on ansi codes
This fixes #191 and can be considered a more robust method of restoring cursor
position.
2016-02-15 19:01:22 +02:00
Mathias Fredriksson 79b1514fd4 Disable setting title in emacs terminal (not supported)
This fixes #188 and takes place of #190, at least for now.
2016-02-15 19:01:17 +02:00
Mathias Fredriksson 45ef73ec34 Merge pull request #186 from edouard-lopez/patch-1
Add Ports section to readme
2016-01-20 19:24:15 +02:00
Mathias Fredriksson 27e921a0be Merge pull request #177 from veggiemonk/patch-1
Close #177 PR: Avoid double slashes in dest path

Fixes #176.
2015-12-02 22:10:33 +02:00
Mathias FredrikssonandSindre Sorhus f6625c2a4e Close #175 PR: Refresh pure screenshot. 2015-11-28 09:50:28 +07:00
Mathias Fredriksson 22c4f0b403 1.3.0 2015-11-17 22:14:22 +02:00
Mathias Fredriksson dc30cc6b03 Update bundled zsh-async to 1.1.0 2015-11-17 22:11:42 +02:00
Mathias FredrikssonandSindre Sorhus 9de635ee10 Close #171 PR: Attempt to detect user initiated git fetch. Fixes #162 2015-11-18 02:20:23 +07:00
Mathias Fredriksson a52e8a9469 Deduplicate code by creating a set_title function 2015-09-22 13:25:25 +03:00
Mathias Fredriksson dec025315e Update oh-my-zsh instructions 2015-09-16 19:11:46 +03:00
Mathias Fredriksson 49cd9360a2 1.2.0 2015-08-25 21:39:27 +03:00
Mathias Fredriksson f747acf4ec Bump zsh-async to 1.0.0, prevents mixed stdout/stderr 2015-08-25 18:16:45 +03:00
Mathias Fredriksson 8b2dd63594 Merge pull request #153 from sindresorhus/preprompt-update-fix
Render new preprompt with previous one in mind, fixes #145
2015-08-11 23:35:06 +03:00
Mathias Fredriksson f3969755ae Render new preprompt with previous one in mind
This fixes #145 by calculating how many lines the previous preprompt
assumes in the current terminal window and either erases preprompt lines
that are no longer relevant or allocates more space for the new
preprompt.
2015-07-29 16:04:22 +03:00
Mathias Fredriksson 924b6291ab Refactor to avoid subshell usage, prefer variables
Performance tests indicate using a lot of subshells can lead to bad
performance.
2015-07-27 23:27:45 +03:00
Mathias FredrikssonandSindre Sorhus ba1f064357 Close #147 PR: Preserve preprompt on Ctrl+L. Fixes #145 2015-07-18 17:27:18 +02:00
Mathias Fredriksson 2509a1fac0 Remove cr from prompt_opts, fixes #127 2015-07-16 10:15:56 +03:00
Mathias Fredriksson 7f90797e8d Merge pull request #142 from zmwangx/string-length-fix
prompt_pure_string_length: no need to subtract one
2015-07-15 15:32:56 +03:00
Mathias Fredriksson b1b44b3204 Merge pull request #144 from zmwangx/rename-prompt-to-preprompt
prompt_pure_preprompt_render: rename prompt to preprompt
2015-07-15 03:23:58 +03:00
Mathias Fredriksson a94ff2ff6b Default to 0 for git rev-list left and right. Fixes #137. 2015-07-14 23:09:32 +03:00
Mathias Fredriksson 29ab6e737f 1.1.1 2015-07-04 11:49:20 +03:00
Mathias Fredriksson 5f5b990e2b Disable prompt expansion for running command 2015-06-16 14:54:43 +03:00
Mathias Fredriksson a099059f15 Merge pull request #130 from zmwangx/rename-variables-for-readability
Rename two internal variables for readability
2015-06-14 11:26:40 +03:00
Mathias Fredriksson 58167f1879 Use standard [[ ]] for conditional and add clarifications 2015-06-13 13:21:44 +03:00
Mathias Fredriksson b55776e7aa fix: do the PURE_GIT_PULL check in the correct place 2015-06-02 20:16:27 +03:00
Mathias FredrikssonandSindre Sorhus fbca62ea3f Close #124 PR: Show hostname in terminal title if session is over ssh. 2015-06-01 13:27:44 +02:00
Mathias Fredriksson 016b5ec7db Use slightly faster git dirty check for untracked files 2015-06-01 13:09:15 +03:00
Mathias Fredriksson 3d807f5d54 import bug-fix release from zsh-async, fixes async job flushing 2015-05-30 18:41:21 +03:00
Mathias Fredriksson 235de91de8 readme: faq clarificaitons 2015-05-28 21:11:19 +03:00
Mathias Fredriksson c1db3eb2dd readme: add zpty error to faq with explanation and potential solutions 2015-05-28 20:03:04 +03:00
Mathias Fredriksson 38c381039e readme: update instructions for antigen and oh-my-zsh. remove incompatible async.plugin.zsh 2015-05-28 20:01:30 +03:00
Mathias Fredriksson d766c8b8d9 use cd -q to prevent hooks from firing 2015-05-27 19:30:12 +03:00
Mathias Fredriksson e46c59ff45 prevent git status leakage when testing if dirty 2015-05-27 18:55:39 +03:00
Mathias Fredriksson a57987499b fix paths that are split due to spaces in directory names 2015-05-27 18:44:40 +03:00
Mathias FredrikssonandSindre Sorhus 94ccd581dd Close #108 PR: Refactor async logic and allow for async git status.. 2015-05-23 13:32:21 +02:00
Mathias Fredriksson 786b580dc9 Only disable git terminal prompt for git fetch 2015-05-13 21:11:38 +03:00
Mathias Fredriksson f49c5bdf21 Fix ssh/root spacing issue. 2015-02-24 23:48:12 +02:00
Mathias Fredriksson c1aa51346e Fix prompt precmd spacing.
Only add spaces if there is content.
2015-02-21 13:47:56 +02:00