1
0
mirror of https://github.com/dcarrillo/prezto.git synced 2026-05-06 11:20:00 +00:00
Commit Graph

1088 Commits

Author SHA1 Message Date
dcarrillo 047a898d5d Merge upstream/master 2022-11-01 17:21:41 +01:00
Jeff Widman e3a9583f33 Support virtualenvwrapper with / without pyenv virtualenv-init or virtualenvwrapper plugins
The desired logic is:

For the `pyenv` plugins `virtualenv-init` and `virtualenvwrapper`:
1. If either plugin is present, activate it
2. If `virtualenvwrapper` plugin is not present, then
   [fallback to standard
   `virtualenvwrapper`](https://github.com/sorin-ionescu/prezto/pull/1414#issuecomment-320306421).
3. If `virtualenvwrapper` plugin is present, then [don't fallback to
   standard `virtualenvwrapper`, regardless of whether `virtualenv-init`
   is
   present](https://github.com/sorin-ionescu/prezto/pull/1981#issue-1123766676).

Previously, if the `virtualenv` command was present but `pyenv` was
missing, then the fallback wouldn't be hit. This bug was introduced by
https://github.com/sorin-ionescu/prezto/pull/1981/ which ensured that
the `pyenv` `virtualenvwrapper` plugin was activated if present,
regardless of the presence of the `virtualenv-init` plugin.

As an optimization, the check for the `pyenv` plugins are skipped if
`pyenv` itself isn't found.

Since we only want to fallback if the `pyenv` `virtualenvwrapper` plugin
is missing, but that's buried within the `pyenv` logic and we also need
to handle when `pyenv` itself is missing, this switches to using a flag
variable.

I also renamed the `virtualenv_sources` var to
`virtualenvwrapper_sources` as `virtualenv` is distinct from
`virtualenvwrapper`, so using one name for a var that is really about
the other is confusing.

Looking at `git blame`, there's a _lot_ of prior art here around trying
to support all the permutations of `pyenv` and various plugins:
* https://github.com/sorin-ionescu/prezto/issues/1413
* https://github.com/sorin-ionescu/prezto/pull/1414
* https://github.com/sorin-ionescu/prezto/pull/1433
* https://github.com/sorin-ionescu/prezto/pull/1434

So we need to be extremely careful to continue to support all these
permutations.

Fix https://github.com/sorin-ionescu/prezto/issues/2022
2022-10-26 22:03:42 -07:00
Jeff Widman ca9012c776 Set EXTENDED_GLOB in the python module
This is needed to find python. 

It is often already set because a user has the directory or completion module loaded before this, but that's not always true.

See extensive debugging / further explanation here: https://github.com/sorin-ionescu/prezto/issues/1949

This does not fully resolve that issue, as there's another enhancement that I'll put up as a separate PR.
2022-10-25 15:54:00 -07:00
Michael Hoang 97f36e9402 Add - alias for cd -
Taken with love from `oh-my-zsh`
2022-10-25 15:23:59 -07:00
Thomas Blaschke 357ce2ebbf Add exception for PyCharm terminal emulation
Do not autostart tmux if we start a terminal inside PyCharm. Should also work for other JetBrains products.
2022-10-12 16:20:42 -06:00
dcarrillo a39ac57061 [aws] Add funcs for ssm parameters 2022-10-05 19:37:22 +02:00
dcarrillo 77edfff10e Merge upstream/master 2022-08-26 19:40:40 +02:00
Shea690901 51c4ff6de4 feat(module/ssh): add globbing for ssh-add param
fixes #2000

Signed-off-by: Shea690901 <ginny690901@hotmail.de>
2022-08-03 18:52:34 -05:00
Indrajit Raychaudhuri 3ea20cfbe8 utility: Make 'http-serve' handler faster for well known cases
In most systems, python2 or python3 command/soft-link would almost
always exist. In such cases, we don't need to invoke `python` to
detect the version. This should speed things up a bit as well.
2022-08-03 18:51:49 -05:00
Indrajit Raychaudhuri 0aef8086b5 completion: Update completion submodule to 0.34.0 2022-08-03 18:51:49 -05:00
dcarrillo 865cc2ef02 Merge upstream/master 2022-07-26 19:46:00 +02:00
Indrajit Raychaudhuri 5928fa84cc completion: Update completion submodule to 0.34.0 2022-07-22 00:18:19 -05:00
dcarrillo 365a228b7f [git] Add git-squash function 2022-07-09 20:52:09 +02:00
dcarrillo da682405a1 Merge upstream/master 2022-07-08 19:09:43 +02:00
Ben 3a471a05f9 Update docker compose references
Docker For Mac has broken support for `docker-compose`. 

Since `docker compose` is a drop in replacement and it Just Works™, this PR converts `docker-compose` to `docker compose`
2022-06-14 15:06:05 -05:00
dcarrillo 3d3346be0a [aws] Detect whenever a aws sso login is needed 2022-06-12 16:22:24 +02:00
dcarrillo 2676780766 Merge upstream/master 2022-04-24 11:51:55 +02:00
Eugen Blattner 12df1363ce fix: heading level for new hist file settings 2022-04-11 11:38:44 -07:00
dcarrillo 1431e4e8c2 Merge upstream/master 2022-04-09 18:14:53 +02:00
Shea690901 dea85a0740 feat(module/history): add full configurability
While previusly configurable, it was inconsistent with other
configuration options and it was missing configurability of in memory /
on disc history size.

Signed-off-by: Shea690901 <ginny690901@hotmail.de>
2022-04-09 07:46:25 -05:00
Indrajit Raychaudhuri c857e809c3 command-not-found: Detect Homebrew repo internally, not idiomatically
For performance reasons, we prefer detecting Homebrew prefix internally
instead of the more idiomatic form `brew --repository`.

We attempt looking up $HOMEBREW_REPOSITORY first (in case `brew shellenv`
has been sourced-in earlier). Else, we look it up by resolving absolute
path of $HOMEBREW_REPOSITORY.

This should work for most standard (and officially documented) Homebrew
installations.
2022-04-08 14:23:51 -05:00
Indrajit Raychaudhuri ac1c39d2e1 completion: Detect Homebrew prefix internally, not idiomatically
For performance reasons, we prefer detecting Homebrew prefix internally
instead of the more idiomatic form `brew --prefix`.

We attempt looking up $HOMEBREW_PREFIX or $HOMEBREW_REPOSITORY first (in
case `brew shellenv` has been sourced-in earlier). Else, we look it up
by resolving absolute path of $HOMEBREW_REPOSITORY. $HOMEBREW_PREFIX is
same as $HOMEBREW_REPOSITORY except when Homebrew is installed in
'/usr/local' ($HOMEBREW_REPOSITORY == '/usr/local/Homebrew'). This is
usually the case for Intel Macs.

This should work for most standard (and officially documented) Homebrew
installations.

For implementation details in Homebrew,
see: https://github.com/Homebrew/brew/blob/2a850e02d8f2dedcad7164c2f4b95d340a7200bb/bin/brew#L62-L70

Co-authored-by: mattmc3 <mattmc3@gmail.com>
2022-04-08 14:23:51 -05:00
Eugen Blattner 2c66331316 fix: use deflating flag for pixz in unarchive function 2022-04-05 12:29:22 -07:00
dcarrillo fca913eded Merge upstream/master 2022-04-03 13:28:52 +02:00
Eugen Blattner 3da67271b9 fix: use inflating binaries instead of deflating in unarchive function 2022-04-01 13:22:48 -07:00
Jim Boulter 1ff1099d05 Allow users to set a dirty-branch format 2022-04-01 10:36:35 -07:00
dcarrillo 45adecd9c9 [aws] Add sso support 2022-03-23 16:32:37 +01:00
dcarrillo 74d4100434 Merge upstream/master 2022-03-05 16:27:27 +01:00
Indrajit Raychaudhuri 7ec1ecde3a prompt: Update pure submodule to 1.20.1 2022-02-26 13:32:37 -06:00
Zach Birenbaum 20641f3447 Merge pull request #1981 from zbirenbaum/python_fix
Fix crash on open caused by incorrect conditional in python module
2022-02-23 15:51:37 -05:00
mattmc3 bf3dfe8c02 Update Pure prompt to 1.20.0 2022-02-14 18:45:20 -08:00
zbirenbaum d840f0fc7b Fix crash on open caused by incorrect conditional in python module 2022-02-03 22:08:36 -05:00
Roman Perepelitsa d6e1ef5fcf prompt: update powerlevel10k submodule to v1.16.1
Release notes:

  - https://github.com/romkatv/powerlevel10k/releases/tag/v1.16.1
2022-02-02 05:39:27 -08:00
Roman Perepelitsa 7884fb2271 prompt: update powerlevel10k submodule to v1.16.0
Release notes:

  - https://github.com/romkatv/powerlevel10k/releases/tag/v1.16.0
2022-01-11 02:24:43 -08:00
dcarrillo a96f1618b4 Merge upstream/master 2021-12-04 12:13:47 +01:00
David Crook ecaed1cfa7 change polarity of test for BROWSER 2021-11-16 09:55:19 -08:00
dcarrillo d828d06643 Merge upstream/master 2021-08-29 12:20:05 +02:00
Indrajit Raychaudhuri 166cbe2fca autosuggestions: Update zsh-autosuggestions to 0.7.0 2021-07-07 09:56:42 -05:00
Indrajit Raychaudhuri 2451239713 general: Clarify relative ordering of modules in docs 2021-07-07 09:56:22 -05:00
dcarrillo 98f6306d1e Merge upstream/master 2021-07-01 14:30:56 +02:00
Indrajit Raychaudhuri f3c92ffeb3 utility: Pipe diff output through colordiff Instead of aliasing
`colordiff` behaves better as `stdin` filter. This is useful in
retaining color escape sequences when used with `less`.
2021-06-24 17:45:29 -05:00
Thomas Blaschke 866d5dfccd Add conda to the list of requirements
If conda is not in the list of requirements, the scripts exit too early in case pyenv is not installed and the module is configured with:

 zstyle ':prezto:module:python' skip-virtualenvwrapper-init 'on' 
 zstyle ':prezto:module:python' conda-init 'on'

Tested on Amazon EC2 Linux for Deeplearning AMI 47.0 and MacOS 11.4
2021-06-23 23:22:09 -05:00
dcarrillo dc66c17728 Merge upstream/master 2021-06-17 13:12:16 +02:00
Roman Perepelitsa 061a7b961c prompt: update powerlevel10k submodule to v1.15.0
Release notes:

  - https://github.com/romkatv/powerlevel10k/releases/tag/v1.15.0
2021-06-10 09:32:20 -05:00
Indrajit Raychaudhuri 6833fcd2f2 node: Cleanup and optimize 'node' module
Changes:
- Simplify nodenv and nvm initialization
- Check for availability of `nodenv` or `nvm` function instead of command
- Unset local variables outside condition block
2021-06-01 21:43:11 -05:00
Indrajit Raychaudhuri f1e24d3fd8 completion: Unset local variable outside condition block
Unset `curl_prefix` outside condition block so that it is always
cleared. Also, avoid `brew --prefix <foo>` since it is triggering ruby
in fallback flow when `<foo>` is not present.

Also, apply minor formatting tweaks.
2021-06-01 14:48:30 -05:00
Indrajit Raychaudhuri 37443368c1 ruby: Cleanup and optimize 'ruby' module
Changes:
- Honor `$RBENV_ROOT` or `RVM_DIR` if set but, no need to set it
  explicitly if not set. Instead, let the respective initialization
  scripts take care of that.
- Reverse `rbenv` vs `rvm` selection order, preferring `rbenv` instead.
- Check for availability of `rbenv` or `rvm` function instead of command
  to validate requirements. In a properly configured and initialized
  shell, `rbenv` or `rvm` will be available as function.
- Adhere to more idiomatic Zsh operation and minimize redundant syntaxes.

For additional rationale, see: https://github.com/rbenv/rbenv/wiki/Why-rbenv%3F
2021-06-01 14:31:26 -05:00
Indrajit Raychaudhuri afe59b293b python: Update pyenv initialization flow per pyenv 2.0
In pyenv 2.0 onwards, it is not enough anymore to initialize pyenv in
shell by just calling `pyenv init -`. We also need to update `path` to
include pyenv shims by calling `pyenv init --path`.

Also, honor `$PYENV_ROOT` if set but, no need to set it explicitly if
not set. Instead, let the initialization script take care of that.
2021-06-01 14:29:39 -05:00
Indrajit Raychaudhuri f0942e6dda python: Optimize completion for loading lazily on demand
Move `pip` to separate completion definition delegating to pip to do
all the completion work.

Since the completion is loaded lazily on-demand, it avoids the
performance overhead during Zsh initialization.

Implementation note:
The helper function `_pip_completion` implementation is based on the
official pip completion function (which can be generated with
`pip completion --zsh`) adhering to the newer compsys style.

See: 'man zshcompsys' for more details.
2021-06-01 14:29:39 -05:00
Indrajit Raychaudhuri d686da3c03 python: Reformat and apply visual cleanup
Changes:
- Fallback to `virtualenvwrapper` without `pyenv` wrapper if `python` is
  available in path, regardless of whether `brew` is available.
- Look up for availability of `python2` and `python3`, not just `python`.
- Check for existence of path before adding to global `$path` array.
- Adhere to more idiomatic Zsh operation and minimize redundant syntaxes.
- Prefer looking up `$functions` for fully initialized `pyenv`.
2021-06-01 14:29:39 -05:00