Dec. 23rd, 2016

dr_vlat: (Default)
А не спеть ли мне песню? А не спеть.
Хотел написать длинный пост с интригующим названием "Методология использования фреймворка сценариев Gulp в веб-разработке", но на пол-пути, как обычно, махнул рукой "да кому это надо... кому надо — тот сам все знает, а кому не надо — тому и так не надо".

В общем, вместо этого, быстро и кратко расскажу про autoenv.
В некоторых проектах возникает необходимость использовать переменные окружения.
Какие нибудь FTP_USER и FTP_PWD. Например для того, чтобы не светить в конфигах эти данные.
В том-же Gulp-е, делается:
var user = process.env.FTP_USER;
var password = process.env.FTP_PWD;
и можно больше не беспокоиться, что пароль случайно где нибудь засветится.
Неудобство этого метода в том, что эти переменные приходится инициализировать каждую сессию терминала.
Писать export FTP_USER=myftpuser;export FTP_PASSWORD=myftppass .
Или делать отдельный скрипт, которые эти переменные инициализирует.
А если проектов много — делать это каждый раз еще и для текущего проекта.

Но для zsh (и кажется для bash и fish) есть плагин, который называется autoenv.
Принцип его действия крайне прост — при входе в директорию, он вызывает файл .env, находящийся в корне этой директории.
Прямой аналог действия cd dir; source ./env , только автоматически.

Если в .env прописать те самые
export FTP_USER=foo
export FTP_PWD=bar

То они будут подхвачены автоматом, после cd .
И это ну просто очень, очень удобно при работе с большим количеством проектов.

Ставится плаг (в случае с zsh) просто:
$ git clone https://github.com/Tarrasch/zsh-autoenv ~/.dotfiles/lib/zsh-autoenv

И добавляется к массиву плагинов в ~/.zshrc

Profile

dr_vlat: (Default)
dr_vlat

February 2023

S M T W T F S
   1234
5 67891011
12131415161718
19202122232425
262728    

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Apr. 5th, 2026 09:40 am
Powered by Dreamwidth Studios