LINUX.ORG.RU

История изменений

Исправление beastie, (текущая версия) :

К вопросу №1:

Т.к. Go это компилируемый язык и после компиляции файловая структура пакета более де-факто не доступна, и в общем не известно, где и как будет запущен или использован пакет†, есть в общем случае 2 решения данной пробемы:

  1. Использовать абсолютные или изветсные пути (~/.config/... и т.п.) для ассетов
  2. Зашить ассеты в бинарник (go-bindata и подобное) и быть независимым от файловой системы

К вопросу №2:

Глянь на golang.org/x/text и в частности на golang.org/x/text/message.

†) исключение: тесты. Они выполняются в контексте пакета, и для подтягивания ассетов из testdata достаточно использовать отностиельные пути.

Исправление beastie, :

К вопросу №1:

Т.к. Go это компилируемый язык и после компиляции файловая структура пакета более де-факто не доступна, и в общем не известно, где и как будет запущен или использован пакет†, есть в общем случае 2 решения данной пробемы:

  1. Использовать абсолютные или изветсные пути (~/.config/... и т.п.) для ассетов
  2. Зашить ассеты в бинарник (go-bindata и подобное) и быть независимым от файловой системы

К вопросу №2:

Глянь на golang.org/x/text и в частности на golang.org/x/text/message.

†) исключение: тесты. Они выполняются в контексте пакета, и для подтягивания testdata ассетов достаточно использовать отностиельные пути.

Исходная версия beastie, :

К вопросу №1:

Т.к. Go это компилируемый язык и после компиляции файловая структура пакета более де-факто не доступна, и в общем не известно, где и как будет запущен или использован пакет, есть в общем случае 2 решения данной пробемы:

  1. Использовать абсолютные или изветсные пути (~/.config/... и т.п.) для ассетов
  2. Зашить ассеты в бинарник (go-bindata и подобное) и быть независимым от файловой системы

К вопросу №2:

Глянь на golang.org/x/text и в частности на golang.org/x/text/message.