Daniel Hahler
ecf2b2961f
Only source varstash lib if it's being used
...
I have noticed that `autostash` called an (accidentally)
defined/overwritten `stash` function.
While it's not possible to put this into a local scope, this will at
least make it less polluting by default (when autostashing is not used).
Additionally we could source it always (not just once), but then it
would only re-overwrite the function.
A better fix would be to prefix the functions explicitly, e.g.
`autoenv_autostash` etc.
Closes https://github.com/Tarrasch/zsh-autoenv/pull/42 .
2016-04-28 20:44:05 +02:00
Daniel Hahler
b68bedc562
Add tests/ZDOTDIR.shwordsplit
2015-11-18 19:25:07 +01:00
Daniel Hahler
aee9baa418
Merge pull request #36 from blueyed/fix-api-vars-scope
...
Cleanup API/vars for enter/leave events
2015-10-10 22:35:41 +02:00
Daniel Hahler
eebdce22df
Allow to limit autoenv_source_parent
's upward recursion
...
This allows to use `autoenv_source_parent ..` to only look in the parent
directory.
2015-10-09 22:16:07 +02:00
Daniel Hahler
961190678e
Cleanup API/vars for enter/leave events
...
The variables are local now, which makes them being handled correctly
when calling `autoenv_source_parent`.
Without this, a call to `autoenv_source_parent` overwrites the values in
the current scope.
2015-10-09 22:04:55 +02:00
Daniel Hahler
e68a914487
Change default values: .env => .autoenv.zsh etc
...
This changes the defaults:
- AUTOENV_FILE_ENTER: .env => .autoenv.zsh
- AUTOENV_FILE_LEAVE: .env_leave => .autoenv_leave.zsh
`.env` is usually used only for key-value pairs for environment
settings, e.g. with foreman. We do not want to interfere with this.
This also renames the setting/variable AUTOENV_ENV_FILENAME to
AUTOENV_AUTH_FILE, and uses the [XDG
spec](http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html#variables )
for the default location.
The new default location for the auth file will be
~/.local/share/autoenv_auth.
When the old setting is used, or the previous default exists, a warning
is given with instructions.
Fixes https://github.com/Tarrasch/zsh-autoenv/issues/31 .
Closes https://github.com/Tarrasch/zsh-autoenv/pull/32 .
2015-05-22 17:20:06 +02:00
Daniel Hahler
b0e23d29fe
Change default for AUTOENV_FILE_LEAVE to .env_leave
...
This does not use a fake file extension (`.leave`) like with
`.env.leave`.
2015-05-06 20:28:23 +02:00
Daniel Hahler
470841ac3c
Unset $autoenv_env_file when leaving
...
This allows to use $autoenv_env_file e.g. in your prompt to see what
.env is being used.
2015-04-24 17:36:41 +02:00
Daniel Hahler
fd54606830
tests: streamline ZDOTDIR layout, AUTOENV_ENV_FILENAME via setup
...
Without this, a new subshell would reset the env authentication file.
2015-04-24 17:33:09 +02:00
Daniel Hahler
433693f5c6
Cleanup tests/varstash_export.t
2015-04-23 17:57:56 +02:00
Daniel Hahler
7699fe6aba
tests: rename setup.sh to setup.zsh
2015-04-23 16:03:21 +02:00
Daniel Hahler
ebef4c2613
tests: define/use $TEST_SOURCE_AUTOENV
...
This handled (re)loading autoenv for
ZDOTDIR=tests/ZDOTDIR.loadviafunction.
2015-04-23 16:00:15 +02:00
Daniel Hahler
c4e388980e
varstash: add support for exported variables in subshells
2015-04-23 15:11:40 +02:00
Daniel Hahler
5cf1e01b28
tests: setup.sh: export TEST_AUTOENV_PLUGIN_FILE
2015-04-23 14:40:26 +02:00
Daniel Hahler
9a010cbdf6
Do not reset the stack variables when (re)sourcing the plugin
...
This is meant to keep the current state when re-sourcing the shell
config (`. ~/.zshrc`).
Closes https://github.com/Tarrasch/zsh-autoenv/pull/24
2015-03-30 00:58:32 +02:00
Daniel Hahler
e8372e9cdf
tests: setopt errexit during setup
...
This is meant to prevent accidentally overwriting your auth file when
running / changing the tests.
2015-03-15 22:16:12 +01:00
Daniel Hahler
b3a56f449f
Merge pull request #22 from Tarrasch/improve-and-test-zstat-integration
...
Improve and test zstat integration
2015-01-26 14:08:25 +01:00
Daniel Hahler
88e602e367
tests: setup.sh: doc / more verbose
2015-01-25 19:50:27 +01:00
Daniel Hahler
5cb689875e
tests: abort if setup fails!
...
Otherwise the user's auth file might get removed.
2015-01-25 19:48:56 +01:00
Daniel Hahler
5d65371786
Test env for invalid zsh module_path, where zsh/zstat fails
2015-01-25 19:22:52 +01:00
Daniel Hahler
6fe08c3fde
Improve zsh/zstat integration; also make it handle dirs
2015-01-25 19:22:52 +01:00
Daniel Hahler
873b9f8062
Fix symlink handling, especially for symlinks not below "env_dir"
2015-01-19 19:03:26 +01:00
Daniel Hahler
986a7609ff
Do not cd
in the chpwd
hook
...
This is not really necessary, except for the convenience of being in the
.env file's directory during the hook.
But it messes around with the "cd history", e.g. `cd -`!
To reference the .env file or its directory, `$autoenv_env_file` and
`${autoenv_env_file:h}` can be used instead.
2015-01-17 20:10:41 +01:00
Daniel Hahler
020a9152b7
Fix being loaded from a function (antigen)
...
Fixes https://github.com/Tarrasch/zsh-autoenv/issues/14
2014-12-11 16:22:54 +01:00
Daniel Hahler
9c829733ad
tests: setup for multiple ZDOTDIRs, fix/add "setopt clobber"
2014-12-08 22:14:54 +01:00
Daniel Hahler
e567a40592
Fixes after using setopt nounset
during tests
...
Also add tests for unset variable with varstash.
2014-12-08 21:37:25 +01:00
Daniel Hahler
d6fbb13451
Merge pull request #12 from Tarrasch/autounstash-on-leave
...
Call `autounstash` automatically/always when leaving a directory
2014-12-04 13:31:56 +01:00
Daniel Hahler
b478c5463f
Call autounstash
automatically/always when leaving a directory
2014-12-04 13:28:48 +01:00
Daniel Hahler
5655e26d6a
Encapsulate the file name in the hash pair for stricter matching
...
Ref: https://github.com/Tarrasch/zsh-autoenv/pull/13#issuecomment-65559752
2014-12-04 10:35:09 +01:00
Daniel Hahler
13bb443f48
Fix _autoenv_deauthorize with regard to newline handling, add tests
2014-12-04 07:20:44 +01:00
Daniel Hahler
364c0fbb2a
Remove underscore prefix from vars provided for .env files
...
Fixes https://github.com/Tarrasch/zsh-autoenv/issues/11
2014-12-02 18:49:23 +01:00
Daniel Hahler
d2f447e445
Use ${PWD:A} when checking for leave event
...
Use the absolute path when comparing to the absolute path of the
previously entered dirs.
2014-11-29 13:56:28 +01:00
Daniel Hahler
5e18125f04
Improve interactive prompt
...
- Revert usage of "read -q" for authentication (#10 )
- Change format of "not authenticated" message (#9 )
2014-11-27 13:33:04 +01:00
Daniel Hahler
0b941261b7
Add debugging, via AUTOENV_DEBUG>1
2014-11-26 19:42:57 +01:00
Daniel Hahler
13c0dbcd2f
Fix $PWD while sourcing .env file - should be dir of .env file
2014-11-25 14:39:43 +01:00
Daniel Hahler
869e679b79
Fix handling of stack for leave, add to stack for autoenv_source_parent
2014-11-24 20:13:18 +01:00
Daniel Hahler
175a4eb628
tests: use sed to prepend to .env file
2014-11-24 20:13:18 +01:00
Daniel Hahler
d9ff71ac1d
Some more refactoring, adding support for autoenv_source_parent
...
- use file mtime with "entered" stack
- fix loading of varstash; look at $functions
- Refactor stack handling, add tests
- Refactor `_autoenv_get_file_upwards`, add tests
- tests: setup: reset AUTOENV_ENV_FILENAME
2014-11-24 20:13:18 +01:00
Daniel Hahler
bcec00d2dd
Use AUTOENV prefix
...
- s/DOTENV_/AUTOENV_/
- s/dotenv_/autoenv_/
Ref: https://github.com/Tarrasch/zsh-autoenv/issues/6
2014-11-24 20:13:18 +01:00
Daniel Hahler
e088e83ff9
Cleanup
2014-11-24 20:13:18 +01:00
Daniel Hahler
dbfb8fe519
Streamline cwd behavior while sourcing
2014-11-24 20:13:18 +01:00
Daniel Hahler
67e8030770
tests: add and use test_autoenv_add_to_env and test_autoenv_auth_env_files
...
Conflicts:
autoenv.zsh
2014-11-24 20:13:18 +01:00
Daniel Hahler
f31bb529de
s/ENV_AUTHORIZATION_FILE/AUTOENV_ENV_FILENAME/
...
Ref: https://github.com/Tarrasch/zsh-autoenv/issues/6
2014-11-24 20:13:18 +01:00
Daniel Hahler
5b553ba1ed
varstash integration
...
Fixes: https://github.com/Tarrasch/zsh-autoenv/issues/5
2014-11-24 20:13:18 +01:00
Daniel Hahler
c12b861952
tests: inject '-t 1' to read
during tests
2014-11-24 20:13:18 +01:00
Daniel Hahler
c1a25d724e
tests: add setup script, used to be for all tests
2014-11-24 20:13:18 +01:00
Daniel Hahler
b25f6b14dc
Add tests for $PWD during enter and leave events
2014-11-16 12:05:16 +01:00
Daniel Hahler
1d3e5b69a7
Add a test for DOTENV_HANDLE_LEAVE=0
2014-11-15 15:25:20 +01:00
Daniel Hahler
4676713bc6
Various improvements
...
- Support for leave event, via DOTENV_FILE_LEAVE and _dotenv_event (can
use DOTENV_FILE_LEAVE=$DOTENV_FILE_ENTER).
- Support for searching upwards for $DOTENV_FILE_ENTER (#3 ).
- Source .env only once per session, but re-source when leave events
are enabled (#1 ).
- Trigger the machinery when the script gets sourced, for the current
dir (#2 ).
2014-11-15 15:08:52 +01:00
Arash Rouhani
cae790171d
Forgot trailing white space
2013-09-08 18:54:17 +02:00