История изменений
Исправление beastie, (текущая версия) :
К вопросу №1:
Т.к. Go это компилируемый язык и после компиляции файловая структура пакета более де-факто не доступна, и в общем не известно, где и как будет запущен или использован пакет†, есть в общем случае 2 решения данной пробемы:
- Использовать абсолютные или изветсные пути (~/.config/... и т.п.) для ассетов
- Зашить ассеты в бинарник (go-bindata и подобное) и быть независимым от файловой системы
К вопросу №2:
Глянь на golang.org/x/text и в частности на golang.org/x/text/message.
†) исключение: тесты. Они выполняются в контексте пакета, и для подтягивания ассетов из testdata достаточно использовать отностиельные пути.
Исправление beastie, :
К вопросу №1:
Т.к. Go это компилируемый язык и после компиляции файловая структура пакета более де-факто не доступна, и в общем не известно, где и как будет запущен или использован пакет†, есть в общем случае 2 решения данной пробемы:
- Использовать абсолютные или изветсные пути (~/.config/... и т.п.) для ассетов
- Зашить ассеты в бинарник (go-bindata и подобное) и быть независимым от файловой системы
К вопросу №2:
Глянь на golang.org/x/text и в частности на golang.org/x/text/message.
†) исключение: тесты. Они выполняются в контексте пакета, и для подтягивания testdata ассетов достаточно использовать отностиельные пути.
Исходная версия beastie, :
К вопросу №1:
Т.к. Go это компилируемый язык и после компиляции файловая структура пакета более де-факто не доступна, и в общем не известно, где и как будет запущен или использован пакет, есть в общем случае 2 решения данной пробемы:
- Использовать абсолютные или изветсные пути (~/.config/... и т.п.) для ассетов
- Зашить ассеты в бинарник (go-bindata и подобное) и быть независимым от файловой системы
К вопросу №2:
Глянь на golang.org/x/text и в частности на golang.org/x/text/message.