ctrochalakis / tx-submissions (http://transifex.org/)

fork of transifex

GSoC '08: Introducing a new transifex submission system, an api and a command line client
Clone URL : http://bitbucket.org/ctrochalakis/tx-submissions/ (size: 1.4 MB)
commit 462: 9b619deb19ad
parent 461: f0ee96c182bf
bugfix: git's repo needs branch command. defaulttip
Dimitris Glezos / glezos
3 months ago
View at rev
tx-submissions /
filename size last modified message
devel-docs   5 months ago
po   unknown
transifex   4 months ago
.hgignore 103 B 6 months ago trivial: Make hg ignore more files
.hgtags 229 B 5 months ago Added tag 0.3.1 for changeset f5b058c065e1
LICENSE 17.6 KB 19 months ago Initial import
MANIFEST.in 98 B 5 months ago Better packaging with setuptools/distutil
Makefile 558 B 6 months ago Upstream Transifex now lives at http://transifex.org/
NEWS 1.9 KB 5 months ago Release version 0.3.1
README 4.0 KB 4 months ago Added bazaar submission support. Thanks Toshio!
a 6 B 4 months ago Dropping a Fedora package dependency
babel.cfg 342 B 8 months ago Added i18n support (on Genshi)
ez_setup.py 8.6 KB 5 months ago Better packaging with setuptools/distutil
sample-dev.cfg 3.5 KB 5 months ago New style wildcards + tests
sample-prod.cfg 3.7 KB 6 months ago Theme and project-specific changes, removing dependencies…
setup.py 3.4 KB 5 months ago merge tx-devel
stats_admin.py 4.0 KB 7 months ago Basic statistics support added. Dubbing this branch as…
test.cfg 4.0 KB 5 months ago New style wildcards + tests
transifex.spec 2.8 KB 5 months ago bugfix: Removing dependency from patch (#37)
tx 2.0 KB 5 months ago Handle exceptions correctly in `tx' cli
tx-i18n.py 5.0 KB 5 months ago bugfix: Typo in printed message (Stéphane Raimbault)
tx-init.py 10.8 KB 4 months ago Added bazaar submission support. Thanks Toshio!
tx-start.py 754 B 5 months ago Rename scripts to indicate the transifex domain (#31)

README

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
Transifex
=========

Transifex is a highly scalable localization platform with a focus on
integrating well with the existing workflow of both translators and developers.

It aims in making it dead-simple for content providers to receive quality
translations from big translation communities, no matter where the project
is hosted. 

* Homepage: http://transifex.org/
* Example live deployment: http://translate.fedoraproject.org/


Goals
-----

* Provide an interface for translators to submit translations to multiple
  projects, regardless of the type of the underlying VCS

* Reduce the overhead a project maintainer usually undertakes to administrate
  accounts for translators

* Help translators do more by eliminating the need to subscribe to each VCS and
  learn its commands and tricks

* Encourage collaboration between developers and maintainers and thus, increase
  the language coverage of the participant projects 


Installation
------------

You can either install Tx from source or using Python packaging. For both
you'll need to have these additional packages installed::

    yum install cvs pysvn subversion mercurial git bzr bzrtools


To **install using Python packaging**, run the following command, either as
root or as a user with eg. pydistutils or virtualenv::

    easy_install transifex


To **install from source**, follow the steps below:

1. Install the necessary software, either by using your platform's
   packaging system or ``easy_install`` (usually part of the 'python-devel'
   package)::

    # yum install TurboGears python-sqlalchemy
    # easy_install tw.forms ToscaWidgets genshi
    Visual diffs: # yum install python-pygments 
    I18n support: # yum install babel

2. Get the code. Run the following in a dir like ``~/transifex``, ``/var/www``,
   or, preferably, in a different user like ``~transifex-user``::

    hg clone http://code.transifex.org/transifex
    cd transifex

3. Since this is not a packaged release, you'll need to generate the
   necessary metadata manually by running::
 
    python setup.py egg_info


Configuring your installation
-----------------------------

1. Create a configuration file. Either copy the development one (``dev.cfg``)
   or the one intended for production systems, and modify settings if needed.::

    cp sample-dev.cfg dev.cfg
    (vi dev.cfg...)

2. Review/modify the deployment-specific options in ``dev.cfg`` and
   the global ones in ``transifex/config/app.cfg``.

   Create your workdir if it doesn't already exist.

3. Create the database::

    tg-admin sql create
 
4. To load up some initial data, run the init script. This will initialize
   some local modules and create a couple of users in your Transifex
   instance (guest/guest, admin/admin). Feel free to use them to submit
   files to your local modules and play around.::

    ./tx-init.py --test
    
5. Start transifex::

    ./tx-start.py

6. Fire up your browser at http://localhost:8084/
 
Feel free to explore the model and the testing data by launching the
TurboGears shell with ``tg-admin shell`` in your command line.



Documentation
-------------
::

  $ make docs     # generate Epydocs
  $ firefox docs/epydoc/index.html


Translating Transifex itself
----------------------------

Use the i18n.py script to extract messages and to compile and merge 
POT/PO files. The i18n.py is able to extract the modules descriptions and 
summaries stored in the database. Use the following command for more 
information. ::

  $ ./tx-i18n.py --help


Credits
-------

Information about the crew behind Transifex can be found at:

  http://transifex.org/wiki/Development/Crew 

Thanks to everyone who contributed code for Tx, mentioned in the AUTHORS file.
In addition, a big 'Thanks!' to:

- Google, for its exciting 'Summer of Code' program
- The Fedora Project, for its amazing people
- GNOME, for the 'damned lies' translation statistics program
- Luke Macken's bodhi update system, used extensively as a reference point
- Conference organizers for giving the chance to spread the word
- Everyone who provided feedback and ideas for improvement