{"id":27610373,"url":"https://github.com/openinf/openinf-autoenvstack","last_synced_at":"2025-04-22T23:27:04.336Z","repository":{"id":224793592,"uuid":"666587429","full_name":"OpenINF/openinf-autoenvstack","owner":"OpenINF","description":null,"archived":false,"fork":false,"pushed_at":"2024-03-16T00:25:29.000Z","size":9,"stargazers_count":2,"open_issues_count":3,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-03-17T04:38:14.302Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OpenINF.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null},"funding":{"github":["DerekNonGeneric","jorgebucaran"]}},"created_at":"2023-07-14T23:19:02.000Z","updated_at":"2024-03-17T04:38:14.303Z","dependencies_parsed_at":"2024-03-16T00:33:39.502Z","dependency_job_id":null,"html_url":"https://github.com/OpenINF/openinf-autoenvstack","commit_stats":null,"previous_names":["openinf/openinf-autoenvstack"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenINF%2Fopeninf-autoenvstack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenINF%2Fopeninf-autoenvstack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenINF%2Fopeninf-autoenvstack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenINF%2Fopeninf-autoenvstack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OpenINF","download_url":"https://codeload.github.com/OpenINF/openinf-autoenvstack/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250339331,"owners_count":21414340,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-04-22T23:27:03.641Z","updated_at":"2025-04-22T23:27:04.327Z","avatar_url":"https://github.com/OpenINF.png","language":"Shell","funding_links":["https://github.com/sponsors/DerekNonGeneric","https://github.com/sponsors/jorgebucaran"],"categories":[],"sub_categories":[],"readme":"## Autoenvstack\n\nMake your fish feel better in the environment of trees.\n\n(or an improved version of [autoenvfish](https://github.com/idan/autoenvfish))\n\n[Fish](https://github.com/fish-shell/fish-shell) plugin. Once installed, it will\ndo essentially the following\n\n- if you enter some directory and there's `.env.fish` inside, it will be sourced\n- if you leave that directory, the file will be \"unsourced\"\n\n\"Unsourcing\" means restoring back global shell variables (exported or not).\nThere could be multiple `.env.fish` on different levels of folder structure.\nDiving into such a tree with a single `cd` command would cause them to be\nsourced in order. Global variables are retained at each level, so returning\nwould unsource files in reversed order. It works similarly to the concept of\nlocal scope variables in some programming languages, including fish.\n\n### Install\n\nWith [fisherman](https://github.com/OpenINF/openinf-fisher)\n\n```\nfisher OpenINF/openinf-autoenvstack\n```\n\n### Example\n\nIn `~/play/.env.fish` `settitle` sets a global variable that is displayed both in\nthe title and command prompt.\n\nIn both `~/play/scrapy/.env.fish` and `~/play/flask/.env.fish` Python virtual\nenvironment is activated.\n\nBy moving around, files are sourced and unsourced, eventually restoring the\ninitial state of the global variables.\n\n\u003c!-- ![screenshot](https://raw.githubusercontent.com/fisherman/autoenvstack/doc/example_session.png) --\u003e\n\n### Bugs\n\nIf, under some circumstances, autoenvstack removes all your globally declared\nvariables (no colors, git complains), clean up the cache of universal variables:\n\n```\nrm -f ~/.config/fish/fishd.*\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopeninf%2Fopeninf-autoenvstack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopeninf%2Fopeninf-autoenvstack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopeninf%2Fopeninf-autoenvstack/lists"}