Skip to content

The Future of po-util: Refactored, Modular, and Cross-Compatible

License

Notifications You must be signed in to change notification settings

nrobinson2000/po

Repository files navigation

This tool has been deprecated. Please upgrade to neopo.

Build Status Join the chat at https://gitter.im/po-util/Lobby

po - The Future of po-util: Refactored, Modular, and Cross-Compatible

Why?

When I first created po-util, it was a single script, po-util.sh, that could be "installed" on Mac and Linux. It soon became very cumbersome, and I chose to split po-util into two repositories, po-util and homebrew-po. Maintaining the two repositories was tedious, as I had to do double the work every time I wanted to release a feature or make a fix.

My solution was to reunite the Mac and Linux versions back into a single repository, breaking the script into several modular files.

┌── bin/po
├── share/po-common
├── share/po-linux
└── share/po-mac
  • po is the main file, and the script that gets executed when a user runs po at the command line.
  • po-common is sourced by po, and contains all OS independent functions.
  • po-linux and po-mac contain the OS dependent settings and functions.

Regardless of OS:

  • po is installed at /usr/local/bin/po
  • po-common is installed at /usr/local/share/po-common

On Linux:

  • po-linux is installed at /usr/local/share/po-linux

On Mac:

  • po-mac is installed at /usr/local/share/po-mac

Install:

Universal Installer:

$ bash <(curl -sL https://raw.githubusercontent.com/nrobinson2000/po/master/install)

Caveats:

None at the moment. Just make sure to use the Universal Installer.

FAQ:

Is this really the future of po-util?

Yes. All future development will be on po. The legacy po-util repositories will remain supported, but future work will be focused on po.