Skip to content

Commit

Permalink
Merge pull request #111 from cs50/announcements
Browse files Browse the repository at this point in the history
Announcements
  • Loading branch information
brianyu28 authored Jul 30, 2017
2 parents 992e3bb + 3571627 commit a8ace98
Show file tree
Hide file tree
Showing 5 changed files with 354 additions and 124 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,4 @@ __pycache__
build/
*.egg-info/
dist/
locale/*/LC_MESSAGES/*.mo
89 changes: 48 additions & 41 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,49 +1,56 @@
[![Build Status](https://travis-ci.org/cs50/submit50.svg?branch=master)](https://travis-ci.org/cs50/submit50)

# Usage

## English

```
submit50 problem
```

### Spanish

```
LANGUAGE=es submit50 problem
```

# Internationalizing

## Creating PO for language XX

```
xgettext submit50.py
sed -i -e '1,6d' messages.po
sed -i -e '3,10d' messages.po
sed -i 's/CHARSET/UTF-8/' messages.po
vim messages.po # translate strings to XX
msgfmt messages.po
mkdir -p locale/XX/LC_MESSAGES
mv messages.mo messages.po locale/XX/LC_MESSAGES/
```

## Updating PO for language XX

Source: https://stackoverflow.com/a/7497395

```
echo "" > messages.po
find . -type f -iname "*.py" | xgettext -j -f -
msgmerge -N locale/XX/LC_MESSAGES/messages.po messages.po > new.po
mv new.po messages.po
msgfmt messages.po
mv -f messages.mo messages.po locale/XX/LC_MESSAGES/
```

# Contributing

```
pip install -e .
```

TODO...

# TODO

* Client
* Remove tag once handled by server.
* Server
* Tag latest commit.
* Release latest commit.
* Update default branch.

# CHANGELOG

* 2.1.4
* Fix problem with two-factor authentication.
* Avoid printing "Submission cancelled" when it's inappropriate.
* 2.1.3
* Canonicalizd username after login to allow login via email.
* Generalized finding path to python3.
* 2.1.2
* Added more error handling to `submit50 --checkout`.
* Updated messages displayed to user to direct them to CS50.me.
* 2.1.1
* Suppressed student compile flags while installing getch.
* 2.1.0
* TBD
* 2.0.0
* Ported to Python.
* Added support for two-factor authentication.
* Added course identifier as prefix to branches and tags.
* Added support for --checkout of specific usernames.
* Hid diagnostic output unless --verbose flag is used.
* Added check for version file.
* 1.1.0
* Added support for expecting and ignoring files.
* Added support for logging in via email address.
* Added check for whether problem exists.
* Fixed bugs whereby spaces or dollar signs in usernames broke login.
* Fixed bug whereby pushes would fail if email address not yet confirmed.
* 1.0.3
* Initial commit.
TODO

# References

- https://books.google.com/books?id=kQom0WiUbZQC&pg=PA215&lpg=PA215&dq=python+gettext+class&source=bl&ots=mttyXZyZan&sig=OENd8tbqVpxWIpRIWrE84hQY8jo&hl=en&sa=X&ved=0ahUKEwjTnY3WmJzVAhWJMj4KHR_PBR8Q6AEIWTAH#v=onepage&q=python%20gettext%20class&f=false
- https://stackoverflow.com/questions/7496156/gettext-how-to-update-po-and-pot-files-after-the-source-is-modified
150 changes: 150 additions & 0 deletions locale/es/LC_MESSAGES/messages.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
msgid ""
msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: submit50.py:44
msgid "You have an old version of python. Install version 2.7 or higher."
msgstr ""
"Tienes una versión antigua de python. Instala la versión 2.7 o superior."

#: submit50.py:115
msgid "show commands being executed"
msgstr "mostrar comandos que se están ejecutando"

#: submit50.py:116
msgid "problem to submit"
msgstr "problema para entregar"

#: submit50.py:177
msgid "GitHub username: "
msgstr "Nombre de usuario de GitHub: "

#: submit50.py:183
msgid "GitHub password: "
msgstr "Contraseña de GitHub: "

#: submit50.py:217
msgid "Invalid username and/or password."
msgstr "Nombre de usuario y / o contraseña es inválido."

#: submit50.py:221
msgid "Could not authenticate user."
msgstr "No se pudo autenticar usuario."

#: submit50.py:268
msgid "Could not connect to GitHub."
msgstr "No se pudo conectar a GitHub"

#: submit50.py:272
msgid "Sorry, something's wrong! Let sysadmins@cs50.harvard.edu know!"
msgstr "¡Lo siento, algo está mal! ¡Déjale saber a sysadmins@cs50.harvard.edu!"

#: submit50.py:277 submit50.py:295
msgid "Submission cancelled."
msgstr "La entrega se canceló."

#: submit50.py:386
msgid "You don't have git. Install git, then re-run submit50!"
msgstr "No tienes git. ¡Instala git, y luego vuelve a ejecutar submit50!"

#: submit50.py:390
msgid ""
"You have an old version of git. Install version 2.7 or later, then re-run "
"submit50!"
msgstr ""
"Tienes una versión antigua de git. ¡Instala la versión 2.7 o superior, y "
"vuelve a ejecutar submit50!"

#: submit50.py:404
msgid ""
"You have an unknown version of submit50. Email sysadmins@cs50.harvard.edu!"
msgstr ""
"Tienes una versión desconocida de submit50. ¡Escríbele a sysadmins@cs50."
"harvard.edu!"

#: submit50.py:408
msgid ""
"You have an old version of submit50. Run update50, then re-run submit50!"
msgstr ""
"Tienes una versión antigua de submit50. ¡Ejecuta update50, y luego vuelve a "
"ejecutar submit50!"

#: submit50.py:425
msgid "Invalid problem. Did you mean to submit something else?"
msgstr "El problema no es válido. ¿Quisiste entregar algo más?"

#: submit50.py:441
msgid "You seem to be missing these files:"
msgstr "Parece que faltan estos archivos:"

#: submit50.py:444
msgid "Ensure you have the required files before submitting."
msgstr "Asegúrate de tener los archivos necesarios antes de entregar."

#: submit50.py:447
msgid "Authenticating"
msgstr "Autenticando"

#: submit50.py:465
msgid "Preparing"
msgstr "Preparando"

#: submit50.py:472
msgid ""
"Looks like submit50 isn't enabled for your account yet. Log into https://"
"cs50.me/ in a browser, click \"Authorize application\", and re-run submit50 "
"here!"
msgstr ""
"Parece que submit50 todavía no está habilitado para tu cuenta. Inicie sesión "
"en https://cs50.me/ en un navegador, haga clic en \"Autorizar la aplicación"
"\", y vuelva a ejecutar submit50 ¡aquí!"

#: submit50.py:475
msgid ""
"Looks like you have the wrong username in ~/.gitconfig or submit50 isn't yet "
"enabled for your account. Double-check ~/.gitconfig and then log into "
"https://cs50.me/ in a browser, click \"Authorize application\" if prompted, "
"and re-run submit50 here."
msgstr ""
"Parece que tienes el nombre de usuario incorrecto en ~ /.gitconfig o "
"submit50 aún no está habilitado para tu cuenta. Vuelve a chequear ~/."
"gitconfig y luego ingresa en https://cs50.me/ en un navegador, haga clic en "
"\"Autorizar aplicación\" si se te solicita, y vuelve a ejecutar submit50 "
"aquí."

#: submit50.py:536
msgid "No files in this directory are expected for submission."
msgstr "Ningún archivo en este directorio se espera para la entrega."

#: submit50.py:537
msgid "Files that will be submitted:"
msgstr "Archivos que se van a entregar:"

#: submit50.py:543
msgid "Files that won't be submitted:"
msgstr "Archivos que no se van a entregar:"

#: submit50.py:548
msgid ""
"Keeping in mind the course's policy on academic honesty, are you sure you "
"want to submit these files? "
msgstr ""
"Teniendo en cuenta la política de honestidad académica del curso, ¿estás "
"seguro que quieres enviar estos archivos? "

#: submit50.py:551
msgid "No files were submitted."
msgstr ""

#: submit50.py:554
msgid "Submitting"
msgstr "Entregando"

#: submit50.py:561
msgid "Submitted {}! See https://cs50.me/submissions/{}."
msgstr "¡Se entregó {}! Puedes ver https://cs50.me/submissions/{}."

#: submit50.py:608
msgid "Could not complete two-factor authentication."
msgstr "No se pudo completar la autenticación de dos factores."
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,5 +61,5 @@ class CustomInstall(install):
"console_scripts": ["submit50=submit50:main"]
},
url="https://github.com/cs50/submit50",
version="2.3.0"
version="2.3.1"
)
Loading

0 comments on commit a8ace98

Please sign in to comment.